فهرست منبع

Ticket #4558 - Build-in API support: Extended search.

AntonLV 2 سال پیش
والد
کامیت
53b81bdddd
2فایلهای تغییر یافته به همراه11 افزوده شده و 5 حذف شده
  1. 1 1
      template/scripts/BxBaseSearchExtended.php
  2. 10 4
      template/scripts/BxBaseSearchExtendedServices.php

+ 1 - 1
template/scripts/BxBaseSearchExtended.php

@@ -64,7 +64,7 @@ class BxBaseSearchExtended extends BxDolSearchExtended
             'module' => $this->_aObject['module'],
             'unit' => 'general-content-list',
             'request_url' => '/api.php?r=system/get_results/TemplSearchExtendedServices&params[]=',
-            'data' =>  $aData,
+            'data' =>  defined('BX_API_PAGE') ? [] : $aData,
             'params' => ['per_page' => $iPerPage, 'start' => $iStart, 'object' => $this->_aObject['module'], 'search_params' => $aParamsSearch],
         ]);
     }

+ 10 - 4
template/scripts/BxBaseSearchExtendedServices.php

@@ -64,10 +64,16 @@ return [$mForm];
             $aPa = json_decode($mParams, true);    
             $aParams['object'] = $aPa['params']["object"];
             $aParams['params'] = $aPa['params'];
-            
-            foreach($aParams['params']['filters'] as $sKey => $aParam){
-               $_POST[$sKey] = $aParam;
-            }
+
+            $aFilters = [];
+            if(!empty($aParams['params']['filters']) && is_array($aParams['params']['filters']))
+                $aFilters = $aParams['params']['filters'];
+            else if(!empty($aParams['params']['search_params']) && is_array($aParams['params']['search_params']))
+                $aFilters = $aParams['params']['search_params'];
+                
+            if($aFilters)
+                foreach($aFilters as $sKey => $aParam)
+                   $_POST[$sKey] = $aParam;
         }
         else
             $aParams = $mParams;