Explorar o código

Ticket #3654 - The pre-moderated content doesn't appear in the Notifications...

AntonLV %!s(int64=4) %!d(string=hai) anos
pai
achega
7fc36c8246
Modificáronse 1 ficheiros con 25 adicións e 0 borrados
  1. 25 0
      modules/base/text/classes/BxBaseModTextGridAdministration.php

+ 25 - 0
modules/base/text/classes/BxBaseModTextGridAdministration.php

@@ -63,6 +63,31 @@ class BxBaseModTextGridAdministration extends BxBaseModGeneralGridAdministration
         return 'active' == $mixedState ? true : false;
     }
 
+    protected function _enable ($mixedId, $isChecked)
+    {
+        $CNF = &$this->_oModule->_oConfig->CNF;
+
+        $bStatusAdmin = $this->_sStatusField == $CNF['FIELD_STATUS_ADMIN'];
+
+        $sStatusBefore = '';
+        if($bStatusAdmin) {
+            $aContentInfo = $this->_oModule->_oDb->getContentInfoById($mixedId);
+            if(!empty($aContentInfo) && is_array($aContentInfo))
+                $sStatusBefore = $aContentInfo[$this->_sStatusField];
+        }
+
+        $mixedResult = parent::_enable($mixedId, $isChecked);
+        if((int)$mixedResult > 0) {
+            if($bStatusAdmin && $sStatusBefore == BX_BASE_MOD_TEXT_STATUS_PENDING) {
+                $aContentInfo = $this->_oModule->_oDb->getContentInfoById($mixedId);
+                if($aContentInfo[$this->_sStatusField] == BX_BASE_MOD_TEXT_STATUS_ACTIVE)
+                    $this->_oModule->onApprove($aContentInfo);
+            }
+        }
+
+        return $mixedResult;
+    }
+
     protected function _getDataSql($sFilter, $sOrderField, $sOrderDir, $iStart, $iPerPage)
     {
         $CNF = &$this->_oModule->_oConfig->CNF;