1 23 24 package org.infoglue.cms.applications.managementtool.actions; 25 26 import java.net.URLEncoder ; 27 import java.util.Collections ; 28 import java.util.List ; 29 30 import org.apache.log4j.Logger; 31 import org.infoglue.cms.controllers.kernel.impl.simple.ContentTypeDefinitionController; 32 import org.infoglue.cms.controllers.kernel.impl.simple.UserControllerProxy; 33 import org.infoglue.cms.controllers.kernel.impl.simple.UserPropertiesController; 34 import org.infoglue.cms.entities.management.ContentTypeDefinitionVO; 35 import org.infoglue.cms.entities.management.UserProperties; 36 import org.infoglue.cms.entities.management.UserPropertiesVO; 37 import org.infoglue.cms.security.InfoGluePrincipal; 38 import org.infoglue.cms.util.CmsPropertyHandler; 39 40 public class ViewUserPropertiesAction extends ViewEntityPropertiesAction 41 { 42 private final static Logger logger = Logger.getLogger(ViewUserPropertiesAction.class.getName()); 43 44 private static final long serialVersionUID = 1L; 45 46 public ViewUserPropertiesAction() 47 { 48 this.setCurrentAction("ViewUserProperties.action"); 49 this.setUpdateAction("UpdateUserProperties"); 50 this.setCancelAction("ViewSystemUser.action"); 51 this.setToolbarKey("tool.managementtool.viewUserProperties.header"); 52 this.setTitleKey("tool.managementtool.viewUserProperties.header"); 53 this.setArguments(""); 54 this.setEntityName(UserProperties.class.getName()); 55 } 56 57 private String userName; 58 private UserPropertiesVO userPropertiesVO; 59 private List userPropertiesVOList; 60 61 62 67 68 protected void initialize(String userName) throws Exception 69 { 70 super.initialize(); 71 72 logger.info("userName:" + userName); 73 74 List contentTypeDefinitionVOList = UserPropertiesController.getController().getContentTypeDefinitionVOList(userName); 75 if(contentTypeDefinitionVOList != null && contentTypeDefinitionVOList.size() > 0) 76 this.setContentTypeDefinitionVO((ContentTypeDefinitionVO)contentTypeDefinitionVOList.get(0)); 77 78 InfoGluePrincipal infoGluePrincipal = UserControllerProxy.getController().getUser(userName); 79 userPropertiesVOList = UserPropertiesController.getController().getUserPropertiesVOList(userName, this.getLanguageId()); 80 if(userPropertiesVOList != null && userPropertiesVOList.size() > 0) 81 { 82 this.userPropertiesVO = (UserPropertiesVO)userPropertiesVOList.get(0); 83 this.setContentTypeDefinitionId(this.userPropertiesVO.getContentTypeDefinitionId()); 84 } 85 else 86 { 87 this.setContentTypeDefinitionId(this.getContentTypeDefinitionVO().getContentTypeDefinitionId()); 88 } 89 90 logger.info("this.userPropertiesVO:" + this.userPropertiesVO); 91 92 this.setAttributes(ContentTypeDefinitionController.getController().getContentTypeAttributes(this.getContentTypeDefinitionVO().getSchemaValue())); 93 94 logger.info("attributes:" + this.getContentTypeAttributes().size()); 95 logger.info("availableLanguages:" + this.getAvailableLanguages().size()); 96 97 } 98 99 public String doExecute() throws Exception 100 { 101 this.initialize(getUserName()); 102 103 return "success"; 104 } 105 106 107 110 111 public List getDigitalAssets() 112 { 113 List digitalAssets = null; 114 115 try 116 { 117 if(this.userPropertiesVO != null && this.userPropertiesVO.getId() != null) 118 { 119 digitalAssets = UserPropertiesController.getController().getDigitalAssetVOList(this.userPropertiesVO.getId()); 120 } 121 } 122 catch(Exception e) 123 { 124 logger.warn("We could not fetch the list of digitalAssets: " + e.getMessage(), e); 125 } 126 127 return digitalAssets; 128 } 129 130 131 132 133 134 139 public List getRelatedCategories(String attribute) 140 { 141 try 142 { 143 if(this.userPropertiesVO != null && this.userPropertiesVO.getId() != null) 144 return getPropertiesCategoryController().findByPropertiesAttribute(attribute, UserProperties.class.getName(), this.userPropertiesVO.getId()); 145 } 146 catch(Exception e) 147 { 148 logger.warn("We could not fetch the list of defined category keys: " + e.getMessage(), e); 149 } 150 151 return Collections.EMPTY_LIST; 152 } 153 154 155 public String getXML() 156 { 157 return (this.userPropertiesVO == null) ? null : this.userPropertiesVO.getValue(); 158 } 159 160 161 public String getUserName() 162 { 163 return userName; 164 } 165 166 public UserPropertiesVO getUserPropertiesVO() 167 { 168 return userPropertiesVO; 169 } 170 171 public List getUserPropertiesVOList() 172 { 173 return userPropertiesVOList; 174 } 175 176 public void setUserName(String userName) 177 { 178 this.userName = userName; 179 this.setOwnerEntityId(userName); 180 } 181 182 public Integer getEntityId() 183 { 184 return this.userPropertiesVO.getId(); 185 } 186 187 public void setOwnerEntityId(String ownerEntityId) 188 { 189 super.setOwnerEntityId(ownerEntityId); 190 this.userName = ownerEntityId; 191 } 192 193 public String getReturnAddress() throws Exception 194 { 195 String URIEncoding = CmsPropertyHandler.getURIEncoding(); 196 return this.getCurrentAction() + "?userName=" + URLEncoder.encode(this.userName, URIEncoding) + "&languageId=" + this.getLanguageId(); 197 } 198 199 public String getCancelAddress() throws Exception 200 { 201 String URIEncoding = CmsPropertyHandler.getURIEncoding(); 202 return this.getCancelAction() + "?userName=" + URLEncoder.encode(this.userName, URIEncoding); 203 } 204 205 } 206 | Popular Tags |