GIF89a;
Direktori : /home/serb/public_html/chat/inc/cmses/ |
Current File : /home/serb/public_html/chat/inc/cmses/moodle18CMS.php |
<?php if ( !defined( 'INC_DIR' ) ) { die( 'hacking attempt' ); } /************************************************************************/ //!!! IMPORTANT NOTE //!!! FlashChat 4.4.0 and higher support a new user role: ROLE_MODERATOR //!!! Please edit the getUser and getRoles function if you need use of //!!! the new moderator role. This change has not yet been applied. /************************************************************************/ // integration class for Moodle (www.moodle.org) // written by Manuel Aristaran <masterson@diosmilanesa.com.ar> $config_temp = $GLOBALS['fc_config']; $moodle_root_path = realpath(dirname(__FILE__) . '/../../../') . '/'; if( is_file($moodle_root_path . 'config.php') ) { include($moodle_root_path . 'config.php'); require_once($moodle_root_path .'/course/lib.php'); require_once($moodle_root_path .'/lib/blocklib.php'); $GLOBALS['fc_config'] = $config_temp; } class MoodleCMS { function MoodleCMS() { global $USER,$SESSION, $fp, $moodle_root_path,$CFG; $username = get_moodle_cookie(); $this->id= new Statement("SELECT * FROM {$CFG->prefix}user WHERE username=? LIMIT 1"); $rs = $this->id->process($username); if($rec = $rs->next()) $this->userid = $rec['id']; //$this->userid = !empty($USER) ? $USER->id : NULL; $this->user = !empty($USER) ? $USER : NULL; } function isLoggedIn() { return $this->userid; } function getRoles($user) { $rv = NULL; if ($admins = get_records("role_assignments", "userid", $user->id)) $rv = ROLE_ADMIN; else $rv = ROLE_USER; return $rv; } function getUserProfile($userid) { global $CFG; if ($userid == SPY_USERID) $rv = NULL; elseif ($user = $this->getUser($userid)) { $rv = $CFG->wwwroot."/user/view.php?id={$userid}&course=1"; } return $rv; } function getUser($userid) { global $fp; $rv = NULL; $u = get_user_info_from_db("id", $userid); if($u) { $rv['roles'] = $this->getRoles($u); $rv['id'] = $u->id; $rv['login'] = $u->username; } return $rv; } function login($login, $password) { $u = authenticate_user_login($login, $password); if ($u) { set_moodle_cookie($u->username); return $u->id; } } function userInRole($userid, $role) { if($user = $this->getUser($userid)) { return ($user['roles'] == $role); } return false; } function logout() { set_moodle_cookie(''); } function getUsers() { $rv = array(); foreach(get_users() as $u) { $t['roles'] = $this->getRoles($u); $t['login'] = $u->username; $t['id'] = $u->id; $rv[] = $t; } return $rv; } function getGender($userid) { // 'M' for Male, 'F' for Female, NULL for undefined return NULL; } } if( is_file($moodle_root_path . 'config.php') ) { $GLOBALS['fc_config']['db'] = array( 'host' => $CFG->dbhost, 'user' => $CFG->dbuser, 'pass' => $CFG->dbpass, 'base' => $CFG->dbname, 'pref' => $CFG->prefix."fc_", ); } else { $GLOBALS['fc_config']['db'] = array( 'host' => "", 'user' => "", 'pass' => "", 'base' => "", 'pref' => "", ); } if( is_file($moodle_root_path . 'config.php') ) $GLOBALS['fc_config']['cms'] = new MoodleCMS(); foreach($GLOBALS['fc_config']['languages'] as $k => $v) { $GLOBALS['fc_config']['languages'][$k]['dialog']['login']['moderator'] = ''; } ?>