Merged V3.2 to HEAD

16841: Fix for ETHREEOH-3046 - discussion post replies and further post content now all set to UTF-8 encoding format.
   16853: Merged V3.1 to V3.2
      13681: Disable CMIS Web Services.
      13958: ETHREEOH-1625 - Incorrect save file process via Office Addin
      14026: ETHREEOH-1805 - update GET login web script description to recommend use of POST login web script instead.
   16861: Merged V3.1 to V3.2
      14162: ETHREEOH-1733 - multiday events display correctly
      14273: fix for ETHREEOH-2031
      14274: fix for event not adjusted by height issue in week view, after adding
   16867: Merged V3.1 to V3.2
      15429: The solution is to remove 'label' and 'description attributes' and add appropriate 'label-id' and 'description-id' attributes in 
   web-client\config\alfresco\web-client-config.xml for dashlets. Appropriate ids were added into webclient.properties.
      16677: ETHREEOH-1208 - Upload/recall documents with apostrophe/accent via Alfresco Office plugin
   16869: Merged V3.1 to V3.2
      16848: Merged V2.2 to V3.1
         15217: Fix for ETWOTWO-1268. Check for existence of desired control on first step of the dialog.
         15218: Fix for ETWOTWO-1269. Remove node.hasPermission(PermissionService.CREATE_CHILDREN) from CheckoutDocEvaluator#evaluate method (like 3.2 version).
      16849: Merged V2.2 to V3.1
         15424: ETWOTWO-1349
      16851: Merged V2.2 to V3.1
         15432: **RECORD ONLY** Input characters validation script was modified to disallow  !@#$%^&*().
         15433: This check-in fixes ETWOTWO-1351, ETWOTWO-1352, ETWOTWO-1353 because their behaviour is similar.
   16874: Merged DEV/TEMPORARY to V3.2
      16789: ETHREEOH-1895: Incorrect working of Link Destination Details
      16790: ETHREEOH-2372: Incorrect working of Link Destination Details
      16791: ETHREEOH-2342: Error message appear when "Coordinator" try to remove himself from the space
      16793: ETHREEOH-1364 & ETHREEOH-1367
      16794: ETHREEOH-2358: Letters and special symbols can be typed in Date value of property while creation of Content Rule and it leads to error
      16837: ETHREEOH-2631: two jsp:root elements cause compilation error in Weblogic 10.3.1

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16956 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2009-10-15 10:38:44 +00:00
parent 755abcca82
commit c350b0140a
14 changed files with 193 additions and 46 deletions

View File

@@ -2104,15 +2104,3 @@ condition_composite_error=Composite Condition (ERROR)
component_property=Property component_property=Property
component_value=Value component_value=Value
document_list_title=Document List
my_spaces_list_title=My Spaces List
my_tasks_title=My Tasks
my_web_forms_title=My Web Forms
my_web_files_title=My Web Files
document_list_desc=Document List WebScript
my_spaces_list_desc=My Spaces WebScript
my_tasks_desc=My Tasks WebScript
my_web_forms_desc=My Web Forms WebScript
my_web_files_desc=My Web Files WebScript

View File

@@ -173,6 +173,7 @@ public class ExternalAccessServlet extends BaseServlet
browseBean.setupContentAction(nodeRef.getId(), true); browseBean.setupContentAction(nodeRef.getId(), true);
} }
fc.getExternalContext().getSessionMap().put(AlfrescoNavigationHandler.EXTERNAL_CONTAINER_SESSION, Boolean.TRUE);
// perform the appropriate JSF navigation outcome // perform the appropriate JSF navigation outcome
NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler(); NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler();
navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_DOCDETAILS); navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_DOCDETAILS);
@@ -205,7 +206,7 @@ public class ExternalAccessServlet extends BaseServlet
// setup the Space on the browse bean // setup the Space on the browse bean
browseBean.setupSpaceAction(nodeRef.getId(), true); browseBean.setupSpaceAction(nodeRef.getId(), true);
} }
fc.getExternalContext().getSessionMap().put(AlfrescoNavigationHandler.EXTERNAL_CONTAINER_SESSION, Boolean.TRUE);
// perform the appropriate JSF navigation outcome // perform the appropriate JSF navigation outcome
NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler(); NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler();
navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_SPACEDETAILS); navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_SPACEDETAILS);

View File

@@ -32,6 +32,7 @@ import java.util.Map;
import javax.faces.context.FacesContext; import javax.faces.context.FacesContext;
import org.alfresco.i18n.I18NUtil;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.repo.action.executer.ImporterActionExecuter; import org.alfresco.repo.action.executer.ImporterActionExecuter;
import org.alfresco.repo.content.MimetypeMap; import org.alfresco.repo.content.MimetypeMap;
@@ -42,6 +43,7 @@ import org.alfresco.service.cmr.action.ActionService;
import org.alfresco.service.cmr.repository.ChildAssociationRef; import org.alfresco.service.cmr.repository.ChildAssociationRef;
import org.alfresco.service.cmr.repository.ContentService; import org.alfresco.service.cmr.repository.ContentService;
import org.alfresco.service.cmr.repository.ContentWriter; import org.alfresco.service.cmr.repository.ContentWriter;
import org.alfresco.service.cmr.repository.DuplicateChildNodeNameException;
import org.alfresco.service.cmr.repository.MimetypeService; import org.alfresco.service.cmr.repository.MimetypeService;
import org.alfresco.service.cmr.repository.NodeRef; import org.alfresco.service.cmr.repository.NodeRef;
import org.alfresco.service.namespace.NamespaceService; import org.alfresco.service.namespace.NamespaceService;
@@ -69,6 +71,7 @@ public class ImportDialog extends BaseDialogBean
private static final String DEFAULT_OUTCOME = "dialog:close"; private static final String DEFAULT_OUTCOME = "dialog:close";
private static final String MSG_ERROR = "error_import"; private static final String MSG_ERROR = "error_import";
private static final String ERR_DUPLICATE_NAME = "system.err.duplicate_name";
private static final String MSG_ERROR_NO_FILE = "error_import_no_file"; private static final String MSG_ERROR_NO_FILE = "error_import_no_file";
private static final String MSG_ERROR_EMPTY_FILE = "error_import_empty_file"; private static final String MSG_ERROR_EMPTY_FILE = "error_import_empty_file";
private static final String MSG_OK = "ok"; private static final String MSG_OK = "ok";
@@ -138,9 +141,19 @@ public class ImportDialog extends BaseDialogBean
reset(); reset();
} }
catch (Throwable e) catch (Throwable e)
{
if (e instanceof DuplicateChildNodeNameException)
{
String name = ((DuplicateChildNodeNameException)e).getName();
String err_mess = MessageFormat.format(I18NUtil.getMessage(ERR_DUPLICATE_NAME), name);
Utils.addErrorMessage(MessageFormat.format(Application.getMessage(
FacesContext.getCurrentInstance(), MSG_ERROR), err_mess), e);
}
else
{ {
Utils.addErrorMessage(MessageFormat.format(Application.getMessage( Utils.addErrorMessage(MessageFormat.format(Application.getMessage(
FacesContext.getCurrentInstance(), MSG_ERROR), e.toString()), e); FacesContext.getCurrentInstance(), MSG_ERROR), e.toString()), e);
}
outcome = null; outcome = null;
ReportedException.throwIfNecessary(e); ReportedException.throwIfNecessary(e);
} }

View File

@@ -69,6 +69,9 @@ public class CreatePostDialog extends CreateContentWizard
// remove link breaks and replace with <br> // remove link breaks and replace with <br>
this.content = Utils.replaceLineBreaks(this.content, false); this.content = Utils.replaceLineBreaks(this.content, false);
// set UTF-8 encoding for the post (all original posts are UTF-8 also)
this.encoding = "UTF-8";
return super.finishImpl(context, outcome); return super.finishImpl(context, outcome);
} }

View File

@@ -30,7 +30,8 @@ import javax.faces.event.ActionEvent;
import org.alfresco.web.app.Application; import org.alfresco.web.app.Application;
import org.alfresco.web.bean.dialog.BaseDialogBean; import org.alfresco.web.bean.dialog.BaseDialogBean;
public class RemoveInvitedUserDialog extends BaseDialogBean { public class RemoveInvitedUserDialog extends BaseDialogBean
{
private static final long serialVersionUID = -7457234588814115434L; private static final long serialVersionUID = -7457234588814115434L;
@@ -45,43 +46,51 @@ public class RemoveInvitedUserDialog extends BaseDialogBean {
private SpaceUsersBean spaceUsersBean; private SpaceUsersBean spaceUsersBean;
@Override @Override
public boolean getFinishButtonDisabled() { public boolean getFinishButtonDisabled()
{
return false; return false;
} }
@Override @Override
protected String finishImpl(FacesContext context, String outcome) throws Exception { protected String finishImpl(FacesContext context, String outcome) throws Exception
spaceUsersBean.removeOK(); {
return outcome; return spaceUsersBean.removeOK();
} }
public void setupUserAction(ActionEvent event) { public void setupUserAction(ActionEvent event)
{
spaceUsersBean.setupUserAction(event); spaceUsersBean.setupUserAction(event);
} }
public String getPersonName() { public String getPersonName()
{
return spaceUsersBean.getPersonName(); return spaceUsersBean.getPersonName();
} }
public void setPersonName(String personName) { public void setPersonName(String personName)
{
this.spaceUsersBean.setPersonName(personName); this.spaceUsersBean.setPersonName(personName);
} }
public SpaceUsersBean getSpaceUsersBean() { public SpaceUsersBean getSpaceUsersBean()
{
return spaceUsersBean; return spaceUsersBean;
} }
public void setSpaceUsersBean(SpaceUsersBean spaceUsersBean) { public void setSpaceUsersBean(SpaceUsersBean spaceUsersBean)
{
this.spaceUsersBean = spaceUsersBean; this.spaceUsersBean = spaceUsersBean;
} }
@Override @Override
public String getCancelButtonLabel() { public String getCancelButtonLabel()
{
return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_NO); return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_NO);
} }
@Override @Override
public String getFinishButtonLabel() { public String getFinishButtonLabel()
{
return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_YES); return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_YES);
} }
@@ -89,7 +98,7 @@ public class RemoveInvitedUserDialog extends BaseDialogBean {
public String getContainerTitle() public String getContainerTitle()
{ {
FacesContext fc = FacesContext.getCurrentInstance(); FacesContext fc = FacesContext.getCurrentInstance();
return Application.getMessage(fc, MSG_REMOVE_USER) + " " + Application.getMessage(fc, MSG_LEFT_QUOTE) return Application.getMessage(fc, MSG_REMOVE_USER) + " " + Application.getMessage(fc, MSG_LEFT_QUOTE) + spaceUsersBean.getPersonName()
+ spaceUsersBean.getPersonName() + Application.getMessage(fc, MSG_RIGHT_QUOTE); + Application.getMessage(fc, MSG_RIGHT_QUOTE);
} }
} }

View File

@@ -851,7 +851,7 @@ public abstract class UserMembersBean extends BaseDialogBean implements IContext
*/ */
public String removeOK() public String removeOK()
{ {
String outcome = OUTCOME_FINISH; String outcome = getDefaultFinishOutcome();
UserTransaction tx = null; UserTransaction tx = null;
FacesContext context = FacesContext.getCurrentInstance(); FacesContext context = FacesContext.getCurrentInstance();

View File

@@ -402,6 +402,8 @@ public class DatePickerRenderer extends BaseRenderer
{ {
outputAttribute(out, component.getAttributes().get("disabled"), "disabled"); outputAttribute(out, component.getAttributes().get("disabled"), "disabled");
} }
outputAttribute(out, clientId, "id");
out.write(" onkeyup=\"checkOkButtonState();\" onchange=\"checkOkButtonState();\"");
} }
else else
{ {

View File

@@ -44,6 +44,7 @@ import javax.faces.event.FacesEvent;
import javax.transaction.UserTransaction; import javax.transaction.UserTransaction;
import org.alfresco.model.ContentModel; import org.alfresco.model.ContentModel;
import org.alfresco.repo.search.SearcherException;
import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.security.authentication.AuthenticationUtil;
import org.alfresco.repo.security.authority.AuthorityDAO; import org.alfresco.repo.security.authority.AuthorityDAO;
import org.alfresco.service.cmr.dictionary.AssociationDefinition; import org.alfresco.service.cmr.dictionary.AssociationDefinition;
@@ -1085,6 +1086,11 @@ public abstract class BaseAssociationEditor extends UIInput
results = Repository.getServiceRegistry(context).getSearchService().query(searchParams); results = Repository.getServiceRegistry(context).getSearchService().query(searchParams);
this.availableOptions = results.getNodeRefs(); this.availableOptions = results.getNodeRefs();
} }
catch (SearcherException se)
{
logger.info("Search failed for: " + query, se);
Utils.addErrorMessage(Application.getMessage(FacesContext.getCurrentInstance(), Repository.ERROR_QUERY));
}
finally finally
{ {
if (results != null) if (results != null)

View File

@@ -198,8 +198,9 @@
function checkButtonState() function checkButtonState()
{ {
if (document.getElementById("dialog:dialog-body:name").value.length == 0 if (document.getElementById("dialog:dialog-body:name") == undefined ||
|| document.getElementById("dialog:dialog-body:language").selectedIndex == 0) document.getElementById("dialog:dialog-body:name").value.length == 0 ||
document.getElementById("dialog:dialog-body:language").selectedIndex == 0)
{ {
document.getElementById("dialog:finish-button").disabled = true; document.getElementById("dialog:finish-button").disabled = true;
} }

View File

@@ -40,6 +40,33 @@
var disabled = (inputField.value.length == 0); var disabled = (inputField.value.length == 0);
document.getElementById("contains-text-condition:ok-button").disabled = disabled; document.getElementById("contains-text-condition:ok-button").disabled = disabled;
} }
function checkOkButtonState()
{
var input = document.getElementById("contains-text-condition:pattern_hour");
if (!input.disabled)
{
if (input.value.length == 0 || input.value.charCodeAt(0) < 48 || input.value.charCodeAt(0) > 57 ||
(input.value.length == 2 && (input.value.charCodeAt(1) < 48 || input.value.charCodeAt(1) > 57)))
{
document.getElementById("contains-text-condition:ok-button").disabled = true;
return;
}
}
input = document.getElementById("contains-text-condition:pattern_minute");
if (!input.disabled)
{
if (input.value.length == 0 || input.value.charCodeAt(0) < 48 || input.value.charCodeAt(0) > 57 ||
(input.value.length == 2 && (input.value.charCodeAt(1) < 48 || input.value.charCodeAt(1) > 57)))
{
document.getElementById("contains-text-condition:ok-button").disabled = true;
return;
}
}
document.getElementById("contains-text-condition:ok-button").disabled = false;
}
</script> </script>
<f:view> <f:view>

View File

@@ -57,6 +57,28 @@
rendering_engine_template_file_input.value = filename; rendering_engine_template_file_input.value = filename;
rendering_engine_template_file_input.form.submit(); rendering_engine_template_file_input.form.submit();
} }
function refresh_add_to_list_button()
{
var wizard = document.forms["wizard"]["wizard:wizard-body:rendering-engine"];
var count = wizard.length;
var checked = false;
while (count > 0)
{
count--;
if (wizard[count].checked) checked = true;
}
var name = document.getElementById("wizard:wizard-body:name").value;
var output_path_pattern = document.getElementById("wizard:wizard-body:output-path-pattern").value;
if (name.length == 0 || output_path_pattern.length == 0 || !checked)
{
document.getElementById("wizard:wizard-body:add-to-list-button").disabled = true;
}
else
{
document.getElementById("wizard:wizard-body:add-to-list-button").disabled = false;
}
}
</script> </script>
</f:verbatim> </f:verbatim>
@@ -86,6 +108,7 @@
type="file" type="file"
size="35" size="35"
name="alfFileInput" name="alfFileInput"
contentEditable="false"
onchange="javascript:handle_upload(this)"/></f:verbatim> onchange="javascript:handle_upload(this)"/></f:verbatim>
</h:column> </h:column>
@@ -127,7 +150,8 @@
value="#{msg.rendering_engine}:"/> value="#{msg.rendering_engine}:"/>
<h:selectOneRadio id="rendering-engine" <h:selectOneRadio id="rendering-engine"
value="#{WizardManager.bean.renderingEngineName}" value="#{WizardManager.bean.renderingEngineName}"
disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}"> disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}"
onchange="refresh_add_to_list_button();">
<f:selectItems id="rendering-engine-choices" <f:selectItems id="rendering-engine-choices"
value="#{WizardManager.bean.renderingEngineChoices}"/> value="#{WizardManager.bean.renderingEngineChoices}"/>
</h:selectOneRadio> </h:selectOneRadio>
@@ -146,7 +170,9 @@
value="#{WizardManager.bean.renderingEngineTemplateName}" value="#{WizardManager.bean.renderingEngineTemplateName}"
disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}" disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}"
maxlength="1024" maxlength="1024"
size="35"/> size="35"
onkeyup="refresh_add_to_list_button();"
onchange="refresh_add_to_list_button();"/>
<h:column id="name-help"/> <h:column id="name-help"/>
<h:outputText id="no_graphic_image_title" value=""/> <h:outputText id="no_graphic_image_title" value=""/>
@@ -199,7 +225,9 @@
<h:inputText id="output-path-pattern" <h:inputText id="output-path-pattern"
disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}" disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}"
value="#{WizardManager.bean.outputPathPatternForRendition}" value="#{WizardManager.bean.outputPathPatternForRendition}"
style="width:100%;"/> style="width:100%;"
onkeyup="refresh_add_to_list_button();"
onchange="refresh_add_to_list_button();"/>
<h:graphicImage id="graphic_image_output_path_pattern_help" <h:graphicImage id="graphic_image_output_path_pattern_help"
value="/images/icons/Help_icon.gif" style="cursor:help" value="/images/icons/Help_icon.gif" style="cursor:help"
onclick="javascript:toggleOutputPathPatternHelp()" /> onclick="javascript:toggleOutputPathPatternHelp()" />
@@ -207,7 +235,7 @@
<h:column id="output_path_pattern_help_empty_col_1"/> <h:column id="output_path_pattern_help_empty_col_1"/>
<h:column id="output_path_pattern_help_empty_col_2"/> <h:column id="output_path_pattern_help_empty_col_2"/>
<f:verbatim> <f:verbatim>
<jsp:directive.include file="/jsp/wcm/output-path-pattern-help.jsp"/> <c:import url="/jsp/wcm/output-path-pattern-help.jsp" />
</f:verbatim> </f:verbatim>
<h:column id="output_path_pattern_help_empty_col_3"/> <h:column id="output_path_pattern_help_empty_col_3"/>
</h:panelGrid> </h:panelGrid>
@@ -218,7 +246,11 @@
value="#{msg.add_to_list_button}" value="#{msg.add_to_list_button}"
actionListener="#{WizardManager.bean.addSelectedRenderingEngineTemplate}" actionListener="#{WizardManager.bean.addSelectedRenderingEngineTemplate}"
styleClass="wizardButton" styleClass="wizardButton"
disabled="#{WizardManager.bean.addToListDisabled}" /> disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null ||
WizardManager.bean.renderingEngineName == null ||
WizardManager.bean.renderingEngineTemplateName == null ||
WizardManager.bean.mimetypeForRendition == null ||
WizardManager.bean.outputPathPatternForRendition}" />
</h:panelGroup> </h:panelGroup>
<h:panelGroup id="data-table-panel-group"> <h:panelGroup id="data-table-panel-group">
<h:dataTable id="rendering-engine-template-data-table" <h:dataTable id="rendering-engine-template-data-table"

View File

@@ -138,6 +138,7 @@
type="file" type="file"
size="35" size="35"
name="alfFileInput" name="alfFileInput"
contentEditable="false"
onchange="javascript:handle_upload(this)"/></f:verbatim> onchange="javascript:handle_upload(this)"/></f:verbatim>
</h:column> </h:column>
<h:column id="column_schema_not_empty" <h:column id="column_schema_not_empty"
@@ -242,7 +243,7 @@
<h:column id="output_path_pattern_help_empty_col_1"/> <h:column id="output_path_pattern_help_empty_col_1"/>
<h:column id="output_path_pattern_help_empty_col_2"/> <h:column id="output_path_pattern_help_empty_col_2"/>
<f:verbatim> <f:verbatim>
<jsp:directive.include file="/jsp/wcm/output-path-pattern-help.jsp"/> <c:import url="/jsp/wcm/output-path-pattern-help.jsp" />
</f:verbatim> </f:verbatim>
<h:column id="output_path_pattern_help_empty_col_3"/> <h:column id="output_path_pattern_help_empty_col_3"/>

View File

@@ -31,6 +31,9 @@
<%@ page isELIgnored="false" %> <%@ page isELIgnored="false" %>
<f:verbatim> <f:verbatim>
<script type="text/javascript" src="<%=request.getContextPath()%>/scripts/validation.js"> </script>
<script type="text/javascript"> <script type="text/javascript">
window.onload = pageLoaded; window.onload = pageLoaded;
@@ -42,7 +45,11 @@
function checkButtonState() function checkButtonState()
{ {
if (document.getElementById("dialog:dialog-body:title").value.length == 0) var name = document.getElementById("dialog:dialog-body:title");
var filepattern = document.getElementById("dialog:dialog-body:filepattern");
var description = document.getElementById("dialog:dialog-body:description");
if (!validateName(name, "", false) || filepattern.value.length == 0 || description.value.length > 1024)
{ {
document.getElementById("dialog:finish-button").disabled = true; document.getElementById("dialog:finish-button").disabled = true;
} }
@@ -52,6 +59,7 @@
} }
} }
</script> </script>
</f:verbatim> </f:verbatim>
@@ -82,7 +90,7 @@
</td> </td>
<td> <td>
</f:verbatim> </f:verbatim>
<h:inputText id="title" value="#{DialogManager.bean.title}" size="45" maxlength="1024" onkeyup="javascript:checkButtonState();" /> <h:inputText id="title" value="#{DialogManager.bean.title}" size="45" maxlength="1024" onchange="javascript:checkButtonState();" onkeyup="javascript:checkButtonState();" />
<f:verbatim> <f:verbatim>
</td> </td>
</tr> </tr>
@@ -95,7 +103,7 @@
</td> </td>
<td> <td>
</f:verbatim> </f:verbatim>
<h:inputTextarea id="description" value="#{DialogManager.bean.description}" rows="3" cols="42" /> <h:inputTextarea id="description" value="#{DialogManager.bean.description}" rows="3" cols="42" onchange="javascript:checkButtonState();" onkeyup="javascript:checkButtonState();" />
<f:verbatim> <f:verbatim>
</td> </td>
</tr> </tr>
@@ -124,6 +132,11 @@
</table> </table>
<table cellpadding="3" cellspacing="2" border="0"> <table cellpadding="3" cellspacing="2" border="0">
<tr> <tr>
<td align="left" width=16>
</f:verbatim>
<h:graphicImage value="/images/icons/required_field.gif" alt="#{msg.required_field}" />
<f:verbatim>
</td>
<td> <td>
<nobr> <nobr>
</f:verbatim> </f:verbatim>
@@ -133,7 +146,7 @@
</td> </td>
<td> <td>
</f:verbatim> </f:verbatim>
<h:inputText id="filepattern" value="#{DialogManager.bean.outputPathPattern}" size="70" maxlength="1024" /> <h:inputText id="filepattern" value="#{DialogManager.bean.outputPathPattern}" size="70" maxlength="1024" onchange="javascript:checkButtonState();" onkeyup="javascript:checkButtonState();" />
<h:graphicImage value="/images/icons/Help_icon.gif" style="vertical-align:-20%;padding-left:8px;cursor:help" onclick="javascript:toggleOutputPathPatternHelp()" /> <h:graphicImage value="/images/icons/Help_icon.gif" style="vertical-align:-20%;padding-left:8px;cursor:help" onclick="javascript:toggleOutputPathPatternHelp()" />
<f:verbatim> <f:verbatim>
</td> </td>
@@ -141,7 +154,7 @@
<tr> <tr>
<td></td> <td></td>
<td> <td>
<jsp:directive.include file="/jsp/wcm/output-path-pattern-help.jsp"/> <c:import url="/jsp/wcm/output-path-pattern-help.jsp" />
</td> </td>
</tr> </tr>
</table> </table>

View File

@@ -30,6 +30,52 @@
<%@ page buffer="32kb" contentType="text/html;charset=UTF-8" %> <%@ page buffer="32kb" contentType="text/html;charset=UTF-8" %>
<%@ page isELIgnored="false" %> <%@ page isELIgnored="false" %>
<f:verbatim>
<script type="text/javascript" src="<%=request.getContextPath()%>/scripts/validation.js"> </script>
<script type="text/javascript">
window.onload = pageLoaded;
function pageLoaded()
{
checkButtonState();
}
function checkButtonState(control)
{
var outputPatterns = $("dialog:dialog-body:templates").getElements('input[name^=dialog:dialog-body:templates]');
var disable = false;
for (var i = 0; i < outputPatterns.length; i++)
{
if (outputPatterns[i].value.length == 0)
{
disable = true;
break;
}
}
if (disable)
{
document.getElementById("dialog:finish-button").disabled = true;
}
else
{
document.getElementById("dialog:finish-button").disabled = false;
}
}
</script>
</f:verbatim>
<h:panelGrid id="grid-1" columns="1" cellpadding="2" cellpadding="2" width="100%"> <h:panelGrid id="grid-1" columns="1" cellpadding="2" cellpadding="2" width="100%">
<%-- Template selection list --%> <%-- Template selection list --%>
<h:outputText id="msg-select" styleClass="mainSubText" value="#{msg.website_select_templates}:" /> <h:outputText id="msg-select" styleClass="mainSubText" value="#{msg.website_select_templates}:" />
@@ -60,11 +106,16 @@
<h:column id="col2"> <h:column id="col2">
<h:outputText id="msg-01" value="#{row.title}" /> <h:outputText id="msg-01" value="#{row.title}" />
</h:column> </h:column>
<h:column>
<h:graphicImage value="/images/icons/required_field.gif" alt="#{msg.required_field}" />
</h:column>
<h:column> <h:column>
<f:facet name="header"> <f:facet name="header">
<h:outputText id="head-2" value="#{msg.output_path_pattern}" /> <h:outputText id="head-2" value="#{msg.output_path_pattern}" />
</f:facet> </f:facet>
<h:inputText id="in-01" value="#{row.outputPathPattern}" size="70" maxlength="1024" /> <h:inputText id="in-01" value="#{row.outputPathPattern}" size="70" maxlength="1024"
onchange="javascript:checkButtonState(this);"
onkeyup="javascript:checkButtonState(this);" />
</h:column> </h:column>
<h:column> <h:column>
<a:actionLink id="act-01" actionListener="#{DialogManager.bean.removeTemplate}" image="/images/icons/delete.gif" <a:actionLink id="act-01" actionListener="#{DialogManager.bean.removeTemplate}" image="/images/icons/delete.gif"
@@ -74,7 +125,7 @@
<h:graphicImage id="img-help" value="/images/icons/Help_icon.gif" style="vertical-align:-20%;padding-left:8px;cursor:help" onclick="javascript:toggleOutputPathPatternHelp()" /> <h:graphicImage id="img-help" value="/images/icons/Help_icon.gif" style="vertical-align:-20%;padding-left:8px;cursor:help" onclick="javascript:toggleOutputPathPatternHelp()" />
</h:panelGrid> </h:panelGrid>
<f:verbatim> <f:verbatim>
<jsp:directive.include file="/jsp/wcm/output-path-pattern-help.jsp"/> <c:import url="/jsp/wcm/output-path-pattern-help.jsp" />
</f:verbatim> </f:verbatim>
</h:panelGroup> </h:panelGroup>