@@ -163,13 +163,15 @@ class BxDolCmtsReviews extends BxTemplCmts
protected function _triggerComment()
{
- $mixedResult = parent::_triggerComment();
- if($mixedResult === false)
- return $mixedResult;
+ if(!$this->_aSystem['trigger_table'])
+ return false;
$iId = $this->getId();
+ if(!$iId)
+
$aStats = $this->_oQuery->getReviewsStats($iId);
- return $this->_oQuery->updateTriggerTableAvg($iId, (float)$aStats['avg']);
+ return $this->_oQuery->updateTriggerTable($iId, (int)$aStats['count']) !== false && $this->_oQuery->updateTriggerTableAvg($iId, (float)$aStats['avg']) !== false;
}
@@ -38,9 +38,10 @@ class BxDolCmtsReviewsQuery extends BxDolCmtsQuery
public function getReviewsStats ($iId, $iCmtVParentId = -1, $iAuthorId = 0, $sFilter = '')
$aBindings = array(
+ 'cmt_parent_id' => 0,
'cmt_object_id' => $iId
);
- $sWhereClause = " AND `{$this->_sTable}`.`cmt_object_id` = :cmt_object_id";
+ $sWhereClause = " AND `{$this->_sTable}`.`cmt_parent_id` = :cmt_parent_id AND `{$this->_sTable}`.`cmt_object_id` = :cmt_object_id";
if((int)$iCmtVParentId >= 0) {
$aBindings['cmt_vparent_id'] = $iCmtVParentId;