Package org.opencms.widgets
Class CmsCategoryWidget
- java.lang.Object
-
- org.opencms.widgets.A_CmsWidget
-
- org.opencms.widgets.CmsCategoryWidget
-
- All Implemented Interfaces:
I_CmsADEWidget
,I_CmsWidget
public class CmsCategoryWidget extends A_CmsWidget implements I_CmsADEWidget
Provides a widget for a category based dependent select boxes.- Since:
- 7.0.3
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.opencms.widgets.A_CmsWidget
A_CmsWidget.CmsDummyWidgetDialog
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
CONFIGURATION_CATEGORY
Configuration parameter to set the category to display.static java.lang.String
CONFIGURATION_ONLYLEAFS
Configuration parameter to set the 'only leaf' flag parameter.static java.lang.String
CONFIGURATION_PROPERTY
Configuration parameter to set the 'property' parameter.-
Fields inherited from class org.opencms.widgets.A_CmsWidget
HELP_POSTFIX, LABEL_PREFIX
-
-
Constructor Summary
Constructors Constructor Description CmsCategoryWidget()
Creates a new category widget.CmsCategoryWidget(java.lang.String configuration)
Creates a category widget with the specified options.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.String
buildSelectBox(java.lang.String baseId, int level, java.util.List<CmsSelectWidgetOption> options, java.lang.String selected, boolean hasError, boolean last)
Generates html code for the category selection.java.lang.String
getConfiguration()
Returns the configuration string.java.lang.String
getConfiguration(CmsObject cms, A_CmsXmlContentValue schemaType, CmsMessages messages, CmsResource resource, java.util.Locale contentLocale)
Returns the configuration string for the ADE content editor widget.java.util.List<java.lang.String>
getCssResourceLinks(CmsObject cms)
Returns a list of CSS resources required by the widget.I_CmsXmlContentHandler.DisplayType
getDefaultDisplayType()
Returns the default display type of this widget.protected java.util.Locale
getDefaultLocale(CmsObject cms, java.lang.String resource)
Returns the default locale in the content of the given resource.java.lang.String
getDialogIncludes(CmsObject cms, I_CmsWidgetDialog widgetDialog)
Generates the necessary JavaScript inclusion code for this widget.java.lang.String
getDialogWidget(CmsObject cms, I_CmsWidgetDialog widgetDialog, I_CmsWidgetParameter param)
Generates the widget HTML for the provided widget parameter.java.lang.String
getInitCall()
Returns the java script initialization call.java.util.List<java.lang.String>
getJavaScriptResourceLinks(CmsObject cms)
Returns a list of java script resources required by the widget.protected CmsResource
getResource(CmsObject cms, I_CmsWidgetParameter param)
Returns the right resource, depending on the locale.java.lang.String
getStartingCategory(CmsObject cms, java.lang.String referencePath)
Returns the starting category depending on the configuration options.java.lang.String
getWidgetName()
Returns the class name of the widget.boolean
isCompactViewEnabled()
Returns if the widget is compact view enabled.boolean
isInternal()
Returns if this is an internal widget.boolean
isOnlyLeafs()
Check if only leaf selection is allowed.I_CmsWidget
newInstance()
Creates a duplicate of this widget instance.void
setConfiguration(java.lang.String configuration)
Sets the configuration of this widget.void
setEditorValue(CmsObject cms, java.util.Map<java.lang.String,java.lang.String[]> formParameters, I_CmsWidgetDialog widgetDialog, I_CmsWidgetParameter param)
Sets the value of in the given widget parameter by reading the "right" value from the offered map of parameters.-
Methods inherited from class org.opencms.widgets.A_CmsWidget
equals, getDialogHtmlEnd, getDialogInitCall, getDialogInitMethod, getHelpBubble, getHelpKey, getHelpText, getJsHelpMouseHandler, getJSIncludeFile, getLabelKey, getWidgetStringValue, hashCode
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.opencms.widgets.I_CmsWidget
getDialogHtmlEnd, getDialogInitCall, getDialogInitMethod, getHelpBubble, getHelpText, getWidgetStringValue
-
-
-
-
Field Detail
-
CONFIGURATION_CATEGORY
public static final java.lang.String CONFIGURATION_CATEGORY
Configuration parameter to set the category to display.- See Also:
- Constant Field Values
-
CONFIGURATION_ONLYLEAFS
public static final java.lang.String CONFIGURATION_ONLYLEAFS
Configuration parameter to set the 'only leaf' flag parameter.- See Also:
- Constant Field Values
-
CONFIGURATION_PROPERTY
public static final java.lang.String CONFIGURATION_PROPERTY
Configuration parameter to set the 'property' parameter.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
CmsCategoryWidget
public CmsCategoryWidget()
Creates a new category widget.
-
CmsCategoryWidget
public CmsCategoryWidget(java.lang.String configuration)
Creates a category widget with the specified options.- Parameters:
configuration
- the configuration for the widget
-
-
Method Detail
-
getConfiguration
public java.lang.String getConfiguration()
Description copied from class:A_CmsWidget
Returns the configuration string.- Specified by:
getConfiguration
in interfaceI_CmsWidget
- Overrides:
getConfiguration
in classA_CmsWidget
- Returns:
- the configuration string
- See Also:
A_CmsWidget.getConfiguration()
-
getConfiguration
public java.lang.String getConfiguration(CmsObject cms, A_CmsXmlContentValue schemaType, CmsMessages messages, CmsResource resource, java.util.Locale contentLocale)
Description copied from interface:I_CmsADEWidget
Returns the configuration string for the ADE content editor widget.- Specified by:
getConfiguration
in interfaceI_CmsADEWidget
- Parameters:
cms
- the OpenCms contextschemaType
- the schema typemessages
- the messagesresource
- the edited resourcecontentLocale
- the content locale- Returns:
- the configuration string
- See Also:
I_CmsADEWidget.getConfiguration(org.opencms.file.CmsObject, org.opencms.xml.types.A_CmsXmlContentValue, org.opencms.i18n.CmsMessages, org.opencms.file.CmsResource, java.util.Locale)
-
getCssResourceLinks
public java.util.List<java.lang.String> getCssResourceLinks(CmsObject cms)
Description copied from interface:I_CmsADEWidget
Returns a list of CSS resources required by the widget.- Specified by:
getCssResourceLinks
in interfaceI_CmsADEWidget
- Parameters:
cms
- the current OpenCms context- Returns:
- the required CSS resource links
- See Also:
I_CmsADEWidget.getCssResourceLinks(org.opencms.file.CmsObject)
-
getDefaultDisplayType
public I_CmsXmlContentHandler.DisplayType getDefaultDisplayType()
Description copied from interface:I_CmsADEWidget
Returns the default display type of this widget.- Specified by:
getDefaultDisplayType
in interfaceI_CmsADEWidget
- Returns:
- the default display type
- See Also:
I_CmsADEWidget.getDefaultDisplayType()
-
getDialogIncludes
public java.lang.String getDialogIncludes(CmsObject cms, I_CmsWidgetDialog widgetDialog)
Description copied from interface:I_CmsWidget
Generates the necessary JavaScript inclusion code for this widget.- Specified by:
getDialogIncludes
in interfaceI_CmsWidget
- Overrides:
getDialogIncludes
in classA_CmsWidget
- Parameters:
cms
- the current users OpenCms contextwidgetDialog
- the dialog where the widget is used on- Returns:
- the JavaScript inclusion code
- See Also:
I_CmsWidget.getDialogIncludes(org.opencms.file.CmsObject, org.opencms.widgets.I_CmsWidgetDialog)
-
getDialogWidget
public java.lang.String getDialogWidget(CmsObject cms, I_CmsWidgetDialog widgetDialog, I_CmsWidgetParameter param)
Description copied from interface:I_CmsWidget
Generates the widget HTML for the provided widget parameter.- Specified by:
getDialogWidget
in interfaceI_CmsWidget
- Parameters:
cms
- an initialized instance of a CmsObjectwidgetDialog
- the dialog where the widget is used onparam
- the widget parameter to generate the widget for- Returns:
- the widget HTML for the provided widget parameter
- See Also:
I_CmsWidget.getDialogWidget(org.opencms.file.CmsObject, org.opencms.widgets.I_CmsWidgetDialog, org.opencms.widgets.I_CmsWidgetParameter)
-
getInitCall
public java.lang.String getInitCall()
Description copied from interface:I_CmsADEWidget
Returns the java script initialization call.- Specified by:
getInitCall
in interfaceI_CmsADEWidget
- Returns:
- the java script initialization call
- See Also:
I_CmsADEWidget.getInitCall()
-
getJavaScriptResourceLinks
public java.util.List<java.lang.String> getJavaScriptResourceLinks(CmsObject cms)
Description copied from interface:I_CmsADEWidget
Returns a list of java script resources required by the widget.- Specified by:
getJavaScriptResourceLinks
in interfaceI_CmsADEWidget
- Parameters:
cms
- the current OpenCms context- Returns:
- the required java script resource links
- See Also:
I_CmsADEWidget.getJavaScriptResourceLinks(org.opencms.file.CmsObject)
-
getStartingCategory
public java.lang.String getStartingCategory(CmsObject cms, java.lang.String referencePath)
Returns the starting category depending on the configuration options.- Parameters:
cms
- the cms contextreferencePath
- the right resource path- Returns:
- the starting category
-
getWidgetName
public java.lang.String getWidgetName()
Description copied from interface:I_CmsADEWidget
Returns the class name of the widget.- Specified by:
getWidgetName
in interfaceI_CmsADEWidget
- Returns:
- the class name
- See Also:
I_CmsADEWidget.getWidgetName()
-
isCompactViewEnabled
public boolean isCompactViewEnabled()
Description copied from interface:I_CmsWidget
Returns if the widget is compact view enabled.- Specified by:
isCompactViewEnabled
in interfaceI_CmsWidget
- Overrides:
isCompactViewEnabled
in classA_CmsWidget
- Returns:
true
if the widget is compact view enabled- See Also:
A_CmsWidget.isCompactViewEnabled()
-
isInternal
public boolean isInternal()
Description copied from interface:I_CmsADEWidget
Returns if this is an internal widget.Only widgets belonging to the OpenCms core should be marked as internal.
- Specified by:
isInternal
in interfaceI_CmsADEWidget
- Returns:
true
if this is an internal widget- See Also:
I_CmsADEWidget.isInternal()
-
isOnlyLeafs
public boolean isOnlyLeafs()
Check if only leaf selection is allowed.- Returns:
true
, if only leaf selection is allowed
-
newInstance
public I_CmsWidget newInstance()
Description copied from interface:I_CmsWidget
Creates a duplicate of this widget instance.- Specified by:
newInstance
in interfaceI_CmsWidget
- Returns:
- a duplicate of this widget instance
- See Also:
I_CmsWidget.newInstance()
-
setConfiguration
public void setConfiguration(java.lang.String configuration)
Description copied from interface:I_CmsWidget
Sets the configuration of this widget.This can be used to enable / disable certain widget features that should not always be available, or to pass specific initialization information to the widget. It depends on the widget implementation on how this information is used.
- Specified by:
setConfiguration
in interfaceI_CmsWidget
- Overrides:
setConfiguration
in classA_CmsWidget
- Parameters:
configuration
- the configuration to set- See Also:
A_CmsWidget.setConfiguration(java.lang.String)
-
setEditorValue
public void setEditorValue(CmsObject cms, java.util.Map<java.lang.String,java.lang.String[]> formParameters, I_CmsWidgetDialog widgetDialog, I_CmsWidgetParameter param)
Description copied from interface:I_CmsWidget
Sets the value of in the given widget parameter by reading the "right" value from the offered map of parameters.- Specified by:
setEditorValue
in interfaceI_CmsWidget
- Overrides:
setEditorValue
in classA_CmsWidget
- Parameters:
cms
- the current users OpenCms contextformParameters
- the map of parameters to get the value fromwidgetDialog
- the dialog where the widget is used onparam
- the widget parameter to generate the widget for- See Also:
A_CmsWidget.setEditorValue(org.opencms.file.CmsObject, java.util.Map, org.opencms.widgets.I_CmsWidgetDialog, org.opencms.widgets.I_CmsWidgetParameter)
-
buildSelectBox
protected java.lang.String buildSelectBox(java.lang.String baseId, int level, java.util.List<CmsSelectWidgetOption> options, java.lang.String selected, boolean hasError, boolean last)
Generates html code for the category selection.- Parameters:
baseId
- the widget idlevel
- the category deep leveloptions
- the list ofCmsSelectWidgetOption
objectsselected
- the selected optionhasError
- if to display error messagelast
- if it is the last level- Returns:
- html code
-
getDefaultLocale
protected java.util.Locale getDefaultLocale(CmsObject cms, java.lang.String resource)
Returns the default locale in the content of the given resource.- Parameters:
cms
- the cms contextresource
- the resource path to get the default locale for- Returns:
- the default locale of the resource
-
getResource
protected CmsResource getResource(CmsObject cms, I_CmsWidgetParameter param)
Returns the right resource, depending on the locale.- Parameters:
cms
- the cms contextparam
- the widget parameter- Returns:
- the resource to get/set the categories for
-
-