GIF89a;
| Direktori : /home/serb/public_html/chat/inc/cmses/ |
| Current File : /home/serb/public_html/chat/inc/cmses/phpBB3CMS.php |
<?php
error_reporting(E_ALL ^ E_NOTICE);
if ( !defined( 'INC_DIR' ) ) {
die( 'hacking attempt' );
}
define('IN_PHPBB', true);
// hack for phpBB 2.0.21 when register_globals is on
if ( @ini_get('register_globals') == '1' || strtolower(@ini_get('register_globals')) == 'on' ) {
if ( is_array( $HTTP_GET_VARS ) ) {
$temp = array();
foreach( $HTTP_GET_VARS as $key => $value ) {
if ( $value != '' ) {
$temp[$key] = $value;
}
}
$HTTP_GET_VARS = $temp;
}
}
$phpbb_root_path = realpath(dirname(__FILE__) . '/../../../') . '/';
if( is_file($phpbb_root_path . 'config.php') )
{
//include($phpbb_root_path . 'extension.inc');
//include($phpbb_root_path . 'common.'.$phpEx);
include($phpbb_root_path . 'config.php');
}
//$fp = fopen(realpath(dirname(__FILE__))."/debug/debug".time().".txt", "w");
class PhpBB3CMS {
var $loginStmt;
var $loggedinStmt;
var $getUserStmt;
var $getUsersStmt;
var $userid;
function PhpBB3CMS() {
session_id()
$this->loginStmt = new Statement("SELECT user_id FROM {$GLOBALS['table_prefix']}users WHERE username=? AND user_password=md5(?) LIMIT 1");
$this->loggedinStmt = new Statement("SELECT session_user_id as id FROM {$GLOBALS['table_prefix']}sessions WHERE session_id=?");
$this->configStmt = new Statement("SELECT config_value FROM {$GLOBALS['table_prefix']}config WHERE config_name='cookie_name'");
//Geno Mod - added user_rank to getUserStmt
$this->getUserStmt = new Statement("SELECT user_id as id, username as login, user_rank, user_type FROM {$GLOBALS['table_prefix']}users WHERE user_id=? LIMIT 1");
$this->getUsersStmt = new Statement("SELECT user_id as id, username as login FROM {$GLOBALS['table_prefix']}users ORDER BY login");
$this->getPhotoStmt = new Statement("SELECT user_avatar FROM {$GLOBALS['table_prefix']}users WHERE user_id=? LIMIT 1");
}
function isLoggedIn() {
/*$userdata = session_pagestart($GLOBALS['user_ip'], PAGE_FAQ);*/
if( isset($GLOBALS['_COOKIE']['phpbb3_u']) )
{
return $GLOBALS['_COOKIE']['phpbb3_u'];
}
else
null;
}
function login($login, $password)
{
//$login = utf8_decode( $login ) ;//umlavta characters fix
if($login && $password && ($rs = $this->loginStmt->process($login,$password)) && ($rec = $rs->next()))
{
//session_begin( true );
return $rec['user_id'];
}
return null;
}
function logout()
{
/*
$userdata = session_pagestart($GLOBALS['user_ip'], PAGE_FAQ);
session_end($userdata['session_id'], $userdata['user_id']);
*/
}
function getUser($userid)
{
if($userid == SPY_USERID) return null;
//fwrite($GLOBALS['fp'], "llada a getuser:".print_r($userid, true)."\n");
if($userid && ($rs = $this->getUserStmt->process($userid)) && ($rec = $rs->next())) {
if ($rec['user_type'] >= 1) {
if ($rec['user_type'] == 3) {
$rec['roles'] = ROLE_ADMIN;
$rec['user_level'] = ROLE_ADMIN;
}else{
$rec['roles'] = ROLE_MODERATOR;
$rec['user_level'] = ROLE_MODERATOR;
}
}
elseif ($GLOBALS['fc_config']['liveSupportMode']) {
$rec['roles'] = ROLE_CUSTOMER;
$rec['user_type'] = ROLE_CUSTOMER;
}elseif ($rec['user_rank'] >= 0)
{
$rec['roles'] = ROLE_USER ;
$rec['user_type'] = ROLE_USER;
// Geno Mod - ADD CASE # LINES [in pairs] BELOW TO ADD MORE ADMINS OR MODERATORS WHERE # = RankID NUMBER
// USERS MUST have a rank of 2 or they'll be banned!
switch($rec['user_rank']) {
case 2: $rec['roles'] = ROLE_USER ; break;
case 2: $rec['user_type'] = ROLE_USER; break;
case 3: $rec['roles'] = ROLE_MODERATOR; break;
case 3: $rec['user_type'] = ROLE_MODERATOR; break;
default: $rec['roles'] = ROLE_USER ; break;
}
}
//fwrite($GLOBALS['fp'], "rec:".print_r($rec, true)."\n");
//$rec['login'] = utf8_encode( $rec['login'] );//umlavta characters fix
return $rec;
} else {
return null;
}
}
function getUsers() {
return $this->getUsersStmt->process();
}
function getUserProfile($userid) {
if($user = $this->getUser($userid))
{
return "../memberlist.php?mode=viewprofile&u=$userid";
}
else
{
return null;
}
}
function getPhoto($userid)
{
$rs = $this->getPhotoStmt->process($userid);
if(($rec = $rs->next()) == null) return '';
$fileExt = explode(',', $GLOBALS['fc_config']['photoloading']['allowFileExt']);
$oldFile = './temp/nick_image/' . $userid . '.';
$fs = reset($fileExt);
while($fs) {
if(file_exists($oldFile . $fs)) return $oldFile . $fs;
$fs = next($fileExt);
}
return '../images/avatars/upload/'.$rec['user_avatar'];
}
function userInRole($userid, $role) {
if($user = $this->getUser($userid)) {
return ($user['roles'] == $role);
}
return false;
}
function getGender($userid) {
// 'M' for Male, 'F' for Female, NULL for undefined
return NULL;
}
}
if( is_file($phpbb_root_path . 'config.php') )
{
$GLOBALS['fc_config']['db'] = array(
'host' => $dbhost,
'user' => (isset($dbuser) ? $dbuser : $dbuname),
'pass' => $dbpasswd,
'base' => $dbname,
'pref' => $table_prefix . 'fc_',
);
}
else
{
$GLOBALS['fc_config']['db'] = array(
'host' => "",
'user' => "",
'pass' => "",
'base' => "",
'pref' => "",
);
}
if( is_file($phpbb_root_path . 'config.php') )
$GLOBALS['fc_config']['cms'] = new PhpBB3CMS();
//fwrite($GLOBALS['fp'], print_r($GLOBALS['fc_config'], true));
//clear 'if moderator' message
foreach($GLOBALS['fc_config']['languages'] as $k => $v)
{
$GLOBALS['fc_config']['languages'][$k]['dialog']['login']['moderator'] = '';
}
?>