# HG changeset patch
# User Unai Martirena <unai.martirena@openbravo.com>
# Date 1471867856 -7200
#      Mon Aug 22 14:10:56 2016 +0200
# Node ID 45ca25420bb79a1aff4422e7a1d58089cce3e104
# Parent  6e8555c57a791f420b03cf8f02390779f2ce126a
Execute OBPOS_LeftSubWindow_beforeSetShowing hooks after executing beforeSetShowing method

diff --git a/web/org.openbravo.retail.posterminal/js/components/leftsubwindow.js b/web/org.openbravo.retail.posterminal/js/components/leftsubwindow.js
--- a/web/org.openbravo.retail.posterminal/js/components/leftsubwindow.js
+++ b/web/org.openbravo.retail.posterminal/js/components/leftsubwindow.js
@@ -28,23 +28,10 @@
   }],
   mainBeforeSetShowing: function (params) {
     //TODO
-    var ret;
     if (this.beforeSetShowing) {
-      if (!this.beforeSetShowing(params)) {
-        return false;
-      }
+      return this.beforeSetShowing(params);
     }
-    OB.UTIL.HookManager.executeHooks('OBPOS_LeftSubWindow_beforeSetShowing', {
-      context: this,
-      params: params
-    }, function (args) {
-      if (args && args.cancelOperation && args.cancelOperation === true) {
-        ret = false;
-      } else {
-        ret = true;
-      }
-    });
-    return ret;
+    return true;
   },
   mainBeforeSetHidden: function (params) {
     //TODO
diff --git a/web/org.openbravo.retail.posterminal/js/pointofsale/view/pointofsale.js b/web/org.openbravo.retail.posterminal/js/pointofsale/view/pointofsale.js
--- a/web/org.openbravo.retail.posterminal/js/pointofsale/view/pointofsale.js
+++ b/web/org.openbravo.retail.posterminal/js/pointofsale/view/pointofsale.js
@@ -671,6 +671,7 @@
     }
   },
   showLeftSubWindow: function (inSender, inEvent) {
+    var me = this;
     if (this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow]) {
       if (this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].mainBeforeSetShowing) {
         var allHidden = true;
@@ -685,9 +686,16 @@
           }
         }, this);
         if (this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].mainBeforeSetShowing(inEvent) && allHidden) {
-          this.$.multiColumn.$.leftPanel.$.receiptview.setShowing(false);
-          this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].setShowing(true);
-          this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].inEvent = inEvent;
+          OB.UTIL.HookManager.executeHooks('OBPOS_LeftSubWindow_beforeSetShowing', {
+            context: this.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow],
+            params: inEvent
+          }, function (args) {
+            if (args && !args.cancelOperation) {
+              me.$.multiColumn.$.leftPanel.$.receiptview.setShowing(false);
+              me.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].setShowing(true);
+              me.$.multiColumn.$.leftPanel.$[inEvent.leftSubWindow].inEvent = inEvent;
+            }
+          });
         }
       }
     }
