/** * ログインしていない場合にログイン処理を実行する */ private function login_required() { $selected_pattern = $this->get_selected_pattern(); if (!$this->is_user_logged_in() && array_key_exists('action', $selected_pattern) && strpos($selected_pattern['action'], '::do_login') === false) { if ($this->has_object_plugin('before_login_required')) { /** * ログイン処理の前処理 * @param \ebi\flow\Request $arg1 */ $this->call_object_plugin_funcs('before_login_required', $this); } if (strpos($selected_pattern['action'], '::do_logout') === false) { $this->sessions('logged_in_redirect_to', \ebi\Request::current_url() . \ebi\Request::request_string(true)); } $req = new \ebi\Request(); $this->sess->vars(__CLASS__ . '_login_vars', [time(), $req->ar_vars()]); if (array_key_exists('@', $selected_pattern)) { $this->set_before_redirect('do_login'); } else { $this->set_before_redirect('login'); } } }