add flag cache files

This commit is contained in:
BJRambo 2016-03-19 15:55:06 +09:00
parent 91f42df55d
commit 3f87cba257
2 changed files with 39 additions and 2 deletions

View file

@ -653,7 +653,8 @@ class ncenterliteController extends ncenterlite
$oNcenterliteModel = getModel('ncenterlite');
// 알림 목록 가져오기
$_output = $oNcenterliteModel->getMyNotifyList();
$logged_info = Context::get('logged_info');
$_output = $oNcenterliteModel->getMyNotifyList($logged_info->member_srl);
// 알림 메시지가 없어도 항상 표시하게 하려면 이 줄을 제거 또는 주석 처리하세요.
if(!$_output->data)
{
@ -966,9 +967,34 @@ class ncenterliteController extends ncenterlite
}
}
$flag_path = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/' . getNumberingPath($args->target_member_srl) . $args->target_member_srl . '.php';
if($flag_path)
{
//remove flag files
FileHandler::removeFile($flag_path);
}
return $output;
}
public static function updateFlagFile($member_srl = null, $output)
{
if(!$member_srl)
{
return;
}
$flag_path = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/' . getNumberingPath($member_srl) . $member_srl . '.php';
if(file_exists($flag_path))
{
return;
}
FileHandler::makeDir(\RX_BASEDIR . 'files/cache/ncenterlite/new_notify' . getNumberingPath($member_srl));
$buff = "<?php return unserialize(" . var_export(serialize($output), true) . ");\n";
FileHandler::writeFile($flag_path, $buff);
}
/**
* @brief 노티 ID 반환
**/

View file

@ -202,6 +202,11 @@ class ncenterliteModel extends ncenterlite
}
$output->data = $list;
if($page <= 1)
{
$oNcenterliteController = getController('ncenterlite');
$oNcenterliteController->updateFlagFile($member_srl, $output);
}
return $output;
}
@ -236,12 +241,18 @@ class ncenterliteModel extends ncenterlite
$member_srl = $logged_info->member_srl;
}
$flag_path = \RX_BASEDIR . 'files/cache/ncenterlite/new_notify/' . getNumberingPath($member_srl) . $member_srl . '.php';
if(FileHandler::exists($flag_path) && $page <= 1)
{
$output = require_once $flag_path;
return $output;
}
$args = new stdClass();
$args->member_srl = $member_srl;
$args->page = $page ? $page : 1;
if($readed) $args->readed = $readed;
$output = executeQueryArray('ncenterlite.getNotifyList', $args);
if(!$output->data) $output->data = array();
return $output;