Ver Fonte

#4558 - Build-in API support enhancement (bento)

roman.lesnikov@gmail.com há 2 anos atrás
pai
commit
adb8013b38

+ 10 - 0
template/scripts/BxBasePage.php

@@ -1109,6 +1109,16 @@ class BxBasePage extends BxDolPage
             $sData = $this->_oQuery->getPageBlockData($iBlockId, $iContentId, $sContentModule);
             $aData = !empty($sData) ? json_decode($sData, true) : [];
             
+            $oEmbed = BxDolEmbed::getObjectInstance('sys_system');
+                
+            foreach ($aData as &$j) {
+                foreach ($j as &$k) {
+                    if ($k['type'] == 'link'){
+                        $k['content_data'] = $oEmbed->getData($k['content'], '');
+                    }
+                }
+            }
+            
             return [bx_api_get_block('bento_grid', [
                 'title' => _t($aBlock['title']), 
                 'content' => $aData

+ 6 - 0
template/scripts/BxBaseServicePages.php

@@ -124,6 +124,12 @@ class BxBaseServicePages extends BxDol
         $oDb = new BxDolPageQuery([]);
         return $oDb->setPageBlockData($iBlockId, $iContentId, $sContentModule, $sData);
     }
+    
+    public function serviceGetUrlInfo($sUrl)
+    {
+        $oEmbed = BxDolEmbed::getObjectInstance('sys_system');
+        return $oEmbed->getData($sUrl, '');
+    }
 }
 
 /** @} */

+ 1 - 0
template/scripts/BxBaseServices.php

@@ -51,6 +51,7 @@ class BxBaseServices extends BxDol implements iBxDolProfileService
 
             'GetPageBlockData' => 'BxBaseServicePages',
             'SetPageBlockData' => 'BxBaseServicePages',
+            'GetUrlInfo' => 'BxBaseServicePages',
 
             'CreateAccountForm' => 'BxBaseServiceAccount',
             'AccountSettingsEmail' => 'BxBaseServiceAccount',