diff --git a/config/alfresco/messages/webclient.properties b/config/alfresco/messages/webclient.properties index 3f7a56c416..9adec0e791 100644 --- a/config/alfresco/messages/webclient.properties +++ b/config/alfresco/messages/webclient.properties @@ -2103,16 +2103,4 @@ condition_composite_summary_not=Composite Condition ({0} Conditions {1} and Inve condition_composite_error=Composite Condition (ERROR) component_property=Property -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 +component_value=Value \ No newline at end of file diff --git a/source/java/org/alfresco/web/app/servlet/ExternalAccessServlet.java b/source/java/org/alfresco/web/app/servlet/ExternalAccessServlet.java index 94f37a967b..9bb0a5b2d7 100644 --- a/source/java/org/alfresco/web/app/servlet/ExternalAccessServlet.java +++ b/source/java/org/alfresco/web/app/servlet/ExternalAccessServlet.java @@ -173,6 +173,7 @@ public class ExternalAccessServlet extends BaseServlet browseBean.setupContentAction(nodeRef.getId(), true); } + fc.getExternalContext().getSessionMap().put(AlfrescoNavigationHandler.EXTERNAL_CONTAINER_SESSION, Boolean.TRUE); // perform the appropriate JSF navigation outcome NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler(); navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_DOCDETAILS); @@ -205,7 +206,7 @@ public class ExternalAccessServlet extends BaseServlet // setup the Space on the browse bean browseBean.setupSpaceAction(nodeRef.getId(), true); } - + fc.getExternalContext().getSessionMap().put(AlfrescoNavigationHandler.EXTERNAL_CONTAINER_SESSION, Boolean.TRUE); // perform the appropriate JSF navigation outcome NavigationHandler navigationHandler = fc.getApplication().getNavigationHandler(); navigationHandler.handleNavigation(fc, null, "dialog:" + OUTCOME_SPACEDETAILS); diff --git a/source/java/org/alfresco/web/bean/admin/ImportDialog.java b/source/java/org/alfresco/web/bean/admin/ImportDialog.java index 4226e7949c..bc99415a8f 100644 --- a/source/java/org/alfresco/web/bean/admin/ImportDialog.java +++ b/source/java/org/alfresco/web/bean/admin/ImportDialog.java @@ -32,6 +32,7 @@ import java.util.Map; import javax.faces.context.FacesContext; +import org.alfresco.i18n.I18NUtil; import org.alfresco.model.ContentModel; import org.alfresco.repo.action.executer.ImporterActionExecuter; 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.ContentService; 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.NodeRef; 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 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_EMPTY_FILE = "error_import_empty_file"; private static final String MSG_OK = "ok"; @@ -139,8 +142,18 @@ public class ImportDialog extends BaseDialogBean } catch (Throwable e) { - Utils.addErrorMessage(MessageFormat.format(Application.getMessage( - FacesContext.getCurrentInstance(), MSG_ERROR), e.toString()), 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( + FacesContext.getCurrentInstance(), MSG_ERROR), e.toString()), e); + } outcome = null; ReportedException.throwIfNecessary(e); } diff --git a/source/java/org/alfresco/web/bean/forums/CreatePostDialog.java b/source/java/org/alfresco/web/bean/forums/CreatePostDialog.java index 58b583987e..697a73e13b 100644 --- a/source/java/org/alfresco/web/bean/forums/CreatePostDialog.java +++ b/source/java/org/alfresco/web/bean/forums/CreatePostDialog.java @@ -69,6 +69,9 @@ public class CreatePostDialog extends CreateContentWizard // remove link breaks and replace with
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); } diff --git a/source/java/org/alfresco/web/bean/users/RemoveInvitedUserDialog.java b/source/java/org/alfresco/web/bean/users/RemoveInvitedUserDialog.java index 1900405787..72cafe17f2 100644 --- a/source/java/org/alfresco/web/bean/users/RemoveInvitedUserDialog.java +++ b/source/java/org/alfresco/web/bean/users/RemoveInvitedUserDialog.java @@ -30,7 +30,8 @@ import javax.faces.event.ActionEvent; import org.alfresco.web.app.Application; import org.alfresco.web.bean.dialog.BaseDialogBean; -public class RemoveInvitedUserDialog extends BaseDialogBean { +public class RemoveInvitedUserDialog extends BaseDialogBean +{ private static final long serialVersionUID = -7457234588814115434L; @@ -45,43 +46,51 @@ public class RemoveInvitedUserDialog extends BaseDialogBean { private SpaceUsersBean spaceUsersBean; @Override - public boolean getFinishButtonDisabled() { + public boolean getFinishButtonDisabled() + { return false; } @Override - protected String finishImpl(FacesContext context, String outcome) throws Exception { - spaceUsersBean.removeOK(); - return outcome; + protected String finishImpl(FacesContext context, String outcome) throws Exception + { + return spaceUsersBean.removeOK(); } - public void setupUserAction(ActionEvent event) { + public void setupUserAction(ActionEvent event) + { spaceUsersBean.setupUserAction(event); } - public String getPersonName() { + public String getPersonName() + { return spaceUsersBean.getPersonName(); } - public void setPersonName(String personName) { + public void setPersonName(String personName) + { this.spaceUsersBean.setPersonName(personName); } - public SpaceUsersBean getSpaceUsersBean() { + public SpaceUsersBean getSpaceUsersBean() + { return spaceUsersBean; } - public void setSpaceUsersBean(SpaceUsersBean spaceUsersBean) { + public void setSpaceUsersBean(SpaceUsersBean spaceUsersBean) + { this.spaceUsersBean = spaceUsersBean; } @Override - public String getCancelButtonLabel() { + public String getCancelButtonLabel() + { return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_NO); } @Override - public String getFinishButtonLabel() { + public String getFinishButtonLabel() + { return Application.getMessage(FacesContext.getCurrentInstance(), BUTTON_YES); } @@ -89,7 +98,7 @@ public class RemoveInvitedUserDialog extends BaseDialogBean { public String getContainerTitle() { FacesContext fc = FacesContext.getCurrentInstance(); - return Application.getMessage(fc, MSG_REMOVE_USER) + " " + Application.getMessage(fc, MSG_LEFT_QUOTE) - + spaceUsersBean.getPersonName() + Application.getMessage(fc, MSG_RIGHT_QUOTE); + return Application.getMessage(fc, MSG_REMOVE_USER) + " " + Application.getMessage(fc, MSG_LEFT_QUOTE) + spaceUsersBean.getPersonName() + + Application.getMessage(fc, MSG_RIGHT_QUOTE); } } diff --git a/source/java/org/alfresco/web/bean/users/UserMembersBean.java b/source/java/org/alfresco/web/bean/users/UserMembersBean.java index 4a5ff6e896..eb0e47741c 100644 --- a/source/java/org/alfresco/web/bean/users/UserMembersBean.java +++ b/source/java/org/alfresco/web/bean/users/UserMembersBean.java @@ -851,7 +851,7 @@ public abstract class UserMembersBean extends BaseDialogBean implements IContext */ public String removeOK() { - String outcome = OUTCOME_FINISH; + String outcome = getDefaultFinishOutcome(); UserTransaction tx = null; FacesContext context = FacesContext.getCurrentInstance(); diff --git a/source/java/org/alfresco/web/ui/common/renderer/DatePickerRenderer.java b/source/java/org/alfresco/web/ui/common/renderer/DatePickerRenderer.java index 9f6ea30aa1..2376282f80 100644 --- a/source/java/org/alfresco/web/ui/common/renderer/DatePickerRenderer.java +++ b/source/java/org/alfresco/web/ui/common/renderer/DatePickerRenderer.java @@ -402,6 +402,8 @@ public class DatePickerRenderer extends BaseRenderer { outputAttribute(out, component.getAttributes().get("disabled"), "disabled"); } + outputAttribute(out, clientId, "id"); + out.write(" onkeyup=\"checkOkButtonState();\" onchange=\"checkOkButtonState();\""); } else { diff --git a/source/java/org/alfresco/web/ui/repo/component/property/BaseAssociationEditor.java b/source/java/org/alfresco/web/ui/repo/component/property/BaseAssociationEditor.java index e4208d064f..c79c05601c 100644 --- a/source/java/org/alfresco/web/ui/repo/component/property/BaseAssociationEditor.java +++ b/source/java/org/alfresco/web/ui/repo/component/property/BaseAssociationEditor.java @@ -44,6 +44,7 @@ import javax.faces.event.FacesEvent; import javax.transaction.UserTransaction; import org.alfresco.model.ContentModel; +import org.alfresco.repo.search.SearcherException; import org.alfresco.repo.security.authentication.AuthenticationUtil; import org.alfresco.repo.security.authority.AuthorityDAO; import org.alfresco.service.cmr.dictionary.AssociationDefinition; @@ -1085,6 +1086,11 @@ public abstract class BaseAssociationEditor extends UIInput results = Repository.getServiceRegistry(context).getSearchService().query(searchParams); this.availableOptions = results.getNodeRefs(); } + catch (SearcherException se) + { + logger.info("Search failed for: " + query, se); + Utils.addErrorMessage(Application.getMessage(FacesContext.getCurrentInstance(), Repository.ERROR_QUERY)); + } finally { if (results != null) diff --git a/source/web/jsp/ml/add-translation-dialog.jsp b/source/web/jsp/ml/add-translation-dialog.jsp index dd185ff97c..d176219583 100644 --- a/source/web/jsp/ml/add-translation-dialog.jsp +++ b/source/web/jsp/ml/add-translation-dialog.jsp @@ -198,8 +198,9 @@ function checkButtonState() { - if (document.getElementById("dialog:dialog-body:name").value.length == 0 - || document.getElementById("dialog:dialog-body:language").selectedIndex == 0) + if (document.getElementById("dialog:dialog-body:name") == undefined || + document.getElementById("dialog:dialog-body:name").value.length == 0 || + document.getElementById("dialog:dialog-body:language").selectedIndex == 0) { document.getElementById("dialog:finish-button").disabled = true; } diff --git a/source/web/jsp/rules/compare-date-property.jsp b/source/web/jsp/rules/compare-date-property.jsp index 12ed1ee61e..9a6c72c629 100644 --- a/source/web/jsp/rules/compare-date-property.jsp +++ b/source/web/jsp/rules/compare-date-property.jsp @@ -40,6 +40,33 @@ var disabled = (inputField.value.length == 0); 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; + } + diff --git a/source/web/jsp/wcm/create-form-wizard/configure-rendering-engines.jsp b/source/web/jsp/wcm/create-form-wizard/configure-rendering-engines.jsp index 695ca76cdc..acd29a73ac 100644 --- a/source/web/jsp/wcm/create-form-wizard/configure-rendering-engines.jsp +++ b/source/web/jsp/wcm/create-form-wizard/configure-rendering-engines.jsp @@ -57,6 +57,28 @@ rendering_engine_template_file_input.value = filename; 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; + } + } @@ -86,6 +108,7 @@ type="file" size="35" name="alfFileInput" + contentEditable="false" onchange="javascript:handle_upload(this)"/> @@ -127,7 +150,8 @@ value="#{msg.rendering_engine}:"/> + disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}" + onchange="refresh_add_to_list_button();"> @@ -146,7 +170,9 @@ value="#{WizardManager.bean.renderingEngineTemplateName}" disabled="#{WizardManager.bean.renderingEngineTemplateFileName == null}" maxlength="1024" - size="35"/> + size="35" + onkeyup="refresh_add_to_list_button();" + onchange="refresh_add_to_list_button();"/> @@ -199,7 +225,9 @@ + style="width:100%;" + onkeyup="refresh_add_to_list_button();" + onchange="refresh_add_to_list_button();"/> @@ -207,7 +235,7 @@ - + @@ -218,7 +246,11 @@ value="#{msg.add_to_list_button}" actionListener="#{WizardManager.bean.addSelectedRenderingEngineTemplate}" 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}" /> - + diff --git a/source/web/jsp/wcm/create-website-wizard/form-details.jsp b/source/web/jsp/wcm/create-website-wizard/form-details.jsp index 840841b57c..3bb70d16b6 100644 --- a/source/web/jsp/wcm/create-website-wizard/form-details.jsp +++ b/source/web/jsp/wcm/create-website-wizard/form-details.jsp @@ -31,6 +31,9 @@ <%@ page isELIgnored="false" %> + + + @@ -82,7 +90,7 @@ - + @@ -95,7 +103,7 @@ - + @@ -124,6 +132,11 @@ + @@ -141,7 +154,7 @@
+ + + + @@ -133,7 +146,7 @@ - +
- +
diff --git a/source/web/jsp/wcm/create-website-wizard/form-templates.jsp b/source/web/jsp/wcm/create-website-wizard/form-templates.jsp index 54dddbb741..6fc36e360d 100644 --- a/source/web/jsp/wcm/create-website-wizard/form-templates.jsp +++ b/source/web/jsp/wcm/create-website-wizard/form-templates.jsp @@ -30,6 +30,52 @@ <%@ page buffer="32kb" contentType="text/html;charset=UTF-8" %> <%@ page isELIgnored="false" %> + + + + + + + + + + + + <%-- Template selection list --%> @@ -60,11 +106,16 @@ + + + - + - +