- <?php
- /**
- * @package uForum
- * @file includes/classes/class_user.php
- * @version $Id: classes/class_user.php 15 2009-05-01 17:06:40Z pioder $
- * @copyright 2007-2010 (c) PioDer <pioder@wp.pl>
- * @link http://www.pioder.pl/
- * @license see LICENSE.txt
- **/
- if ( !defined('IN_uF') )
- {
- die('Hacking attempt');
- }
- class User
- {
- function LastUser()
- {
- global $lastuser;
- $usr = $lastuser['nick'];
- $uid = $lastuser['u_id'];
- return '<a href="user.php?id='.$uid.'" class="fstandard">'.$usr.'</a>';
- }
-
- function UserInformation($uid, $inf)
- {
- $sql = "SELECT `$inf` FROM ".USERS_TABLE." WHERE u_id='$uid';";
- $query = DataBase::sql_query($sql,GENERAL,'Could not obtain user information.');
- $result = DataBase::fetch($query);
- $result = $result[$inf];
- return $result;
- }
-
- function UserIdByNick($nick)
- {
- $sql = "SELECT * FROM `".USERS_TABLE."` WHERE `nick`='$nick';";
- $result = DataBase::fetch(DataBase::sql_query($sql,GENERAL,'Could not obtain user information.'));
- $result = $result['u_id'];
- /*if ($result=='')
- {
- message_forum('nick failed','admin_groups.php');
- }*/
- return $result;
- }
-
- function AddToGroup($uid, $gid)
- {
- $last= DataBase::new_id(USERS_GROUP_TABLE);
- $sql = "INSERT INTO `".USERS_GROUP_TABLE."` VALUES ('$last','$uid', '$gid')";
- DataBase::sql_query($sql,GENERAL,'Could not add user to group.');
- }
-
- function DeleteFromGroup($uid, $gid)
- {
- $sql = "DELETE FROM `".USERS_GROUP_TABLE."` WHERE `u_id`='$uid' AND `g_id`='$gid'";
- DataBase::sql_query($sql,GENERAL,'Could not delete user for group.');
- }
-
- function LogedAs($sid, $uid)
- {
- global $lng;
- global $userdata;
- if ($uid>0)
- {
- $nick = $userdata['nick'];
- return(''.$lng['youareloggedas'].' <a href="user.php?id='.$uid.'" class="fstandard"><b>'.$nick.'</b></a>');
- }
- else
- {
- return($lng['youarenotlogd']);
- }
- }
-
- function PostWithForum($posts)
- {
- $result2 = TotalPosts();
- if($result2>0)
- {
- $result3 = ($posts/$result2*100);
- $result3 = round($result3,2);
- return($result3);
- }
- else
- {
- return(0);
- }
-
- }
-
- function LastRegVisit($uid, $mode)
- {
- global $lng;
- $result = User::UserInformation($uid,$mode);
- if ($result=='0')
- {
- return($lng['never']);
- }
- else
- {
- $date = date('d-m-Y, G:i',$result);
- return($date);
- }
- }
-
- function UserRank($rank)
- {
- global $lng;
- global $forum_config;
- switch($rank)
- {
- case '0': {$result=$lng['user']; break; }
- case '1': {$result='<font color="'.$forum_config['color_mod'].'"><b>'.$lng['mod'].'</b></font>'; break; }
- case '2': {$result='<font color="'.$forum_config['color_admin'].'"><b>'.$lng['admin'].'</b></font>'; break; }
- }
- return($result);
- }
-
- function RankAdminMod($uid)
- {
- if ($uid>0)
- {
- $sql = "SELECT * FROM ".USERS_TABLE." WHERE u_id='$uid'";
- $query = DataBase::sql_query($sql,GENERAL,'Could not obtain user`s rank information.');
- $result = DataBase::fetch($query);
- $rank = $result['rank'];
- if (($rank=='1') or ($rank=='2'))
- {
- return '1';
- }
- else
- {
- return '0';
- }
- }
- else
- {
- return '0';
- }
-
- }
-
- function UpdateProfile($uid, $gg, $email, $interests, $sig, $avatar, $allow_qr, $allow_email, $allow_gg, $skin, $lang, $limit_tpid, $limit_ftid, $limit_users, $allow_shoutbox)
- {
- $sql ="UPDATE `".USERS_TABLE."` SET
- `gg` = '$gg',
- `email` = '$email',
- `allow_gg` = '$allow_gg',
- `allow_email` = '$allow_email',
- `allow_qr` = '$allow_qr',
- `interests` = '$interests',
- `sig` = '$sig',
- `avatar` = '$avatar',
- `skin`='$skin',
- `lang`='$lang',
- `limit_tpid` = '$limit_tpid',
- `limit_ftid` = '$limit_ftid',
- `view_shoutbox` = '$allow_shoutbox',
- `limit_users` = '$limit_users'
- WHERE `u_id` ='$uid' LIMIT 1 ;";
- DataBase::sql_query($sql,CRITICAL,'Could not update user information');
- }
-
- function UpdateAdminPools($uid, $posts, $rank, $active, $nick)
- {
- $sql ="UPDATE `".USERS_TABLE."` SET
- `posts` = '$posts',
- `rank` = '$rank',
- `active` = '$active',
- `nick` = '$nick'
- WHERE `u_id` ='$uid' LIMIT 1 ;";
- DataBase::sql_query($sql,CRITICAL,'Could not update user information');
- }
-
- function UpdatePassword($uid, $pass)
- {
- $sql ="UPDATE `".USERS_TABLE."` SET
- `pass` = '$pass'
- WHERE `u_id` ='$uid' LIMIT 1 ;";
- DataBase::sql_query($sql,CRITICAL,'Could not update user information');
- }
-
- function CreateProfile($nick, $pass, $email, $gg, $allow_gg, $allow_email, $allow_qr, $sig, $av, $interests)
- {
- global $forum_config;
- $last = DataBase::new_id(USERS_TABLE);
- $time = time();
- $sql = "INSERT INTO ".USERS_TABLE." VALUES
- ('$last', '$nick', '$pass', '$email', '0', '$time', '0', '$gg', '$allow_gg', '$allow_email', '$allow_qr', '".$forum_config['view_shoutbox']."', '".$forum_config['defaultskin']."', '".$forum_config['defaultlang']."','".$forum_config['limit_tpid']."', '".$forum_config['limit_ftid']."', '".$forum_config['limit_users']."', '$sig', '$av', '1','0','$interests');";
- DataBase::sql_query($sql,CRITICAL,'Could not create new user');
- }
-
- function UserPMs()
- {
- $uid = $_SESSION['uid'];
- if($uid>0)
- {
- $sql = "SELECT count(*) as `m_id` FROM ".PM_INBOX_TABLE." WHERE `u_id`='$uid' AND `read`='0'";
- $result = DataBase::fetch(DataBase::sql_query($sql,GENERAL,'Could not obtain amounts PM of User.'));
- $result = $result['m_id'];
- if ($result>0)
- {
- return '<font color="red">'.$result.'</font>';
- }
- else
- {
- return $result;
- }
- }
- }
-
- function UserAddWarn($uid, $value, $motive)
- {
- global $lng;
- $sql = "INSERT INTO `".WARNINGS_TABLE."` ( `w_id` , `u_id` , `value` , `motive` ) VALUES('','$uid','$value','$motive');";
- DataBase::sql_query($sql,GENERAL,'Could not add new warn.');
- if (User::UserLevelWarns($uid)==100)
- {
- $ban_ip = '0.0.0.0';
- $ban_uid = $uid;
- $ban_motive = $lng['warns_ban'];
- $sql = "INSERT INTO ".BANLIST_TABLE." VALUES ('', '$ban_uid', '$ban_ip', '$ban_motive')";
- DataBase::sql_query($sql,GENERAL,'Could not update add ban.');
- }
- }
-
- function UserLevelWarns($uid)
- {
- $level =0;
- $sql = "SELECT `u_id`,`value` FROM `".WARNINGS_TABLE."` WHERE `u_id`='$uid'";
- $query = DataBase::sql_query($sql,'GENERAL','Could not obtain user warns information');
- $result = DataBase::num_rows($query);
- while ($result = @DataBase::fetch($query))
- {
- if ($result['value']=='-')
- {
- $level = $level -1;
- }
- else
- {
- $level = $level +1;
- }
- }
- //version 1.0 Alpha 2
- //delete second query
- if ($level>0)
- {
- $level = $level*10;
- }
- return $level;
- }
- }
- ?>
|