details: /erp/devel/pi/rev/0db5542af927
changeset: 8011:0db5542af927
user: Asier Lostalé <asier.lostale <at> openbravo.com>
date: Tue Aug 03 16:22:35 2010 +0200
summary: fixed issue 14086: Identify 3.0 instances in about box and in
heartbeat
About box now shows information about 3.0 template in case it is installed
this information is also send in the heartbeats.
diffstat:
src-db/database/sourcedata/AD_TEXTINTERFACES.xml | 88 ++++++++--------
src/org/openbravo/erpCommon/ad_forms/About.html | 40 +++---
src/org/openbravo/erpCommon/ad_forms/About.java | 88 +++++++++++++--
src/org/openbravo/erpCommon/ad_forms/About.xml | 14 +-
src/org/openbravo/erpCommon/ad_forms/About_data.xsql | 52 ---------
src/org/openbravo/erpCommon/modules/ModuleTree_data.xsql | 22 ++-
src/org/openbravo/erpCommon/utility/OBVersion.java | 66 ++++++++++++
src/org/openbravo/erpCommon/utility/SystemInfo.java | 5 +-
src/org/openbravo/erpCommon/utility/SystemInfo_data.xsql | 10 +-
9 files changed, 232 insertions(+), 153 deletions(-)
diffs (truncated from 609 to 300 lines):
diff -r 38158faa4a84 -r 0db5542af927
src-db/database/sourcedata/AD_TEXTINTERFACES.xml
--- a/src-db/database/sourcedata/AD_TEXTINTERFACES.xml Tue Aug 03 14:54:55
2010 +0200
+++ b/src-db/database/sourcedata/AD_TEXTINTERFACES.xml Tue Aug 03 16:22:35
2010 +0200
@@ -4247,17 +4247,6 @@
<!--804325--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--804325--></AD_TEXTINTERFACES>
-<!--804326--><AD_TEXTINTERFACES>
-<!--804326--> <AD_TEXTINTERFACES_ID><![CDATA[804326]]></AD_TEXTINTERFACES_ID>
-<!--804326--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
-<!--804326--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
-<!--804326--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
-<!--804326--> <TEXT><![CDATA[For more information on our licensing, please
consult]]></TEXT>
-<!--804326-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
-<!--804326--> <ISUSED><![CDATA[Y]]></ISUSED>
-<!--804326--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
-<!--804326--></AD_TEXTINTERFACES>
-
<!--804327--><AD_TEXTINTERFACES>
<!--804327--> <AD_TEXTINTERFACES_ID><![CDATA[804327]]></AD_TEXTINTERFACES_ID>
<!--804327--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -4269,28 +4258,6 @@
<!--804327--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--804327--></AD_TEXTINTERFACES>
-<!--804331--><AD_TEXTINTERFACES>
-<!--804331--> <AD_TEXTINTERFACES_ID><![CDATA[804331]]></AD_TEXTINTERFACES_ID>
-<!--804331--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
-<!--804331--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
-<!--804331--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
-<!--804331--> <TEXT><![CDATA[Translator]]></TEXT>
-<!--804331-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
-<!--804331--> <ISUSED><![CDATA[Y]]></ISUSED>
-<!--804331--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
-<!--804331--></AD_TEXTINTERFACES>
-
-<!--804333--><AD_TEXTINTERFACES>
-<!--804333--> <AD_TEXTINTERFACES_ID><![CDATA[804333]]></AD_TEXTINTERFACES_ID>
-<!--804333--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
-<!--804333--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
-<!--804333--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
-<!--804333--> <TEXT><![CDATA[A special thanks to all those who translated
Openbravo ERP:]]></TEXT>
-<!--804333-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
-<!--804333--> <ISUSED><![CDATA[Y]]></ISUSED>
-<!--804333--> <AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
-<!--804333--></AD_TEXTINTERFACES>
-
<!--804382--><AD_TEXTINTERFACES>
<!--804382--> <AD_TEXTINTERFACES_ID><![CDATA[804382]]></AD_TEXTINTERFACES_ID>
<!--804382--> <AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -19413,17 +19380,6 @@
<!--6E0B3322B52A14C6E040007F010136CA-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--6E0B3322B52A14C6E040007F010136CA--></AD_TEXTINTERFACES>
-<!--6E0B3322B52B14C6E040007F010136CA--><AD_TEXTINTERFACES>
-<!--6E0B3322B52B14C6E040007F010136CA-->
<AD_TEXTINTERFACES_ID><![CDATA[6E0B3322B52B14C6E040007F010136CA]]></AD_TEXTINTERFACES_ID>
-<!--6E0B3322B52B14C6E040007F010136CA-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
-<!--6E0B3322B52B14C6E040007F010136CA--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
-<!--6E0B3322B52B14C6E040007F010136CA--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
-<!--6E0B3322B52B14C6E040007F010136CA--> <TEXT><![CDATA[Revision ID:]]></TEXT>
-<!--6E0B3322B52B14C6E040007F010136CA-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
-<!--6E0B3322B52B14C6E040007F010136CA--> <ISUSED><![CDATA[Y]]></ISUSED>
-<!--6E0B3322B52B14C6E040007F010136CA-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
-<!--6E0B3322B52B14C6E040007F010136CA--></AD_TEXTINTERFACES>
-
<!--6E59421C5B32AB25E040007F01016FD1--><AD_TEXTINTERFACES>
<!--6E59421C5B32AB25E040007F01016FD1-->
<AD_TEXTINTERFACES_ID><![CDATA[6E59421C5B32AB25E040007F01016FD1]]></AD_TEXTINTERFACES_ID>
<!--6E59421C5B32AB25E040007F01016FD1-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
@@ -21182,6 +21138,50 @@
<!--8B6C738A9E948161E040007F010131B7-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--8B6C738A9E948161E040007F010131B7--></AD_TEXTINTERFACES>
+<!--8CEBE8DADEA59992E040007F01014AE9--><AD_TEXTINTERFACES>
+<!--8CEBE8DADEA59992E040007F01014AE9-->
<AD_TEXTINTERFACES_ID><![CDATA[8CEBE8DADEA59992E040007F01014AE9]]></AD_TEXTINTERFACES_ID>
+<!--8CEBE8DADEA59992E040007F01014AE9-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--8CEBE8DADEA59992E040007F01014AE9--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--8CEBE8DADEA59992E040007F01014AE9--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--8CEBE8DADEA59992E040007F01014AE9--> <TEXT><![CDATA[Core Revision
ID:]]></TEXT>
+<!--8CEBE8DADEA59992E040007F01014AE9-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
+<!--8CEBE8DADEA59992E040007F01014AE9--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--8CEBE8DADEA59992E040007F01014AE9-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--8CEBE8DADEA59992E040007F01014AE9--></AD_TEXTINTERFACES>
+
+<!--8CEBE8DADEA89992E040007F01014AE9--><AD_TEXTINTERFACES>
+<!--8CEBE8DADEA89992E040007F01014AE9-->
<AD_TEXTINTERFACES_ID><![CDATA[8CEBE8DADEA89992E040007F01014AE9]]></AD_TEXTINTERFACES_ID>
+<!--8CEBE8DADEA89992E040007F01014AE9-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--8CEBE8DADEA89992E040007F01014AE9--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--8CEBE8DADEA89992E040007F01014AE9--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--8CEBE8DADEA89992E040007F01014AE9--> <TEXT><![CDATA[This instance includes
the following modules:]]></TEXT>
+<!--8CEBE8DADEA89992E040007F01014AE9-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
+<!--8CEBE8DADEA89992E040007F01014AE9--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--8CEBE8DADEA89992E040007F01014AE9-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--8CEBE8DADEA89992E040007F01014AE9--></AD_TEXTINTERFACES>
+
+<!--8CEBE8DADEAB9992E040007F01014AE9--><AD_TEXTINTERFACES>
+<!--8CEBE8DADEAB9992E040007F01014AE9-->
<AD_TEXTINTERFACES_ID><![CDATA[8CEBE8DADEAB9992E040007F01014AE9]]></AD_TEXTINTERFACES_ID>
+<!--8CEBE8DADEAB9992E040007F01014AE9-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--8CEBE8DADEAB9992E040007F01014AE9--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--8CEBE8DADEAB9992E040007F01014AE9--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--8CEBE8DADEAB9992E040007F01014AE9--> <TEXT><![CDATA[. Created by:]]></TEXT>
+<!--8CEBE8DADEAB9992E040007F01014AE9-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
+<!--8CEBE8DADEAB9992E040007F01014AE9--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--8CEBE8DADEAB9992E040007F01014AE9-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--8CEBE8DADEAB9992E040007F01014AE9--></AD_TEXTINTERFACES>
+
+<!--8CEBE8DADEAE9992E040007F01014AE9--><AD_TEXTINTERFACES>
+<!--8CEBE8DADEAE9992E040007F01014AE9-->
<AD_TEXTINTERFACES_ID><![CDATA[8CEBE8DADEAE9992E040007F01014AE9]]></AD_TEXTINTERFACES_ID>
+<!--8CEBE8DADEAE9992E040007F01014AE9-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--8CEBE8DADEAE9992E040007F01014AE9--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--8CEBE8DADEAE9992E040007F01014AE9--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--8CEBE8DADEAE9992E040007F01014AE9--> <TEXT><![CDATA[For more information
on our licensing, please consult ]]></TEXT>
+<!--8CEBE8DADEAE9992E040007F01014AE9-->
<FILENAME><![CDATA[/org/openbravo/erpCommon/ad_forms/About.html]]></FILENAME>
+<!--8CEBE8DADEAE9992E040007F01014AE9--> <ISUSED><![CDATA[Y]]></ISUSED>
+<!--8CEBE8DADEAE9992E040007F01014AE9-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--8CEBE8DADEAE9992E040007F01014AE9--></AD_TEXTINTERFACES>
+
<!--8E2EEBC582974948836ACA2751E8A103--><AD_TEXTINTERFACES>
<!--8E2EEBC582974948836ACA2751E8A103-->
<AD_TEXTINTERFACES_ID><![CDATA[8E2EEBC582974948836ACA2751E8A103]]></AD_TEXTINTERFACES_ID>
<!--8E2EEBC582974948836ACA2751E8A103-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
diff -r 38158faa4a84 -r 0db5542af927
src/org/openbravo/erpCommon/ad_forms/About.html
--- a/src/org/openbravo/erpCommon/ad_forms/About.html Tue Aug 03 14:54:55
2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_forms/About.html Tue Aug 03 16:22:35
2010 +0200
@@ -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) 2001-2009 Openbravo SLU
+ * All portions are Copyright (C) 2001-2010 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -100,7 +100,7 @@
<td>Version number:</td><td> <td><td
id="versionNo">xx2.50.111</td>
</tr>
<tr>
- <td>Revision ID:</td><td> <td><td
id="versionId">xxaaaabbbc</td>
+ <td>Core Revision ID:</td><td> <td><td
id="versionId">xxaaaabbbc</td>
<tr>
<tr id="paramOPSInfo">
<td>Instance Purpose:</td><td> <td><td
id="paraOPSPurpose">xx</td>
@@ -115,6 +115,24 @@
<td>
<p class="Wide_Paragraph">Copyright © Openbravo,
S.L.U. 2001-2010</p>
<p class="Wide_Paragraph">This product has been created by
Openbravo S.L.U. and is distributed under the <span class="LabelText"><a
class="LabelLink_noicon" href="http://www.openbravo.com/legal/license.html"
target="_blank">Openbravo Public
License</a></span> (http://www.openbravo.com/legal/license.html)</p>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <p class="Wide_Paragraph">This instance includes the following
modules:</p>
+ <div id="installedModulesDetail">
+ <div class="Regular_Paragraph">
+ <span
id="modTab"> </span><span>- </span>
+ <span id="moduleName">xxModule a</span>
+ <span id="moduleVersion">xx1.0.0</span>
+ <span>. Created by: </span>
+ <span id="moduleAuthor">xxAuthor</span>
+ </div>
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <td>
<p class="Wide_Paragraph">This product incorporates software
created by third parties and distributed under free software licenses,
including:</p>
<p
class="Regular_Paragraph"> - ComPiere
Inc.</p>
<p
class="Regular_Paragraph"> - The
Apache Foundation</p>
@@ -126,24 +144,8 @@
<p
class="Regular_Paragraph"> - Dynarch</p>
<p
class="Regular_Paragraph"> - DHTMLGoodies</p>
<p class="Wide_Paragraph">Openbravo and the openbravo logo are
trademarks of Openbravo S.L.U. Names and distinctive signs of other parties are
trademarks of their respective owners.</p>
- <p class="Wide_Paragraph">For more information on our licensing,
please consult <span class="LabelText"><a class="LabelLink_noicon"
href="http://www.openbravo.com/legal/license.html"
target="_blank"></span>www.openbravo.com/legal/license.html</a></p>
+ <p class="Wide_Paragraph">For more information on our licensing,
please consult <span class="LabelText"><a class="LabelLink_noicon"
href="http://www.openbravo.com/legal/license.html"
target="_blank">www.openbravo.com/legal/license.html</a></span></p>
<p class="Regular_Paragraph">Thank you to all contributors.</p>
- <div id="discard">
- <p class="Regular_Paragraph">A special thanks to all those who
translated Openbravo ERP:</p>
- <table>
- <tr>
- <td class="Regular_Paragraph">Language</td>
- <td class="Regular_Paragraph">Translator</td>
- </tr>
- <div id="sectionDetail">
- <tr>
- <td class="Regular_Paragraph" id="fieldLang">xxLA_la</td>
- <td class="Regular_Paragraph"
id="fieldTranslator">xxyyxx</td>
- </tr>
- </div>
- </table>
- </div>
-
</td>
</tr>
diff -r 38158faa4a84 -r 0db5542af927
src/org/openbravo/erpCommon/ad_forms/About.java
--- a/src/org/openbravo/erpCommon/ad_forms/About.java Tue Aug 03 14:54:55
2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_forms/About.java Tue Aug 03 16:22:35
2010 +0200
@@ -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) 2001-2009 Openbravo SLU
+ * All portions are Copyright (C) 2001-2010 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -21,6 +21,9 @@
import java.io.IOException;
import java.io.PrintWriter;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
@@ -29,7 +32,11 @@
import org.openbravo.base.secureApp.HttpSecureAppServlet;
import org.openbravo.base.secureApp.VariablesSecureApp;
import org.openbravo.dal.core.OBContext;
+import org.openbravo.data.FieldProvider;
+import org.openbravo.erpCommon.modules.ModuleTreeData;
import org.openbravo.erpCommon.obps.ActivationKey;
+import org.openbravo.erpCommon.utility.FieldProviderFactory;
+import org.openbravo.erpCommon.utility.OBVersion;
import org.openbravo.erpCommon.utility.Utility;
import org.openbravo.xmlEngine.XmlDocument;
@@ -56,14 +63,9 @@
ActivationKey ak = new ActivationKey();
response.setContentType("text/html; charset=UTF-8");
PrintWriter out = response.getWriter();
- String discard[] = { "", "" };
- AboutData[] data = AboutData.selectTranslators(this);
- AboutData ver = AboutData.select(this);
+ String discard[] = { "" };
XmlDocument xmlDocument = null;
- if (data.length == 0) {
- discard[0] = "discard";
- data = AboutData.set();
- }
+
String licenseInfo = "";
if (ActivationKey.isActiveInstance()) {
licenseInfo = Utility.messageBD(this, "OPSLicensedTo",
vars.getLanguage()) + " "
@@ -71,22 +73,21 @@
} else {
licenseInfo = Utility.messageBD(this, "OPSCommunityEdition",
vars.getLanguage());
- discard[1] = "paramOPSInfo";
+ discard[0] = "paramOPSInfo";
}
xmlDocument =
xmlEngine.readXmlTemplate("org/openbravo/erpCommon/ad_forms/About", discard)
.createXmlDocument();
- String version = ver.version.substring(0, ver.version.lastIndexOf("."))
+ " "
- + ver.versionLabel;
+ OBVersion version = new OBVersion();
xmlDocument.setParameter("directory", "var baseDirectory = \"" +
strReplaceWith + "/\";\n");
xmlDocument.setParameter("language", "defaultLang=\"" +
vars.getLanguage() + "\";");
xmlDocument.setParameter("theme", vars.getTheme());
xmlDocument.setParameter("paramLicensedTo", licenseInfo);
- xmlDocument.setData("structure1", data);
- xmlDocument.setParameter("ver", version);
- xmlDocument.setParameter("versionId", ver.versionId);
- xmlDocument.setParameter("versionNo", ver.version);
+ xmlDocument.setParameter("ver", version.getMajorVersion() + " " +
version.getMP());
+ xmlDocument.setParameter("versionId", version.getVersionId());
+ xmlDocument.setParameter("versionNo", version.getVersionNumber());
+ xmlDocument.setData("installedModules", getInstalledModules());
if (ActivationKey.isActiveInstance()) {
xmlDocument.setParameter("paraOPSPurpose",
ak.getPurpose(vars.getLanguage()));
@@ -101,6 +102,63 @@
}
+ /**
+ * Obtains a list of all modules installed in the instance.
+ *
+ * @return
+ */
+ private FieldProvider[] getInstalledModules() {
+ List<HashMap<String, String>> installedModules = new
ArrayList<HashMap<String, String>>();
+ try {
+ ModuleTreeData[] rootNodes = ModuleTreeData.select(this, "");
+ for (ModuleTreeData module : rootNodes) {
+ installedModules.add(getModuleHashMap(module, 1));
+ installedModules.addAll(getSubTree(module, 2));
+ }
+ } catch (ServletException e) {
+ log4j.error("Error obtaining installed modules", e);
+ }
+ return FieldProviderFactory.getFieldProviderArray(installedModules);
+ }
+
+ /**
+ * Obtains the list of the child modules for a parent module. This method is
called from
+ * getInstalledModules and it composes a tree of inclusions.
+ */
+ private List<HashMap<String, String>> getSubTree(ModuleTreeData
parentModule, int level) {
+ List<HashMap<String, String>> installedModules = new
ArrayList<HashMap<String, String>>();
------------------------------------------------------------------------------
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits