mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-05-22 05:15:29 +09:00
Fix incorrect caching of notification list
- readed=N 조건을 붙이지 않은 알림 목록 조회 요청도 캐싱되는 문제 수정 - "내 알림 목록" 화면에서는 레이아웃 등 다른 곳에서 불러오는 알림도 getMyDispNotifyList로 처리되는 문제 수정
This commit is contained in:
parent
33077da47c
commit
4bab8c4961
2 changed files with 9 additions and 11 deletions
|
|
@ -167,7 +167,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
return $output;
|
return $output;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getMyNotifyList($member_srl=null, $page=1, $readed='N')
|
function getMyNotifyList($member_srl = null, $page = 1, $readed = 'N', $disp = false)
|
||||||
{
|
{
|
||||||
if(!$member_srl && !Context::get('is_logged'))
|
if(!$member_srl && !Context::get('is_logged'))
|
||||||
{
|
{
|
||||||
|
|
@ -179,8 +179,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
$member_srl = Context::get('logged_info')->member_srl;
|
$member_srl = Context::get('logged_info')->member_srl;
|
||||||
}
|
}
|
||||||
|
|
||||||
$act = Context::get('act');
|
if($disp)
|
||||||
if($act=='dispNcenterliteNotifyList')
|
|
||||||
{
|
{
|
||||||
$output = $this->getMyDispNotifyList($member_srl);
|
$output = $this->getMyDispNotifyList($member_srl);
|
||||||
}
|
}
|
||||||
|
|
@ -241,7 +240,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
$this->add('useProfileImage', $memberConfig->profile_image);
|
$this->add('useProfileImage', $memberConfig->profile_image);
|
||||||
}
|
}
|
||||||
|
|
||||||
function _getMyNotifyList($member_srl=null, $page=1, $readed='N')
|
function _getMyNotifyList($member_srl = null, $page = 1, $readed = 'N')
|
||||||
{
|
{
|
||||||
$oNcenterliteController = getController('ncenterlite');
|
$oNcenterliteController = getController('ncenterlite');
|
||||||
|
|
||||||
|
|
@ -257,7 +256,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
|
|
||||||
$cache_key = sprintf('ncenterlite:notify_list:%d', $member_srl);
|
$cache_key = sprintf('ncenterlite:notify_list:%d', $member_srl);
|
||||||
|
|
||||||
if ($page <= 1)
|
if ($page <= 1 && $readed == 'N')
|
||||||
{
|
{
|
||||||
$output = Rhymix\Framework\Cache::get($cache_key);
|
$output = Rhymix\Framework\Cache::get($cache_key);
|
||||||
if($output !== null)
|
if($output !== null)
|
||||||
|
|
@ -267,7 +266,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
}
|
}
|
||||||
|
|
||||||
$flag_path = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/' . getNumberingPath($member_srl) . $member_srl . '.php';
|
$flag_path = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/' . getNumberingPath($member_srl) . $member_srl . '.php';
|
||||||
if(FileHandler::exists($flag_path) && $page <= 1)
|
if($page <= 1 && $readed == 'N' && FileHandler::exists($flag_path))
|
||||||
{
|
{
|
||||||
$deleteFlagPath = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/delete_date.php';
|
$deleteFlagPath = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/delete_date.php';
|
||||||
|
|
||||||
|
|
@ -307,14 +306,14 @@ class ncenterliteModel extends ncenterlite
|
||||||
|
|
||||||
if (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
if (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
||||||
{
|
{
|
||||||
if($page <= 1)
|
if($page <= 1 && $readed == 'N')
|
||||||
{
|
{
|
||||||
Rhymix\Framework\Cache::set($cache_key, $output);
|
Rhymix\Framework\Cache::set($cache_key, $output);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if($page <= 1)
|
if($page <= 1 && $readed == 'N')
|
||||||
{
|
{
|
||||||
$oNcenterliteController->updateFlagFile($member_srl, $output);
|
$oNcenterliteController->updateFlagFile($member_srl, $output);
|
||||||
}
|
}
|
||||||
|
|
@ -332,7 +331,7 @@ class ncenterliteModel extends ncenterlite
|
||||||
}
|
}
|
||||||
|
|
||||||
$args = new stdClass();
|
$args = new stdClass();
|
||||||
$args->page = Context::get('page');
|
$args->page = max(1, intval(Context::get('page')));
|
||||||
$args->list_count = '20';
|
$args->list_count = '20';
|
||||||
$args->page_count = '10';
|
$args->page_count = '10';
|
||||||
$args->member_srl = $member_srl;
|
$args->member_srl = $member_srl;
|
||||||
|
|
@ -390,7 +389,6 @@ class ncenterliteModel extends ncenterlite
|
||||||
elseif (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
elseif (Rhymix\Framework\Cache::getDriverName() !== 'dummy')
|
||||||
{
|
{
|
||||||
$output = $this->_getMyNotifyList($member_srl);
|
$output = $this->_getMyNotifyList($member_srl);
|
||||||
Rhymix\Framework\Cache::set($cache_key, $output);
|
|
||||||
return $output->total_count;
|
return $output->total_count;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -28,7 +28,7 @@ class ncenterliteView extends ncenterlite
|
||||||
{
|
{
|
||||||
$oNcenterliteModel = getModel('ncenterlite');
|
$oNcenterliteModel = getModel('ncenterlite');
|
||||||
|
|
||||||
$output = $oNcenterliteModel->getMyNotifyList();
|
$output = $oNcenterliteModel->getMyNotifyList($this->user->member_srl, 1, null, true);
|
||||||
|
|
||||||
Context::set('total_count', $output->page_navigation->total_count);
|
Context::set('total_count', $output->page_navigation->total_count);
|
||||||
Context::set('total_page', $output->page_navigation->total_page);
|
Context::set('total_page', $output->page_navigation->total_page);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue