details: https://code.openbravo.com/erp/devel/pi/rev/cb4a3042e3a5
changeset: 23039:cb4a3042e3a5
user: Guillermo Gil <guillermo.gil <at> openbravo.com>
date: Thu May 15 11:53:24 2014 +0200
summary: Fixed issue 26495:External link entry in menu is not working
openlinkinbrowser field has been created to open the link in a new browser's
tab instead open it in an Openbravo's tab.
This has been done due browser's restrictions.
Also External link icon on Quick Launch has been added.
diffstat:
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MENU.xml
| 8 +
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
| 6 +-
modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
| 3 +-
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
| 17 +-
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-quick-launch.js
| 31 +-
modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/ob-navigation-bar-styles.js
| 5 +-
modules/org.openbravo.client.myob/web/org.openbravo.client.myob/js/ob-myopenbravo.js
| 14 +-
modules/org.openbravo.client.myob/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.myob/ob-myopenbravo-styles.js
| 5 +-
src-db/database/model/tables/AD_MENU.xml
| 5 +
src-db/database/sourcedata/AD_COLUMN.xml
| 36 +
src-db/database/sourcedata/AD_ELEMENT.xml
| 14 +
src-db/database/sourcedata/AD_FIELD.xml
| 29 +
src-db/database/sourcedata/AD_MENU.xml
| 387 ++++++++++
13 files changed, 546 insertions(+), 14 deletions(-)
diffs (truncated from 3538 to 300 lines):
diff -r 4aa336cd9e83 -r cb4a3042e3a5
modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MENU.xml
---
a/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MENU.xml
Thu May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/src-db/database/sourcedata/AD_MENU.xml
Thu May 15 11:53:24 2014 +0200
@@ -11,6 +11,7 @@
<!--1005400002--> <ACTION><![CDATA[OBUIAPP_OpenView]]></ACTION>
<!--1005400002-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
<!--1005400002-->
<EM_OBUIAPP_VIEW_IMPL_ID><![CDATA[FF808081329B023101329B0CE2080013]]></EM_OBUIAPP_VIEW_IMPL_ID>
+<!--1005400002--> <OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--1005400002--></AD_MENU>
<!--6FD97ECD72B4405FA1442FD8673AE571--><AD_MENU>
@@ -24,6 +25,7 @@
<!--6FD97ECD72B4405FA1442FD8673AE571--> <ACTION><![CDATA[W]]></ACTION>
<!--6FD97ECD72B4405FA1442FD8673AE571-->
<AD_WINDOW_ID><![CDATA[54AE252A40C34DA285FC48DA94EB3847]]></AD_WINDOW_ID>
<!--6FD97ECD72B4405FA1442FD8673AE571-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--6FD97ECD72B4405FA1442FD8673AE571-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--6FD97ECD72B4405FA1442FD8673AE571--></AD_MENU>
<!--7CBC6E3EE9CD4121BC336C5DF5524085--><AD_MENU>
@@ -37,6 +39,7 @@
<!--7CBC6E3EE9CD4121BC336C5DF5524085--> <ACTION><![CDATA[W]]></ACTION>
<!--7CBC6E3EE9CD4121BC336C5DF5524085-->
<AD_WINDOW_ID><![CDATA[FD487747E8A2425B8BAE570FCA569D66]]></AD_WINDOW_ID>
<!--7CBC6E3EE9CD4121BC336C5DF5524085-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--7CBC6E3EE9CD4121BC336C5DF5524085-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--7CBC6E3EE9CD4121BC336C5DF5524085--></AD_MENU>
<!--B487FABEB36F45C28E22CD309914FD71--><AD_MENU>
@@ -50,6 +53,7 @@
<!--B487FABEB36F45C28E22CD309914FD71--> <ACTION><![CDATA[W]]></ACTION>
<!--B487FABEB36F45C28E22CD309914FD71-->
<AD_WINDOW_ID><![CDATA[EBA40241D46D4FA4A24E4A09C61994AA]]></AD_WINDOW_ID>
<!--B487FABEB36F45C28E22CD309914FD71-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--B487FABEB36F45C28E22CD309914FD71-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--B487FABEB36F45C28E22CD309914FD71--></AD_MENU>
<!--F8841106C28A4D769320A8010FD6E8DC--><AD_MENU>
@@ -63,6 +67,7 @@
<!--F8841106C28A4D769320A8010FD6E8DC--> <ACTION><![CDATA[W]]></ACTION>
<!--F8841106C28A4D769320A8010FD6E8DC-->
<AD_WINDOW_ID><![CDATA[7E72F3A16C704449BC50FCE1512C3805]]></AD_WINDOW_ID>
<!--F8841106C28A4D769320A8010FD6E8DC-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--F8841106C28A4D769320A8010FD6E8DC-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--F8841106C28A4D769320A8010FD6E8DC--></AD_MENU>
<!--FF8080812EB90459012EBA72B4E7004D--><AD_MENU>
@@ -75,6 +80,7 @@
<!--FF8080812EB90459012EBA72B4E7004D-->
<ACTION><![CDATA[OBUIAPP_OpenView]]></ACTION>
<!--FF8080812EB90459012EBA72B4E7004D-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
<!--FF8080812EB90459012EBA72B4E7004D-->
<EM_OBUIAPP_VIEW_IMPL_ID><![CDATA[FF8080812EB90459012EBA225DDB0029]]></EM_OBUIAPP_VIEW_IMPL_ID>
+<!--FF8080812EB90459012EBA72B4E7004D-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--FF8080812EB90459012EBA72B4E7004D--></AD_MENU>
<!--FF8081813157AED2013157C149F40039--><AD_MENU>
@@ -88,6 +94,7 @@
<!--FF8081813157AED2013157C149F40039--> <ACTION><![CDATA[W]]></ACTION>
<!--FF8081813157AED2013157C149F40039-->
<AD_WINDOW_ID><![CDATA[FF8081813157AED2013157BE93460020]]></AD_WINDOW_ID>
<!--FF8081813157AED2013157C149F40039-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF8081813157AED2013157C149F40039-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--FF8081813157AED2013157C149F40039--></AD_MENU>
<!--FF80818132D822FF0132D8291C960011--><AD_MENU>
@@ -100,6 +107,7 @@
<!--FF80818132D822FF0132D8291C960011--> <ACTION><![CDATA[W]]></ACTION>
<!--FF80818132D822FF0132D8291C960011-->
<AD_WINDOW_ID><![CDATA[FF80818132D7FB620132D8193C0C0043]]></AD_WINDOW_ID>
<!--FF80818132D822FF0132D8291C960011-->
<AD_MODULE_ID><![CDATA[9BA0836A3CD74EE4AB48753A47211BCC]]></AD_MODULE_ID>
+<!--FF80818132D822FF0132D8291C960011-->
<OPENLINKINBROWSER><![CDATA[N]]></OPENLINKINBROWSER>
<!--FF80818132D822FF0132D8291C960011--></AD_MENU>
</data>
diff -r 4aa336cd9e83 -r cb4a3042e3a5
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 May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/QuickLaunchDataSource.java
Thu May 15 11:53:24 2014 +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) 2010-2012 Openbravo SLU
+ * All portions are Copyright (C) 2010-2014 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -52,6 +52,7 @@
public static final String PROCESS_ID = "processId";
public static final String WINDOW_ID = "windowId";
public static final String FORM_ID = "formId";
+ public static final String OPEN_LINK_IN_BROWSER = "openLinkInBrowser";
@Inject
private MenuManager menuManager;
@@ -116,6 +117,7 @@
data.put(PROCESS_ID, menuOption.getMenu().getProcess().getId());
} else if (menuOption.isExternal()) {
data.put(OPTION_TYPE, OPTION_TYPE_EXTERNAL);
+ data.put(OPEN_LINK_IN_BROWSER,
menuOption.getMenu().isOpenlinkinbrowser());
} else if (menuOption.isForm()) {
data.put(OPTION_TYPE, OPTION_TYPE_URL);
data.put(FORM_ID, menuOption.getFormId());
@@ -137,6 +139,8 @@
} else if (menuOption.isProcess() || menuOption.isProcessManual()
|| menuOption.isProcessDefinition()) {
icon = "Process";
+ } else if (menuOption.isExternal()) {
+ icon = "ExternalLink";
} else {
icon = "Window";
}
diff -r 4aa336cd9e83 -r cb4a3042e3a5
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 May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/navigationbarcomponents/templates/application-menu.js.ftl
Thu May 15 11:53:24 2014 +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) 2010-2012 Openbravo SLU
+ * All portions are Copyright (C) 2010-2014 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -56,6 +56,7 @@
<#elseif menuOption.external>
, type: 'external'
, externalUrl: '${menuOption.id?js_string}'
+ , openLinkInBrowser: ${menuOption.menu.openlinkinbrowser?string}
<#elseif menuOption.view>
, type: 'view'
, viewId: '${menuOption.id?js_string}'
diff -r 4aa336cd9e83 -r cb4a3042e3a5
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 May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-application-menu.js
Thu May 15 11:53:24 2014 +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) 2011-2013 Openbravo SLU
+ * All portions are Copyright (C) 2011-2014 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -179,7 +179,8 @@
contentsURL: item.externalUrl,
id: item.externalUrl,
command: 'DEFAULT',
- tabTitle: item.title
+ tabTitle: item.title,
+ openLinkInBrowser: item.openLinkInBrowser
};
} else if (!item.processDefinitionId) {
// do nothing for param windows
@@ -195,7 +196,17 @@
selectedView = isc.addProperties({}, item, selectedView);
OB.RecentUtilities.addRecent('UINAVBA_MenuRecentList', selectedView);
- OB.Layout.ViewManager.openView(selectedView.viewId, selectedView);
+ if (selectedView.openLinkInBrowser && selectedView.viewId ===
'OBExternalPage') {
+ if (selectedView.contentsURL.indexOf('://') === -1) {
+ selectedView.contentsURL = 'http://' + selectedView.contentsURL;
+ }
+ OB.ViewManager.recentManager.addRecent('OBUIAPP_RecentViewList',
isc.addProperties({
+ icon: OB.Styles.OBApplicationMenu.Icons.externalLink
+ }, selectedView));
+ window.open(selectedView.contentsURL);
+ } else {
+ OB.Layout.ViewManager.openView(selectedView.viewId, selectedView);
+ }
}
});
diff -r 4aa336cd9e83 -r cb4a3042e3a5
modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-quick-launch.js
---
a/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-quick-launch.js
Thu May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/web/org.openbravo.client.application/js/navbar/ob-quick-launch.js
Thu May 15 11:53:24 2014 +0200
@@ -24,7 +24,17 @@
prefixLabel: null,
action: function () {
if (this.recentObject.viewId) {
- OB.Layout.ViewManager.openView(this.recentObject.viewId,
this.recentObject);
+ if (this.recentObject.openLinkInBrowser && this.recentObject.viewId ===
'OBExternalPage') {
+ if (this.recentObject.contentsURL.indexOf('://') === -1) {
+ this.recentObject.contentsURL = 'http://' +
this.recentObject.contentsURL;
+ }
+ OB.ViewManager.recentManager.addRecent('OBUIAPP_RecentViewList',
isc.addProperties({
+ icon: OB.Styles.OBApplicationMenu.Icons.externalLink
+ }, this.recentObject));
+ window.open(this.recentObject.contentsURL);
+ } else {
+ OB.Layout.ViewManager.openView(this.recentObject.viewId,
this.recentObject);
+ }
} else {
OB.Layout.ViewManager.openView('OBClassicWindow', this.recentObject);
}
@@ -47,6 +57,8 @@
this.setIcon(this.nodeIcons.Report);
} else if (this.recentObject.icon === 'Form') {
this.setIcon(this.nodeIcons.Form);
+ } else if (this.recentObject.icon === 'ExternalLink') {
+ this.setIcon(this.nodeIcons.ExternalLink);
} else {
this.setIcon(this.nodeIcons.Window);
}
@@ -220,7 +232,8 @@
Process: this.nodeIcons.Process,
Report: this.nodeIcons.Report,
Form: this.nodeIcons.Form,
- Window: this.nodeIcons.Window
+ Window: this.nodeIcons.Window,
+ ExternalLink: this.nodeIcons.ExternalLink
}
}, {
name: OB.Constants.IDENTIFIER,
@@ -262,7 +275,7 @@
openObject = {
viewId: 'OBExternalPage',
id: viewValue,
- contentsUrl: viewValue,
+ contentsURL: viewValue,
tabTitle: record[OB.Constants.IDENTIFIER]
};
} else if (record.optionType && record.optionType === 'process') {
@@ -317,7 +330,17 @@
openObject = isc.addProperties({}, record, openObject);
- OB.Layout.ViewManager.openView(openObject.viewId, openObject);
+ if (openObject.openLinkInBrowser && openObject.viewId ===
'OBExternalPage') {
+ if (openObject.contentsURL.indexOf('://') === -1) {
+ openObject.contentsURL = 'http://' + openObject.contentsURL;
+ }
+ OB.ViewManager.recentManager.addRecent('OBUIAPP_RecentViewList',
isc.addProperties({
+ icon: OB.Styles.OBApplicationMenu.Icons.externalLink
+ }, openObject));
+ window.open(openObject.contentsURL);
+ } else {
+ OB.Layout.ViewManager.openView(openObject.viewId, openObject);
+ }
OB.RecentUtilities.addRecent(this.recentPropertyName, openObject);
diff -r 4aa336cd9e83 -r cb4a3042e3a5
modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/ob-navigation-bar-styles.js
---
a/modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/ob-navigation-bar-styles.js
Thu May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.application/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.application/ob-navigation-bar-styles.js
Thu May 15 11:53:24 2014 +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) 2011-2013 Openbravo SLU
+ * All portions are Copyright (C) 2011-2014 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -71,7 +71,8 @@
Window: OB.Styles.OBApplicationMenu.Icons.window,
Process: OB.Styles.OBApplicationMenu.Icons.process,
Report: OB.Styles.OBApplicationMenu.Icons.report,
- Form: OB.Styles.OBApplicationMenu.Icons.form
+ Form: OB.Styles.OBApplicationMenu.Icons.form,
+ ExternalLink: OB.Styles.OBApplicationMenu.Icons.externalLink
},
createNew_src: OB.Styles.skinsPath +
'Default/org.openbravo.client.application/images/navbar/iconCreateNew.png',
diff -r 4aa336cd9e83 -r cb4a3042e3a5
modules/org.openbravo.client.myob/web/org.openbravo.client.myob/js/ob-myopenbravo.js
---
a/modules/org.openbravo.client.myob/web/org.openbravo.client.myob/js/ob-myopenbravo.js
Thu May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.myob/web/org.openbravo.client.myob/js/ob-myopenbravo.js
Thu May 15 11:53:24 2014 +0200
@@ -447,7 +447,17 @@
handleClickFunction = function () {
if (this.recent.viewId) {
- OB.Layout.ViewManager.openView(this.recent.viewId, this.recent);
+ if (this.recent.openLinkInBrowser && this.recent.viewId ===
'OBExternalPage') {
+ if (this.recent.contentsURL.indexOf('://') === -1) {
+ this.recent.contentsURL = 'http://' + this.recent.contentsURL;
+ }
+ OB.ViewManager.recentManager.addRecent('OBUIAPP_RecentViewList',
isc.addProperties({
+ icon: OB.Styles.OBApplicationMenu.Icons.externalLink
+ }, this.recent));
+ window.open(this.recent.contentsURL);
+ } else {
+ OB.Layout.ViewManager.openView(this.recent.viewId, this.recent);
+ }
} else {
OB.Layout.ViewManager.openView('OBClassicWindow', this.recent);
}
@@ -471,6 +481,8 @@
icon = OB.Styles.OBMyOpenbravo.recentViewsLayout.nodeIcons.Form;
} else if (recent.icon === 'Window') {
icon =
OB.Styles.OBMyOpenbravo.recentViewsLayout.nodeIcons.Window;
+ } else if (recent.icon === 'ExternalLink') {
+ icon =
OB.Styles.OBMyOpenbravo.recentViewsLayout.nodeIcons.ExternalLink;
} else {
icon = recent.icon; // icon is already a path
}
diff -r 4aa336cd9e83 -r cb4a3042e3a5
modules/org.openbravo.client.myob/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.myob/ob-myopenbravo-styles.js
---
a/modules/org.openbravo.client.myob/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.myob/ob-myopenbravo-styles.js
Thu May 15 09:36:00 2014 +0200
+++
b/modules/org.openbravo.client.myob/web/org.openbravo.userinterface.smartclient/openbravo/skins/Default/org.openbravo.client.myob/ob-myopenbravo-styles.js
Thu May 15 11:53:24 2014 +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) 2011-2012 Openbravo SLU
+ * All portions are Copyright (C) 2011-2014 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -28,7 +28,8 @@
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits