Class CmsAdvancedDirectEditProvider
java.lang.Object
org.opencms.workplace.editors.directedit.A_CmsDirectEditProvider
org.opencms.workplace.editors.directedit.CmsAdvancedDirectEditProvider
- All Implemented Interfaces:
Cloneable
,I_CmsConfigurationParameterHandler
,I_CmsDirectEditProvider
- Direct Known Subclasses:
CmsToolbarDirectEditProvider
Provider for the OpenCms AdvancedDirectEdit.
Since OpenCms version 8.0.0.
This provider DOES NOT support CmsDirectEditMode.MANUAL
mode.
- Since:
- 8.0.0
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic enum
Direct edit permissions according to the sitemap configuration. -
Field Summary
Modifier and TypeFieldDescriptionprotected int
Indicates the permissions for the last element the was opened.protected boolean
True if the elements should be assigned randomly generated ids.Fields inherited from class org.opencms.workplace.editors.directedit.A_CmsDirectEditProvider
INCLUDE_FILE_DEFAULT, m_cms, m_configurationParameters, m_editButtonStyle, m_fileName, m_messages, m_mode, m_rnd
Fields inherited from interface org.opencms.configuration.I_CmsConfigurationParameterHandler
ADD_PARAMETER_METHOD, INIT_CONFIGURATION_METHOD
Fields inherited from interface org.opencms.workplace.editors.directedit.I_CmsDirectEditProvider
ATTRIBUTE_DIRECT_EDIT_PROVIDER, ATTRIBUTE_DIRECT_EDIT_PROVIDER_PARAMS
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionReturns the end HTML for a disabled direct edit button.Returns the end HTML for an enabled direct edit button.Generates a random element id.getResourceInfo
(CmsDirectEditParams params, String resourceName) Calculates the direct edit resource information for the given VFS resource.protected boolean
Checks if upload for binaries are supported by this provider.void
insertDirectEditEnd
(javax.servlet.jsp.PageContext context) Inserts the "end direct edit" HTML in the provided JSP page context.void
insertDirectEditIncludes
(javax.servlet.jsp.PageContext context, CmsDirectEditParams params) Inserts the "direct edit header" HTML in the provided JSP page context.void
insertDirectEditListMetadata
(javax.servlet.jsp.PageContext context, I_CmsContentLoadCollectorInfo info) Inserts HTML used as metadata for a collector list in the current JSP context.boolean
insertDirectEditStart
(javax.servlet.jsp.PageContext context, CmsDirectEditParams params) Inserts the "start direct edit" HTML in the provided JSP page context.boolean
isManual
(CmsDirectEditMode mode) Returnsfalse
because the default provider does not support manual button placement.Creates a new instance of this direct edit provider with the same basic configuration.startDirectEditDisabled
(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) Returns the start HTML for a disabled direct edit button.startDirectEditEnabled
(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) Returns the start HTML for an enabled direct edit button.Methods inherited from class org.opencms.workplace.editors.directedit.A_CmsDirectEditProvider
addConfigurationParameter, getConfiguration, getLink, getNextDirectEditId, init, initConfiguration, insertDirectEditEmptyList, print
-
Field Details
-
m_lastPermissionMode
Indicates the permissions for the last element the was opened. -
m_useIds
True if the elements should be assigned randomly generated ids.
-
-
Constructor Details
-
CmsAdvancedDirectEditProvider
public CmsAdvancedDirectEditProvider()
-
-
Method Details
-
endDirectEditDisabled
Returns the end HTML for a disabled direct edit button.- Returns:
- the end HTML for a disabled direct edit button
-
endDirectEditEnabled
Returns the end HTML for an enabled direct edit button.- Returns:
- the end HTML for an enabled direct edit button
-
getRandomId
Generates a random element id.- Returns:
- a random element id
-
getResourceInfo
Description copied from class:A_CmsDirectEditProvider
Calculates the direct edit resource information for the given VFS resource.This includes the direct edit permissions. If the permissions are not
CmsDirectEditPermissions.INACTIVE
, then the resource and lock information is also included in the result.- Overrides:
getResourceInfo
in classA_CmsDirectEditProvider
- Parameters:
params
- the direct edit parametersresourceName
- the name of the VFS resource to get the direct edit info for- Returns:
- the direct edit resource information for the given VFS resource
- See Also:
-
Similar to the method in the superclass, but removes the write permission check, as this is handled differently.
-
insertDirectEditEnd
public void insertDirectEditEnd(javax.servlet.jsp.PageContext context) throws javax.servlet.jsp.JspException Description copied from interface:I_CmsDirectEditProvider
Inserts the "end direct edit" HTML in the provided JSP page context.- Parameters:
context
- the JSP page context to insert the HTML to- Throws:
javax.servlet.jsp.JspException
- in case something goes wrong- See Also:
-
insertDirectEditIncludes
public void insertDirectEditIncludes(javax.servlet.jsp.PageContext context, CmsDirectEditParams params) throws javax.servlet.jsp.JspException Description copied from interface:I_CmsDirectEditProvider
Inserts the "direct edit header" HTML in the provided JSP page context.- Parameters:
context
- the JSP page context to insert the HTML toparams
- the parameters for the direct edit includes- Throws:
javax.servlet.jsp.JspException
- in case something goes wrong- See Also:
-
insertDirectEditStart
public boolean insertDirectEditStart(javax.servlet.jsp.PageContext context, CmsDirectEditParams params) throws javax.servlet.jsp.JspException Description copied from interface:I_CmsDirectEditProvider
Inserts the "start direct edit" HTML in the provided JSP page context.- Parameters:
context
- the JSP page context to insert the HTML toparams
- the parameters for the direct edit call- Returns:
true
in case a direct edit element was opened,false
otherwise- Throws:
javax.servlet.jsp.JspException
- in case something goes wrong- See Also:
-
isManual
Returnsfalse
because the default provider does not support manual button placement.- Specified by:
isManual
in interfaceI_CmsDirectEditProvider
- Overrides:
isManual
in classA_CmsDirectEditProvider
- Parameters:
mode
- the mode of the current direct edit element- Returns:
true
if this provider (currently) operates in manual mode- See Also:
-
newInstance
Description copied from interface:I_CmsDirectEditProvider
Creates a new instance of this direct edit provider with the same basic configuration.- Returns:
- a new instance of this direct edit provider with the same basic configuration
- See Also:
-
startDirectEditDisabled
public String startDirectEditDisabled(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) Returns the start HTML for a disabled direct edit button.- Parameters:
params
- the direct edit parametersresourceInfo
- contains information about the resource to edit- Returns:
- the start HTML for a disabled direct edit button
-
startDirectEditEnabled
public String startDirectEditEnabled(CmsDirectEditParams params, CmsDirectEditResourceInfo resourceInfo) throws JSONException Returns the start HTML for an enabled direct edit button.- Parameters:
params
- the direct edit parametersresourceInfo
- contains information about the resource to edit- Returns:
- the start HTML for an enabled direct edit button
- Throws:
JSONException
- if a JSON handling error occurs
-
hasUploadSupport
Checks if upload for binaries are supported by this provider.- Returns:
- true if binary upload is supported
-