Bläddra i källkod

Ticket #4558 - Build-in API support: Commented content block.

AntonLV 2 år sedan
förälder
incheckning
269beb0978

+ 1 - 0
install/sql/system.sql

@@ -6120,6 +6120,7 @@ INSERT INTO `sys_pages_blocks` (`object`, `cell_id`, `module`, `title_system`, `
 ('sys_std_dashboard', 2, 'system', '', '_sys_page_block_title_std_dash_queues', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:16:"get_block_queues";s:6:"params";a:0:{}s:5:"class";s:20:"TemplStudioDashboard";}', 0, 0, 1, 3);
 ('sys_std_dashboard', 2, 'system', '', '_sys_page_block_title_std_dash_queues', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:16:"get_block_queues";s:6:"params";a:0:{}s:5:"class";s:20:"TemplStudioDashboard";}', 0, 0, 1, 3);
 
 
 INSERT INTO `sys_pages_blocks` (`object`, `cell_id`, `module`, `title_system`, `title`, `designbox_id`, `tabs`, `async`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `active`, `active_api`, `order`) VALUES
 INSERT INTO `sys_pages_blocks` (`object`, `cell_id`, `module`, `title_system`, `title`, `designbox_id`, `tabs`, `async`, `visible_for_levels`, `type`, `content`, `deletable`, `copyable`, `active`, `active_api`, `order`) VALUES
+('sys_cmts_view', 1, 'system', '_sys_page_block_title_system_cmts_view_content', '_cmt_page_view_title_content', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:17:"get_block_content";s:6:"params";a:3:{i:0;s:8:"{system}";i:1;s:11:"{object_id}";i:2;s:12:"{comment_id}";}s:5:"class";s:17:"TemplCmtsServices";}', 0, 0, 1, 1, 0),
 ('sys_cmts_view', 1, 'system', '_sys_page_block_title_system_cmts_view_author', '_cmt_page_view_title_author', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:16:"get_block_author";s:6:"params";a:3:{i:0;s:8:"{system}";i:1;s:11:"{object_id}";i:2;s:12:"{comment_id}";}s:5:"class";s:17:"TemplCmtsServices";}', 0, 0, 0, 1, 1),
 ('sys_cmts_view', 1, 'system', '_sys_page_block_title_system_cmts_view_author', '_cmt_page_view_title_author', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:16:"get_block_author";s:6:"params";a:3:{i:0;s:8:"{system}";i:1;s:11:"{object_id}";i:2;s:12:"{comment_id}";}s:5:"class";s:17:"TemplCmtsServices";}', 0, 0, 0, 1, 1),
 ('sys_cmts_view', 1, 'system', '_sys_page_block_title_system_cmts_view', '_cmt_page_view_title', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:14:"get_block_view";s:6:"params";a:3:{i:0;s:8:"{system}";i:1;s:11:"{object_id}";i:2;s:12:"{comment_id}";}s:5:"class";s:17:"TemplCmtsServices";}', 0, 0, 1, 1, 2);
 ('sys_cmts_view', 1, 'system', '_sys_page_block_title_system_cmts_view', '_cmt_page_view_title', 11, 0, 0, 2147483647, 'service', 'a:4:{s:6:"module";s:6:"system";s:6:"method";s:14:"get_block_view";s:6:"params";a:3:{i:0;s:8:"{system}";i:1;s:11:"{object_id}";i:2;s:12:"{comment_id}";}s:5:"class";s:17:"TemplCmtsServices";}', 0, 0, 1, 1, 2);
 
 

+ 2 - 0
modules/boonex/english/data/langs/system/en.xml

@@ -2019,6 +2019,7 @@
 	<string name="_cmt_page_view_header"><![CDATA[Comment to '{object_title}']]></string>
 	<string name="_cmt_page_view_header"><![CDATA[Comment to '{object_title}']]></string>
 	<string name="_cmt_page_view_title"><![CDATA[Comment to <a href="{object_url}">{object_title}</a>]]></string>
 	<string name="_cmt_page_view_title"><![CDATA[Comment to <a href="{object_url}">{object_title}</a>]]></string>
         <string name="_cmt_page_view_title_author"><![CDATA[Comment author]]></string>
         <string name="_cmt_page_view_title_author"><![CDATA[Comment author]]></string>
+        <string name="_cmt_page_view_title_content"><![CDATA[Comment content]]></string>
 	<string name="_cmt_download_attached_file"><![CDATA[Download file]]></string>
 	<string name="_cmt_download_attached_file"><![CDATA[Download file]]></string>
 	<string name="_cmt_view_attached_image"><![CDATA[View image]]></string>
 	<string name="_cmt_view_attached_image"><![CDATA[View image]]></string>
 	<string name="_cmt_load_more_comments_head"><![CDATA[See newer comments...]]></string>
 	<string name="_cmt_load_more_comments_head"><![CDATA[See newer comments...]]></string>
@@ -3554,6 +3555,7 @@ If it is not enabled then please consider implement this optimization, since it
     <string name="_sys_page_block_title_dashboard_reports"><![CDATA[Dashboard - Reports]]></string>
     <string name="_sys_page_block_title_dashboard_reports"><![CDATA[Dashboard - Reports]]></string>
     <string name="_sys_page_block_title_system_cmts_view"><![CDATA[View Comment]]></string>
     <string name="_sys_page_block_title_system_cmts_view"><![CDATA[View Comment]]></string>
     <string name="_sys_page_block_title_system_cmts_view_author"><![CDATA[Comment Author]]></string>
     <string name="_sys_page_block_title_system_cmts_view_author"><![CDATA[Comment Author]]></string>
+    <string name="_sys_page_block_title_system_cmts_view_content"><![CDATA[Commented Content]]></string>
     <string name="_sys_page_block_title_system_cmts_administration"><![CDATA[Manage Comments]]></string>
     <string name="_sys_page_block_title_system_cmts_administration"><![CDATA[Manage Comments]]></string>
     <string name="_sys_page_block_title_system_audit_administration"><![CDATA[Audit]]></string>
     <string name="_sys_page_block_title_system_audit_administration"><![CDATA[Audit]]></string>
     <string name="_sys_page_block_title_logout"><![CDATA[Log out]]></string>
     <string name="_sys_page_block_title_logout"><![CDATA[Log out]]></string>

+ 2 - 0
modules/boonex/russian/data/langs/system/ru.xml

@@ -1995,6 +1995,7 @@
 	<string name="_cmt_page_view_header"><![CDATA[Комментарий к '{object_title}']]></string>
 	<string name="_cmt_page_view_header"><![CDATA[Комментарий к '{object_title}']]></string>
 	<string name="_cmt_page_view_title"><![CDATA[Комментарий к <a href="{object_url}">{object_title}</a>]]></string>
 	<string name="_cmt_page_view_title"><![CDATA[Комментарий к <a href="{object_url}">{object_title}</a>]]></string>
         <string name="_cmt_page_view_title_author"><![CDATA[Автор комментария]]></string>
         <string name="_cmt_page_view_title_author"><![CDATA[Автор комментария]]></string>
+        <string name="_cmt_page_view_title_content"><![CDATA[Прокомментированный контент]]></string>
 	<string name="_cmt_download_attached_file"><![CDATA[Скачать файл]]></string>
 	<string name="_cmt_download_attached_file"><![CDATA[Скачать файл]]></string>
 	<string name="_cmt_view_attached_image"><![CDATA[Просмотреть изображение]]></string>
 	<string name="_cmt_view_attached_image"><![CDATA[Просмотреть изображение]]></string>
 	<string name="_cmt_load_more_comments_head"><![CDATA[Увидеть новые комментарии...]]></string>
 	<string name="_cmt_load_more_comments_head"><![CDATA[Увидеть новые комментарии...]]></string>
@@ -3516,6 +3517,7 @@
         <string name="_sys_page_block_title_dashboard_reports"><![CDATA[Панель - жалобы]]></string>
         <string name="_sys_page_block_title_dashboard_reports"><![CDATA[Панель - жалобы]]></string>
         <string name="_sys_page_block_title_system_cmts_view"><![CDATA[Просмотр комментария]]></string>
         <string name="_sys_page_block_title_system_cmts_view"><![CDATA[Просмотр комментария]]></string>
         <string name="_sys_page_block_title_system_cmts_view_author"><![CDATA[Автор комментария]]></string>
         <string name="_sys_page_block_title_system_cmts_view_author"><![CDATA[Автор комментария]]></string>
+        <string name="_sys_page_block_title_system_cmts_view_content"><![CDATA[Прокомментированный контент]]></string>
 	<string name="_sys_page_block_title_system_cmts_administration"><![CDATA[Управление комментариями]]></string>
 	<string name="_sys_page_block_title_system_cmts_administration"><![CDATA[Управление комментариями]]></string>
         <string name="_sys_page_block_title_system_audit_administration"><![CDATA[Аудит]]></string>
         <string name="_sys_page_block_title_system_audit_administration"><![CDATA[Аудит]]></string>
     <string name="_sys_page_block_title_logout"><![CDATA[Выход]]></string>
     <string name="_sys_page_block_title_logout"><![CDATA[Выход]]></string>

+ 32 - 1
template/scripts/BxBaseCmtsServices.php

@@ -29,7 +29,38 @@ class BxBaseCmtsServices extends BxDol
 
 
         return $oCmts->serviceGetAuthor((int)$aCmt['cmt_id']);
         return $oCmts->serviceGetAuthor((int)$aCmt['cmt_id']);
     }
     }
-    
+
+    public function serviceGetBlockContent($sSystem = '', $iObjectId = 0, $iCommentId = 0)
+    {
+        $bIsApi = bx_is_api();
+
+        if(empty($sSystem) && ($sSystem = bx_get('sys')) !== false)
+            $sSystem = bx_process_input($sSystem);
+
+        if(empty($iObjectId) && ($iObjectId = bx_get('id')) !== false)
+            $iObjectId = bx_process_input($iObjectId, BX_DATA_INT);
+
+        if(empty($iCommentId) && ($iCommentId = bx_get('cmt_id')) !== false)
+            $iCommentId = bx_process_input($iCommentId, BX_DATA_INT);
+
+        $oCmts = BxDolCmts::getObjectInstance($sSystem, $iObjectId, true);
+        if(!$oCmts || !$oCmts->isEnabled())
+            return $bIsApi ? [] : '';
+
+        if($bIsApi) {
+            $aSystem = $oCmts->getSystemInfo();
+
+            return [bx_api_get_block('comment_content', [
+                'author' => $oCmts->getObjectAuthorId(),
+                'title' => $oCmts->getObjectTitle(),
+                'text' => bx_is_srv($aSystem['module'], 'get_text') ?  bx_srv($aSystem['module'], 'get_text', [$iObjectId]) : '',
+                'link' => bx_api_get_relative_url($oCmts->getBaseUrl())
+            ])];
+        }
+
+        return '';
+    }
+
     public function serviceGetBlockAuthor($sSystem = '', $iObjectId = 0, $iCommentId = 0)
     public function serviceGetBlockAuthor($sSystem = '', $iObjectId = 0, $iCommentId = 0)
     {
     {
         if(empty($sSystem) && ($sSystem = bx_get('sys')) !== false)
         if(empty($sSystem) && ($sSystem = bx_get('sys')) !== false)