details:   https://code.openbravo.com/erp/devel/pi/rev/e9f96baecaae
changeset: 30702:e9f96baecaae
user:      Carlos Aristu <carlos.aristu <at> openbravo.com>
date:      Thu Dec 01 16:03:13 2016 +0100
summary:   fixes issue 34462: Process Definition menu icon should depend on the 
UI Pattern

The report icon is now selected both when using the quick launch search and the 
application menu. For this second case, now the UI Pattern is also sent to the 
client as part of the process definition menu entry. This helps to identify the 
type of process definition when retrieving the icon for the application menu 
entry.

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ApplicationConstants.java
                                 |   4 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/GlobalMenu.java
                                           |   8 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
        |   4 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
 |   5 +-
 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ParameterWindowComponent.java
                      |   3 +-
 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
                          |  32 +++++----
 6 files changed, 34 insertions(+), 22 deletions(-)

diffs (188 lines):

diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ApplicationConstants.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/ApplicationConstants.java
   Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/ApplicationConstants.java
   Thu Dec 01 16:03:13 2016 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2014 Openbravo SLU
+ * All portions are Copyright (C) 2010-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -65,6 +65,8 @@
   public static final String TABLEBASEDTABLE = "Table";
   public static final String HQLBASEDTABLE = "HQL";
 
+  public static final String REPORT_UI_PATTERN = "OBUIAPP_Report";
+
   static {
     try {
       ACTION_RESULT_SUCCESS = new JSONObject("{result: 'success'}");
diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/src/org/openbravo/client/application/GlobalMenu.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/GlobalMenu.java
     Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/GlobalMenu.java
     Thu Dec 01 16:03:13 2016 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2013 Openbravo SLU
+ * All portions are Copyright (C) 2013-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -155,7 +155,7 @@
   }
 
   /**
-   * Each menu option is configured with additional paramters
+   * Each menu option is configured with additional parameters
    * 
    */
   private void linkMenus(List<Menu> menus, List<MenuOption> menuOptions, 
String language) {
@@ -236,6 +236,10 @@
               && menu.getOBUIAPPProcessDefinition().isActive()) {
             foundOption.setType(MenuEntryType.ProcessDefinition);
             
foundOption.setObjectId(menu.getOBUIAPPProcessDefinition().getId());
+            if 
(ApplicationConstants.REPORT_UI_PATTERN.equals(menu.getOBUIAPPProcessDefinition()
+                .getUIPattern())) {
+              foundOption.setReport(true);
+            }
           } else if (menu.getWindow() != null && menu.getWindow().isActive()) {
             boolean found = false;
             for (Tab tab : menu.getWindow().getADTabList()) {
diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
  Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
  Thu Dec 01 16:03:13 2016 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2014 Openbravo SLU
+ * All portions are Copyright (C) 2010-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -121,7 +121,7 @@
         } else if (menuOption.isForm()) {
           data.put(OPTION_TYPE, OPTION_TYPE_URL);
           data.put(FORM_ID, menuOption.getFormId());
-        } else if (menuOption.isReport()) {
+        } else if (menuOption.isReport() && !menuOption.isProcessDefinition()) 
{
           data.put(OPTION_TYPE, OPTION_TYPE_URL);
           data.put(PROCESS_ID, menuOption.getMenu().getProcess().getId());
         } else if (menuOption.isProcessDefinition()) {
diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
   Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
   Thu Dec 01 16:03:13 2016 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2010-2014 Openbravo SLU
+ * All portions are Copyright (C) 2010-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -45,7 +45,7 @@
         , type: 'processManual'
         , manualUrl: '${menuOption.id?js_string}'
         , manualProcessId: '${menuOption.menu.process.id}'
-    <#elseif menuOption.report>
+    <#elseif menuOption.report && !menuOption.processDefinition>
         , type: 'report'
         , manualUrl: '${menuOption.id?js_string}'
         , manualProcessId: '${menuOption.menu.process.id}'
@@ -64,6 +64,7 @@
     <#elseif menuOption.processDefinition>
         , type: 'processDefinition'
         , viewId: 
'processDefinition_${menuOption.menu.oBUIAPPProcessDefinition.id}'
+        , uiPattern: 
'${menuOption.menu.oBUIAPPProcessDefinition.uIPattern?js_string}'
     </#if>
     , singleRecord: ${menuOption.singleRecordStringValue}
     , readOnly: ${menuOption.readOnlyStringValue}
diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ParameterWindowComponent.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ParameterWindowComponent.java
        Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/ParameterWindowComponent.java
        Thu Dec 01 16:03:13 2016 +0100
@@ -30,6 +30,7 @@
 import org.codehaus.jettison.json.JSONException;
 import org.codehaus.jettison.json.JSONObject;
 import org.hibernate.criterion.Restrictions;
+import org.openbravo.client.application.ApplicationConstants;
 import org.openbravo.client.application.Parameter;
 import org.openbravo.client.application.Process;
 import org.openbravo.client.application.ReportDefinition;
@@ -158,7 +159,7 @@
   }
 
   public boolean isReport() {
-    return "OBUIAPP_Report".equals(process.getUIPattern());
+    return 
ApplicationConstants.REPORT_UI_PATTERN.equals(process.getUIPattern());
   }
 
   public String getReportId() {
diff -r bde8ff267b72 -r e9f96baecaae 
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
--- 
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
    Thu Dec 01 15:37:57 2016 +0100
+++ 
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
    Thu Dec 01 16:03:13 2016 +0100
@@ -11,7 +11,7 @@
  * under the License.
  * The Original Code is Openbravo ERP.
  * The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2011-2014 Openbravo SLU
+ * All portions are Copyright (C) 2011-2016 Openbravo SLU
  * All Rights Reserved.
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -262,27 +262,31 @@
     this.Super('showMenu', arguments);
   },
 
-  getNodeIcon: function (type) {
+  getNodeIcon: function (node) {
     var iconPath;
-    if (type === 'window') {
+    if (node.type === 'window') {
       iconPath = this.nodeIcons.Window;
-    } else if (type === 'process') {
+    } else if (node.type === 'process') {
       iconPath = this.nodeIcons.Process;
-    } else if (type === 'processManual') {
+    } else if (node.type === 'processManual') {
       iconPath = this.nodeIcons.ProcessManual;
-    } else if (type === 'report') {
+    } else if (node.type === 'report') {
       iconPath = this.nodeIcons.Report;
-    } else if (type === 'task') {
+    } else if (node.type === 'task') {
       iconPath = this.nodeIcons.Task;
-    } else if (type === 'form') {
+    } else if (node.type === 'form') {
       iconPath = this.nodeIcons.Form;
-    } else if (type === 'external') {
+    } else if (node.type === 'external') {
       iconPath = this.nodeIcons.ExternalLink;
-    } else if (type === 'view') {
+    } else if (node.type === 'view') {
       iconPath = this.nodeIcons.View;
-    } else if (type === 'processDefinition') {
-      iconPath = this.nodeIcons.Process;
-    } else if (type === 'folder') {
+    } else if (node.type === 'processDefinition') {
+      if (node.uiPattern === 'OBUIAPP_Report') {
+        iconPath = this.nodeIcons.Report;
+      } else {
+        iconPath = this.nodeIcons.Process;
+      }
+    } else if (node.type === 'folder') {
       iconPath = this.nodeIcons.Folder;
     }
     return iconPath;
@@ -293,7 +297,7 @@
       var i, length = node.length;
       for (i = 0; i < length; i++) {
         if (node[i].type) {
-          node[i].icon = this.getNodeIcon(node[i].type);
+          node[i].icon = this.getNodeIcon(node[i]);
           if (node[i].submenu) {
             this.setNodeIcons(node[i].submenu);
           }

------------------------------------------------------------------------------
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to