details:   https://code.openbravo.com/erp/devel/pi/rev/75475ade8e76
changeset: 35469:75475ade8e76
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Tue Feb 26 09:46:41 2019 +0100
summary:   fixes issue 40272: show support status in MMC

  When searching for modules and when showing module details, support status is
  now displayed.

diffstat:

 src-db/database/sourcedata/AD_REFERENCE.xml                       |  12 +
 src-db/database/sourcedata/AD_REF_LIST.xml                        |  69 
++++++++++
 src-db/database/sourcedata/AD_TEXTINTERFACES.xml                  |  22 +++
 src/org/openbravo/erpCommon/ad_forms/ModuleManagement.java        |  60 
+++++++-
 src/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.html |   6 +-
 src/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.xml  |   3 +-
 src/org/openbravo/erpCommon/modules/ModuleBox.srpt                |   6 +-
 src/org/openbravo/erpCommon/modules/ModuleBox.xml                 |   4 +-
 web/skins/Default/Openbravo_ERP_250.css                           |  16 +-
 9 files changed, 177 insertions(+), 21 deletions(-)

diffs (truncated from 447 to 300 lines):

diff -r 976e03344470 -r 75475ade8e76 src-db/database/sourcedata/AD_REFERENCE.xml
--- a/src-db/database/sourcedata/AD_REFERENCE.xml       Fri Feb 22 12:43:45 
2019 +0100
+++ b/src-db/database/sourcedata/AD_REFERENCE.xml       Tue Feb 26 09:46:41 
2019 +0100
@@ -6497,6 +6497,18 @@
 <!--C123B7BF5B2C438D84D2E509734776B5-->  
<ISVALUEDISPLAYED><![CDATA[N]]></ISVALUEDISPLAYED>
 <!--C123B7BF5B2C438D84D2E509734776B5--></AD_REFERENCE>
 
+<!--C1A2527F810E43EC8E67DEDCBE504057--><AD_REFERENCE>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  <NAME><![CDATA[SupportStatus]]></NAME>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<ISBASEREFERENCE><![CDATA[N]]></ISBASEREFERENCE>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<PARENTREFERENCE_ID><![CDATA[17]]></PARENTREFERENCE_ID>
+<!--C1A2527F810E43EC8E67DEDCBE504057-->  
<ISVALUEDISPLAYED><![CDATA[N]]></ISVALUEDISPLAYED>
+<!--C1A2527F810E43EC8E67DEDCBE504057--></AD_REFERENCE>
+
 <!--C205D56B07D74778A6D6A1AED8467690--><AD_REFERENCE>
 <!--C205D56B07D74778A6D6A1AED8467690-->  
<AD_REFERENCE_ID><![CDATA[C205D56B07D74778A6D6A1AED8467690]]></AD_REFERENCE_ID>
 <!--C205D56B07D74778A6D6A1AED8467690-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 976e03344470 -r 75475ade8e76 src-db/database/sourcedata/AD_REF_LIST.xml
--- a/src-db/database/sourcedata/AD_REF_LIST.xml        Fri Feb 22 12:43:45 
2019 +0100
+++ b/src-db/database/sourcedata/AD_REF_LIST.xml        Tue Feb 26 09:46:41 
2019 +0100
@@ -8359,6 +8359,17 @@
 <!--13BE42BFDE6448F1A8B1A179E17D3018-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--13BE42BFDE6448F1A8B1A179E17D3018--></AD_REF_LIST>
 
+<!--13DF70BA51B84D45AE48F85FDCE00DE7--><AD_REF_LIST>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  
<AD_REF_LIST_ID><![CDATA[13DF70BA51B84D45AE48F85FDCE00DE7]]></AD_REF_LIST_ID>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  <VALUE><![CDATA[USUP]]></VALUE>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  <NAME><![CDATA[Unsupported]]></NAME>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--13DF70BA51B84D45AE48F85FDCE00DE7--></AD_REF_LIST>
+
 <!--146E194904144669A27BEDDB0D79C47B--><AD_REF_LIST>
 <!--146E194904144669A27BEDDB0D79C47B-->  
<AD_REF_LIST_ID><![CDATA[146E194904144669A27BEDDB0D79C47B]]></AD_REF_LIST_ID>
 <!--146E194904144669A27BEDDB0D79C47B-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -8656,6 +8667,18 @@
 <!--21C51C14E7E14F05AE98A0DCFF569C66-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--21C51C14E7E14F05AE98A0DCFF569C66--></AD_REF_LIST>
 
+<!--22F6C3BB78FD40B8B970550B4952324A--><AD_REF_LIST>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  
<AD_REF_LIST_ID><![CDATA[22F6C3BB78FD40B8B970550B4952324A]]></AD_REF_LIST_ID>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  <VALUE><![CDATA[NI]]></VALUE>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  <NAME><![CDATA[No 
Information]]></NAME>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  <DESCRIPTION><![CDATA[Ask Openbravo 
Support]]></DESCRIPTION>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--22F6C3BB78FD40B8B970550B4952324A-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--22F6C3BB78FD40B8B970550B4952324A--></AD_REF_LIST>
+
 <!--238ABDA9172247D98DC8D2080CD26CAD--><AD_REF_LIST>
 <!--238ABDA9172247D98DC8D2080CD26CAD-->  
<AD_REF_LIST_ID><![CDATA[238ABDA9172247D98DC8D2080CD26CAD]]></AD_REF_LIST_ID>
 <!--238ABDA9172247D98DC8D2080CD26CAD-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -10539,6 +10562,18 @@
 <!--846C98032A894F1BB2F0991CF6D767F3-->  <SEQNO><![CDATA[10]]></SEQNO>
 <!--846C98032A894F1BB2F0991CF6D767F3--></AD_REF_LIST>
 
+<!--8479F2E1BCED41998B76E6ED72E5AA61--><AD_REF_LIST>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  
<AD_REF_LIST_ID><![CDATA[8479F2E1BCED41998B76E6ED72E5AA61]]></AD_REF_LIST_ID>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  <VALUE><![CDATA[SUP]]></VALUE>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  <NAME><![CDATA[Supported]]></NAME>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  <DESCRIPTION><![CDATA[Included in 
subscription]]></DESCRIPTION>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--8479F2E1BCED41998B76E6ED72E5AA61-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--8479F2E1BCED41998B76E6ED72E5AA61--></AD_REF_LIST>
+
 <!--855D3B08CF8248ADB9BB84CF8D3FD9C5--><AD_REF_LIST>
 <!--855D3B08CF8248ADB9BB84CF8D3FD9C5-->  
<AD_REF_LIST_ID><![CDATA[855D3B08CF8248ADB9BB84CF8D3FD9C5]]></AD_REF_LIST_ID>
 <!--855D3B08CF8248ADB9BB84CF8D3FD9C5-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -11210,6 +11245,17 @@
 <!--9A904D1FC0154EFB820803D7A89D83A9-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--9A904D1FC0154EFB820803D7A89D83A9--></AD_REF_LIST>
 
+<!--9AB5D012E42644809E0DF86E7A95D333--><AD_REF_LIST>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  
<AD_REF_LIST_ID><![CDATA[9AB5D012E42644809E0DF86E7A95D333]]></AD_REF_LIST_ID>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  <VALUE><![CDATA[ES]]></VALUE>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  <NAME><![CDATA[Supported (Extra 
Service)]]></NAME>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--9AB5D012E42644809E0DF86E7A95D333-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--9AB5D012E42644809E0DF86E7A95D333--></AD_REF_LIST>
+
 <!--9B378327FCD1463D89E94D7475788537--><AD_REF_LIST>
 <!--9B378327FCD1463D89E94D7475788537-->  
<AD_REF_LIST_ID><![CDATA[9B378327FCD1463D89E94D7475788537]]></AD_REF_LIST_ID>
 <!--9B378327FCD1463D89E94D7475788537-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -12582,6 +12628,18 @@
 <!--D5B1463700014A8EBAA47501A2203DC9-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--D5B1463700014A8EBAA47501A2203DC9--></AD_REF_LIST>
 
+<!--D5E38585CACE49B98DA2E990360840AC--><AD_REF_LIST>
+<!--D5E38585CACE49B98DA2E990360840AC-->  
<AD_REF_LIST_ID><![CDATA[D5E38585CACE49B98DA2E990360840AC]]></AD_REF_LIST_ID>
+<!--D5E38585CACE49B98DA2E990360840AC-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--D5E38585CACE49B98DA2E990360840AC-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--D5E38585CACE49B98DA2E990360840AC-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--D5E38585CACE49B98DA2E990360840AC-->  <VALUE><![CDATA[DEP]]></VALUE>
+<!--D5E38585CACE49B98DA2E990360840AC-->  <NAME><![CDATA[Deprecated]]></NAME>
+<!--D5E38585CACE49B98DA2E990360840AC-->  <DESCRIPTION><![CDATA[Support still 
included in subscription]]></DESCRIPTION>
+<!--D5E38585CACE49B98DA2E990360840AC-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--D5E38585CACE49B98DA2E990360840AC-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--D5E38585CACE49B98DA2E990360840AC--></AD_REF_LIST>
+
 <!--D5EC2D6D880B41BBAB8E109F8AB481F4--><AD_REF_LIST>
 <!--D5EC2D6D880B41BBAB8E109F8AB481F4-->  
<AD_REF_LIST_ID><![CDATA[D5EC2D6D880B41BBAB8E109F8AB481F4]]></AD_REF_LIST_ID>
 <!--D5EC2D6D880B41BBAB8E109F8AB481F4-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -13072,6 +13130,17 @@
 <!--EF6C34B195844863A3DF0DF61B203ABE-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--EF6C34B195844863A3DF0DF61B203ABE--></AD_REF_LIST>
 
+<!--F019C609681646E8BB453141ED134915--><AD_REF_LIST>
+<!--F019C609681646E8BB453141ED134915-->  
<AD_REF_LIST_ID><![CDATA[F019C609681646E8BB453141ED134915]]></AD_REF_LIST_ID>
+<!--F019C609681646E8BB453141ED134915-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--F019C609681646E8BB453141ED134915-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--F019C609681646E8BB453141ED134915-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--F019C609681646E8BB453141ED134915-->  <VALUE><![CDATA[REM]]></VALUE>
+<!--F019C609681646E8BB453141ED134915-->  <NAME><![CDATA[Retired]]></NAME>
+<!--F019C609681646E8BB453141ED134915-->  
<AD_REFERENCE_ID><![CDATA[C1A2527F810E43EC8E67DEDCBE504057]]></AD_REFERENCE_ID>
+<!--F019C609681646E8BB453141ED134915-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--F019C609681646E8BB453141ED134915--></AD_REF_LIST>
+
 <!--F1AB8F0E1E67406EA6D5F5977B75E686--><AD_REF_LIST>
 <!--F1AB8F0E1E67406EA6D5F5977B75E686-->  
<AD_REF_LIST_ID><![CDATA[F1AB8F0E1E67406EA6D5F5977B75E686]]></AD_REF_LIST_ID>
 <!--F1AB8F0E1E67406EA6D5F5977B75E686-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 976e03344470 -r 75475ade8e76 
src-db/database/sourcedata/AD_TEXTINTERFACES.xml
--- a/src-db/database/sourcedata/AD_TEXTINTERFACES.xml  Fri Feb 22 12:43:45 
2019 +0100
+++ b/src-db/database/sourcedata/AD_TEXTINTERFACES.xml  Tue Feb 26 09:46:41 
2019 +0100
@@ -13249,6 +13249,17 @@
 <!--4E012BC6C58D4836A12A48A0033C3443-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--4E012BC6C58D4836A12A48A0033C3443--></AD_TEXTINTERFACES>
 
+<!--4E76523E65EC4AE98A55A3030C689C15--><AD_TEXTINTERFACES>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  
<AD_TEXTINTERFACES_ID><![CDATA[4E76523E65EC4AE98A55A3030C689C15]]></AD_TEXTINTERFACES_ID>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  <TEXT><![CDATA[Support:]]></TEXT>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  
<FILENAME><![CDATA[/org/openbravo/erpCommon/modules/ModuleBox.srpt]]></FILENAME>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  <ISUSED><![CDATA[Y]]></ISUSED>
+<!--4E76523E65EC4AE98A55A3030C689C15-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--4E76523E65EC4AE98A55A3030C689C15--></AD_TEXTINTERFACES>
+
 <!--4E80DAAC37BB49D09A8EF2737160FEF5--><AD_TEXTINTERFACES>
 <!--4E80DAAC37BB49D09A8EF2737160FEF5-->  
<AD_TEXTINTERFACES_ID><![CDATA[4E80DAAC37BB49D09A8EF2737160FEF5]]></AD_TEXTINTERFACES_ID>
 <!--4E80DAAC37BB49D09A8EF2737160FEF5-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -20276,6 +20287,17 @@
 <!--B1AFEA6B61BBFE94E040007F01006F96-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
 <!--B1AFEA6B61BBFE94E040007F01006F96--></AD_TEXTINTERFACES>
 
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9--><AD_TEXTINTERFACES>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  
<AD_TEXTINTERFACES_ID><![CDATA[B1FB63ABDA7E4CA581D970E2B6BCC6F9]]></AD_TEXTINTERFACES_ID>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  <TEXT><![CDATA[Support]]></TEXT>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.html]]></FILENAME>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  <ISUSED><![CDATA[Y]]></ISUSED>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9-->  
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--B1FB63ABDA7E4CA581D970E2B6BCC6F9--></AD_TEXTINTERFACES>
+
 <!--B2030B98466B87F0E040007F010055DC--><AD_TEXTINTERFACES>
 <!--B2030B98466B87F0E040007F010055DC-->  
<AD_TEXTINTERFACES_ID><![CDATA[B2030B98466B87F0E040007F010055DC]]></AD_TEXTINTERFACES_ID>
 <!--B2030B98466B87F0E040007F010055DC-->  
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 976e03344470 -r 75475ade8e76 
src/org/openbravo/erpCommon/ad_forms/ModuleManagement.java
--- a/src/org/openbravo/erpCommon/ad_forms/ModuleManagement.java        Fri Feb 
22 12:43:45 2019 +0100
+++ b/src/org/openbravo/erpCommon/ad_forms/ModuleManagement.java        Tue Feb 
26 09:46:41 2019 +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) 2008-2018 Openbravo SLU
+ * All portions are Copyright (C) 2008-2019 Openbravo SLU
  * All Rights Reserved. 
  * Contributor(s):  ______________________________________.
  ************************************************************************
@@ -35,6 +35,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 import java.util.Properties;
 
 import javax.servlet.ServletException;
@@ -60,6 +61,7 @@
 import org.openbravo.base.secureApp.HttpSecureAppServlet;
 import org.openbravo.base.secureApp.VariablesSecureApp;
 import org.openbravo.base.session.OBPropertiesProvider;
+import org.openbravo.base.structure.BaseOBObject;
 import org.openbravo.client.kernel.RequestContext;
 import org.openbravo.dal.core.OBContext;
 import org.openbravo.dal.core.OBInterceptor;
@@ -96,6 +98,7 @@
 import org.openbravo.erpCommon.utility.SQLReturnObject;
 import org.openbravo.erpCommon.utility.ToolBar;
 import org.openbravo.erpCommon.utility.Utility;
+import org.openbravo.model.ad.domain.Reference;
 import org.openbravo.model.ad.system.Client;
 import org.openbravo.model.ad.system.SystemInformation;
 import org.openbravo.model.common.enterprise.Organization;
@@ -117,6 +120,7 @@
   private static final long serialVersionUID = 1L;
   public static final String UPDATE_ALL_RECORD_ID = "FFF";
   private static final String UPGRADE_INFO_URL = 
"https://butler.openbravo.com/heartbeat-server/org.openbravo.utility.centralrepository/UpgradeInfo";;
+  private static final String SUPPORT_STATUS_REF = 
"C1A2527F810E43EC8E67DEDCBE504057";
 
   @SuppressWarnings("hiding")
   private static final Logger log4j = LogManager.getLogger();
@@ -650,6 +654,8 @@
     xmlDocument.setParameter("description", module.getDescription());
     xmlDocument.setParameter("help", module.getHelp());
     xmlDocument.setParameter("author", module.getAuthor());
+    xmlDocument.setParameter("support",
+        getSupportStatus((String) module.getAdditionalInfo().get("support"), 
true));
     String url = module.getUrl();
     if (url == null || url.equals("")) {
       xmlDocument.setParameter("urlDisplay", "none");
@@ -1954,13 +1960,22 @@
 
         @SuppressWarnings("unchecked")
         HashMap<String, String> additioanlInfo = mod.getAdditionalInfo();
-        if (additioanlInfo != null && 
!Integer.toString(MaturityLevel.CS_MATURITY)
-            .equals(additioanlInfo.get("maturity.level"))) {
-          // Display module's maturity in case it is not General availability 
(500)
-          moduleBox.put("maturityStyle", "true");
-          moduleBox.put("maturityLevel", additioanlInfo.get("maturity.name"));
-        } else {
-          moduleBox.put("maturityStyle", "none");
+        if (additioanlInfo != null) {
+          if (!Integer.toString(MaturityLevel.CS_MATURITY)
+              .equals(additioanlInfo.get("maturity.level"))) {
+            // Display module's maturity in case it is not General 
availability (500)
+            moduleBox.put("maturityStyle", "true");
+            moduleBox.put("maturityLevel", 
additioanlInfo.get("maturity.name"));
+          } else {
+            moduleBox.put("maturityStyle", "none");
+          }
+
+          if (!"NI".equals(additioanlInfo.get("support"))) {
+            moduleBox.put("supportStyle", "true");
+            moduleBox.put("support", 
getSupportStatus(additioanlInfo.get("support"), false));
+          } else {
+            moduleBox.put("supportStyle", "none");
+          }
         }
 
         modulesBox[i] = FieldProviderFactory.getFieldProvider(moduleBox);
@@ -1975,6 +1990,35 @@
     return xmlDocument.print();
   }
 
+  private String getSupportStatus(String supportCode, boolean detailed) {
+    org.openbravo.model.ad.domain.List refValue = OBDal.getInstance()
+        .get(Reference.class, SUPPORT_STATUS_REF)
+        .getADListList()
+        .stream()
+        .filter(l -> supportCode.equals(l.getSearchKey()))
+        .findAny()
+        .get();
+
+    Optional<String> trlListValue = refValue.getADListTrlList()
+        .stream()
+        .filter(
+            trl -> 
trl.getLanguage().getId().equals(OBContext.getOBContext().getLanguage().getId()))
+        .map(e -> statusLabel(e, detailed))
+        .findAny();
+
+    return trlListValue.orElseGet(() -> statusLabel(refValue, detailed));
+  }
+
+  private String statusLabel(BaseOBObject valueListOrTrl, boolean detailed) {
+    String label = (String) 
valueListOrTrl.get(org.openbravo.model.ad.domain.List.PROPERTY_NAME);
+    String description = (String) valueListOrTrl
+        .get(org.openbravo.model.ad.domain.List.PROPERTY_DESCRIPTION);
+    if (detailed && description != null) {
+      label = label + " (" + description + ")";
+    }
+    return label;
+  }
+
   /**
    * Returns String[] with the installed modules, this is used for perform the 
search in the
    * webservice and not to obtain in the list the already installed ones.
diff -r 976e03344470 -r 75475ade8e76 
src/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.html
--- a/src/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.html Fri Feb 
22 12:43:45 2019 +0100
+++ b/src/org/openbravo/erpCommon/ad_forms/ModuleManagementDetails.html Tue Feb 
26 09:46:41 2019 +0100
@@ -11,7 +11,7 @@
  * under the License. 
  * The Original Code is Openbravo ERP. 


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

Reply via email to