/** * Обновляем/устанавливаем дату прочтения топика, если читаем его первый раз то добавляем * * @param ModuleTopic_EntityTopicRead $oTopicRead Объект факта чтения топика * * @return bool */ public function SetTopicRead($oTopicRead) { if ($this->GetTopicRead($oTopicRead->getTopicId(), $oTopicRead->getUserId())) { return $this->UpdateTopicRead($oTopicRead); } else { return $this->AddTopicRead($oTopicRead); } }
/** * Устанавливаем дату прочтения топика * * @param ModuleTopic_EntityTopicRead $oTopicRead Объект факта чтения топика * @return bool */ public function AddTopicRead(ModuleTopic_EntityTopicRead $oTopicRead) { $sql = "INSERT INTO " . Config::Get('db.table.topic_read') . "\n\t\t\tSET \n\t\t\t\tcomment_count_last = ? ,\n\t\t\t\tcomment_id_last = ? ,\n\t\t\t\tdate_read = ? ,\n\t\t\t\ttopic_id = ? ,\t\t\t\t\t\t\t\n\t\t\t\tuser_id = ? \n\t\t"; return $this->oDb->query($sql, $oTopicRead->getCommentCountLast(), $oTopicRead->getCommentIdLast(), $oTopicRead->getDateRead(), $oTopicRead->getTopicId(), $oTopicRead->getUserId()); }
/** * Обновляем/устанавливаем дату прочтения топика, если читаем его первый раз то добавляем * * @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; }
/** * Устанавливаем дату прочтения топика * * @param ModuleTopic_EntityTopicRead $oTopicRead Объект факта чтения топика * * @return bool */ public function AddTopicRead(ModuleTopic_EntityTopicRead $oTopicRead) { $sql = "\n INSERT INTO ?_topic_read\n (\n comment_count_last,\n comment_id_last,\n date_read,\n topic_id,\n user_id\n )\n VALUES (\n ? ,\n ? ,\n ? ,\n ? ,\n ?\n )\n "; return $this->oDb->query($sql, $oTopicRead->getCommentCountLast(), $oTopicRead->getCommentIdLast(), $oTopicRead->getDateRead(), $oTopicRead->getTopicId(), $oTopicRead->getUserId()) !== false; }