/** * @param ModuleTopic_EntityTopicRead $oTopicRead * * @return int */ public function UpdateTopicRead($oTopicRead) { $xResult = $this->oMapper->UpdateTopicRead($oTopicRead); E::ModuleCache()->Delete("topic_read_{$oTopicRead->getTopicId()}_{$oTopicRead->getUserId()}"); E::ModuleCache()->CleanByTags(array("topic_read_user_{$oTopicRead->getUserId()}")); return $xResult; }
/** * Обновляем/устанавливаем дату прочтения топика, если читаем его первый раз то добавляем * * @param ModuleTopic_EntityTopicRead $oTopicRead Объект факта чтения топика * @return bool */ public function SetTopicRead(ModuleTopic_EntityTopicRead $oTopicRead) { if ($this->GetTopicRead($oTopicRead->getTopicId(), $oTopicRead->getUserId())) { $this->Cache_Delete("topic_read_{$oTopicRead->getTopicId()}_{$oTopicRead->getUserId()}"); $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("topic_read_user_{$oTopicRead->getUserId()}")); $this->oMapperTopic->UpdateTopicRead($oTopicRead); } else { $this->Cache_Delete("topic_read_{$oTopicRead->getTopicId()}_{$oTopicRead->getUserId()}"); $this->Cache_Clean(Zend_Cache::CLEANING_MODE_MATCHING_TAG, array("topic_read_user_{$oTopicRead->getUserId()}")); $this->oMapperTopic->AddTopicRead($oTopicRead); } return true; }