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
FieldsModifier and TypeFieldDescriptionstatic final intValue 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_HANDLERFields inherited from class org.opencms.workplace.CmsTabDialog
ACTION_SWITCHTAB, DIALOG_SWITCHTAB, PARAM_SETPRESSED, PARAM_TABFields 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_UPDATEFields inherited from class org.opencms.workplace.tools.CmsToolDialog
PARAM_ADMIN_PROJECT, PARAM_BASE, PARAM_FORCE, PARAM_PATH, PARAM_ROOT, PARAM_STYLE, STYLE_NEWFields 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_WORKPLACEFields inherited from interface org.opencms.configuration.I_CmsConfigurationParameterHandler
ADD_PARAMETER_METHOD, INIT_CONFIGURATION_METHOD -
Constructor Summary
ConstructorsConstructorDescriptionCmsPropertyCustom(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 TypeMethodDescriptionvoidactionEdit(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 StringBufferbuildNavigationProperties(boolean editable) Builds the HTML code for the special properties of an xmlpage resource.protected StringBufferbuildPropertyEntry(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 StringBuilds the HTML for the end of a table row for a single property.protected StringBufferbuildTableRowStart(String propertyName) Builds the HTML for the start of a table row for a single property.protected StringBufferbuildTextInput(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.CmsExplorerTypeSettingsReturns the explorer type settings for the current resource type.protected voidInitializes the explorer type settings for the current resource type.protected voidinitWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings settings, javax.servlet.http.HttpServletRequest request) protected booleanChecks the optional parameters of the handler configuration.protected booleanperformEditOperation(javax.servlet.http.HttpServletRequest request) Performs the editing of the resources properties.voidsetExplorerTypeSettings(org.opencms.workplace.explorer.CmsExplorerTypeSettings typeSettings) Sets the explorer type settings for the current resource type.voidsetShowNavigation(boolean showNav) Sets if navigation properties are shown.booleanReturns if navigation properties are shown.protected voidwriteProperty(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, setParamUsetempfileprojectMethods inherited from class org.opencms.workplace.CmsTabDialog
dialogTabContent, dialogTabContentEnd, dialogTabContentStart, dialogTabContentStart, dialogTabRow, getActiveTab, getActiveTabName, getParamSetPressed, getParamTab, htmlStart, htmlStart, paramsAsHidden, setParamSetPressed, setParamTabMethods 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, setParamTitleMethods 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, useNewStyleMethods 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:
actionEditin 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:
buildEditFormin 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:
buildSetFormValuesin 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:
dialogButtonsOkCancelAdvancedin 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:
initWorkplaceRequestValuesin classCmsPropertyAdvanced- See Also:
-
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
-