AntonLV 9 лет назад
Родитель
Сommit
2b44c8e39c

+ 40 - 28
inc/js/functions.js

@@ -9,35 +9,47 @@
 function processJsonData(oData) {
 	var $this = this;
 
-	if(oData && oData.message != undefined && oData.message.length != 0)
-    	alert(oData.message);
-
-    if(oData && oData.reload != undefined && parseInt(oData.reload) == 1)
-    	document.location = document.location;
-
-    if(oData && oData.popup != undefined) {
-    	var oPopup = null;
-    	var oOptions = {
-            fog: {
-				color: '#fff',
-				opacity: .7
-            },
-            closeOnOuterClick: false
-        };
-
-    	if(typeof(oData.popup) == 'object') {
-    		oOptions = $.extend({}, oOptions, oData.popup.options);
-    		oPopup = $(oData.popup.html);
-    	}
-    	else 
-    		oPopup = $(oData.popup);
-
-    	$('#' + oPopup.attr('id')).remove();
-        oPopup.hide().prependTo('body').dolPopup(oOptions);
-    }
+	var fContinue = function(oData) {
+		if(oData && oData.reload != undefined && parseInt(oData.reload) == 1)
+	    	document.location = document.location;
+
+	    if(oData && oData.redirect != undefined && oData.redirect.length != 0)
+	    	document.location = oData.redirect;
+
+	    if(oData && oData.popup != undefined) {
+	    	var oPopup = null;
+	    	var oOptions = {
+	            fog: {
+					color: '#fff',
+					opacity: .7
+	            },
+	            closeOnOuterClick: false
+	        };
+
+	    	if(typeof(oData.popup) == 'object') {
+	    		oOptions = $.extend({}, oOptions, oData.popup.options);
+	    		oPopup = $(oData.popup.html);
+	    	}
+	    	else 
+	    		oPopup = $(oData.popup);
+
+	    	$('#' + oPopup.attr('id')).remove();
+	        oPopup.hide().prependTo('body').bxTime().dolPopup(oOptions);
+	    }
+
+	    if (oData && oData.eval != undefined)
+	        eval(oData.eval);
+	};
 
-    if (oData && oData.eval != undefined)
-        eval(oData.eval);
+	if(oData && oData.message != undefined && oData.message.length != 0)
+		$(document).dolPopupAlert({
+			message: oData.message,
+			onClickOk: function() {
+				fContinue(oData);
+			}
+		});
+	else
+		fContinue(oData);
 };
 
 function getHtmlData( elem, url, callback, method , confirmation)

+ 6 - 6
modules/boonex/payment/classes/BxPaymentGridProcessed.php

@@ -38,20 +38,20 @@ class BxPaymentGridProcessed extends BxBaseModPaymentGridOrders
         $oForm->aInputs['client_id']['attrs'] = array(
         	'id' => $this->_oModule->_oConfig->getHtmlIds('processed', 'order_processed_client_id'),
         );
-        
+
 		$oForm->aInputs['client']['attrs'] = array(
         	'id' => $this->_oModule->_oConfig->getHtmlIds('processed', 'order_processed_client')			
         );
-		
+
 		$oForm->aInputs['client']['ajax_get_suggestions'] = BX_DOL_URL_ROOT . 'modules/?r=' . $this->_oModule->_oConfig->getUri() . '/get_clients';
-		
+
 		$oForm->aInputs['client']['custom'] = array(
 			'only_once' => true,
-			'on_select' => "function(oObject){{$sJsObject}.paOnShowPopup(oObject);}"
+			'on_select' => "function(oObject){{$sJsObject}.showPopup(oObject);}"
 		);
-				
+
         $oForm->aInputs['module_id']['attrs'] = array(
-			'onchange' => 'javascript:' . $sJsObject . '.paOnSelectModule(this);'
+			'onchange' => 'javascript:' . $sJsObject . '.selectModule(this);'
 		);
         $oForm->aInputs['module_id']['values'] = array(
             array('key' => '0', 'value' => _t('_Select_one'))

+ 1 - 0
modules/boonex/payment/classes/BxPaymentModule.php

@@ -115,6 +115,7 @@ class BxPaymentModule extends BxBaseModPaymentModule
 
 		echoJson(array(
 			'code' => 0, 
+		 	'eval' => $this->_oConfig->getJsObject('processed') . '.onSelectModule(oData);', 
 			'data' => $this->_oTemplate->displayItems($sType, $aItems)
 		));
     }

+ 5 - 14
modules/boonex/payment/js/cart.js

@@ -41,19 +41,10 @@ BxPaymentCart.prototype.addToCart = function(iSellerId, iModuleId, iItemId, iIte
             _t:oDate.getTime()
         },
         function(oData) {
-        	$this.processResult(oData);
-
-            if(oData.code == 0) {
-            	/*
-            	 * TODO: Display counter somewhere if it's needed.
-            	 * 
-            	$('#bx-menu-object-sys_account_notifications').html(oData.total_quantity);
-                $('#bx-payment-tbar-content').replaceWith(oData.content);
-                */
-
-            	if(sRedirect)
-            		window.location.href = sRedirect;
-            }
+        	if(sRedirect)
+        		oData.redirect = sRedirect;
+
+        	processJsonData(oData);
         },
         'json'
     );
@@ -95,7 +86,7 @@ BxPaymentCart.prototype.subscribe = function(iSellerId, sSellerProvider, iModule
         this._sActionsUrl + 'subscribe_json/',
         oParams,
         function(oData){
-        	$this.processResult(oData);
+        	processJsonData(oData);
         },
         'json'
     );

+ 0 - 34
modules/boonex/payment/js/main.js

@@ -10,40 +10,6 @@
 
 function BxPaymentMain() {}
 
-BxPaymentMain.prototype.processResult = function(oData) {
-	var $this = this;
-
-	if(oData && oData.message != undefined && oData.message.length != 0)
-    	alert(oData.message);
-
-    if(oData && oData.reload != undefined && parseInt(oData.reload) == 1)
-    	document.location = document.location;
-
-    if(oData && oData.popup != undefined) {
-    	var oPopup = null;
-    	var oOptions = {
-            fog: {
-				color: '#fff',
-				opacity: .7
-            },
-            closeOnOuterClick: false
-        };
-
-    	if(typeof(oData.popup) == 'object') {
-    		oOptions = $.extend({}, oOptions, oData.popup.options);
-    		oPopup = $(oData.popup.html);
-    	}
-    	else 
-    		oPopup = $(oData.popup);
-
-    	$('#' + oPopup.attr('id')).remove();
-        oPopup.hide().prependTo('body').bxTime().dolPopup(oOptions);
-    }
-
-    if (oData && oData.eval != undefined)
-        eval(oData.eval);
-};
-
 BxPaymentMain.prototype.loadingInButton = function(e, bShow) {
 	if($(e).length)
 		bx_loading_btn($(e), bShow);

+ 9 - 11
modules/boonex/payment/js/orders.js

@@ -25,17 +25,14 @@ BxPaymentOrders.prototype.init = function(oOptions) {
 };
 
 /*--- Manual Order function ---*/
-BxPaymentOrders.prototype.paOnShowPopup = function(oUi) {
-	console.log(oUi);
+BxPaymentOrders.prototype.showPopup = function(oUi) {
 	$('#' + this._aHtmlIds['order_processed_client_id']).val(oUi.item.value);	
 };
 
-BxPaymentOrders.prototype.paOnSelectModule = function(oSelect) {
+BxPaymentOrders.prototype.selectModule = function(oSelect) {
     var oDate = new Date();
 
-    var oPopup = $('#' + this._aHtmlIds['order_processed_add']); 
-    var oItems = $('#' + this._aHtmlIds['order_processed_items']);
-
+    var oPopup = $('#' + this._aHtmlIds['order_processed_add']);
     oPopup.bx_loading(true);
 
     $.get(
@@ -46,14 +43,15 @@ BxPaymentOrders.prototype.paOnSelectModule = function(oSelect) {
         function(oData) {
         	oPopup.bx_loading(false);
 
-        	if(oData.message != undefined)
-        		alert(oData.message);
-
-            if(oData.data != undefined)
-            	oItems.replaceWith(oData.data);
+        	processJsonData(oData);
         },
         'json'
     );
 };
 
+BxPaymentOrders.prototype.onSelectModule = function(oData) {
+	if(oData.data != undefined)
+		$('#' + this._aHtmlIds['order_processed_items']).replaceWith(oData.data);
+};
+
 /** @} */

+ 1 - 1
modules/boonex/payment/js/stripe.js

@@ -97,7 +97,7 @@ BxPaymentProviderStripe.prototype.subscribe = function(oLink) {
 		        function(oData){
 		        	$this.loadingInButton(oLink, true);
 
-		        	$this.processResult(oData);
+		        	processJsonData(oData);
 		        },
 		        'json'
 		    );

+ 1 - 1
modules/boonex/payment/js/subscriptions.js

@@ -59,7 +59,7 @@ BxPaymentSubscriptions.prototype._performRequest = function(oLink, iId, sUri) {
         	$this.loadingInButton(oLink, false);
         	$(".bx-popup-applied:visible").dolPopupHide();
 
-        	$this.processResult(oData);
+        	processJsonData(oData);
         },
         'json'
     );