Class CmsPropertyCustom
- All Implemented Interfaces:
org.opencms.configuration.I_CmsConfigurationParameterHandler
,org.opencms.workplace.I_CmsDialogHandler
,org.opencms.workplace.I_CmsPostUploadDialogHandler
- Direct Known Subclasses:
CmsDialogProperty
This is a special dialog that is used for the different resource types in the workplace.
For the xmlpage resource type, this class is extended in the editor subpackage.
The following files use this class:
- /commons/property_custom.jsp
- Since:
- 6.0.0
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
Value for the action: edit the properties.Fields inherited from class org.opencms.workplace.commons.CmsPropertyAdvanced
ACTION_SAVE_DEFINE, ACTION_SAVE_EDIT, ACTION_SHOW_DEFINE, ACTION_SHOW_EDIT, BUTTON_DEFINE, BUTTON_FINISH, DIALOG_SAVE_DEFINE, DIALOG_SAVE_EDIT, DIALOG_SHOW_DEFAULT, DIALOG_SHOW_DEFINE, DIALOG_SHOW_EDIT, DIALOG_TYPE, MODE_WIZARD, MODE_WIZARD_CREATEINDEX, MODE_WIZARD_INDEXCREATED, PANEL_RESOURCE, PANEL_STRUCTURE, PARAM_DIALOGMODE, PARAM_HIDEADVANCED, PARAM_NEWPROPERTY, PARAM_POSTUPLOADHANDLER, PARAM_SHOWGROUP, PREFIX_HIDDEN, PREFIX_RESOURCE, PREFIX_STRUCTURE, PREFIX_USEPROPERTY, PREFIX_VALUE, TAB_RESOURCE, TAB_STRUCTURE, URI_PROPERTY_CUSTOM_DIALOG, URI_PROPERTY_DIALOG, URI_PROPERTY_DIALOG_HANDLER
Fields inherited from class org.opencms.workplace.CmsTabDialog
ACTION_SWITCHTAB, DIALOG_SWITCHTAB, PARAM_SETPRESSED, PARAM_TAB
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_ACTION_VALUE_FOR_CHANGED_INDEX, 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_ADMIN_PROJECT, PARAM_BASE, PARAM_FORCE, PARAM_PATH, PARAM_ROOT, PARAM_STYLE, STYLE_NEW
Fields inherited from class org.opencms.workplace.CmsWorkplace
DEBUG, DEFAULT_DATE_STRING, 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, INPUT_DEFAULT, INPUT_NONE, JSP_WORKPLACE_URI, PARAM_DIRECTPUBLISH, PARAM_MODELFILE, PARAM_NEWRESOURCETYPE, PARAM_PUBLISHSIBLINGS, PARAM_RELATEDRESOURCES, PARAM_RESOURCELIST, PARAM_SUBRESOURCES, PARAM_WP_EXPLORER_RESOURCE, PARAM_WP_PROJECT, PARAM_WP_SITE, PARAM_WP_START, PARAM_WP_VIEW, PATH_DIALOGS, PATH_WORKPLACE, REQUEST_ATTRIBUTE_MULTIPART, REQUEST_ATTRIBUTE_RELOADTREE, RES_PATH_FILETYPES, RFS_PATH_RESOURCES, SESSION_WORKPLACE_CLASS, VFS_DIR_DEFAULTBODIES, VFS_DIR_TEMPLATES, VFS_PATH_COMMONS, VFS_PATH_EDITORS, VFS_PATH_GALLERIES, VFS_PATH_LOCALES, VFS_PATH_MODELDIALOG, VFS_PATH_MODULES, VFS_PATH_NEWRESOURCEDIALOG, VFS_PATH_RESOURCES, VFS_PATH_SITES, VFS_PATH_SYSTEM, VFS_PATH_VIEWS, VFS_PATH_WORKPLACE, VIEW_ADMIN, VIEW_DIRECT_EDIT, VIEW_EXPLORER, VIEW_GALLERY, VIEW_LIST, VIEW_WORKPLACE
Fields inherited from interface org.opencms.configuration.I_CmsConfigurationParameterHandler
ADD_PARAMETER_METHOD, INIT_CONFIGURATION_METHOD
-
Constructor Summary
ConstructorDescriptionCmsPropertyCustom
(javax.servlet.jsp.PageContext context, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res) Public constructor with JSP variables.CmsPropertyCustom
(org.opencms.jsp.CmsJspActionElement jsp) Public constructor with JSP action element. -
Method Summary
Modifier and TypeMethodDescriptionvoid
actionEdit
(javax.servlet.http.HttpServletRequest request) Performs the edit properties action, will be called by the JSP page.Creates the HTML String for the edit properties form.protected StringBuffer
buildNavigationProperties
(boolean editable) Builds the HTML code for the special properties of an xmlpage resource.protected StringBuffer
buildPropertyEntry
(String propertyName, String propertyTitle, boolean editable) Builds the html for a single text input property row.Builds the JavaScript to set the property form values delayed.protected String
Builds the HTML for the end of a table row for a single property.protected StringBuffer
buildTableRowStart
(String propertyName) Builds the HTML for the start of a table row for a single property.protected StringBuffer
buildTextInput
(boolean editable) Builds the HTML for the common text input property values stored in the String array "PROPERTIES".dialogButtonsOkCancelAdvanced
(String okAttributes, String cancelAttributes, String advancedAttributes) Builds a button row with an "ok", a "cancel" and an "advanced" button.org.opencms.workplace.explorer.CmsExplorerTypeSettings
Returns the explorer type settings for the current resource type.protected void
Initializes the explorer type settings for the current resource type.protected void
initWorkplaceRequestValues
(org.opencms.workplace.CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request) protected boolean
Checks the optional parameters of the handler configuration.protected boolean
performEditOperation
(javax.servlet.http.HttpServletRequest request) Performs the editing of the resources properties.void
setExplorerTypeSettings
(org.opencms.workplace.explorer.CmsExplorerTypeSettings typeSettings) Sets the explorer type settings for the current resource type.void
setShowNavigation
(boolean showNav) Sets if navigation properties are shown.boolean
Returns if navigation properties are shown.protected void
writeProperty
(String propName, String propValue, String oldValue) Writes a property value for a resource, if the value was changed.Methods inherited from class org.opencms.workplace.commons.CmsPropertyAdvanced
actionCloseDialog, actionDefine, actionDeleteResource, addConfigurationParameter, buildActivePropertiesList, dialogButtonsHtml, dialogButtonsOkCancelDefine, getActiveProperties, getConfiguration, getDialogHandler, getDialogUri, getParamDialogmode, getParamIndexPageType, getParamNewproperty, getParamUsetempfileproject, getPropertyMap, getSettingsForType, getTabParameterOrder, getTabs, getUploadHook, initConfiguration, isEditable, setParamDialogmode, setParamIndexPageType, setParamNewproperty, setParamUsetempfileproject
Methods inherited from class org.opencms.workplace.CmsTabDialog
dialogTabContent, dialogTabContentEnd, dialogTabContentStart, dialogTabContentStart, dialogTabRow, getActiveTab, getActiveTabName, getParamSetPressed, getParamTab, htmlStart, htmlStart, paramsAsHidden, setParamSetPressed, setParamTab
Methods inherited from class org.opencms.workplace.CmsDialog
appendDelimiter, buildAjaxResultContainer, buildAjaxWaitMessage, buildLockAdditionalOptions, buildLockConfirmationMessageJS, buildLockHeaderBox, checkResourcePermissions, checkResourcePermissions, computeCurrentFolder, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsOk, dialogButtonsOk, dialogButtonsOkCancel, dialogButtonsOkCancel, 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, htmlStartStyle, includeErrorpage, initCmsDialog, isPopup, isPreEditor, openLaunchpad, openWorkplaceLink, pageHtml, pageHtml, setAction, setOnlineHelpUriCustom, setParamAction, setParamCloseLink, setParamDialogtype, setParamFramename, setParamIsPopup, setParamMessage, setParamOriginalParams, setParamPreActionDone, setParamRedirect, setParamResource, setParamTitle
Methods inherited from class org.opencms.workplace.tools.CmsToolDialog
computeUpLevelLink, dialogTitle, getAdminTool, getCurrentToolPath, getParamBase, getParamForce, getParamPath, getParamRoot, getParamStyle, getParentPath, getToolManager, iconsBlockArea, iconsBlockAreaEnd, iconsBlockAreaStart, initAdminTool, pageBody, pageHtmlStyle, setParamBase, setParamForce, 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, canEditPermissionsForRoles, checkLock, checkLock, checkRole, decodeParamValue, fillParamValues, fillParamValues, generateCssStyle, generatePageEndExtended, generatePageEndSimple, generatePageStartExtended, generatePageStartSimple, getBroadcastMessageString, getCms, getEncoding, getExplorerFileListFullUri, getFrameSource, getJsp, getLocale, getMacroResolver, getMessages, getMultiPartFileItems, getParameterMap, getResourceUri, getResourceUri, getSession, getSettings, getSkinUri, getStartSiteRoot, getStartSiteRoot, getStaticResourceUri, getStaticResourceUri, getStyleUri, getStyleUri, getStyleUri, getTemporaryFileName, getWorkplaceExplorerLink, getWorkplaceExplorerLink, getWorkplaceSettings, htmlEnd, initMessages, initSettings, initTimeWarp, initUserSettings, initWorkplaceMembers, initWorkplaceMembers, initWorkplaceSettings, isForwarded, isHelpEnabled, isSubElement, isTemporaryFile, key, key, keyDefault, nullToEmpty, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, substituteSiteTitle, substituteSiteTitleStatic, switchToCurrentProject, switchToTempProject, updateUserPreferences
-
Field Details
-
ACTION_EDIT
Value for the action: edit the properties.- See Also:
-
-
Constructor Details
-
CmsPropertyCustom
Public constructor with JSP action element.- Parameters:
jsp
- an initialized JSP action element
-
CmsPropertyCustom
public CmsPropertyCustom(javax.servlet.jsp.PageContext context, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse res) Public constructor with JSP variables.- Parameters:
context
- the JSP page contextreq
- the JSP requestres
- the JSP response
-
-
Method Details
-
actionEdit
public void actionEdit(javax.servlet.http.HttpServletRequest request) throws javax.servlet.jsp.JspException Performs the edit properties action, will be called by the JSP page.- Overrides:
actionEdit
in classCmsPropertyAdvanced
- Parameters:
request
- the HttpServletRequest- Throws:
javax.servlet.jsp.JspException
- if problems including sub-elements occur
-
buildEditForm
Creates the HTML String for the edit properties form.- Overrides:
buildEditForm
in classCmsPropertyAdvanced
- Returns:
- the HTML output String for the edit properties form
-
buildSetFormValues
Builds the JavaScript to set the property form values delayed.The values of the properties are not inserted directly in the <input> tag, because there is a display issue when the property values are very long. This method creates JavaScript to set the property input field values delayed. On the JSP, the code which is created from this method has to be executed delayed after the creation of the html form, e.g. in the <body> tag with the attribute onload="window.setTimeout('doSet()',50);".
- Overrides:
buildSetFormValues
in classCmsPropertyAdvanced
- Returns:
- the JavaScript to set the property form values delayed
-
dialogButtonsOkCancelAdvanced
public String dialogButtonsOkCancelAdvanced(String okAttributes, String cancelAttributes, String advancedAttributes) Builds a button row with an "ok", a "cancel" and an "advanced" button.- Overrides:
dialogButtonsOkCancelAdvanced
in classorg.opencms.workplace.CmsDialog
- Parameters:
okAttributes
- additional attributes for the "ok" buttoncancelAttributes
- additional attributes for the "cancel" buttonadvancedAttributes
- additional attributes for the "advanced" button- Returns:
- the button row
-
getExplorerTypeSettings
Returns the explorer type settings for the current resource type.- Returns:
- the explorer type settings for the current resource type
-
setExplorerTypeSettings
public void setExplorerTypeSettings(org.opencms.workplace.explorer.CmsExplorerTypeSettings typeSettings) Sets the explorer type settings for the current resource type.- Parameters:
typeSettings
- the explorer type settings for the current resource type
-
buildPropertyEntry
protected StringBuffer buildPropertyEntry(String propertyName, String propertyTitle, boolean editable) Builds the html for a single text input property row.The html does not include the value of the created property, the values are set delayed (see buildSetFormValues() for details).
- Parameters:
propertyName
- the name of the propertypropertyTitle
- the nice name of the propertyeditable
- indicates if the properties are editable- Returns:
- the html for a single text input property row
-
buildTableRowEnd
Builds the HTML for the end of a table row for a single property.- Returns:
- the HTML code for a table row end
-
buildTableRowStart
Builds the HTML for the start of a table row for a single property.- Parameters:
propertyName
- the name of the current property- Returns:
- the HTML code for the start of a table row
-
buildTextInput
Builds the HTML for the common text input property values stored in the String array "PROPERTIES".- Parameters:
editable
- indicates if the properties are editable- Returns:
- the HTML code for the common text input fields
-
initExplorerTypeSettings
Initializes the explorer type settings for the current resource type. -
initWorkplaceRequestValues
protected void initWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request) - Overrides:
initWorkplaceRequestValues
in classCmsPropertyAdvanced
- See Also:
-
CmsWorkplace.initWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings, javax.servlet.http.HttpServletRequest)
-
isHideButtonAdvanced
Checks the optional parameters of the handler configuration.Decides if the "advanced" button should be shown or not. The "advanced" button is shown if no parameters are given (default) or the "hideadvanced" attribute is set to false. The "advanced" button is hidden only, if "hideadvanced" is true and the user is not a member of the specified user groups.
- Returns:
- false if the "advanced" button is shown (default)
true if the "advanced" button is hidden
-
performEditOperation
protected boolean performEditOperation(javax.servlet.http.HttpServletRequest request) throws org.opencms.main.CmsException Performs the editing of the resources properties.- Parameters:
request
- the HttpServletRequest- Returns:
- true, if the properties were successfully changed, otherwise false
- Throws:
org.opencms.main.CmsException
- if editing is not successful
-
writeProperty
protected void writeProperty(String propName, String propValue, String oldValue) throws org.opencms.main.CmsException Writes a property value for a resource, if the value was changed.If a property definition for the resource does not exist, it is automatically created by this method.
- Parameters:
propName
- the name of the propertypropValue
- the new value of the propertyoldValue
- the old value of the property- Throws:
org.opencms.main.CmsException
- if something goes wrong
-