Procházet zdrojové kódy

#4558 - Build-in API support (events & grids)

roman.lesnikov@gmail.com před 2 roky
rodič
revize
051aecd131

+ 7 - 11
modules/base/groups/classes/BxBaseModGroupsModule.php

@@ -554,20 +554,16 @@ class BxBaseModGroupsModule extends BxBaseModProfileModule
     {
         $CNF = &$this->_oConfig->CNF;
 
-        if(bx_is_api()) {
-            $iProfileId = bx_process_input(bx_get('profile_id'), BX_DATA_INT);
-            if(!$iProfileId)
-                return [];
-
-            return bx_srv('system', 'browse_members', [
-                'profile_id' => $iProfileId,
-                'connection' => $CNF['OBJECT_CONNECTIONS'],
-            ], 'TemplServiceProfiles');
-        }
-
         $oGrid = BxDolGrid::getObjectInstance($CNF['OBJECT_GRID_CONNECTIONS']);
         if(!$oGrid)
             return false;
+        
+        if($this->_bIsApi){
+            return [
+                bx_api_get_block('grid', $oGrid->getCodeAPI())
+            ];
+            
+        }
 
         return $oGrid->getCode();
     }

+ 1 - 0
template/scripts/BxBaseGrid.php

@@ -300,6 +300,7 @@ class BxBaseGrid extends BxDolGrid
      */
     public function getCodeAPI()
     {
+        $this->_replaceMarkers ();
         $sFilter = bx_unicode_urldecode(bx_process_input(bx_get($this->_aOptions['filter_get'])));
         $sOrderField = bx_unicode_urldecode(bx_process_input(bx_get($this->_aOptions['order_get_field'])));
         $sOrderDir = 0 === strcasecmp('desc', bx_get($this->_aOptions['order_get_dir'])) ? 'DESC' : 'ASC';