Sfoglia il codice sorgente

Ticket #4558 - Build-in API support: Timeline.

AntonLV 1 anno fa
parent
commit
f9c9783ba2

+ 11 - 7
modules/boonex/timeline/classes/BxTimelineModule.php

@@ -718,19 +718,23 @@ class BxTimelineModule extends BxBaseModNotificationsModule implements iBxDolCon
             'dynamic_mode' => true
         ], $aBrowseParams));
     }
-    
+
     public function serviceGetEditForm($iId)
     {
-        $aForm = $this->getFormEdit($iId)['form'];
-        $aForm['inputs']['tlb_do_submit'] = $aForm['inputs']['controls'][0];
-        unset($aForm['inputs']['controls']);
+        $aResult = [];
+
+        if(($aForm = $this->getFormEdit($iId)) && isset($aForm['form'])) {
+            $aForm['form']['inputs']['tlb_do_submit'] = $aForm['form']['inputs']['controls'][0];
+            unset($aForm['form']['inputs']['controls']);
+            
+            $aResult['form'] = ['id' => 'bx_timeline', 'type' => 'form', 'name' => 'feed_edit', 'data' => $aForm['form'], 'request' => ['immutable' => true]];
+        }
 
-        $aRv['form'] = ['id' => 'bx_timeline', 'type' => 'form', 'name' => 'feed_edit', 'data' => $aForm, 'request' => ['immutable' => true]];
         $aItemData = $this->getItemData($iId);
         if(is_array($aItemData) && !empty($aItemData['event']))
-            $aRv['item'] = $this->_oTemplate->getPostApi($aItemData['event']);
+            $aResult['item'] = $this->_oTemplate->getPostApi($aItemData['event']);
 
-        return $aRv;
+        return $aResult;
     }
 
     public function actionGetComments()

+ 3 - 4
modules/boonex/timeline/classes/BxTimelinePageViewItem.php

@@ -31,7 +31,7 @@ class BxTimelinePageViewItem extends BxTemplPage
         $this->_iItemId = $iItemId;
         $this->_aItemData = $this->_oModule->getItemData($this->_iItemId);
     }
-    
+
     protected function _isAvailablePage ($a)
     {
         if (!$this->_iItemId || $this->_aItemData['code'] == 1)
@@ -39,12 +39,12 @@ class BxTimelinePageViewItem extends BxTemplPage
 
         return parent::_isAvailablePage($a);
     }
-    
+
     protected function _isVisiblePage ($a)
     {
         $CNF = &$this->_oModule->_oConfig->CNF;
 
-        if($this->_aItemData['code'] == 2)
+        if(!$this->_iItemId || $this->_aItemData['code'] == 2)
             return false;
 
         $oCf = BxDolContentFilter::getInstance();
@@ -53,7 +53,6 @@ class BxTimelinePageViewItem extends BxTemplPage
 
         return parent::_isVisiblePage($a);
     }
-    
 
     public function getCode()
     {