org.opencms.widgets
Class CmsVfsFileWidget

java.lang.Object
  extended by org.opencms.widgets.A_CmsWidget
      extended by org.opencms.widgets.CmsVfsFileWidget
All Implemented Interfaces:
I_CmsADEWidget, I_CmsWidget

public class CmsVfsFileWidget
extends A_CmsWidget
implements I_CmsADEWidget

Provides a OpenCms VFS file selection widget, for use on a widget dialog.

Since:
6.0.0

Nested Class Summary
protected  class CmsVfsFileWidget.SearchTypesFactory
          Macro resolver factory to get the default searchable types.
 
Nested classes/interfaces inherited from class org.opencms.widgets.A_CmsWidget
A_CmsWidget.CmsDummyWidgetDialog
 
Field Summary
static java.lang.String CONFIGURATION_EXCLUDEFILES
          Configuration parameter to set the flag to include files in popup resource tree.
static java.lang.String CONFIGURATION_HIDESITESELECTOR
          Configuration parameter to set the flag to show the site selector in popup resource tree.
static java.lang.String CONFIGURATION_INCLUDEFILES
          Configuration parameter to set the flag to include files in popup resource tree.
static java.lang.String CONFIGURATION_NOTPROJECTAWARE
          Configuration parameter to prevent the project awareness flag in the popup resource tree.
static java.lang.String CONFIGURATION_PROJECTAWARE
          Configuration parameter to set the project awareness flag in the popup resource tree.
static java.lang.String CONFIGURATION_SEARCHTYPES
          Configuration parameter to set search types of the gallery widget.
static java.lang.String CONFIGURATION_SELECTABLETYPES
          Configuration parameter to set the selectable types of the gallery widget.
static java.lang.String CONFIGURATION_SHOWSITESELECTOR
          Configuration parameter to set the flag to show the site selector in popup resource tree.
static java.lang.String CONFIGURATION_STARTFOLDER
          Configuration parameter to set start folder.
static java.lang.String CONFIGURATION_STARTSITE
          Configuration parameter to set start site of the popup resource tree.
static java.lang.String DEFAULT_SEARCH_TYPES_MACRO
          The default search types macro name.
 
Fields inherited from class org.opencms.widgets.A_CmsWidget
HELP_POSTFIX, LABEL_PREFIX
 
Constructor Summary
CmsVfsFileWidget()
          Creates a new vfs file widget.
CmsVfsFileWidget(boolean showSiteSelector, java.lang.String startSite)
          Creates a new vfs file widget with the parameters to configure the popup tree window behavior.
CmsVfsFileWidget(boolean showSiteSelector, java.lang.String startSite, boolean includeFiles)
          Creates a new vfs file widget with the parameters to configure the popup tree window behavior.
CmsVfsFileWidget(boolean showSiteSelector, java.lang.String startSite, boolean includeFiles, boolean projectAware)
          Creates a new vfs file widget with the parameters to configure the popup tree window behavior.
CmsVfsFileWidget(java.lang.String configuration)
          Creates a new vfs file widget with the given configuration.
 
Method Summary
 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.
protected static java.lang.String getDefaultSearchTypes(CmsObject cms, CmsResource resource)
          Returns a comma separated list of the default search type names.
 java.lang.String getDialogIncludes(CmsObject cms, I_CmsWidgetDialog widgetDialog)
          Generates the necessary JavaScript inclusion code for this widget.
 java.lang.String getDialogInitCall(CmsObject cms, I_CmsWidgetDialog widgetDialog)
          Generates the initialisation method JavaScript code for this widget.
 java.lang.String getDialogInitMethod(CmsObject cms, I_CmsWidgetDialog widgetDialog)
          Generates the initialization method JavaScript 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  JSONObject getJsonConfig(CmsObject cms, A_CmsXmlContentValue schemaType, CmsMessages messages, CmsResource resource, java.util.Locale contentLocale)
          Gets the JSON configuration.
 java.lang.String getStartSite()
          Returns the start site root shown by the widget when first displayed.
protected  java.lang.String getTreeToken(CmsObject cms, A_CmsXmlContentValue value, CmsResource resource, java.util.Locale contentLocale)
          Computes the tree token, which is used to decide which preloaded tree, if any, to load for the VFS/sitemap tabs.
 java.lang.String getWidgetName()
          Returns the class name of the widget.
 boolean isInternal()
          Returns if this is an internal widget.
 boolean isShowingSiteSelector()
          Returns true if the site selector is shown.
 I_CmsWidget newInstance()
          Creates a duplicate of this widget instance.
 void setConfiguration(java.lang.String configuration)
          Sets the configuration of this widget.
 
Methods inherited from class org.opencms.widgets.A_CmsWidget
equals, getDialogHtmlEnd, getHelpBubble, getHelpKey, getHelpText, getJsHelpMouseHandler, getJSIncludeFile, getLabelKey, getWidgetStringValue, hashCode, setEditorValue
 
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, getHelpBubble, getHelpText, getWidgetStringValue, setEditorValue
 

Field Detail

CONFIGURATION_EXCLUDEFILES

public static final java.lang.String CONFIGURATION_EXCLUDEFILES
Configuration parameter to set the flag to include files in popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_HIDESITESELECTOR

public static final java.lang.String CONFIGURATION_HIDESITESELECTOR
Configuration parameter to set the flag to show the site selector in popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_INCLUDEFILES

public static final java.lang.String CONFIGURATION_INCLUDEFILES
Configuration parameter to set the flag to include files in popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_NOTPROJECTAWARE

public static final java.lang.String CONFIGURATION_NOTPROJECTAWARE
Configuration parameter to prevent the project awareness flag in the popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_PROJECTAWARE

public static final java.lang.String CONFIGURATION_PROJECTAWARE
Configuration parameter to set the project awareness flag in the popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_SEARCHTYPES

public static final java.lang.String CONFIGURATION_SEARCHTYPES
Configuration parameter to set search types of the gallery widget.

See Also:
Constant Field Values

CONFIGURATION_SELECTABLETYPES

public static final java.lang.String CONFIGURATION_SELECTABLETYPES
Configuration parameter to set the selectable types of the gallery widget.

See Also:
Constant Field Values

CONFIGURATION_SHOWSITESELECTOR

public static final java.lang.String CONFIGURATION_SHOWSITESELECTOR
Configuration parameter to set the flag to show the site selector in popup resource tree.

See Also:
Constant Field Values

CONFIGURATION_STARTFOLDER

public static final java.lang.String CONFIGURATION_STARTFOLDER
Configuration parameter to set start folder.

See Also:
Constant Field Values

CONFIGURATION_STARTSITE

public static final java.lang.String CONFIGURATION_STARTSITE
Configuration parameter to set start site of the popup resource tree.

See Also:
Constant Field Values

DEFAULT_SEARCH_TYPES_MACRO

public static final java.lang.String DEFAULT_SEARCH_TYPES_MACRO
The default search types macro name.

See Also:
Constant Field Values
Constructor Detail

CmsVfsFileWidget

public CmsVfsFileWidget()
Creates a new vfs file widget.


CmsVfsFileWidget

public CmsVfsFileWidget(boolean showSiteSelector,
                        java.lang.String startSite)
Creates a new vfs file widget with the parameters to configure the popup tree window behavior.

Parameters:
showSiteSelector - true if the site selector should be shown in the popup window
startSite - the start site root for the popup window

CmsVfsFileWidget

public CmsVfsFileWidget(boolean showSiteSelector,
                        java.lang.String startSite,
                        boolean includeFiles)
Creates a new vfs file widget with the parameters to configure the popup tree window behavior.

Parameters:
showSiteSelector - true if the site selector should be shown in the popup window
startSite - the start site root for the popup window
includeFiles - true if files should be shown in the popup window

CmsVfsFileWidget

public CmsVfsFileWidget(boolean showSiteSelector,
                        java.lang.String startSite,
                        boolean includeFiles,
                        boolean projectAware)
Creates a new vfs file widget with the parameters to configure the popup tree window behavior.

Parameters:
showSiteSelector - true if the site selector should be shown in the popup window
startSite - the start site root for the popup window
includeFiles - true if files should be shown in the popup window
projectAware - true if resources outside of the current project should be displayed as normal

CmsVfsFileWidget

public CmsVfsFileWidget(java.lang.String configuration)
Creates a new vfs file widget with the given configuration.

Parameters:
configuration - the configuration to use
Method Detail

getDefaultSearchTypes

protected static java.lang.String getDefaultSearchTypes(CmsObject cms,
                                                        CmsResource resource)
Returns a comma separated list of the default search type names.

Parameters:
cms - the CMS context
resource - the edited resource
Returns:
a comma separated list of the default search type names

getConfiguration

public java.lang.String getConfiguration()
Description copied from class: A_CmsWidget
Returns the configuration string.

Specified by:
getConfiguration in interface I_CmsWidget
Overrides:
getConfiguration in class A_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 interface I_CmsADEWidget
Parameters:
cms - the OpenCms context
schemaType - the schema type
messages - the messages
resource - the edited resource
contentLocale - 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 interface I_CmsADEWidget
Parameters:
cms - the current OpenCms context
Returns:
the required CSS resource links
See Also:
I_CmsADEWidget.getCssResourceLinks(org.opencms.file.CmsObject)

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 interface I_CmsWidget
Overrides:
getDialogIncludes in class A_CmsWidget
Parameters:
cms - the current users OpenCms context
widgetDialog - 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)

getDialogInitCall

public java.lang.String getDialogInitCall(CmsObject cms,
                                          I_CmsWidgetDialog widgetDialog)
Description copied from interface: I_CmsWidget
Generates the initialisation method JavaScript code for this widget.

Specified by:
getDialogInitCall in interface I_CmsWidget
Overrides:
getDialogInitCall in class A_CmsWidget
Parameters:
cms - the current users OpenCms context
widgetDialog - the dialog where the widget is used on
Returns:
the initialisation method JavaScript code
See Also:
I_CmsWidget.getDialogInitCall(org.opencms.file.CmsObject, org.opencms.widgets.I_CmsWidgetDialog)

getDialogInitMethod

public java.lang.String getDialogInitMethod(CmsObject cms,
                                            I_CmsWidgetDialog widgetDialog)
Description copied from interface: I_CmsWidget
Generates the initialization method JavaScript code for this widget.

Specified by:
getDialogInitMethod in interface I_CmsWidget
Overrides:
getDialogInitMethod in class A_CmsWidget
Parameters:
cms - an initialized instance of a CmsObject
widgetDialog - the dialog where the widget is used on
Returns:
the initialization method JavaScript code
See Also:
I_CmsWidget.getDialogInitMethod(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 interface I_CmsWidget
Parameters:
cms - an initialized instance of a CmsObject
widgetDialog - the dialog where the widget is used on
param - 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 interface I_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 interface I_CmsADEWidget
Parameters:
cms - the current OpenCms context
Returns:
the required java script resource links
See Also:
I_CmsADEWidget.getJavaScriptResourceLinks(org.opencms.file.CmsObject)

getStartSite

public java.lang.String getStartSite()
Returns the start site root shown by the widget when first displayed.

If null is returned, the dialog will display the current site of the current user.

Returns:
the start site root shown by the widget when first displayed

getWidgetName

public java.lang.String getWidgetName()
Description copied from interface: I_CmsADEWidget
Returns the class name of the widget.

Specified by:
getWidgetName in interface I_CmsADEWidget
Returns:
the class name
See Also:
I_CmsADEWidget.getWidgetName()

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 interface I_CmsADEWidget
Returns:
true if this is an internal widget
See Also:
I_CmsADEWidget.isInternal()

isShowingSiteSelector

public boolean isShowingSiteSelector()
Returns true if the site selector is shown.

The default is true.

Returns:
true if the site selector is shown

newInstance

public I_CmsWidget newInstance()
Description copied from interface: I_CmsWidget
Creates a duplicate of this widget instance.

Specified by:
newInstance in interface I_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 interface I_CmsWidget
Overrides:
setConfiguration in class A_CmsWidget
Parameters:
configuration - the configuration to set
See Also:
A_CmsWidget.setConfiguration(java.lang.String)

getJsonConfig

protected JSONObject getJsonConfig(CmsObject cms,
                                   A_CmsXmlContentValue schemaType,
                                   CmsMessages messages,
                                   CmsResource resource,
                                   java.util.Locale contentLocale)
Gets the JSON configuration.

Parameters:
cms - the current CMS context
schemaType - the schema type
messages - the messages
resource - the content resource
contentLocale - the content locale
Returns:
the JSON configuration object

getTreeToken

protected java.lang.String getTreeToken(CmsObject cms,
                                        A_CmsXmlContentValue value,
                                        CmsResource resource,
                                        java.util.Locale contentLocale)
Computes the tree token, which is used to decide which preloaded tree, if any, to load for the VFS/sitemap tabs.

Parameters:
cms - the current CMS context
value - the content value
resource - the content resource
contentLocale - the content locale
Returns:
the tree token