Sfoglia il codice sorgente

Ticket #4262 - Paid Levels: Don't auto-cancel a subscription for the same order.

AntonLV 3 anni fa
parent
commit
9de3218386
1 ha cambiato i file con 7 aggiunte e 7 eliminazioni
  1. 7 7
      modules/boonex/acl/classes/BxAclModule.php

+ 7 - 7
modules/boonex/acl/classes/BxAclModule.php

@@ -574,26 +574,26 @@ class BxAclModule extends BxDolModule
             $sLicenseOld = $aMembershipInfo['transaction_id'];
             $sLicenseOld = $aMembershipInfo['transaction_id'];
             $aLicenseOld = $this->_oDb->getLicenses(['type' => 'by_license', 'license' => $sLicenseOld]);
             $aLicenseOld = $this->_oDb->getLicenses(['type' => 'by_license', 'license' => $sLicenseOld]);
 
 
-            $sPpOrder = '';
+            $sOrderOld = '';
             if(empty($aLicenseOld) || !is_array($aLicenseOld)) {
             if(empty($aLicenseOld) || !is_array($aLicenseOld)) {
                 $aOrders = $oPayments->getOrdersInfo(['license' => $sLicenseOld]);
                 $aOrders = $oPayments->getOrdersInfo(['license' => $sLicenseOld]);
                 if(!empty($aOrders) && is_array($aOrders)) {
                 if(!empty($aOrders) && is_array($aOrders)) {
                     $aOrder = reset($aOrders);
                     $aOrder = reset($aOrders);
                     $aPendings = $oPayments->getPendingOrdersInfo(['id' => $aOrder['pending_id']]);
                     $aPendings = $oPayments->getPendingOrdersInfo(['id' => $aOrder['pending_id']]);
                     if(!empty($aPendings) && is_array($aPendings)) {
                     if(!empty($aPendings) && is_array($aPendings)) {
-                        $aPpPending = reset($aPendings);
-                        if($aPpPending['type'] == BX_ACL_LICENSE_TYPE_RECURRING)
-                            $sPpOrder = $aPpPending['order'];
+                        $aPending = reset($aPendings);
+                        if($aPending['type'] == BX_ACL_LICENSE_TYPE_RECURRING)
+                            $sOrderOld = $aPending['order'];
                     }
                     }
                 }    
                 }    
             }
             }
             else if($aLicenseOld['type'] == BX_ACL_LICENSE_TYPE_RECURRING)
             else if($aLicenseOld['type'] == BX_ACL_LICENSE_TYPE_RECURRING)
-                $sPpOrder = $aLicenseOld['order'];
+                $sOrderOld = $aLicenseOld['order'];
 
 
-            if(!empty($sPpOrder) && (($aResult = $oPayments->cancelSubscription($sPpOrder)) === false || (int)$aResult['code'] != 0)) {
+            if(!empty($sOrderOld) && $sOrderOld != $sOrder && (($aResult = $oPayments->cancelSubscription($sOrderOld)) === false || (int)$aResult['code'] != 0)) {
                 sendMailTemplate($CNF['ETEMPLATE_SBS_CANCEL_REQUIRED'], 0, $iClientId, [
                 sendMailTemplate($CNF['ETEMPLATE_SBS_CANCEL_REQUIRED'], 0, $iClientId, [
                     'level' => _t($aMembershipInfo['name']),
                     'level' => _t($aMembershipInfo['name']),
-                    'order' => $sPpOrder,
+                    'order' => $sOrderOld,
                     'date_starts' => $this->_oConfig->formatDate($aMembershipInfo['date_starts']),
                     'date_starts' => $this->_oConfig->formatDate($aMembershipInfo['date_starts']),
                     'date_expires' => $this->_oConfig->formatDate($aMembershipInfo['date_expires']),
                     'date_expires' => $this->_oConfig->formatDate($aMembershipInfo['date_expires']),
                 ], BX_EMAIL_NOTIFY, true);
                 ], BX_EMAIL_NOTIFY, true);