1 31 32 package org.opencms.workplace.tools.accounts; 33 34 import org.opencms.file.CmsUser; 35 import org.opencms.jsp.CmsJspActionElement; 36 import org.opencms.main.CmsException; 37 import org.opencms.util.CmsUUID; 38 import org.opencms.widgets.CmsDisplayWidget; 39 import org.opencms.workplace.CmsWidgetDialog; 40 import org.opencms.workplace.CmsWidgetDialogParameter; 41 import org.opencms.workplace.list.CmsListDateMacroFormatter; 42 import org.opencms.workplace.list.I_CmsListFormatter; 43 44 import java.util.ArrayList ; 45 import java.util.Date ; 46 47 import javax.servlet.http.HttpServletRequest ; 48 import javax.servlet.http.HttpServletResponse ; 49 import javax.servlet.jsp.PageContext ; 50 51 60 public class CmsUserOverviewDialog extends CmsWidgetDialog { 61 62 63 public static final String KEY_PREFIX = "user.ov"; 64 65 66 public static final String [] PAGES = {"page1"}; 67 68 69 public static final String PARAM_USERID = "userid"; 70 71 72 private static final I_CmsListFormatter LAST_LOGIN_FORMATTER = CmsListDateMacroFormatter.getDefaultDateFormatter(); 73 74 75 protected CmsUser m_user; 76 77 78 private String m_paramUserid; 79 80 85 public CmsUserOverviewDialog(CmsJspActionElement jsp) { 86 87 super(jsp); 88 } 89 90 97 public CmsUserOverviewDialog(PageContext context, HttpServletRequest req, HttpServletResponse res) { 98 99 this(new CmsJspActionElement(context, req, res)); 100 } 101 102 105 public void actionCommit() { 106 107 setCommitErrors(new ArrayList ()); 109 } 110 111 118 public String getLastlogin() { 119 120 return LAST_LOGIN_FORMATTER.format(new Date (m_user.getLastlogin()), getLocale()); 121 } 122 123 128 public String getParamUserid() { 129 130 return m_paramUserid; 131 } 132 133 140 public void setLastlogin(String lastlogin) { 141 142 lastlogin.length(); 144 } 145 146 151 public void setParamUserid(String userId) { 152 153 m_paramUserid = userId; 154 } 155 156 164 protected String createDialogHtml(String dialog) { 165 166 StringBuffer result = new StringBuffer (1024); 167 168 result.append(createWidgetTableStart()); 169 result.append(createWidgetErrorHeader()); 171 172 int n = (!isOverview() ? 2 : 4); 173 if (dialog.equals(PAGES[0])) { 174 result.append(dialogBlockStart(key(Messages.GUI_USER_EDITOR_LABEL_IDENTIFICATION_BLOCK_0))); 176 result.append(createWidgetTableStart()); 177 result.append(createDialogRowsHtml(0, n)); 178 result.append(createWidgetTableEnd()); 179 result.append(dialogBlockEnd()); 180 if (!isOverview()) { 181 result.append(createWidgetTableEnd()); 182 return result.toString(); 183 } 184 result.append(dialogBlockStart(key(Messages.GUI_USER_EDITOR_LABEL_ADDRESS_BLOCK_0))); 185 result.append(createWidgetTableStart()); 186 result.append(createDialogRowsHtml(5, 8)); 187 result.append(createWidgetTableEnd()); 188 result.append(dialogBlockEnd()); 189 result.append(dialogBlockStart(key(Messages.GUI_USER_EDITOR_LABEL_AUTHENTIFICATION_BLOCK_0))); 190 result.append(createWidgetTableStart()); 191 result.append(createDialogRowsHtml(9, 10)); 192 result.append(createWidgetTableEnd()); 193 result.append(dialogBlockEnd()); 194 } 195 196 result.append(createWidgetTableEnd()); 197 return result.toString(); 198 } 199 200 203 protected String defaultActionHtmlEnd() { 204 205 return ""; 206 } 207 208 211 protected void defineWidgets() { 212 213 initUserObject(); 215 216 setKeyPrefix(KEY_PREFIX); 217 218 if (isOverview()) { 220 addWidget(new CmsWidgetDialogParameter(m_user, "name", PAGES[0], new CmsDisplayWidget())); 221 addWidget(new CmsWidgetDialogParameter(m_user, "description", PAGES[0], new CmsDisplayWidget())); 222 addWidget(new CmsWidgetDialogParameter(m_user, "lastname", PAGES[0], new CmsDisplayWidget())); 223 addWidget(new CmsWidgetDialogParameter(m_user, "firstname", PAGES[0], new CmsDisplayWidget())); 224 addWidget(new CmsWidgetDialogParameter(m_user, "email", PAGES[0], new CmsDisplayWidget())); 225 addWidget(new CmsWidgetDialogParameter(m_user, "address", PAGES[0], new CmsDisplayWidget())); 226 addWidget(new CmsWidgetDialogParameter(m_user, "zipcode", PAGES[0], new CmsDisplayWidget())); 227 addWidget(new CmsWidgetDialogParameter(m_user, "city", PAGES[0], new CmsDisplayWidget())); 228 addWidget(new CmsWidgetDialogParameter(m_user, "country", PAGES[0], new CmsDisplayWidget())); 229 addWidget(new CmsWidgetDialogParameter(m_user, "enabled", PAGES[0], new CmsDisplayWidget())); 230 addWidget(new CmsWidgetDialogParameter(this, "lastlogin", PAGES[0], new CmsDisplayWidget())); 231 } else { 232 addWidget(new CmsWidgetDialogParameter(m_user, "name", PAGES[0], new CmsDisplayWidget())); 233 addWidget(new CmsWidgetDialogParameter(m_user, "lastname", PAGES[0], new CmsDisplayWidget())); 234 addWidget(new CmsWidgetDialogParameter(m_user, "firstname", PAGES[0], new CmsDisplayWidget())); 235 } 236 } 237 238 241 protected String [] getPageArray() { 242 243 return PAGES; 244 } 245 246 249 protected void initMessages() { 250 251 addMessages(Messages.get().getBundleName()); 253 super.initMessages(); 255 } 256 257 260 protected void initUserObject() { 261 262 try { 263 m_user = getCms().readUser(new CmsUUID(getParamUserid())); 265 } catch (CmsException e) { 266 } 268 } 269 270 275 protected void initWorkplaceMembers(CmsJspActionElement jsp) { 276 277 super.initWorkplaceMembers(jsp); 278 setOnlineHelpUriCustom("/accounts/users/overview/"); 279 } 280 281 284 protected void validateParamaters() throws Exception { 285 286 getCms().readUser(new CmsUUID(getParamUserid())).getName(); 288 } 289 290 295 private boolean isOverview() { 296 297 return getCurrentToolPath().endsWith("/users/edit"); 298 } 299 } | Popular Tags |