View file system/inc/classes/user.class.php

File size: 4.38Kb
<?php

class User
{
	// Имя пользователя.
	protected $name;
	
	// Возраст пользователя.
	protected $age;
	
	// Пол пользователя.
	protected $sex;

	// URL домашней страницы пользователя.
	protected $homepage_url;

	public function __construct(){}
	
	public function setName($name,$name2) {
		$name = trim($name);
		if ($name == '') {
			throw new Exception('Не указано имя пользователя');
		}
		$this->name = $name;
        $this->name2 = $name2;
		return $this;
	}
	
	public function getName() {
		return '<div class="change_block"><strong>'.$this->name2.'</strong> &nbsp;'.$this->name .'</div>';
	}
	
	public function setAge($age) {
		if (is_object($age) && $age instanceof Datetime) {
			$this->age = $age;
		} else {
			try {
				$age = new Datetime($age);
				$this->age = $age;
			} catch (Exception $e) {
				throw new Exception('Некорректный формат даты рождения пользователя');
			}
		}
		
		return $this;
	}
		public function getAge() {
		return $this->age;
	}
	
	public function users_network($users) {
	    global $settings_shcms;
	        $result_ban = mysql_result(mysql_query("SELECT COUNT(*) FROM `ban_users` WHERE `user_id` = '".$users_list."' AND `time_1` > '".time()."'"),0);
			$result_user = mysql_result(mysql_query("SELECT COUNT(*) FROM `users` WHERE `id`= '".$users_list."' AND `datelast` > '".(time()-400)."'"),0);
			//Если забанен
			if ($result_ban != 0){
		        return ' <font color="red">[забанен]</font>';}
			//Если не забанен
			elseif($result_user == 1){
				if($settings_shcms['onoff'] == 1) {
					return false;}
			//В сети	
				elseif($settings_shcms['onoff'] == 2) {
				    return ' <span class="login_on">[online]</span>';}
			//Не в сети	
				elseif($settings_shcms['onoff'] == 0) {
		    		return ' <span class="login_on">[на сайте]</span>';}
    		}	
	
	}
	
	
	/*
	 * Определяет права пользователя
	 */
    public function user_rights($id,$change_view) {
	global $user_id;
	
	    //Вывод права в личных профилях пользователей
	    if($change_view == false) {
			if($id == 6){
	   		    echo '<b style="color:red;">Создатель</b>';
	 		}elseif($id == 4){
	            echo '<b>Администратор</b>';
            }elseif($id == 2){
	            echo '<b>Модератор</b>';
	        }elseif($id == 1){
	            echo '<b>Пользователь</b>';
	        }
		}else {
	        if($id == NULL) { $id = $user_id; }
	        if(isset($id)) {
	            $users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$id'"));}
				
	        if($users['team'] == 6 and $users['id'] == $id) {
	            echo '<span style="color:red;font-weight:700;">Создатель</span>';
	        }elseif($users['team'] == 4 and $users['id'] == $id) {
	            echo '<span style="color:red;font-weight:700;">Администратор</span>';
	        }elseif($users['team'] == 2 and $users['id'] == $id) {
	            echo '<span style="color:red;font-weight:700;">Модератор</span>';
	        }elseif($users['team'] == 1 and $users['id'] == $id) {
	            echo 'Пользователь';}
	    }
    }
	/*
	 * Функция для ограничения доступа к админке пользователям
	*/
	public function users_admin() {
		global $user_id;
	       $admin = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `team`='6'"));
	    if($admin['id'] != $user_id) {
		    echo engine::errors(Lang::get('У вас недостаточно прав для доступа'));
	        header('Refresh: 1; url=/index.php?'.$conservation.'&');
	        include_once'../template/foot.php';
	        exit;
	    }
	}
	
	
	public function setSex($sex) {
		if (!in_array($sex, array('male', 'female'))) {
			throw new Exception('Неопределённый пол пользователя');
		}
		$this->sex = $sex;
		
		return $this;
	}
	
	public function getSex() {
		return $this->sex;
	}
	
	public function setHomepageUrl($url) {
		$this->homepage_url = $url;
		
		return $this;
	}
	
	public function getHomepageUrl() {
		return $this->homepage_url;
	}
}

?>