org.opencms.workplace.explorer
Class CmsNewResourceXmlPage

java.lang.Object
  extended by org.opencms.workplace.CmsWorkplace
      extended by org.opencms.workplace.tools.CmsToolDialog
          extended by org.opencms.workplace.CmsDialog
              extended by org.opencms.workplace.explorer.CmsNewResource
                  extended by org.opencms.workplace.explorer.CmsNewResourceXmlPage

public class CmsNewResourceXmlPage
extends CmsNewResource

The new resource page dialog handles the creation of an xml page.

The following files use this class:

Since:
6.0.0
Version:
$Revision: 1.22 $
Author:
Andreas Zahner

Field Summary
static String PARAM_BODYFILE
          Request parameter name for the selected body.
static String PARAM_TEMPLATE
          Request parameter name for the selected template.
 
Fields inherited from class org.opencms.workplace.explorer.CmsNewResource
ACTION_NEWFORM, ACTION_SUBMITFORM, BUTTON_NEXT, DIALOG_NEWFORM, DIALOG_SUBMITFORM, DIALOG_TYPE, PARAM_CURRENTFOLDER, PARAM_NEWRESOURCEEDITPROPS, PARAM_NEWRESOURCETYPE, PARAM_NEWRESOURCEURI
 
Fields inherited from class org.opencms.workplace.CmsDialog
ACTION_CANCEL, ACTION_CLOSEPOPUP, ACTION_CLOSEPOPUP_SAVE, ACTION_CONFIRMED, ACTION_DEFAULT, 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_OK, DIALOG_SET, DIALOG_WAIT, PARAM_ACTION, PARAM_CLOSELINK, PARAM_DIALOGTYPE, PARAM_ERRORSTACK, PARAM_FILE, PARAM_FRAMENAME, PARAM_ISPOPUP, PARAM_LOCK, PARAM_MESSAGE, 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_PATH, PARAM_ROOT, PARAM_STYLE, STYLE_NEW
 
Fields inherited from class org.opencms.workplace.CmsWorkplace
DEBUG, 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, PARAM_WP_EXPLORER_RESOURCE, PARAM_WP_PROJECT, PARAM_WP_SITE, PATH_DIALOGS, PATH_WORKPLACE, REQUEST_ATTRIBUTE_MULTIPART, REQUEST_ATTRIBUTE_RELOADTREE, RFS_PATH_RESOURCES, SESSION_WORKPLACE_CLASS, TEMP_FILE_PREFIX, VFS_DIR_DEFAULTBODIES, VFS_DIR_TEMPLATES, VFS_PATH_COMMONS, VFS_PATH_EDITORS, VFS_PATH_GALLERIES, VFS_PATH_LOCALES, VFS_PATH_MODULES, VFS_PATH_RESOURCES, VFS_PATH_SYSTEM, VFS_PATH_VIEWS, VFS_PATH_WORKPLACE
 
Constructor Summary
CmsNewResourceXmlPage(CmsJspActionElement jsp)
          Public constructor with JSP action element.
CmsNewResourceXmlPage(PageContext context, HttpServletRequest req, HttpServletResponse res)
          Public constructor with JSP variables.
 
Method Summary
 void actionCloseDialog()
          Used to close the current JSP dialog.
 void actionCreateResource()
          Creates the xml page using the specified resource name.
 void actionEditProperties()
          Forwards to the property dialog if the resourceeditprops parameter is true.
 String buildSelectBodyFile(String attributes)
          Builds the html for the page body file select box.
 String buildSelectTemplates(String attributes)
          Builds the html for the page template select box.
static TreeMap getBodies(CmsObject cms)
          Returns a sorted Map of all available body files of the OpenCms modules.
protected static TreeMap getElements(CmsObject cms, String elementFolder)
          Returns a sorted Map of all available elements in the specified subfolder of the OpenCms modules.
 String getParamBodyFile()
          Returns the body file parameter value.
 String getParamDialogmode()
          Returns the value of the dialogmode parameter, or null if this parameter was not provided.
 String getParamTemplate()
          Returns the template parameter value.
static TreeMap getTemplates(CmsObject cms)
          Returns a sorted Map of all available templates of the OpenCms modules.
protected  void initWorkplaceRequestValues(CmsWorkplaceSettings settings, HttpServletRequest request)
          Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.
 boolean isCreateIndexMode()
          Returns true if the current mode is: create an index page in a newly created folder.
 String paramsAsHidden()
          Overrides the super implementation to avoid problems with double reqource input fields.
 void setParamBodyFile(String bodyFile)
          Sets the body file parameter value.
 void setParamDialogmode(String value)
          Sets the value of the dialogmode parameter.
 void setParamTemplate(String template)
          Sets the template parameter value.
 
Methods inherited from class org.opencms.workplace.explorer.CmsNewResource
actionSelect, buildNewList, computeCurrentFolder, computeFullResourceName, computeNewTitleProperty, createPropertyObject, createResourceProperties, dialogButtonsHtml, dialogButtonsNextCancel, getNewResourceHandler, getParamCurrentFolder, getParamNewResourceEditProps, getParamNewResourceType, getParamNewResourceUri, getParamPage, isResourceCreated, setParamCurrentFolder, setParamNewResourceEditProps, setParamNewResourceType, setParamNewResourceUri, setParamPage, setResourceCreated
 
Methods inherited from class org.opencms.workplace.CmsDialog
appendDelimiter, checkResourcePermissions, checkResourcePermissions, dialog, dialogBlock, dialogBlockEnd, dialogBlockStart, dialogButtonRow, dialogButtonRowEnd, dialogButtonRowStart, dialogButtons, dialogButtonsClose, dialogButtonsClose, dialogButtonsCloseDetails, dialogButtonsOk, dialogButtonsOk, dialogButtonsOkCancel, dialogButtonsOkCancel, dialogButtonsOkCancelAdvanced, dialogButtonsSetOkCancel, dialogContent, dialogContentEnd, dialogContentStart, dialogEnd, dialogHead, dialogHorizontalSpacer, 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, getParamRedirect, getParamResource, getParamTitle, getState, htmlStart, htmlStart, htmlStart, htmlStartStyle, includeErrorpage, initCmsDialog, isPopup, pageHtml, pageHtml, setAction, setOnlineHelpUriCustom, setParamAction, setParamCloseLink, setParamDialogtype, setParamFramename, setParamIsPopup, setParamMessage, setParamRedirect, setParamResource, setParamTitle
 
Methods inherited from class org.opencms.workplace.tools.CmsToolDialog
dialogTitle, getAdminTool, getCurrentToolPath, getParamPath, getParamRoot, getParamStyle, getParentPath, getToolManager, iconsBlockArea, iconsBlockAreaEnd, iconsBlockAreaStart, initAdminTool, pageBody, pageHtmlStyle, setParamPath, setParamRoot, setParamStyle, useNewStyle
 
Methods inherited from class org.opencms.workplace.CmsWorkplace
addMessages, allParamsAsHidden, allParamsAsRequest, allParamValues, bodyEnd, bodyStart, bodyStart, buildSelect, buildSelect, button, button, buttonBar, buttonBar, buttonBarHorizontalLine, buttonBarLabel, buttonBarLabel, buttonBarLine, buttonBarLineSpacer, buttonBarSeparator, buttonBarSpacer, buttonBarStartTab, calendarIncludes, calendarIncludes, calendarInit, calendarInit, checkLock, checkLock, decodeParamValue, fillParamValues, fillParamValues, getBroadcastMessageString, getCalendarDate, getCalendarJavaDateFormat, getCalendarLocalizedTime, getCms, getEncoding, getExplorerFileListFullUri, getFrameSource, getJsp, getLocale, getMacroResolver, getMessages, getMultiPartFileItems, getParameterMap, getResourceUri, getResourceUri, getSession, getSettings, getSkinUri, getStyleUri, getStyleUri, getStyleUri, htmlEnd, initMessages, initSettings, initUserSettings, initWorkplaceMembers, initWorkplaceSettings, isForwarded, isHelpEnabled, isSubElement, key, key, key, nullToEmpty, paramsAsHidden, paramsAsParameterMap, paramsAsRequest, paramValues, resolveMacros, sendCmsRedirect, sendForward, setForwarded, shortKey, switchToCurrentProject, switchToTempProject
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PARAM_BODYFILE

public static final String PARAM_BODYFILE
Request parameter name for the selected body.

See Also:
Constant Field Values

PARAM_TEMPLATE

public static final String PARAM_TEMPLATE
Request parameter name for the selected template.

See Also:
Constant Field Values
Constructor Detail

CmsNewResourceXmlPage

public CmsNewResourceXmlPage(CmsJspActionElement jsp)
Public constructor with JSP action element.

Parameters:
jsp - an initialized JSP action element

CmsNewResourceXmlPage

public CmsNewResourceXmlPage(PageContext context,
                             HttpServletRequest req,
                             HttpServletResponse res)
Public constructor with JSP variables.

Parameters:
context - the JSP page context
req - the JSP request
res - the JSP response
Method Detail

getBodies

public static TreeMap getBodies(CmsObject cms)
                         throws CmsException
Returns a sorted Map of all available body files of the OpenCms modules.

Parameters:
cms - the current cms object
Returns:
a sorted map with the body file title as key and absolute path to the body file as value
Throws:
CmsException - if reading a folder or file fails

getTemplates

public static TreeMap getTemplates(CmsObject cms)
                            throws CmsException
Returns a sorted Map of all available templates of the OpenCms modules.

Parameters:
cms - the current cms object
Returns:
a sorted map with the template title as key and absolute path to the template as value
Throws:
CmsException - if reading a folder or file fails

getElements

protected static TreeMap getElements(CmsObject cms,
                                     String elementFolder)
                              throws CmsException
Returns a sorted Map of all available elements in the specified subfolder of the OpenCms modules.

Parameters:
cms - the current cms object
elementFolder - the module subfolder to serach for elements
Returns:
a sorted map with the element title as key and absolute path to the element as value
Throws:
CmsException - if reading a folder or file fails

actionCloseDialog

public void actionCloseDialog()
                       throws JspException
Used to close the current JSP dialog.

This method overwrites the close dialog method in the super class, because in case a new folder was created before, after this dialog the tree view has to be refreshed.

It tries to include the URI stored in the workplace settings. This URI is determined by the frame name, which has to be set in the framename parameter.

Overrides:
actionCloseDialog in class CmsDialog
Throws:
JspException - if including an element fails

actionCreateResource

public void actionCreateResource()
                          throws JspException
Creates the xml page using the specified resource name.

Overrides:
actionCreateResource in class CmsNewResource
Throws:
JspException - if inclusion of error dialog fails

actionEditProperties

public void actionEditProperties()
                          throws IOException,
                                 JspException,
                                 ServletException
Forwards to the property dialog if the resourceeditprops parameter is true.

If the parameter is not true, the dialog will be closed.

Overrides:
actionEditProperties in class CmsNewResource
Throws:
IOException - if forwarding to the property dialog fails
ServletException - if forwarding to the property dialog fails
JspException - if an inclusion fails

buildSelectBodyFile

public String buildSelectBodyFile(String attributes)
Builds the html for the page body file select box.

Parameters:
attributes - optional attributes for the <select> tag
Returns:
the html for the page body file select box

buildSelectTemplates

public String buildSelectTemplates(String attributes)
Builds the html for the page template select box.

Parameters:
attributes - optional attributes for the <select> tag
Returns:
the html for the page template select box

getParamBodyFile

public String getParamBodyFile()
Returns the body file parameter value.

Returns:
the body file parameter value

getParamDialogmode

public String getParamDialogmode()
Returns the value of the dialogmode parameter, or null if this parameter was not provided.

The dialogmode parameter stores the different modes of the property dialog, e.g. for displaying other buttons in the new resource wizard.

Returns:
the value of the usetempfileproject parameter

getParamTemplate

public String getParamTemplate()
Returns the template parameter value.

Returns:
the template parameter value

isCreateIndexMode

public boolean isCreateIndexMode()
Returns true if the current mode is: create an index page in a newly created folder.

Returns:
true if we are in wizard mode to create an index page, otherwise false

paramsAsHidden

public String paramsAsHidden()
Overrides the super implementation to avoid problems with double reqource input fields.

Overrides:
paramsAsHidden in class CmsWorkplace
Returns:
all initialized parameters of the current workplace class as hidden field tags that can be inserted in a html form
See Also:
CmsWorkplace.paramsAsHidden()

setParamBodyFile

public void setParamBodyFile(String bodyFile)
Sets the body file parameter value.

Parameters:
bodyFile - the body file parameter value

setParamDialogmode

public void setParamDialogmode(String value)
Sets the value of the dialogmode parameter.

Parameters:
value - the value to set

setParamTemplate

public void setParamTemplate(String template)
Sets the template parameter value.

Parameters:
template - the template parameter value

initWorkplaceRequestValues

protected void initWorkplaceRequestValues(CmsWorkplaceSettings settings,
                                          HttpServletRequest request)
Description copied from class: CmsWorkplace
Analyzes the request for workplace parameters and adjusts the workplace settings accordingly.

Overrides:
initWorkplaceRequestValues in class CmsNewResource
Parameters:
settings - the workplace settings
request - the current request
See Also:
CmsWorkplace.initWorkplaceRequestValues(org.opencms.workplace.CmsWorkplaceSettings, javax.servlet.http.HttpServletRequest)