a_cmsuserslist.java
来自「找了很久才找到到源代码」· Java 代码 · 共 741 行 · 第 1/3 页
JAVA
741 行
groupCol.setWidth("20");
groupCol.setAlign(CmsListColumnAlignEnum.ALIGN_CENTER);
groupCol.setSorteable(false);
// add groups action
CmsListDirectAction groupAction = new CmsListDirectAction(LIST_ACTION_GROUPS);
groupAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_GROUPS_NAME_0));
groupAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_GROUPS_HELP_0));
groupAction.setIconPath(getGroupIcon());
groupCol.addDirectAction(groupAction);
// add it to the list definition
metadata.addColumn(groupCol);
// create column for edit role
CmsListColumnDefinition roleCol = new CmsListColumnDefinition(LIST_COLUMN_ROLE);
roleCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_ROLE_0));
roleCol.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_COLS_ROLE_HELP_0));
roleCol.setWidth("20");
roleCol.setAlign(CmsListColumnAlignEnum.ALIGN_CENTER);
roleCol.setSorteable(false);
// add switch action
CmsListDirectAction roleAction = new CmsListDirectAction(LIST_ACTION_ROLE);
roleAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_ROLE_NAME_0));
roleAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_ROLE_HELP_0));
roleAction.setIconPath(getRoleIcon());
roleCol.addDirectAction(roleAction);
// add it to the list definition
metadata.addColumn(roleCol);
// create column for activation/deactivation
CmsListColumnDefinition actCol = new CmsListColumnDefinition(LIST_COLUMN_ACTIVATE);
actCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_ACTIVATE_0));
actCol.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_COLS_ACTIVATE_HELP_0));
actCol.setWidth("20");
actCol.setAlign(CmsListColumnAlignEnum.ALIGN_CENTER);
actCol.setListItemComparator(new CmsListItemActionIconComparator());
// activate action
CmsListDirectAction actAction = new CmsListDirectAction(LIST_ACTION_ACTIVATE) {
/**
* @see org.opencms.workplace.tools.A_CmsHtmlIconButton#isVisible()
*/
public boolean isVisible() {
if (getItem() != null) {
String usrId = getItem().getId();
try {
return !getCms().readUser(new CmsUUID(usrId)).isEnabled();
} catch (CmsException e) {
return false;
}
}
return super.isVisible();
}
};
actAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_ACTIVATE_NAME_0));
actAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_ACTIVATE_HELP_0));
actAction.setConfirmationMessage(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_ACTIVATE_CONF_0));
actAction.setIconPath(ICON_INACTIVE);
actCol.addDirectAction(actAction);
// deactivate action
CmsListDirectAction deactAction = new CmsListDirectAction(LIST_ACTION_DEACTIVATE) {
/**
* @see org.opencms.workplace.tools.A_CmsHtmlIconButton#isVisible()
*/
public boolean isVisible() {
if (getItem() != null) {
String usrId = getItem().getId();
try {
return getCms().readUser(new CmsUUID(usrId)).isEnabled();
} catch (CmsException e) {
return false;
}
}
return super.isVisible();
}
};
deactAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_DEACTIVATE_NAME_0));
deactAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_DEACTIVATE_HELP_0));
deactAction.setConfirmationMessage(Messages.get().container(Messages.GUI_USERS_LIST_ACTION_DEACTIVATE_CONF_0));
deactAction.setIconPath(ICON_ACTIVE);
actCol.addDirectAction(deactAction);
// add it to the list definition
metadata.addColumn(actCol);
// create column for deletion
CmsListColumnDefinition deleteCol = new CmsListColumnDefinition(LIST_COLUMN_DELETE);
deleteCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_DELETE_0));
deleteCol.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_COLS_DELETE_HELP_0));
deleteCol.setWidth("20");
deleteCol.setAlign(CmsListColumnAlignEnum.ALIGN_CENTER);
deleteCol.setSorteable(false);
// add delete action
setDeleteAction(deleteCol);
m_deleteActionIds.addAll(deleteCol.getDirectActionIds());
// add it to the list definition
metadata.addColumn(deleteCol);
// create column for login
CmsListColumnDefinition loginCol = new CmsListColumnDefinition(LIST_COLUMN_LOGIN);
metadata.addColumn(loginCol);
loginCol.setVisible(false);
// create column for display name
CmsListColumnDefinition displayCol = new CmsListColumnDefinition(LIST_COLUMN_DISPLAY);
displayCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_LOGIN_0));
displayCol.setWidth("20%");
// create default edit action
CmsListDefaultAction defEditAction = new CmsListDefaultAction(LIST_DEFACTION_EDIT);
defEditAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_DEFACTION_EDIT_NAME_0));
defEditAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_DEFACTION_EDIT_HELP_0));
displayCol.addDefaultAction(defEditAction);
// add it to the list definition
metadata.addColumn(displayCol);
// add column for name
CmsListColumnDefinition nameCol = new CmsListColumnDefinition(LIST_COLUMN_NAME);
nameCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_USERNAME_0));
nameCol.setWidth("30%");
metadata.addColumn(nameCol);
// add column for email
CmsListColumnDefinition emailCol = new CmsListColumnDefinition(LIST_COLUMN_EMAIL);
emailCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_EMAIL_0));
emailCol.setWidth("30%");
metadata.addColumn(emailCol);
// add column for last login date
CmsListColumnDefinition lastLoginCol = new CmsListColumnDefinition(LIST_COLUMN_LASTLOGIN);
lastLoginCol.setName(Messages.get().container(Messages.GUI_USERS_LIST_COLS_LASTLOGIN_0));
lastLoginCol.setWidth("20%");
lastLoginCol.setFormatter(CmsListDateMacroFormatter.getDefaultDateFormatter());
metadata.addColumn(lastLoginCol);
}
/**
* Sets the needed delete action(s).<p>
*
* @param deleteCol the list column for deletion.
*/
protected abstract void setDeleteAction(CmsListColumnDefinition deleteCol);
/**
* Sets the needed edit action(s).<p>
*
* @param editCol the list column for edition.
*/
protected abstract void setEditAction(CmsListColumnDefinition editCol);
/**
* @see org.opencms.workplace.list.A_CmsListDialog#setIndependentActions(org.opencms.workplace.list.CmsListMetadata)
*/
protected void setIndependentActions(CmsListMetadata metadata) {
// add user address details
CmsListItemDetails userAddressDetails = new CmsListItemDetails(LIST_DETAIL_ADDRESS);
userAddressDetails.setAtColumn(LIST_COLUMN_DISPLAY);
userAddressDetails.setVisible(false);
userAddressDetails.setShowActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_ADDRESS_NAME_0));
userAddressDetails.setShowActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_ADDRESS_HELP_0));
userAddressDetails.setHideActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_ADDRESS_NAME_0));
userAddressDetails.setHideActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_ADDRESS_HELP_0));
userAddressDetails.setName(Messages.get().container(Messages.GUI_USERS_DETAIL_ADDRESS_NAME_0));
userAddressDetails.setFormatter(new CmsListItemDetailsFormatter(Messages.get().container(
Messages.GUI_USERS_DETAIL_ADDRESS_NAME_0)));
metadata.addItemDetails(userAddressDetails);
// add user groups details
CmsListItemDetails userGroupsDetails = new CmsListItemDetails(LIST_DETAIL_GROUPS);
userGroupsDetails.setAtColumn(LIST_COLUMN_DISPLAY);
userGroupsDetails.setVisible(false);
userGroupsDetails.setShowActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_GROUPS_NAME_0));
userGroupsDetails.setShowActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_GROUPS_HELP_0));
userGroupsDetails.setHideActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_GROUPS_NAME_0));
userGroupsDetails.setHideActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_GROUPS_HELP_0));
userGroupsDetails.setName(Messages.get().container(Messages.GUI_USERS_DETAIL_GROUPS_NAME_0));
userGroupsDetails.setFormatter(new CmsListItemDetailsFormatter(Messages.get().container(
Messages.GUI_USERS_DETAIL_GROUPS_NAME_0)));
metadata.addItemDetails(userGroupsDetails);
// add user roles details
CmsListItemDetails userRolesDetails = new CmsListItemDetails(LIST_DETAIL_ROLES);
userRolesDetails.setAtColumn(LIST_COLUMN_DISPLAY);
userRolesDetails.setVisible(false);
userRolesDetails.setShowActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_ROLES_NAME_0));
userRolesDetails.setShowActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_SHOW_ROLES_HELP_0));
userRolesDetails.setHideActionName(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_ROLES_NAME_0));
userRolesDetails.setHideActionHelpText(Messages.get().container(Messages.GUI_USERS_DETAIL_HIDE_ROLES_HELP_0));
userRolesDetails.setName(Messages.get().container(Messages.GUI_USERS_DETAIL_ROLES_NAME_0));
userRolesDetails.setFormatter(new CmsListItemDetailsFormatter(Messages.get().container(
Messages.GUI_USERS_DETAIL_ROLES_NAME_0)));
metadata.addItemDetails(userRolesDetails);
// makes the list searchable
CmsListSearchAction searchAction = new CmsListSearchAction(metadata.getColumnDefinition(LIST_COLUMN_DISPLAY));
searchAction.addColumn(metadata.getColumnDefinition(LIST_COLUMN_NAME));
metadata.setSearchAction(searchAction);
}
/**
* @see org.opencms.workplace.list.A_CmsListDialog#setMultiActions(org.opencms.workplace.list.CmsListMetadata)
*/
protected void setMultiActions(CmsListMetadata metadata) {
// add delete multi action
CmsListMultiAction deleteMultiAction = new CmsListMultiAction(LIST_MACTION_DELETE);
deleteMultiAction.setName(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_DELETE_NAME_0));
deleteMultiAction.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_DELETE_HELP_0));
deleteMultiAction.setConfirmationMessage(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_DELETE_CONF_0));
deleteMultiAction.setIconPath(ICON_MULTI_DELETE);
metadata.addMultiAction(deleteMultiAction);
// add the activate user multi action
CmsListMultiAction activateUser = new CmsListMultiAction(LIST_MACTION_ACTIVATE);
activateUser.setName(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_ACTIVATE_NAME_0));
activateUser.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_ACTIVATE_HELP_0));
activateUser.setConfirmationMessage(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_ACTIVATE_CONF_0));
activateUser.setIconPath(ICON_MULTI_ACTIVATE);
metadata.addMultiAction(activateUser);
// add the deactivate user multi action
CmsListMultiAction deactivateUser = new CmsListMultiAction(LIST_MACTION_DEACTIVATE);
deactivateUser.setName(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_DEACTIVATE_NAME_0));
deactivateUser.setHelpText(Messages.get().container(Messages.GUI_USERS_LIST_MACTION_DEACTIVATE_HELP_0));
deactivateUser.setConfirmationMessage(Messages.get().container(
Messages.GUI_USERS_LIST_MACTION_DEACTIVATE_CONF_0));
deactivateUser.setIconPath(ICON_MULTI_DEACTIVATE);
metadata.addMultiAction(deactivateUser);
}
/**
* @see org.opencms.workplace.list.A_CmsListDialog#validateParamaters()
*/
protected void validateParamaters() throws Exception {
// test the needed parameters
OpenCms.getRoleManager().checkRole(getCms(), CmsRole.ACCOUNT_MANAGER.forOrgUnit(getParamOufqn()));
OpenCms.getOrgUnitManager().readOrganizationalUnit(getCms(), getParamOufqn()).getName();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?