www.gusucode.com > baigo CMS PHP开源网站管理系统 v1.2.2源码程序 > baigocms_v1.2.2/bg_core/control/admin/ctl/logon.class.php
<?php /*----------------------------------------------------------------- !!!!警告!!!! 以下为系统文件,请勿修改 -----------------------------------------------------------------*/ //不能非法包含或直接执行 if(!defined("IN_BAIGO")) { exit("Access Denied"); } include_once(BG_PATH_FUNC . "http.func.php"); //载入 http include_once(BG_PATH_CLASS . "sso.class.php"); //载入 SSO include_once(BG_PATH_CLASS . "tpl.class.php"); //载入模板类 /*-------------用户类-------------*/ class CONTROL_LOGON { private $obj_base; private $config; private $obj_sso; private $obj_tpl; private $mdl_admin; function __construct() { //构造函数 $this->obj_base = $GLOBALS["obj_base"]; $this->config = $this->obj_base->config; $this->obj_sso = new CLASS_SSO(); //SSO $this->mdl_admin = new MODEL_ADMIN(); //设置管理员对象 $_arr_cfg["admin"] = true; $this->obj_tpl = new CLASS_TPL(BG_PATH_TPLSYS . "admin/" . $this->config["ui"], $_arr_cfg); //初始化视图对象 } /** * ctl_login function. * * @access public * @return void */ function ctl_login() { $_arr_adminLogin = $this->mdl_admin->input_login(); if ($_arr_adminLogin["alert"] != "ok") { return $_arr_adminLogin; } $_arr_ssoLogin = $this->obj_sso->sso_login($_arr_adminLogin["admin_name"], $_arr_adminLogin["admin_pass"]); //sso验证 if ($_arr_ssoLogin["alert"] != "y010401") { $_arr_ssoLogin["forward"] = $_arr_adminLogin["forward"]; return $_arr_ssoLogin; } $_arr_ssin = fn_ssin_login($_arr_ssoLogin["user_id"]); if ($_arr_ssin["alert"] != "ok") { $_arr_ssin["forward"] = $_arr_adminLogin["forward"]; return $_arr_ssin; } $_arr_sync = array(); if(defined("BG_SSO_SYNC") && BG_SSO_SYNC == "on") { $_arr_sync = $this->obj_sso->sso_sync_login($_arr_ssoLogin["user_id"]); } $_arr_tplData = array( "admin_id" => $_arr_ssoLogin["user_id"], "forward" => base64_decode($_arr_adminLogin["forward"]), "sync" => $_arr_sync, ); $this->obj_tpl->tplDisplay("login.tpl", $_arr_tplData); return array( "alert" => "y020401", ); } /** * ctl_logon function. * * @access public * @return void */ function ctl_logon() { $_str_forward = fn_getSafe(fn_get("forward"), "txt", ""); $_str_alert = fn_getSafe(fn_get("alert"), "txt", ""); $_arr_tplData = array( "forward" => $_str_forward, "alert" => $_str_alert, ); $this->obj_tpl->tplDisplay("logon.tpl", $_arr_tplData); //print_r($GLOBALS["ssid"]); } /** * ctl_logout function. * * @access public * @return void */ function ctl_logout() { $_str_forward = fn_getSafe(fn_get("forward"), "txt", ""); if (!$_str_forward) { $_str_forward = base64_encode(BG_URL_ADMIN . "ctl.php"); } fn_ssin_end(); return array( "forward" => $_str_forward, ); } }