1 31 32 package org.opencms.workplace.demos.list; 33 34 import org.opencms.file.CmsUser; 35 import org.opencms.jsp.CmsJspActionElement; 36 import org.opencms.main.CmsException; 37 import org.opencms.main.CmsRuntimeException; 38 import org.opencms.workplace.list.A_CmsListDialog; 39 import org.opencms.workplace.list.CmsListColumnAlignEnum; 40 import org.opencms.workplace.list.CmsListColumnDefinition; 41 import org.opencms.workplace.list.CmsListItem; 42 import org.opencms.workplace.list.CmsListMetadata; 43 import org.opencms.workplace.list.CmsListOrderEnum; 44 import org.opencms.workplace.list.CmsListPrintIAction; 45 import org.opencms.workplace.list.CmsListSearchAction; 46 import org.opencms.workplace.tools.accounts.Messages; 47 48 import java.util.ArrayList ; 49 import java.util.Date ; 50 import java.util.Iterator ; 51 import java.util.List ; 52 53 import javax.servlet.http.HttpServletRequest ; 54 import javax.servlet.http.HttpServletResponse ; 55 import javax.servlet.jsp.PageContext ; 56 57 66 public class CmsListDemo3 extends A_CmsListDialog { 67 68 69 public static final String LIST_COLUMN_ACTIVATE = "ca"; 70 71 72 public static final String LIST_COLUMN_EMAIL = "cm"; 73 74 75 public static final String LIST_COLUMN_LASTLOGIN = "cl"; 76 77 78 public static final String LIST_COLUMN_LOGIN = "ci"; 79 80 81 public static final String LIST_COLUMN_NAME = "cn"; 82 83 84 public static final String LIST_ID = "lsu1"; 85 86 91 public CmsListDemo3(CmsJspActionElement jsp) { 92 93 super( 94 jsp, 95 LIST_ID, 96 Messages.get().container(Messages.GUI_USERS_LIST_NAME_0), 97 LIST_COLUMN_LOGIN, 98 CmsListOrderEnum.ORDER_ASCENDING, 99 LIST_COLUMN_LOGIN); 100 } 101 102 109 public CmsListDemo3(PageContext context, HttpServletRequest req, HttpServletResponse res) { 110 111 this(new CmsJspActionElement(context, req, res)); 112 } 113 114 117 public void executeListMultiActions() throws CmsRuntimeException { 118 119 throwListUnsupportedActionException(); 120 } 121 122 125 public void executeListSingleActions() { 126 127 throwListUnsupportedActionException(); 128 } 129 130 133 protected void fillDetails(String detailId) { 134 135 } 137 138 141 protected List getListItems() throws CmsException { 142 143 List ret = new ArrayList (); 144 List users = getCms().getUsers(CmsUser.USER_TYPE_SYSTEMUSER); 146 Iterator itUsers = users.iterator(); 147 while (itUsers.hasNext()) { 148 CmsUser user = (CmsUser)itUsers.next(); 149 CmsListItem item = getList().newItem(user.getId().toString()); 150 item.set(LIST_COLUMN_ACTIVATE, Boolean.valueOf(user.isEnabled())); 151 item.set(LIST_COLUMN_LOGIN, user.getName()); 152 item.set(LIST_COLUMN_NAME, user.getFullName()); 153 item.set(LIST_COLUMN_EMAIL, user.getEmail()); 154 item.set(LIST_COLUMN_LASTLOGIN, new Date (user.getLastlogin())); 155 ret.add(item); 156 } 157 return ret; 158 } 159 160 163 protected void initMessages() { 164 165 addMessages(Messages.get().getBundleName()); 167 addMessages(org.opencms.workplace.demos.list.Messages.get().getBundleName()); 168 addMessages(org.opencms.workplace.demos.Messages.get().getBundleName()); 169 super.initMessages(); 171 } 172 173 176 protected void setColumns(CmsListMetadata metadata) { 177 178 CmsListColumnDefinition actCol = new CmsListColumnDefinition(LIST_COLUMN_ACTIVATE); 180 actCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_ACTIVATE_0)); 181 actCol.setWidth("30"); 182 actCol.setAlign(CmsListColumnAlignEnum.ALIGN_CENTER); 183 actCol.setSorteable(true); 184 metadata.addColumn(actCol); 185 186 CmsListColumnDefinition loginCol = new CmsListColumnDefinition(LIST_COLUMN_LOGIN); 188 loginCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_LOGIN_0)); 189 loginCol.setWidth("20%"); 190 loginCol.setSorteable(true); 191 metadata.addColumn(loginCol); 192 193 CmsListColumnDefinition nameCol = new CmsListColumnDefinition(LIST_COLUMN_NAME); 195 nameCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_USERNAME_0)); 196 nameCol.setWidth("30%"); 197 nameCol.setSorteable(true); 198 metadata.addColumn(nameCol); 199 200 CmsListColumnDefinition emailCol = new CmsListColumnDefinition(LIST_COLUMN_EMAIL); 202 emailCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_EMAIL_0)); 203 emailCol.setWidth("30%"); 204 emailCol.setSorteable(true); 205 metadata.addColumn(emailCol); 206 207 CmsListColumnDefinition lastLoginCol = new CmsListColumnDefinition(LIST_COLUMN_LASTLOGIN); 209 lastLoginCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_LASTLOGIN_0)); 210 lastLoginCol.setWidth("20%"); 211 lastLoginCol.setSorteable(true); 212 metadata.addColumn(lastLoginCol); 213 } 214 215 218 protected void setIndependentActions(CmsListMetadata metadata) { 219 220 } 222 223 226 protected void setMultiActions(CmsListMetadata metadata) { 227 228 CmsListSearchAction searchAction = new CmsListSearchAction(metadata.getColumnDefinition(LIST_COLUMN_LOGIN)); 230 searchAction.addColumn(metadata.getColumnDefinition(LIST_COLUMN_EMAIL)); 231 metadata.setSearchAction(searchAction); 232 233 metadata.getIndependentAction(CmsListPrintIAction.LIST_ACTION_ID).setVisible(false); 235 } 236 237 } | Popular Tags |