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([