/** * Получает топики по рейтингу и дате * * @param string $sDate Дата * @param int $iLimit Количество * @return array */ public function GetTopicsRatingByDate($sDate, $iLimit = 20) { /** * Получаем список блогов, топики которых нужно исключить из выдачи */ $aCloseBlogs = $this->oUserCurrent ? $this->Blog_GetInaccessibleBlogsByUser($this->oUserCurrent) : $this->Blog_GetInaccessibleBlogsByUser(); $s = serialize($aCloseBlogs); if (false === ($data = $this->Cache_Get("topic_rating_{$sDate}_{$iLimit}_{$s}"))) { $data = $this->oMapperTopic->GetTopicsRatingByDate($sDate, $iLimit, $aCloseBlogs); $this->Cache_Set($data, "topic_rating_{$sDate}_{$iLimit}_{$s}", array('topic_update'), 60 * 60 * 24 * 2); } $data = $this->GetTopicsAdditionalData($data); return $data; }
/** * Получает топики по рейтингу и дате * * @param string $sDate Дата * @param int $iLimit Количество * * @return array */ public function GetTopicsRatingByDate($sDate, $iLimit = 20) { /** * Получаем список блогов, топики которых нужно исключить из выдачи */ $aCloseBlogs = $this->oUserCurrent ? E::ModuleBlog()->GetInaccessibleBlogsByUser($this->oUserCurrent) : E::ModuleBlog()->GetInaccessibleBlogsByUser(); $sCacheKey = "topic_rating_{$sDate}_{$iLimit}_" . serialize($aCloseBlogs); if (false === ($data = E::ModuleCache()->Get($sCacheKey))) { $data = $this->oMapper->GetTopicsRatingByDate($sDate, $iLimit, $aCloseBlogs); E::ModuleCache()->Set($data, $sCacheKey, array('topic_update'), 'P3D'); } if ($data) { $data = $this->GetTopicsAdditionalData($data); } return $data; }