org.opencms.workplace.list
Class A_CmsSelectResourceList

java.lang.Object
  extended by org.opencms.workplace.CmsWorkplace
      extended by org.opencms.workplace.tools.CmsToolDialog
          extended by org.opencms.workplace.CmsDialog
              extended by org.opencms.workplace.list.A_CmsListDialog
                  extended by org.opencms.workplace.list.A_CmsListExplorerDialog
                      extended by org.opencms.workplace.list.A_CmsSelectResourceList
Direct Known Subclasses:
CmsNewResourceXmlContentModel

public abstract class A_CmsSelectResourceList
extends A_CmsListExplorerDialog

A base list dialog to select a resource.

This dialog can be used as part of a wizard based dialog by forwarding to it and after the selection switching back to the wizard. Necessary request parameters have to be passed through.

Since:
6.5.6
Version:
$Revision: 1.2 $
Author:
Michael Moossen, Andreas Zahner

Field Summary
static int BUTTON_FINISH
          Constant for the "Finish" button in the build button methods.
static int BUTTON_NEXT
          Constant for the "Next" button in the build button methods.
static java.lang.String LIST_COLUMN_SELECT
          List column id constant.
static java.lang.String LIST_RACTION_SEL
          List independent action id constant.
 
Fields inherited from class org.opencms.workplace.list.A_CmsListExplorerDialog
LIST_ACTION_EDIT, LIST_ACTION_LOCKICON, LIST_ACTION_PROJSTATEICON, LIST_ACTION_TYPEICON, LIST_COLUMN_DATECREATE, LIST_COLUMN_DATEEXP, LIST_COLUMN_DATELASTMOD, LIST_COLUMN_DATEREL, LIST_COLUMN_EDIT, LIST_COLUMN_LOCKEDBY, LIST_COLUMN_LOCKICON, LIST_COLUMN_NAME, LIST_COLUMN_PERMISSIONS, LIST_COLUMN_PROJSTATEICON, LIST_COLUMN_ROOT_PATH, LIST_COLUMN_SITE, LIST_COLUMN_SIZE, LIST_COLUMN_STATE, LIST_COLUMN_TITLE, LIST_COLUMN_TYPE, LIST_COLUMN_TYPEICON, LIST_COLUMN_USERCREATE, LIST_COLUMN_USERLASTMOD, LIST_DEFACTION_OPEN, PARAM_SHOW_EXPLORER, PATH_EXPLORER_LIST
 
Fields inherited from class org.opencms.workplace.list.A_CmsListDialog
ACTION_LIST_INDEPENDENT_ACTION, ACTION_LIST_MULTI_ACTION, ACTION_LIST_SEARCH, ACTION_LIST_SELECT_PAGE, ACTION_LIST_SINGLE_ACTION, ACTION_LIST_SORT, ICON_ACTIVE, ICON_ADD, ICON_DELETE, ICON_DETAILS_HIDE, ICON_DETAILS_SHOW, ICON_DISABLED, ICON_INACTIVE, ICON_MINUS, ICON_MULTI_ACTIVATE, ICON_MULTI_ADD, ICON_MULTI_DEACTIVATE, ICON_MULTI_DELETE, ICON_MULTI_MINUS, LIST_INDEPENDENT_ACTION, LIST_MULTI_ACTION, LIST_SEARCH, LIST_SELECT_PAGE, LIST_SINGLE_ACTION, LIST_SORT, PARAM_FORMNAME, PARAM_LIST_ACTION, PARAM_PAGE, PARAM_SEARCH_FILTER, PARAM_SEL_ITEMS, PARAM_SORT_COL
 
Fields inherited from class org.opencms.workplace.CmsDialog
ACTION_CANCEL, ACTION_CLOSEPOPUP, ACTION_CLOSEPOPUP_SAVE, ACTION_CONFIRMED, ACTION_CONTINUE, ACTION_DEFAULT, ACTION_LOCKS_CONFIRMED, ACTION_OK, ACTION_REPORT_BEGIN, ACTION_REPORT_END, ACTION_REPORT_UPDATE, ACTION_SET, ACTION_WAIT, ATTRIBUTE_THROWABLE, BUTTON_ADVANCED, BUTTON_BACK, BUTTON_CANCEL, BUTTON_CLOSE, BUTTON_CONTINUE, BUTTON_DETAILS, BUTTON_DISCARD, BUTTON_EDIT, BUTTON_OK, BUTTON_OK_NO_SUBMIT, BUTTON_SET, DIALOG_BACK, DIALOG_CANCEL, DIALOG_CONFIRMED, DIALOG_CONTINUE, DIALOG_INITIAL, DIALOG_LOCKS_CONFIRMED, DIALOG_OK, DIALOG_SET, DIALOG_WAIT, PARAM_ACTION, PARAM_CLOSELINK, PARAM_DIALOGTYPE, PARAM_ERRORSTACK, PARAM_FILE, PARAM_FRAMENAME, PARAM_ISPOPUP, PARAM_LOCK, PARAM_MESSAGE, PARAM_ORIGINALPARAMS, PARAM_PREACTIONDONE, PARAM_REDIRECT, PARAM_RESOURCE, PARAM_TARGET, PARAM_THREAD, PARAM_THREAD_HASNEXT, PARAM_TITLE, REPORT_BEGIN, REPORT_END, REPORT_UPDATE
 
Fields inherited from class org.opencms.workplace.tools.CmsToolDialog
PARAM_BASE, PARAM_PATH, PARAM_ROOT, PARAM_STYLE, STYLE_NEW
 
Fields inherited from class org.opencms.workplace.CmsWorkplace
DEBUG, DEFAULT_LANGUAGE, DEFAULT_LOCALE, DIALOG_PATH_COMMON, FILE_DIALOG_CLOSE, FILE_DIALOG_SCREEN_CONFIRM, FILE_DIALOG_SCREEN_ERROR, FILE_DIALOG_SCREEN_ERRORPAGE, FILE_DIALOG_SCREEN_WAIT, FILE_EXPLORER_FILELIST, FILE_REPORT_OUTPUT, HTML_END, HTML_START, PARAM_WP_EXPLORER_RESOURCE, PARAM_WP_PROJECT, PARAM_WP_SITE, PATH_DIALOGS, PATH_WORKPLACE, REQUEST_ATTRIBUTE_MULTIPART, REQUEST_ATTRIBUTE_RELOADTREE, RFS_PATH_RESOURCES, SESSION_WORKPLACE_CLASS, TEMP_FILE_PREFIX, VFS_DIR_DEFAULTBODIES, VFS_DIR_TEMPLATES, VFS_PATH_COMMONS, VFS_PATH_EDITORS, VFS_PATH_GALLERIES, VFS_PATH_LOCALES, VFS_PATH_MODULES, VFS_PATH_RESOURCES, VFS_PATH_SYSTEM, VFS_PATH_VIEWS, VFS_PATH_WORKPLACE
 
Constructor Summary
protected A_CmsSelectResourceList(CmsJspActionElement jsp, java.lang.String listId, CmsMessageContainer listName)
          Creates a new select resource list ordered and searchable by name.
protected A_CmsSelectResourceList(CmsJspActionElement jsp, java.lang.String listId, CmsMessageContainer listName, java.lang.String sortedColId, CmsListOrderEnum sortOrder, java.lang.String searchableColId)
          Default constructor.
 
Method Summary
 void actionDialog()
          Override this to set additional parameters before forwarding or to change the forward target.
protected  java.lang.String customHtmlEnd()
          Can be overwritten to add some code after the list.
protected  java.lang.String customHtmlStart()
          Can be overwritten to add some code before the list.
 java.lang.String dialogButtons()
          Builds a default button row with a continue and cancel button.
protected  void dialogButtonsHtml(java.lang.StringBuffer result, int button, java.lang.String attribute)
          Renders the HTML for a single input button of a specified type.
 void displayDialog()
          Performs the dialog actions depending on the initialized action and displays the dialog form.
 void executeListMultiActions()
          This method should handle every defined list multi action, by comparing A_CmsListDialog.getParamListAction() with the id of the action to execute.
 void executeListSingleActions()
          This method should handle every defined list single action, by comparing A_CmsListDialog.getParamListAction() with the id of the action to execute.
protected  void fillDetails(java.lang.String detailId)
          Lazy initialization for detail data.
abstract  java.lang.String getListTitle()
          Returns the title of the list to display.
 java.lang.String getSelectedResourceName()
          Returns the resource name of the selected resource.
protected  void initWorkplaceRequestValues(CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request)
          Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.
protected  boolean isColumnVisible(int colFlag)
          The following columns are visible by default: type icon, resource name, title and last modification date.
abstract  java.lang.String nextUrl()
          Returns the url to forward the parameters after selection.
protected  void setColumns(CmsListMetadata metadata)
          Adds the standard explorer view columns to the list.
protected  void setMultiActions(CmsListMetadata metadata)
          Should add the multi actions to the given list metadata object.
 
Methods inherited from class org.opencms.workplace.list.A_CmsListExplorerDialog
applyColumnVisibilities, defaultActionHtmlStart, executeListIndepActions, executeSelectPage, fillList, getCollector, getColVisibilities, getListItems, getListStateForCollector, getParamShowexplorer, getProject, getResourceUtil, getResourceUtil, setColumnVisibilities, setColumnVisibility, setColVisibilities, setIndependentActions, setParamShowexplorer
 
Methods inherited from class org.opencms.workplace.list.A_CmsListDialog
defaultActionHtml, defaultActionHtmlContent, defaultActionHtmlEnd, displayDialog, executeDefaultActions, executeSearch, executeSort, getList, getListId, getListObject, getListState, getMetadata, getMetadata, getParamFormName, getParamListAction, getParamPage, getParamSearchFilter, getParamSelItems, getParamSortCol, getSelectedItem, getSelectedItems, initializeDetail, isActive, listRecovery, listSave, refreshList, removeList, setList, setListObject, setParamFormName, setParamListAction, setParamPage, setParamSearchFilter, setParamSelItems, setParamSortCol, setSearchAction, throwListUnsupportedActionException, validateParamaters, writeDialog
 
Methods inherited from class org.opencms.workplace.CmsDialog
actionCloseDialog, appendDelimiter, buildAjaxResultContainer, buildAjaxWaitMessage, buildLockAdditionalOptions, buildLockConfirmationMessageJS, buildLockDialog, buildLockDialog, buildLockHeaderBox, checkResourcePermissions, checkResourcePermissions, computeCurrentFolder, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsOk, dialogButtonsOk, dialogButtonsOkCancel, dialogButtonsOkCancel, dialogButtonsOkCancelAdvanced, dialogButtonsSetOkCancel, dialogContent, dialogContentEnd, dialogContentStart, dialogEnd, dialogHead, dialogHorizontalSpacer, dialogLockButtons, dialogRow, dialogRowEnd, dialogRowStart, dialogScriptSubmit, dialogSeparator, dialogSpacer, dialogStart, dialogStart, dialogSubheadline, dialogToggleStart, dialogWhiteBox, dialogWhiteBoxEnd, dialogWhiteBoxStart, getAction, getAdministrationBackLink, getCancelAction, getDialogRealUri, getDialogUri, getOnlineHelpUriCustom, getParamAction, getParamCloseLink, getParamDialogtype, getParamFramename, getParamIsPopup, getParamMessage, getParamOriginalParams, getParamPreActionDone, getParamRedirect, getParamResource, getParamTitle, getState, hasCorrectLockstate, hasSiblings, htmlStart, htmlStart, htmlStart, htmlStartStyle, includeErrorpage, initCmsDialog, isPopup, isPreEditor, pageHtml, pageHtml, setAction, setOnlineHelpUriCustom, setParamAction, setParamCloseLink, setParamDialogtype, setParamFramename, setParamIsPopup, setParamMessage, setParamOriginalParams, setParamPreActionDone, setParamRedirect, setParamResource, setParamTitle
 
Methods inherited from class org.opencms.workplace.tools.CmsToolDialog
dialogTitle, getAdminTool, getCurrentToolPath, getParamBase, getParamPath, getParamRoot, getParamStyle, getParentPath, getToolManager, iconsBlockArea, iconsBlockAreaEnd, iconsBlockAreaStart, initAdminTool, pageBody, pageHtmlStyle, setParamBase, setParamPath, setParamRoot, setParamStyle, useNewStyle
 
Methods inherited from class org.opencms.workplace.CmsWorkplace
addMessages, addMessages, allParamsAsHidden, allParamsAsRequest, allParamValues, bodyEnd, bodyStart, bodyStart, buildSelect, buildSelect, button, button, buttonBar, buttonBar, buttonBarHorizontalLine, buttonBarLabel, buttonBarLabel, buttonBarLine, buttonBarLineSpacer, buttonBarSeparator, buttonBarSpacer, buttonBarStartTab, checkLock, checkLock, checkRole, decodeParamValue, fillParamValues, fillParamValues, getBroadcastMessageString, getCms, getEncoding, getExplorerFileListFullUri, getFrameSource, getJsp, getLocale, getMacroResolver, getMessages, getMultiPartFileItems, getParameterMap, getResourceUri, getResourceUri, getSession, getSettings, getSkinUri, getStyleUri, getStyleUri, getStyleUri, getTemporaryFileName, htmlEnd, initMessages, initSettings, initTimeWarp, initUserSettings, initWorkplaceMembers, initWorkplaceSettings, isForwarded, isHelpEnabled, isSubElement, isTemporaryFile, isTemporaryFileName, key, key, keyDefault, nullToEmpty, paramsAsHidden, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, switchToCurrentProject, switchToTempProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BUTTON_FINISH

public static final int BUTTON_FINISH
Constant for the "Finish" button in the build button methods.

See Also:
Constant Field Values

BUTTON_NEXT

public static final int BUTTON_NEXT
Constant for the "Next" button in the build button methods.

See Also:
Constant Field Values

LIST_COLUMN_SELECT

public static final java.lang.String LIST_COLUMN_SELECT
List column id constant.

See Also:
Constant Field Values

LIST_RACTION_SEL

public static final java.lang.String LIST_RACTION_SEL
List independent action id constant.

See Also:
Constant Field Values
Constructor Detail

A_CmsSelectResourceList

protected A_CmsSelectResourceList(CmsJspActionElement jsp,
                                  java.lang.String listId,
                                  CmsMessageContainer listName)
Creates a new select resource list ordered and searchable by name.

Parameters:
jsp - an initialized JSP action element
listId - the id of the displayed list
listName - the name of the list

A_CmsSelectResourceList

protected A_CmsSelectResourceList(CmsJspActionElement jsp,
                                  java.lang.String listId,
                                  CmsMessageContainer listName,
                                  java.lang.String sortedColId,
                                  CmsListOrderEnum sortOrder,
                                  java.lang.String searchableColId)
Default constructor.

Parameters:
jsp - an initialized JSP action element
listId - the id of the displayed list
listName - the name of the list
sortedColId - the a priory sorted column
sortOrder - the order of the sorted column
searchableColId - the column to search into
Method Detail

actionDialog

public void actionDialog()
                  throws javax.servlet.jsp.JspException,
                         javax.servlet.ServletException,
                         java.io.IOException
Override this to set additional parameters before forwarding or to change the forward target.

Usually you have to set the "action" parameter to another value before forwarding.

Overrides:
actionDialog in class A_CmsListDialog
Throws:
javax.servlet.jsp.JspException - if dialog actions fail
javax.servlet.ServletException - in case of errros forwarding to the required result page
java.io.IOException - in case of errros forwarding to the required result page
See Also:
A_CmsListDialog.actionDialog()

dialogButtons

public java.lang.String dialogButtons()
Builds a default button row with a continue and cancel button.

Override this to have special buttons for your dialog.

Returns:
the button row

executeListMultiActions

public void executeListMultiActions()
Description copied from class: A_CmsListDialog
This method should handle every defined list multi action, by comparing A_CmsListDialog.getParamListAction() with the id of the action to execute.

Specified by:
executeListMultiActions in class A_CmsListDialog
See Also:
A_CmsListDialog.executeListMultiActions()

executeListSingleActions

public void executeListSingleActions()
Description copied from class: A_CmsListDialog
This method should handle every defined list single action, by comparing A_CmsListDialog.getParamListAction() with the id of the action to execute.

Specified by:
executeListSingleActions in class A_CmsListDialog
See Also:
A_CmsListDialog.executeListSingleActions()

getSelectedResourceName

public java.lang.String getSelectedResourceName()
Returns the resource name of the selected resource.

Returns:
the resource name of the selected resource or null if no resource was selected

displayDialog

public void displayDialog()
                   throws javax.servlet.jsp.JspException,
                          java.io.IOException,
                          javax.servlet.ServletException
Description copied from class: A_CmsListDialog
Performs the dialog actions depending on the initialized action and displays the dialog form.

Overrides:
displayDialog in class A_CmsListDialog
Throws:
javax.servlet.jsp.JspException - if dialog actions fail
java.io.IOException - if writing to the JSP out fails, or in case of errros forwarding to the required result page
javax.servlet.ServletException - in case of errros forwarding to the required result page
See Also:
A_CmsListDialog.displayDialog()

getListTitle

public abstract java.lang.String getListTitle()
Returns the title of the list to display.

Returns:
the title of the list to display

nextUrl

public abstract java.lang.String nextUrl()
Returns the url to forward the parameters after selection.

Returns:
the url to forward the parameters after selection

customHtmlEnd

protected java.lang.String customHtmlEnd()
Description copied from class: A_CmsListDialog
Can be overwritten to add some code after the list.

Overrides:
customHtmlEnd in class A_CmsListDialog
Returns:
custom html code
See Also:
A_CmsListDialog.customHtmlEnd()

customHtmlStart

protected java.lang.String customHtmlStart()
Description copied from class: A_CmsListDialog
Can be overwritten to add some code before the list.

Overrides:
customHtmlStart in class A_CmsListDialog
Returns:
custom html code
See Also:
A_CmsListDialog.customHtmlStart()

dialogButtonsHtml

protected void dialogButtonsHtml(java.lang.StringBuffer result,
                                 int button,
                                 java.lang.String attribute)
Description copied from class: CmsDialog
Renders the HTML for a single input button of a specified type.

Overrides:
dialogButtonsHtml in class CmsDialog
Parameters:
result - a string buffer where the rendered HTML gets appended to
button - a integer key to identify the button
attribute - an optional string with possible tag attributes, or null
See Also:
CmsDialog.dialogButtonsHtml(java.lang.StringBuffer, int, java.lang.String)

fillDetails

protected void fillDetails(java.lang.String detailId)
Description copied from class: A_CmsListDialog
Lazy initialization for detail data.

Should fill the given detail column for every list item in CmsHtmlList.getContent() Should not throw any kind of exception.

Specified by:
fillDetails in class A_CmsListDialog
Parameters:
detailId - the id of the detail to initialize
See Also:
A_CmsListDialog.fillDetails(java.lang.String)

initWorkplaceRequestValues

protected void initWorkplaceRequestValues(CmsWorkplaceSettings settings,
                                          javax.servlet.http.HttpServletRequest request)
Description copied from class: CmsWorkplace
Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.

Overrides:
initWorkplaceRequestValues in class A_CmsListExplorerDialog
Parameters:
settings - the workplace settings
request - the current request
See Also:
A_CmsListExplorerDialog.initWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings, javax.servlet.http.HttpServletRequest)

isColumnVisible

protected boolean isColumnVisible(int colFlag)
The following columns are visible by default: type icon, resource name, title and last modification date.

Override this to set different column visibilities.

Overrides:
isColumnVisible in class A_CmsListExplorerDialog
Parameters:
colFlag - some CmsUserSettings.FILELIST_TITLE like value identifying the column to get the visibility flag for
Returns:
the visibility flag for the given column
See Also:
A_CmsListExplorerDialog.isColumnVisible(int)

setColumns

protected void setColumns(CmsListMetadata metadata)
Description copied from class: A_CmsListExplorerDialog
Adds the standard explorer view columns to the list.

Overrides:
setColumns in class A_CmsListExplorerDialog
Parameters:
metadata - the list metadata
See Also:
A_CmsListExplorerDialog.setColumns(org.opencms.workplace.list.CmsListMetadata)

setMultiActions

protected void setMultiActions(CmsListMetadata metadata)
Description copied from class: A_CmsListDialog
Should add the multi actions to the given list metadata object.

This method will be just executed once, the first time the constructor is called.

Specified by:
setMultiActions in class A_CmsListDialog
Parameters:
metadata - the list metadata
See Also:
A_CmsListDialog.setMultiActions(org.opencms.workplace.list.CmsListMetadata)