/** * Обновляет статус у коммента - delete или publish * * @param ModuleComment_EntityComment $oComment Объект комментария * @return bool */ public function UpdateCommentStatus(ModuleComment_EntityComment $oComment) { if ($this->oMapper->UpdateComment($oComment)) { /** * Если комментарий удаляется, удаляем его из прямого эфира */ if ($oComment->getDelete()) { $this->DeleteCommentOnlineByArrayId($oComment->getId(), $oComment->getTargetType()); } /** * Обновляем избранное */ $this->Favourite_SetFavouriteTargetPublish($oComment->getId(), 'comment', !$oComment->getDelete()); /** * Чистим зависимые кеши */ if (Config::Get('sys.cache.solid')) { $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("comment_update")); } $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("comment_update_status_{$oComment->getTargetType()}")); $this->Cache_Delete("comment_{$oComment->getId()}"); return true; } return false; }
/** * Обновляет статус у коммента - delete или publish * * @param ModuleComment_EntityComment $oComment Объект комментария * * @return bool */ public function UpdateCommentStatus(ModuleComment_EntityComment $oComment) { if ($this->oMapper->UpdateComment($oComment)) { // * Если комментарий удаляется, удаляем его из прямого эфира if ($oComment->getDelete()) { $this->DeleteCommentOnlineByArrayId($oComment->getId(), $oComment->getTargetType()); } // * Обновляем избранное E::ModuleFavourite()->SetFavouriteTargetPublish($oComment->getId(), 'comment', !$oComment->getDelete()); // * Чистим зависимые кеши if (Config::Get('sys.cache.solid')) { E::ModuleCache()->CleanByTags(array("comment_update")); } E::ModuleCache()->CleanByTags(array("comment_update_status_{$oComment->getTargetType()}")); E::ModuleCache()->Delete("comment_{$oComment->getId()}"); return true; } return false; }