Merged V3.1 to HEAD

13023: ISO date fix for ETHREEOH-1215
   13153: Merged V2.1-A to V3.1
      9026: - Added "My Content" link to error page
            - Manual merge of Safari fixes
            - Fixed exploded build target after recent removals
   13155: Restored line removed in merge
   13156: Merged V2.1-A to V3.1
      9027: *RECORD-ONLY* Further Safari rendering fix
      9028: Removed use of generics from JSP so it compiles in JBoss
   13161: Merged V2.1-A to V3.1
      9051: *RECORD-ONLY* Fix for ACT 2806 (linked content was returning 404 error)
   13162: Merged V2.1-A to V3.1
      8680: *RECORD-ONLY* Added back "too_many_users" message as it got removed
   13164: Merged V2.1-A to V3.1
      8699: Added DOCTYPE line
      8994: Added Copyright for Sun due to Rhino debugger use.
      9388: *RECORD-ONLY* ACT-3263 - Localization of "username" and "password" in login.jsp
   13166: Merged V2.1-A to V3.1
      9748: *RECORD-ONLY* Fix for ACT 3455 (ADB-90) - Editor role can not check out documents
      10199: Fix for ADB-86: Clicking 'Cancel' while adding a composite condition for a Rule on a space in CS ES has no effect
   13167: Merged V2.1-A to V3.1
      10673: Fix for ADB-110/ACT-4247: Review/Change Records Management URLs and make it compatible to Adobe's build
      10674: Fix for ADB-109: setting log4j.rootLogger to WARN thows unexpected warn when accessing My Home
   13168: Merged V2.1-A to V3.1
      10883: *RECORD-ONLY* Fix for ADB-124: Change Search field length to 1
      10905: Fix for ADB-114 ACT 4425. Also will fix ALFCOM-1895 when merged to HEAD.
      10961: Fix for ADB-44: Create menu link should not be visible if the menu is empty
      10962: Fix for ADB-61: Alfresco breadcrumbs + Navigator become inconsistent....

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@13567 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Kevin Roast
2009-03-11 14:25:06 +00:00
parent de9feffb28
commit a07c125fd3
11 changed files with 97 additions and 13 deletions

View File

@@ -1935,6 +1935,7 @@ error_domain_mismatch=Domain mismatch: expected = {0}, actual = {1}
# Confirmations
return_to_application=Return to application
return_home=My Content
delete_space_info=To remove this space and all of its contents, click OK.
delete_space_assoc_info=This space appears in multiple locations, to remove the space from the current location, click OK.
delete_space_confirm=Are you sure you want to delete \"{0}\" and all its contents?

View File

@@ -735,6 +735,14 @@ public class NavigationBean implements Serializable
return this.currentNode;
}
/**
* @return Boolean value according to CREATE_CHILDREN permission on the current node.
*/
public boolean isCreateChildrenPermissionEnabled()
{
return getCurrentNode().hasPermission(PermissionService.CREATE_CHILDREN);
}
/**
* @return Returns the breadcrumb handler elements representing the location path of the UI.
*/

View File

@@ -197,13 +197,27 @@ public class CreateCompositeRuleWizard extends CreateRuleWizard
if (isAddingCompositeCondition())
{
// don't clear when editing, since we are looking at a REFERENCE to an existing condition
if (this.editingCondition == false) {
if (this.editingCondition == false)
{
this.currentConditionProperties.clear();
}
// reset the action drop down
this.selectedCondition = null;
// determine what page to go back to
FacesContext context = FacesContext.getCurrentInstance();
String currentViewId = context.getViewRoot().getViewId();
IHandler handler = this.conditionHandlers.get(CompositeConditionHandler.NAME);
goToPage(FacesContext.getCurrentInstance(), handler.getJSPPath());
String compositePage = handler.getJSPPath();
if (currentViewId.equals(compositePage))
{
this.returnViewId = getWizardContainerViewId(context);
}
goToPage(FacesContext.getCurrentInstance(), this.returnViewId);
}
else
{

View File

@@ -74,6 +74,7 @@ public class UIActionLink extends UICommand
this.tooltip = (String)values[5];
this.target = (String)values[6];
this.verticalAlign = (String)values[7];
this.onclick = (String)values[8];
}
/**
@@ -91,7 +92,8 @@ public class UIActionLink extends UICommand
this.href,
this.tooltip,
this.target,
this.verticalAlign
this.verticalAlign,
this.onclick
};
}

View File

@@ -349,7 +349,23 @@ public class ActionLinkRenderer extends BaseRenderer
if (link.getHref() == null)
{
out.write("<a href='#' onclick=\"");
out.write(Utils.generateFormSubmit(context, link, Utils.getActionHiddenFieldName(context, link), link.getClientId(context), getParameterComponents(link)));
// if we have an overriden onclick add that
if (link.getOnclick() != null)
{
out.write(link.getOnclick());
}
else
{
// generate JavaScript to set a hidden form field and submit
// a form which request attributes that we can decode
out.write(Utils.generateFormSubmit(context,
link,
Utils.getActionHiddenFieldName(context, link),
link.getClientId(context),
getParameterComponents(link)));
}
out.write('"');
}
else

View File

@@ -197,6 +197,8 @@ public class UITemplate extends SelfRenderingComponent
Map root = DefaultModelHelper.buildDefaultModel(services, user, templateRef);
root.put("url", new URLHelper(fc.getExternalContext().getRequestContextPath()));
// merge models
if (model instanceof Map)
{
@@ -302,4 +304,23 @@ public class UITemplate extends SelfRenderingComponent
return FileTypeImageUtils.getFileTypeImage(FacesContext.getCurrentInstance(), filename, size);
}
};
/**
* URL Helper - to supply ${url.context} value for templates in JSF client
*/
public static class URLHelper
{
String context;
public URLHelper(String context)
{
this.context = context;
}
public String getContext()
{
return context;
}
}
}

View File

@@ -50,6 +50,7 @@ public class SystemErrorTag extends TagSupport
private static final long serialVersionUID = -7336055169875448199L;
private static final String MSG_RETURN_TO_APP = "return_to_application";
private static final String MSG_RETURN_HOME = "return_home";
private static final String MSG_HIDE_DETAILS = "hide_details";
private static final String MSG_SHOW_DETAILS = "show_details";
private static final String MSG_LOGOUT = "logout";
@@ -267,6 +268,12 @@ public class SystemErrorTag extends TagSupport
// this can be used by the user if the app has got into a total mess
if (Application.inPortalServer() == false)
{
out.write("\n<div style='padding-top:16px;'><a href='");
out.write(((HttpServletRequest)pageContext.getRequest()).getContextPath());
out.write("'>");
out.write(bundle.getString(MSG_RETURN_HOME));
out.write("</a></div>");
out.write("\n<div style='padding-top:16px;'><a href='");
out.write(((HttpServletRequest)pageContext.getRequest()).getContextPath());
out.write(ExternalAccessServlet.generateExternalURL("logout", null));

View File

@@ -114,10 +114,20 @@ else
try { tx.rollback(); } catch (Throwable tex) {}
}
}
if (request.getMethod().equalsIgnoreCase("GET"))
{
if (NavigationBean.LOCATION_MYALFRESCO.equals(location))
{
// Clear previous location - Fixes the issue ADB-61
FacesContext fc = FacesContext.getCurrentInstance();
if (fc != null)
{
NavigationBean navigationBean = (NavigationBean)FacesHelper.getManagedBean(fc, "NavigationBean");
navigationBean.setLocation(null);
navigationBean.setToolbarLocation(null);
}
// Send redirect
response.sendRedirect(request.getContextPath() + "/faces/jsp/dashboards/container.jsp");
}
else

View File

@@ -289,6 +289,6 @@
InviteSpaceUsersWizard wizard = (InviteSpaceUsersWizard)FacesHelper.getManagedBean(FacesContext.getCurrentInstance(), "InviteSpaceUsersWizard");
if (wizard != null)
{
wizard.init(new HashMap<String, String>());
wizard.init(new HashMap());
}
%>

View File

@@ -139,7 +139,7 @@
</td>
<td style="padding-left:4px" width=52>
<%-- Create actions menu --%>
<a:menu id="createMenu" itemSpacing="4" label="#{msg.create_options}" image="/images/icons/menu.gif" menuStyleClass="moreActionsMenu" style="white-space:nowrap">
<a:menu id="createMenu" itemSpacing="4" label="#{msg.create_options}" image="/images/icons/menu.gif" menuStyleClass="moreActionsMenu" style="white-space:nowrap" rendered="#{NavigationBean.createChildrenPermissionEnabled}">
<r:actions id="acts_create" value="browse_create_menu" context="#{NavigationBean.currentNode}" />
</a:menu>
</td>
@@ -238,7 +238,9 @@
<a:panel id="page-controls1" style="font-size:9px">
<h:outputText value="#{msg.items_per_page}" id="items-txt1"/>
<h:inputText id="spaces-pages" value="#{BrowseBean.pageSizeSpacesStr}" style="width:24px;margin-left:4px" maxlength="3" onkeyup="return applySizeSpaces(event);" />
<div style="display:none"><a:actionLink id="spaces-apply" value="" actionListener="#{BrowseBean.updateSpacesPageSize}" /></div>
<f:verbatim><div style="display:none"></f:verbatim>
<a:actionLink id="spaces-apply" value="" actionListener="#{BrowseBean.updateSpacesPageSize}" />
<f:verbatim></div></f:verbatim>
</a:panel>
</f:facet>
</h:panelGroup>
@@ -382,7 +384,9 @@
<a:panel id="page-controls2" style="font-size:9px">
<h:outputText value="#{msg.items_per_page}" id="items-txt2"/>
<h:inputText id="content-pages" value="#{BrowseBean.pageSizeContentStr}" style="width:24px;margin-left:4px" maxlength="3" onkeyup="return applySizeContent(event);" />
<div style="display:none"><a:actionLink id="content-apply" value="" actionListener="#{BrowseBean.updateContentPageSize}" /></div>
<f:verbatim><div style="display:none"></f:verbatim>
<a:actionLink id="content-apply" value="" actionListener="#{BrowseBean.updateContentPageSize}" />
<f:verbatim></div></f:verbatim>
</a:panel>
</f:facet>
</h:panelGroup>

View File

@@ -31,6 +31,7 @@
<%@ page import="org.alfresco.web.app.servlet.BaseServlet" %>
<%@ page import="org.alfresco.web.app.servlet.AuthenticationHelper" %>
<%@ page import="org.alfresco.web.ui.common.PanelGenerator" %>
<%@ page import="org.alfresco.web.app.Application" %>
<%@ page import="javax.faces.context.FacesContext" %>
<%@ page import="javax.servlet.http.Cookie" %>
<%@ page import="java.util.Locale" %>