From f78bdc6c6c6bfea2c375543f8e7c202ab9c8d5cb Mon Sep 17 00:00:00 2001 From: hide_d Date: Sat, 31 Mar 2018 22:42:50 +0900 Subject: [PATCH] =?UTF-8?q?requireLogin=EC=9D=98=20=EB=8F=99=EC=9E=91=20?= =?UTF-8?q?=EB=B0=A9=EC=8B=9D=EC=9D=84=20=EB=B3=80=EA=B2=BD,=20path?= =?UTF-8?q?=EC=97=90=20null=EC=9D=B4=20=EC=A7=80=EC=A0=95=EB=90=98?= =?UTF-8?q?=EB=A9=B4=20json=20=EB=B0=98=ED=99=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- i_entrance/j_get_userlist.php | 2 +- i_entrance/j_server_change_status.php | 2 +- src/sammo/Session.php | 16 +++++++++++++--- twe/j_get_scenario_map.php | 2 +- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/i_entrance/j_get_userlist.php b/i_entrance/j_get_userlist.php index ba59aade..83e504c2 100644 --- a/i_entrance/j_get_userlist.php +++ b/i_entrance/j_get_userlist.php @@ -3,7 +3,7 @@ namespace sammo; require_once('_common.php'); -$session = Session::requireLogin(); +$session = Session::requireLogin(null); $db = RootDB::db(); $session->setReadOnly(); diff --git a/i_entrance/j_server_change_status.php b/i_entrance/j_server_change_status.php index 13b5f2a5..a86d3a32 100644 --- a/i_entrance/j_server_change_status.php +++ b/i_entrance/j_server_change_status.php @@ -3,7 +3,7 @@ namespace sammo; require_once('_common.php'); -$session = Session::requireLogin(); +$session = Session::requireLogin(null); diff --git a/src/sammo/Session.php b/src/sammo/Session.php index fa0ab286..f2c7c28c 100644 --- a/src/sammo/Session.php +++ b/src/sammo/Session.php @@ -42,13 +42,23 @@ class Session { /** * @return \sammo\Session */ - public static function requireLogin(string $path = ROOT){ + public static function requireLogin($movePath = ROOT){ $session = Session::Instance(); - if(!$session->isLoggedIn()){ + if($session->isLoggedIn()){ + return $session; + } + + $session->setReadOnly(); + + if(is_string($path)){ header('Location:'.$path); die(); } - return $session; + + Json::die([ + 'result'=>false, + 'reason'=>'로그인이 필요합니다.' + ]); } public function __construct() { diff --git a/twe/j_get_scenario_map.php b/twe/j_get_scenario_map.php index fd8fe7f1..4c76507f 100644 --- a/twe/j_get_scenario_map.php +++ b/twe/j_get_scenario_map.php @@ -4,7 +4,7 @@ namespace sammo; require(__DIR__.'/../f_func/config.php'); -$session = Session::requireLogin(); +$session = Session::requireLogin(null); if($session->userGrade < 5){ Json::die([