Class CmsEditor
- java.lang.Object
-
- org.opencms.workplace.CmsWorkplace
-
- org.opencms.workplace.tools.CmsToolDialog
-
- org.opencms.workplace.CmsDialog
-
- org.opencms.workplace.editors.CmsEditorBase
-
- org.opencms.workplace.editors.CmsEditor
-
- Direct Known Subclasses:
CmsDefaultPageEditor
,CmsEditorFrameset
,CmsSimpleEditor
,CmsXmlContentEditor
public abstract class CmsEditor extends CmsEditorBase
Provides basic methods for building the file editors of OpenCms.The editor classes have to extend this class and implement action methods for common editor actions.
- Since:
- 6.0.0
-
-
Field Summary
Fields Modifier and Type Field Description static int
ACTION_CHANGE_BODY
Value for the action: change the body.static int
ACTION_DELETELOCALE
Value for the action: delete the current locale.static int
ACTION_EXIT
Value for the action: exit.static int
ACTION_PREVIEW
Value for the action: show a preview.static int
ACTION_SAVE
Value for the action: save.static int
ACTION_SAVEACTION
Constant value for the customizable action button.static int
ACTION_SAVEEXIT
Value for the action: save and exit.static int
ACTION_SHOW
Value for the action: show the editor.static int
ACTION_SHOW_ERRORMESSAGE
Value for the action: an error occurred.static java.lang.String
EDITOR_CHANGE_ELEMENT
Value for the action parameter: change the element.static java.lang.String
EDITOR_CLEANUP
Value for the action parameter: cleanup content.static java.lang.String
EDITOR_CLOSEBROWSER
Value for the action parameter: close browser window (accidentally).static java.lang.String
EDITOR_DELETELOCALE
Value for the action parameter: delete the current locale.static java.lang.String
EDITOR_EXIT
Value for the action parameter: exit editor.static java.lang.String
EDITOR_PREVIEW
Value for the action parameter: show a preview.static java.lang.String
EDITOR_SAVE
Value for the action parameter: save content.static java.lang.String
EDITOR_SAVEACTION
Value for the customizable action button.static java.lang.String
EDITOR_SAVEEXIT
Value for the action parameter: save and exit.static java.lang.String
EDITOR_SHOW
Value for the action parameter: show the editor.static java.lang.String
EDITOR_SHOW_ERRORMESSAGE
Value for the action parameter: an error occurred.static java.lang.String
EMPTY_LOCALE
Marker for empty locale in locale selection.static java.lang.String
PARAM_BACKLINK
Parameter name for the request parameter "backlink".static java.lang.String
PARAM_CONTENT
Parameter name for the request parameter "content".static java.lang.String
PARAM_DIRECTEDIT
Parameter name for the request parameter "directedit".static java.lang.String
PARAM_EDITASTEXT
Parameter name for the request parameter "editastext".static java.lang.String
PARAM_EDITORMODE
Parameter name for the request parameter "editormode".static java.lang.String
PARAM_ELEMENTLANGUAGE
Parameter name for the request parameter "element language".static java.lang.String
PARAM_LOADDEFAULT
Parameter name for the request parameter "loaddefault".static java.lang.String
PARAM_MODIFIED
Parameter name for the request parameter "modified".static java.lang.String
PARAM_OLDELEMENTLANGUAGE
Parameter name for the request parameter "old element language".static java.lang.String
PARAM_TEMPFILE
Parameter name for the request parameter "tempfile".static java.lang.String
PATH_EDITORS
Stores the VFS editor path.-
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
-
-
Constructor Summary
Constructors Constructor Description CmsEditor(CmsJspActionElement jsp)
Public constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract void
actionClear(boolean forceUnlock)
Unlocks the edited resource when in direct edit mode or when the resource was not modified.protected void
actionClose()
Closes the editor and forwards to the workplace or the resource depending on the editor mode.abstract void
actionExit()
Performs the exit editor action.abstract void
actionSave()
Performs the save content action.java.lang.String
buildSelectElementLanguage(java.lang.String attributes, java.lang.String resourceName, java.util.Locale selectedLocale)
Builds the html String for the element language selector.java.lang.String
button(java.lang.String href, java.lang.String target, java.lang.String image, java.lang.String label, int type, boolean useCustomImage)
Generates a button for the OpenCms editor.java.lang.String
buttonActionCancel()
Returns the editor action for a "cancel" button.java.lang.String
buttonActionDirectEdit(java.lang.String jsFunction, int type)
Builds the html to display the special action button for the direct edit mode of the editor.void
checkLock(java.lang.String resource, CmsLockType type)
Checks the lock state of the resource and locks it if the autolock feature is enabled.protected void
clearEditorSessionInfo()
Clears the editor session info bean.protected void
commitTempFile()
Writes the content of a temporary file back to the original file.protected java.lang.String
createTempFile()
Creates a temporary file which is needed while working in an editor with preview option.protected java.lang.String
decodeContent(java.lang.String content)
Decodes the given content the same way the client would do it.protected java.lang.String
decodeParamValue(java.lang.String paramName, java.lang.String paramValue)
Decodes an individual parameter value, ensuring the content is always decoded in UTF-8.java.lang.String
deleteLocaleButton(java.lang.String href, java.lang.String target, java.lang.String image, java.lang.String label, int type)
Generates a button for delete locale.protected void
deleteTempFile()
Deletes a temporary file from the OpenCms VFS, needed when exiting an editor.protected java.lang.String
encodeContent(java.lang.String content)
Encodes the given content so that it can be transfered to the client.protected CmsObject
getCloneCms()
Returns a cloned cms instance that prevents the time range resource filter check.CmsEditorDisplayOptions
getEditorDisplayOptions()
Returns the instantiated editor display option class from the workplace manager.abstract java.lang.String
getEditorResourceUri()
Returns the URI to the editor resource folder where button images and javascripts are located.protected CmsEditorSessionInfo
getEditorSessionInfo()
Returns the editor session info bean.protected java.lang.String
getFileEncoding()
Returns the encoding parameter.protected java.lang.String
getFileEncoding(CmsObject cms, java.lang.String filename)
Helper method to determine the encoding of the given file in the VFS, which must be set using the "content-encoding" property.java.lang.String
getOpenCmsContext()
Returns the OpenCms request context path.java.lang.String
getParamBacklink()
Returns the back link when closing the editor.java.lang.String
getParamContent()
Returns the content of the editor.java.lang.String
getParamDirectedit()
Returns the direct edit flag parameter.java.lang.String
getParamEditastext()
Returns the edit as text parameter.java.lang.String
getParamEditormode()
Returns the editor mode parameter.java.lang.String
getParamElementlanguage()
Returns the current element language.java.lang.String
getParamLoaddefault()
Returns the "loaddefault" parameter to determine if the default editor should be loaded.java.lang.String
getParamModified()
Returns the modified parameter indicating if the resource has been saved.java.lang.String
getParamOldelementlanguage()
Returns the old element language.java.lang.String
getParamTempfile()
Returns the name of the temporary file.java.lang.String
getPicsUri()
Returns the path to the images used by this editor.protected abstract void
initContent()
Initializes the editor content when openening the editor for the first time.protected void
initMessages()
Initializes the message object.protected void
initSessionInfo()
Initializes the editor session info bean.protected void
setFileEncoding(java.lang.String value)
Sets the encoding parameter.void
setParamBacklink(java.lang.String backLink)
Sets the back link when closing the editor.void
setParamContent(java.lang.String content)
Sets the content of the editor.void
setParamDirectedit(java.lang.String direct)
Sets the direct edit flag parameter.void
setParamEditastext(java.lang.String editAsText)
Sets the edit as text parameter.void
setParamEditormode(java.lang.String mode)
Sets the editor mode parameter.void
setParamElementlanguage(java.lang.String elementLanguage)
Sets the current element language.void
setParamLoaddefault(java.lang.String loadDefault)
Sets the "loaddefault" parameter to determine if the default editor should be loaded.void
setParamModified(java.lang.String modified)
Sets the modified parameter indicating if the resource has been saved.void
setParamOldelementlanguage(java.lang.String oldElementLanguage)
Sets the old element language.void
setParamTempfile(java.lang.String fileName)
Sets the name of the temporary file.protected void
showErrorPage(java.lang.Exception exception)
Shows the selected error page in case of an exception.protected void
showErrorPage(java.lang.Object editor, java.lang.Exception exception)
Shows the selected error page in case of an exception.-
Methods inherited from class org.opencms.workplace.editors.CmsEditorBase
checkResourcePermissions, checkRole, initTimeWarp
-
Methods inherited from class org.opencms.workplace.CmsDialog
actionCloseDialog, appendDelimiter, buildAjaxResultContainer, buildAjaxWaitMessage, buildLockAdditionalOptions, buildLockConfirmationMessageJS, buildLockHeaderBox, checkResourcePermissions, computeCurrentFolder, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsHtml, 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, initWorkplaceRequestValues, 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, 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, initSettings, initUserSettings, initWorkplaceMembers, initWorkplaceMembers, initWorkplaceSettings, isForwarded, isHelpEnabled, isSubElement, isTemporaryFile, key, key, keyDefault, nullToEmpty, paramsAsHidden, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, substituteSiteTitle, substituteSiteTitleStatic, switchToCurrentProject, switchToTempProject, updateUserPreferences
-
-
-
-
Field Detail
-
ACTION_CHANGE_BODY
public static final int ACTION_CHANGE_BODY
Value for the action: change the body.- See Also:
- Constant Field Values
-
ACTION_DELETELOCALE
public static final int ACTION_DELETELOCALE
Value for the action: delete the current locale.- See Also:
- Constant Field Values
-
ACTION_EXIT
public static final int ACTION_EXIT
Value for the action: exit.- See Also:
- Constant Field Values
-
ACTION_PREVIEW
public static final int ACTION_PREVIEW
Value for the action: show a preview.- See Also:
- Constant Field Values
-
ACTION_SAVE
public static final int ACTION_SAVE
Value for the action: save.- See Also:
- Constant Field Values
-
ACTION_SAVEACTION
public static final int ACTION_SAVEACTION
Constant value for the customizable action button.- See Also:
- Constant Field Values
-
ACTION_SAVEEXIT
public static final int ACTION_SAVEEXIT
Value for the action: save and exit.- See Also:
- Constant Field Values
-
ACTION_SHOW
public static final int ACTION_SHOW
Value for the action: show the editor.- See Also:
- Constant Field Values
-
ACTION_SHOW_ERRORMESSAGE
public static final int ACTION_SHOW_ERRORMESSAGE
Value for the action: an error occurred.- See Also:
- Constant Field Values
-
EDITOR_CHANGE_ELEMENT
public static final java.lang.String EDITOR_CHANGE_ELEMENT
Value for the action parameter: change the element.- See Also:
- Constant Field Values
-
EDITOR_CLEANUP
public static final java.lang.String EDITOR_CLEANUP
Value for the action parameter: cleanup content.- See Also:
- Constant Field Values
-
EDITOR_CLOSEBROWSER
public static final java.lang.String EDITOR_CLOSEBROWSER
Value for the action parameter: close browser window (accidentally).- See Also:
- Constant Field Values
-
EDITOR_DELETELOCALE
public static final java.lang.String EDITOR_DELETELOCALE
Value for the action parameter: delete the current locale.- See Also:
- Constant Field Values
-
EDITOR_EXIT
public static final java.lang.String EDITOR_EXIT
Value for the action parameter: exit editor.- See Also:
- Constant Field Values
-
EDITOR_PREVIEW
public static final java.lang.String EDITOR_PREVIEW
Value for the action parameter: show a preview.- See Also:
- Constant Field Values
-
EDITOR_SAVE
public static final java.lang.String EDITOR_SAVE
Value for the action parameter: save content.- See Also:
- Constant Field Values
-
EDITOR_SAVEACTION
public static final java.lang.String EDITOR_SAVEACTION
Value for the customizable action button.- See Also:
- Constant Field Values
-
EDITOR_SAVEEXIT
public static final java.lang.String EDITOR_SAVEEXIT
Value for the action parameter: save and exit.- See Also:
- Constant Field Values
-
EDITOR_SHOW
public static final java.lang.String EDITOR_SHOW
Value for the action parameter: show the editor.- See Also:
- Constant Field Values
-
EDITOR_SHOW_ERRORMESSAGE
public static final java.lang.String EDITOR_SHOW_ERRORMESSAGE
Value for the action parameter: an error occurred.- See Also:
- Constant Field Values
-
EMPTY_LOCALE
public static final java.lang.String EMPTY_LOCALE
Marker for empty locale in locale selection.- See Also:
- Constant Field Values
-
PARAM_BACKLINK
public static final java.lang.String PARAM_BACKLINK
Parameter name for the request parameter "backlink".- See Also:
- Constant Field Values
-
PARAM_CONTENT
public static final java.lang.String PARAM_CONTENT
Parameter name for the request parameter "content".- See Also:
- Constant Field Values
-
PARAM_DIRECTEDIT
public static final java.lang.String PARAM_DIRECTEDIT
Parameter name for the request parameter "directedit".- See Also:
- Constant Field Values
-
PARAM_EDITASTEXT
public static final java.lang.String PARAM_EDITASTEXT
Parameter name for the request parameter "editastext".- See Also:
- Constant Field Values
-
PARAM_EDITORMODE
public static final java.lang.String PARAM_EDITORMODE
Parameter name for the request parameter "editormode".- See Also:
- Constant Field Values
-
PARAM_ELEMENTLANGUAGE
public static final java.lang.String PARAM_ELEMENTLANGUAGE
Parameter name for the request parameter "element language".- See Also:
- Constant Field Values
-
PARAM_LOADDEFAULT
public static final java.lang.String PARAM_LOADDEFAULT
Parameter name for the request parameter "loaddefault".- See Also:
- Constant Field Values
-
PARAM_MODIFIED
public static final java.lang.String PARAM_MODIFIED
Parameter name for the request parameter "modified".- See Also:
- Constant Field Values
-
PARAM_OLDELEMENTLANGUAGE
public static final java.lang.String PARAM_OLDELEMENTLANGUAGE
Parameter name for the request parameter "old element language".- See Also:
- Constant Field Values
-
PARAM_TEMPFILE
public static final java.lang.String PARAM_TEMPFILE
Parameter name for the request parameter "tempfile".- See Also:
- Constant Field Values
-
PATH_EDITORS
public static final java.lang.String PATH_EDITORS
Stores the VFS editor path.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CmsEditor
public CmsEditor(CmsJspActionElement jsp)
Public constructor.- Parameters:
jsp
- an initialized JSP action element
-
-
Method Detail
-
actionClear
public abstract void actionClear(boolean forceUnlock)
Unlocks the edited resource when in direct edit mode or when the resource was not modified.- Parameters:
forceUnlock
- if true, the resource will be unlocked anyway
-
actionExit
public abstract void actionExit() throws CmsException, java.io.IOException, javax.servlet.ServletException, javax.servlet.jsp.JspException
Performs the exit editor action.- Throws:
CmsException
- if something goes wrongjava.io.IOException
- if a forward failsjavax.servlet.ServletException
- if a forward failsjavax.servlet.jsp.JspException
- if including an element fails
-
actionSave
public abstract void actionSave() throws java.io.IOException, javax.servlet.jsp.JspException
Performs the save content action.- Throws:
java.io.IOException
- if a redirection failsjavax.servlet.jsp.JspException
- if including an element fails
-
buildSelectElementLanguage
public java.lang.String buildSelectElementLanguage(java.lang.String attributes, java.lang.String resourceName, java.util.Locale selectedLocale)
Builds the html String for the element language selector.- Parameters:
attributes
- optional attributes for the <select> tagresourceName
- the name of the resource to editselectedLocale
- the currently selected Locale- Returns:
- the html for the element language selectbox
-
button
public java.lang.String button(java.lang.String href, java.lang.String target, java.lang.String image, java.lang.String label, int type, boolean useCustomImage)
Generates a button for the OpenCms editor.- Parameters:
href
- the href link for the button, if none is given the button will be disabledtarget
- the href link target for the button, if none is given the target will be same windowimage
- the image name for the button, skin path will be automatically added as prefixlabel
- the label for the text of the buttontype
- 0: image only (default), 1: image and text, 2: text onlyuseCustomImage
- if true, the button has to be placed in the editors "custom pics" folder- Returns:
- a button for the OpenCms editor
-
buttonActionCancel
public java.lang.String buttonActionCancel()
Returns the editor action for a "cancel" button.This overwrites the cancel method of the CmsDialog class.
Always use this value, do not write anything directly in the html page.
- Returns:
- the default action for a "cancel" button
-
buttonActionDirectEdit
public java.lang.String buttonActionDirectEdit(java.lang.String jsFunction, int type)
Builds the html to display the special action button for the direct edit mode of the editor.- Parameters:
jsFunction
- the JavaScript function which will be executed on the mouseup eventtype
- 0: image only (default), 1: image and text, 2: text only- Returns:
- the html to display the special action button
-
checkLock
public void checkLock(java.lang.String resource, CmsLockType type) throws CmsException
Description copied from class:CmsWorkplace
Checks the lock state of the resource and locks it if the autolock feature is enabled.- Overrides:
checkLock
in classCmsWorkplace
- Parameters:
resource
- the resource name which is checkedtype
- indicates the modeCmsLockType.EXCLUSIVE
orCmsLockType.TEMPORARY
- Throws:
CmsException
- if reading or locking the resource fails- See Also:
CmsWorkplace.checkLock(String, CmsLockType)
-
deleteLocaleButton
public java.lang.String deleteLocaleButton(java.lang.String href, java.lang.String target, java.lang.String image, java.lang.String label, int type)
Generates a button for delete locale.- Parameters:
href
- the href link for the button, if none is given the button will be disabledtarget
- the href link target for the button, if none is given the target will be same windowimage
- the image name for the button, skin path will be automatically added as prefixlabel
- the label for the text of the buttontype
- 0: image only (default), 1: image and text, 2: text only- Returns:
- a button for the OpenCms workplace
-
getEditorDisplayOptions
public CmsEditorDisplayOptions getEditorDisplayOptions()
Returns the instantiated editor display option class from the workplace manager.This is a convenience method to be used on editor JSPs.
- Returns:
- the instantiated editor display option class
-
getEditorResourceUri
public abstract java.lang.String getEditorResourceUri()
Returns the URI to the editor resource folder where button images and javascripts are located.- Returns:
- the URI to the editor resource folder
-
getOpenCmsContext
public java.lang.String getOpenCmsContext()
Returns the OpenCms request context path.This is a convenience method to use in the editor.
- Returns:
- the OpenCms request context path
-
getParamBacklink
public java.lang.String getParamBacklink()
Returns the back link when closing the editor.- Returns:
- the back link
-
getParamContent
public java.lang.String getParamContent()
Returns the content of the editor.- Returns:
- the content of the editor
-
getParamDirectedit
public java.lang.String getParamDirectedit()
Returns the direct edit flag parameter.- Returns:
- the direct edit flag parameter
-
getParamEditastext
public java.lang.String getParamEditastext()
Returns the edit as text parameter.- Returns:
- the edit as text parameter
-
getParamEditormode
public java.lang.String getParamEditormode()
Returns the editor mode parameter.- Returns:
- the editor mode parameter
-
getParamElementlanguage
public java.lang.String getParamElementlanguage()
Returns the current element language.- Returns:
- the current element language
-
getParamLoaddefault
public java.lang.String getParamLoaddefault()
Returns the "loaddefault" parameter to determine if the default editor should be loaded.- Returns:
- the "loaddefault" parameter
-
getParamModified
public java.lang.String getParamModified()
Returns the modified parameter indicating if the resource has been saved.- Returns:
- the modified parameter indicating if the resource has been saved
-
getParamOldelementlanguage
public java.lang.String getParamOldelementlanguage()
Returns the old element language.- Returns:
- the old element language
-
getParamTempfile
public java.lang.String getParamTempfile()
Returns the name of the temporary file.- Returns:
- the name of the temporary file
-
getPicsUri
public java.lang.String getPicsUri()
Returns the path to the images used by this editor.- Returns:
- the path to the images used by this editor
-
setParamBacklink
public void setParamBacklink(java.lang.String backLink)
Sets the back link when closing the editor.- Parameters:
backLink
- the back link
-
setParamContent
public void setParamContent(java.lang.String content)
Sets the content of the editor.- Parameters:
content
- the content of the editor
-
setParamDirectedit
public void setParamDirectedit(java.lang.String direct)
Sets the direct edit flag parameter.- Parameters:
direct
- the direct edit flag parameter
-
setParamEditastext
public void setParamEditastext(java.lang.String editAsText)
Sets the edit as text parameter.- Parameters:
editAsText
-"true"
if the resource should be handled like a text file
-
setParamEditormode
public void setParamEditormode(java.lang.String mode)
Sets the editor mode parameter.- Parameters:
mode
- the editor mode parameter
-
setParamElementlanguage
public void setParamElementlanguage(java.lang.String elementLanguage)
Sets the current element language.- Parameters:
elementLanguage
- the current element language
-
setParamLoaddefault
public void setParamLoaddefault(java.lang.String loadDefault)
Sets the "loaddefault" parameter to determine if the default editor should be loaded.- Parameters:
loadDefault
- the "loaddefault" parameter
-
setParamModified
public void setParamModified(java.lang.String modified)
Sets the modified parameter indicating if the resource has been saved.- Parameters:
modified
- the modified parameter indicating if the resource has been saved
-
setParamOldelementlanguage
public void setParamOldelementlanguage(java.lang.String oldElementLanguage)
Sets the old element language.- Parameters:
oldElementLanguage
- the old element language
-
setParamTempfile
public void setParamTempfile(java.lang.String fileName)
Sets the name of the temporary file.- Parameters:
fileName
- the name of the temporary file
-
actionClose
protected void actionClose() throws java.io.IOException, javax.servlet.jsp.JspException, javax.servlet.ServletException
Closes the editor and forwards to the workplace or the resource depending on the editor mode.- Throws:
java.io.IOException
- if forwarding failsjavax.servlet.ServletException
- if forwarding failsjavax.servlet.jsp.JspException
- if including a JSP fails
-
clearEditorSessionInfo
protected void clearEditorSessionInfo()
Clears the editor session info bean.
-
commitTempFile
protected void commitTempFile() throws CmsException
Writes the content of a temporary file back to the original file.- Throws:
CmsException
- if something goes wrong
-
createTempFile
protected java.lang.String createTempFile() throws CmsException
Creates a temporary file which is needed while working in an editor with preview option.- Returns:
- the file name of the temporary file
- Throws:
CmsException
- if something goes wrong
-
decodeContent
protected java.lang.String decodeContent(java.lang.String content)
Decodes the given content the same way the client would do it.Content is decoded as if it was encoded using the JavaScript "encodeURIComponent()" function.
- Parameters:
content
- the content to decode- Returns:
- the decoded content
-
decodeParamValue
protected java.lang.String decodeParamValue(java.lang.String paramName, java.lang.String paramValue)
Decodes an individual parameter value, ensuring the content is always decoded in UTF-8.For editors the content is always encoded using the JavaScript encodeURIComponent() method on the client, which always encodes in UTF-8.
- Overrides:
decodeParamValue
in classCmsWorkplace
- Parameters:
paramName
- the name of the parameterparamValue
- the unencoded value of the parameter- Returns:
- the encoded value of the parameter
-
deleteTempFile
protected void deleteTempFile()
Deletes a temporary file from the OpenCms VFS, needed when exiting an editor.
-
encodeContent
protected java.lang.String encodeContent(java.lang.String content)
Encodes the given content so that it can be transfered to the client.Content is encoded so that it is compatible with the JavaScript "decodeURIComponent()" function.
- Parameters:
content
- the content to encode- Returns:
- the encoded content
-
getCloneCms
protected CmsObject getCloneCms() throws CmsException
Returns a cloned cms instance that prevents the time range resource filter check.Use it always for unmarshalling and file writing.
- Returns:
- a cloned cms instance that prevents the time range resource filter check
- Throws:
CmsException
- if something goes wrong
-
getEditorSessionInfo
protected CmsEditorSessionInfo getEditorSessionInfo()
Returns the editor session info bean.- Returns:
- the editor session info bean
-
getFileEncoding
protected java.lang.String getFileEncoding()
Returns the encoding parameter.- Returns:
- the encoding parameter
-
getFileEncoding
protected java.lang.String getFileEncoding(CmsObject cms, java.lang.String filename)
Helper method to determine the encoding of the given file in the VFS, which must be set using the "content-encoding" property.- Parameters:
cms
- the CmsObjectfilename
- the name of the file which is to be checked- Returns:
- the encoding for the file
-
initContent
protected abstract void initContent()
Initializes the editor content when openening the editor for the first time.
-
initMessages
protected void initMessages()
Description copied from class:CmsWorkplace
Initializes the message object.By default the
CmsWorkplaceMessages
are initialized.You SHOULD override this method for setting the bundles you really need, using the
orCmsWorkplace.addMessages(CmsMessages)
method.CmsWorkplace.addMessages(String)
- Overrides:
initMessages
in classCmsWorkplace
- See Also:
CmsWorkplace.initMessages()
-
initSessionInfo
protected void initSessionInfo()
Initializes the editor session info bean.
-
setFileEncoding
protected void setFileEncoding(java.lang.String value)
Sets the encoding parameter.- Parameters:
value
- the encoding value to set
-
showErrorPage
protected void showErrorPage(java.lang.Exception exception) throws javax.servlet.jsp.JspException
Shows the selected error page in case of an exception.- Parameters:
exception
- the current exception- Throws:
javax.servlet.jsp.JspException
- if inclusion of the error page fails
-
showErrorPage
protected void showErrorPage(java.lang.Object editor, java.lang.Exception exception) throws javax.servlet.jsp.JspException
Shows the selected error page in case of an exception.- Parameters:
editor
- initialized instance of the editor classexception
- the current exception- Throws:
javax.servlet.jsp.JspException
- if inclusion of the error page fails
-
-