GIF89a;
Direktori : /home/serb/public_html/chat/inc/cmses/ |
Current File : /home/serb/public_html/chat/inc/cmses/SBDatingCMS.php |
<?php $easysitepath = realpath(dirname(__FILE__) . '/../../../') . '/'; //---------- myconnect.php to get the database name and host and etc. dynamically------------------ require_once($easysitepath . 'myconnect.php'); //-----------The two tables that we are gonna be dealing with-------------------------------------- define ( 'MEMBERS_TABLE', 'sbdtng_members' ); define ( 'ADMIN_TABLE', 'sbdtng_admin' ); //------------------------------------------------------------------------------------------------- class SBDatingCMS { var $userid = null; var $username = null; var $admincon = null; var $loginStmt; var $AdloginStmt; var $getUserStmt; var $getAdminStmt; var $getAdminConStmt; var $getUsersStmt; var $getUserConStmt; //--------we need the constArr because there is no configuration file in softbiz------------------- var $constArr; //------------------------------------------------------------------------------------------------- function SBDatingCMS() { $this->constArr = array( 'gender_num' =>'sb_gender', 'profile_path'=>'../view_profile.php', 'profile_arg' =>'?id={$sb_id}', ); //--------if the session variable for the userid isset then it is assigned to $userid-------------- if(isset($_SESSION["sbdtng_userid"])) $this->userid = $_SESSION["sbdtng_userid"]; if(isset($_SESSION["softbiz_dtng_adminid"])) { $this->userid = $_SESSION["softbiz_dtng_adminid"]; $this->admincon = 1; } if(isset($_SESSION["sbdtng_username"])) $this->username = $_SESSION["sbdtng_username"]; if(isset($_SESSION["softbiz_dtng_adminname"])) $this->username = $_SESSION["softbiz_dtng_adminname"]; //if(isset($_SESSION["sbdtng_userid"])) $this->isAdmin($this->userid, $this->username); //------------------------------------------------------------------------------------------------- $this->getAdminStmt = new Statement("SELECT * FROM " . ADMIN_TABLE . " WHERE sb_id=? LIMIT 1"); $this->getAdminConStmt = new Statement ("SELECT * FROM " . ADMIN_TABLE . " WHERE sb_id=? AND sb_admin_name=? LIMIT 1"); $this->getUserStmt = new Statement("SELECT * FROM " . MEMBERS_TABLE . " WHERE sb_id=? LIMIT 1"); $this->getUserConStmt = new Statement("SELECT * FROM " . MEMBERS_TABLE . " WHERE sb_id=? AND sb_usermane=? LIMIT 1"); $this->getUsersStmt = new Statement("SELECT * FROM " . MEMBERS_TABLE . " ORDER BY sb_username"); //----------since there is no md5 encoding by default of the CMS we dont need a switch------------- $this->loginStmt = new Statement("SELECT * FROM " . MEMBERS_TABLE . " WHERE sb_username=? AND sb_password=? LIMIT 1"); $this->AdloginStmt = new Statement("SELECT * FROM " . ADMIN_TABLE . " WHERE sb_admin_name=? AND sb_pwd=? LIMIT 1"); //------------------------------------------------------------------------------------------------- } //-------this is the key function to distinguish between the admin and normal users---------------- function isAdmin($pid, $pname) { $this->admincon = 0; if($pid && $pname) { if(($rs = $this->getAdminConStmt->process($pid,$pname)) && ($rec = $rs->next())) { $this->userid = $rec['sb_id']; $this->admincon = 1; } if(($rs = $this->getUserConStmt->process($pid,$pname)) && ($rec = $rs->next())) { $this->userid = $rec['sb_id']; $this->admincon = 0; } } return $this->admincon; } //------we just need to return the value of userid, if set real, if not null so the login appears- function isLoggedIn() { return $this->userid; } //------------------------------------------------------------------------------------------------- function getUserProfile($userid) { $user = $this->getUser($userid); if($this->admincon == 1) return null; extract($user); return "{$this->constArr['profile_path']}?id={$sb_id}"; } //------------------------------------------------------------------------------------------------ function login($login, $password) { $this->userid = null; if($login && $password) { $pass = $password; if(($rs = $this->loginStmt->process($login,$pass)) && ($rec = $rs->next())) { $this->userid = $rec['sb_id']; $this->admincon = 0; } elseif(($rs2 = $this->AdloginStmt->process($login,$pass)) && ($rec2 = $rs2->next())) { $this->userid = $rec2['sb_id']; $this->admincon = 1; } } return $this->userid; } //------------------------------------------------------------------------------------------------- function logout() { $this->userid = null; } //------------------------------------------------------------------------------------------------- function getUser($userid) { if($userid) { if ($this->admincon == 0) { $rs = $this->getUserStmt->process($userid); $usr = $rs->next(); $usr['login'] = $usr['sb_username']; $usr['gender'] = $usr['sb_gender']; $usr['roles'] = ROLE_USER; } if ($this->admincon == 1) { $rs2 = $this->getAdminStmt->process($userid); $usr = $rs2->next(); $usr['login'] = $usr['sb_admin_name']; $usr['roles'] = ROLE_ADMIN; } return $usr; } else { return NULL; } } //------------------------------------------------------------------------------------------------- function userInRole($userid, $role) { if($user = $this->getUser($userid)) { if($role == ROLE_ADMIN) { if($user['roles'] == ROLE_ADMIN) return true; else return false; } if($role == ROLE_USER) { return true; } } return false; } //------------------------------------------------------------------------------------------------- function getGender($userid) { $rv = NULL; if ($u = $this->getUser($userid)) { if ($u['gender'] == 1) $rv = 'M'; if ($u['gender'] == 2) $rv = 'F'; } return $rv; } } //-------Now define the globals using the variables included in the myconnect.php $GLOBALS['fc_config']['db'] = array( 'host' => $servername, 'user' => $database_username, 'pass' => $database_password, 'base' => $database_name, 'pref' => "sbdtng_fc_",//DB_PREFIX ); $GLOBALS['fc_config']['cms'] = new SBDatingCMS(); foreach($GLOBALS['fc_config']['languages'] as $k => $v) { $GLOBALS['fc_config']['languages'][$k]['dialog']['login']['moderator'] = ''; } ?>