shuber 2005/08/31 16:16:32 CEST
Modified files:
core/src/conf/java JahiaEnginesResources.properties
core/src/java/org/jahia/engines/shared Application_Field.java
core/src/webapp/WEB-INF/var/shared_templates
corporate_portal_templates.jar
core/src/webapp/jsp/jahia/engines/shared application_field.jsp
Log:
Improve application selection engine so that it behaves better with corrupted
databases.
Revision Changes Path
1.25 +3 -0 jahia/core/src/conf/java/JahiaEnginesResources.properties
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/conf/java/JahiaEnginesResources.properties.diff?r1=1.24&r2=1.25&f=h
1.16 +13 -12
jahia/core/src/java/org/jahia/engines/shared/Application_Field.java
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/java/org/jahia/engines/shared/Application_Field.java.diff?r1=1.15&r2=1.16&f=h
1.53 +787 -780
jahia/core/src/webapp/WEB-INF/var/shared_templates/corporate_portal_templates.jar
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/webapp/WEB-INF/var/shared_templates/corporate_portal_templates.jar.diff?r1=1.52&r2=1.53&f=h
1.6 +13 -5
jahia/core/src/webapp/jsp/jahia/engines/shared/application_field.jsp
http://jahia.mine.nu:8080/cgi-bin/cvsweb.cgi/jahia/core/src/webapp/jsp/jahia/engines/shared/application_field.jsp.diff?r1=1.5&r2=1.6&f=h
Index: JahiaEnginesResources.properties
===================================================================
RCS file:
/home/cvs/repository/jahia/core/src/conf/java/JahiaEnginesResources.properties,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- JahiaEnginesResources.properties 30 Aug 2005 14:39:11 -0000 1.24
+++ JahiaEnginesResources.properties 31 Aug 2005 14:16:30 -0000 1.25
@@ -749,7 +749,10 @@
org.jahia.engines.selectpage.SelectPage_Engine.thisOperationConcern.label
= This
operation concern DIRECT(*) Jahia page only
org.jahia.engines.selectpage.SelectPage_Engine.warningThesePages.label
=
Warning these pages cannot be moved regarding the <span
style="color:#B42C29">insertion point</span>
org.jahia.engines.servertime.label
= server time
+org.jahia.engines.shared.Application_Field.noWebApp.label
= No web applications installed in this site.
+org.jahia.engines.shared.Application_Field.selectWebApp.label
= Select a web application :
org.jahia.engines.shared.Application_Field.notDefineRoles.label
= This application doesn't define any role
+org.jahia.engines.shared.Application_Field.definesRoles.label
= This application defines the following roles
:
org.jahia.engines.shared.Application_Field.setUsersAndGroups.label
= Set user/group...
org.jahia.engines.shared.Application_Field.removeUsersOrGroups.label
= Remove user/group
org.jahia.engines.shared.Application_Field.application.label
= Application
Index: Application_Field.java
===================================================================
RCS file:
/home/cvs/repository/jahia/core/src/java/org/jahia/engines/shared/Application_Field.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- Application_Field.java 30 Aug 2005 15:38:10 -0000 1.15
+++ Application_Field.java 31 Aug 2005 14:16:30 -0000 1.16
@@ -116,12 +116,12 @@
private boolean getFormData( ProcessingContext jParams, Map engineMap,
JahiaField theField )
throws JahiaException {
- logger.debug("started");
String fieldValue = jParams.getParameter( "_" +
Integer.toString(theField.getID()) );
if (fieldValue != null) {
theField.setRawValue( fieldValue );
}
+
Integer oldAppID =
(Integer)engineMap.get(theField.getDefinition().getName() + "_appID");
if ((oldAppID == null) || (oldAppID.intValue() == -1)) {
return true;
@@ -141,16 +141,16 @@
}
appRoleMembers.put(oldAppID, roleMembersList);
engineMap.put(APPLICATION_ROLES, appRoleMembers);
- if(fieldValue!=null) {
- int separatorPos = fieldValue.indexOf("_");
- if (separatorPos != -1) {
- String appIDStr = fieldValue.substring(0, separatorPos);
- int selectedAppID = Integer.parseInt(appIDStr);
- String selectedEntryPointDefName = fieldValue.substring(
- separatorPos + 1);
- engineMap.put( theField.getDefinition().getName() +
"_selectedEntryPointDefName", selectedEntryPointDefName);
- engineMap.put( theField.getDefinition().getName() + "_appID",
new Integer(selectedAppID));
- }
+ if (fieldValue!=null) {
+ int separatorPos = fieldValue.indexOf("_");
+ if (separatorPos != -1) {
+ String appIDStr = fieldValue.substring(0, separatorPos);
+ int selectedAppID = Integer.parseInt(appIDStr);
+ String selectedEntryPointDefName = fieldValue.substring(
+ separatorPos + 1);
+ engineMap.put( theField.getDefinition().getName() +
"_selectedEntryPointDefName", selectedEntryPointDefName);
+ engineMap.put( theField.getDefinition().getName() +
"_appID", new Integer(selectedAppID));
+ }
}
return true;
}
@@ -425,7 +425,8 @@
appBean = (ApplicationBean) authAppList.get(0);
appID = appBean.getID();
ArrayList entryPointDefinitions =
appBean.getEntryPointDefinitions();
- if (entryPointDefinitions != null) {
+ if ((entryPointDefinitions != null) &&
+ (entryPointDefinitions.size() > 0)) {
EntryPointDefinition epDef = (EntryPointDefinition)
appBean.
getEntryPointDefinitions().get(0);
selectedEntryPointDefName = epDef.getName();
Index: corporate_portal_templates.jar
===================================================================
<<Binary file>>
Index: application_field.jsp
===================================================================
RCS file:
/home/cvs/repository/jahia/core/src/webapp/jsp/jahia/engines/shared/application_field.jsp,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- application_field.jsp 5 Apr 2005 16:22:51 -0000 1.5
+++ application_field.jsp 31 Aug 2005 14:16:31 -0000 1.6
@@ -112,8 +112,13 @@
<table border="0" cellpadding="0" cellspacing="0">
<tr>
- <td class="text">
- Select a web application :
+<% if (!appList.hasMoreElements()) { %>
+ <td class="text">
+ <jahia:engineResourceBundle
resourceName="org.jahia.engines.shared.Application_Field.noWebApp.label"/>
+ </td>
+<% } else { %>
+ <td class="text">
+ <jahia:engineResourceBundle
resourceName="org.jahia.engines.shared.Application_Field.selectWebApp.label"/>
</td>
<td class="text">
<select class="input" name="_<%=theField.getID()%>" size="1"
@@ -147,6 +152,7 @@
%>
</select>
</td>
+<% } %>
</tr>
</table>
<br>
@@ -155,9 +161,11 @@
Vector roles = (Vector)engineMap.get("roles");
roleNb = roles.size();
if (roles.size() > 0) { %>
- <tr><td colspan="2">
- This application defines the following roles :
- </td></tr><%
+ <tr>
+ <td colspan="2">
+ <jahia:engineResourceBundle
resourceName="org.jahia.engines.shared.Application_Field.definesRoles.label"/>
+ </td>
+ </tr><%
HashMap applicationRoles =
(HashMap)engineMap.get(Application_Field.APPLICATION_ROLES);
ArrayList roleMembersList = (ArrayList)applicationRoles.get(new
Integer(appID));
for (int i = 0; i < roles.size(); i++) {