<?
/**
* / Основные пользовательские функции
* / nick() - выводит ник и значок онлайна
* / avatar - выводит аватар и иконку пользователя
* / у всех функций есть параметры что выводить а что нет
*/

class user
{
    
    /**
    * / Ссылка и Ник юзера
    */

    public static function nick($user = 0, $url = 1, $on = 0, $medal = 0)
    {
        /*
        * $url == 0        Выводит только ник
        * $url == 1        Выводит ник с ссылкой на страницу юзера
        * $on  == 1        Выводит рядом с ником значок онлайн
        * $medal == 1    Выводит медальку рядом со значком онлайн
        */
        
        global $set;
        
        $ank = mysql_fetch_assoc(mysql_query('SELECT `nick`, `date_last`, `rating`, `ank_d_r`, `ank_m_r`, `balls`, `browser`, `ank_name`, `ank_family`, `color1`, `color2` FROM `user` WHERE `id` = "' . $user . '" LIMIT 1 '));
        
        $nick = null;
        $online = null;
        $icon_medal = null;


		// Вывод ника 
		if ($user == 0)$ank = array('id' => '0', 'nick' => 'Cистема', 'ank_name' => 'Система', 'pol' => '1', 'rating' => '0', 'balls' => '0', 'color1' => null, 'color2' => null, 'ank_family' => 'оповещений', 'browser' => 'wap', 'date_last' => time());
		elseif (!$ank)$ank = array('id' => '0', 'nick' => '[Удален]', 'ank_name' => 'Удаленный', 'pol' => '1', 'rating' => '0', 'balls' => '0', 'color1' => null, 'color2' => null, 'ank_family' => 'пользователь', 'browser' => 'wap', 'date_last' => time());
		
		if ($url == true && $ank['color1'] != null && $ank['color2'] != null)
			$nick = ' <b><a href="/id' . $user . '">' . gradient(text($ank['nick']), $ank['color1'], $ank['color2']) . '</a></b>  ';
		elseif ($url == true && $ank['color1'] != null)
			$nick = ' <b><a style="color: #' . $ank['color1'] . ';" href="/id' . $user . '">' . text($ank['nick']) . '</a></b>  ';
		elseif ($url == true)
			$nick = ' <a href="/id' . $user . '">' . text($ank['nick']) . '</a>  ';
		else
			$nick = text($ank['nick']).'  ';
			
		
        
        // Вывод значка онлайн
        if ($user != 0 && $ank['date_last'] > time()-$set['time_online'] && $on == true) {
            $online = ' <img src="/style/icons/online' . ($ank['browser'] == 'wap' ? '' : '_web') . '.gif" alt="Online" /> ';
        }
            
 	if ($user != 0 && $ank['date_last'] < time()-$set['time_online'] && $on == true) {
            $online = ' <img src="/style/icons/offline.gif" alt="Offline" /> ';
        }
        
        
        // Вывод медали
        $R = $ank['balls'];
        
        if ($medal == 1 && $R >= 3000)
        {
            if ($R >= 3000 && $R <= 7000)         {$img = 1;}
            elseif ($R >= 7001 && $R <= 15000)    {$img = 2;}
            elseif ($R >= 15001)                {$img = 3;}
            $icon_medal = ' <img src="/style/medal/' . $img . '.gif" alt="*" /> ';
        }
        
        
        return $nick . $icon_medal . $online;
    }

    /**
    * / Аватар, иконка группы пользователя
    */

    public static function avatar($user = 0, $type = 0)
    {
        /*
        * $type == 0 - Выводит аватар и иконку вместе
        * $type == 1 - Выводит только аватар
        * $type == 2 - Выводит только иконку
        */
        global $time, $set;
        
        $AVATAR = '';
        $icon = '';
        
        if ($user != 0) {
            $ank = mysql_fetch_assoc(mysql_query('SELECT `pol`, `id`, `group_access` FROM `user` WHERE `id` = "' . $user . '" LIMIT 1 '));
        }
        
        if ($user == 0) { 
            $ank = array('id' => '0', 'pol' => '1', 'group_access' => '0');
        } elseif (!$ank) { 
            $ank = array('id' => '0', 'pol' => '1', 'group_access' => '0');
        }
        
        // Аватар
        if ($type == 0 || $type == 1) {
            $avatar = mysql_fetch_assoc(mysql_query("SELECT id,ras,id_gallery FROM `gallery_foto` WHERE `id_user` = '$user' AND `avatar` = '1' LIMIT 1"));
            
            if (is_file(H.'sys/gallery/50/' . $avatar['id'] . '.jpg')) {
            $AVATAR = ' <a id="photo-' . $avatar['id'] . '" href="/foto/' . $user . '/' . $avatar['id_gallery'] . '/' . $avatar['id'] . '/"><img class="avatar" src="/foto/foto50/' . $avatar['id'] . '.' . $avatar['ras'] . '" alt="Avatar" /></a> ';
            } else {
            $AVATAR = '<img class="avatar" src="/style/user/noavatar_'.($ank['pol'] == 1 ? 1 : 0).'.png" width="50" alt="No Avatar" />';

            }            
        }
        
        
    	// Иконка пользователя
		if ($type == 0 || $type == 2)
		{
			if (mysql_result(query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '$user' AND (`time` > '$time' OR `navsegda` = '1')"), 0) != 0)
			{
				$icon = ' <img src="/style/user/ban.png" alt="*" class="icon" id="icon_group" /> ';
			}
			else 
			{
		if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$user' AND `date_last` > '".(time()-$set['time_online'])."' LIMIT 1"),0)==1)
		{
				if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_icons` WHERE `id_user` = '$user' AND `time` > '".(time()-604800)."'"), 0) != 0)
				{
					$icons = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_icons` WHERE `id_user` = '$user' AND `time` > '".(time()-604800)."' LIMIT 1"));
					$icon = ' <img src="/style/personal_icons/i (' . $icons['id'] . ').png" alt="" class="icon"/> ';
				}
				elseif ($ank['group_access'] > 7 && ($ank['group_access'] < 10 || $ank['group_access'] > 14))
				{
					if ($ank['pol'] == 1) 
					$icon = ' <img src="/style/user/admin_1.gif" alt="*" class="icon" id="icon_group" /> ';
					else
					$icon = ' <img src="/style/user/admin_0.gif" alt="" class="icon"/> ';
				}
				elseif (($ank['group_access'] > 1 && $ank['group_access'] <= 7) || ($ank['group_access'] > 10 && $ank['group_access'] <= 14))
				{
					if ($ank['pol'] == 1)
						$icon = ' <img src="/style/user/mod_on_1.gif" alt="*" class="icon" id="icon_group" /> ';
					else
						$icon = ' <img src="/style/user/mod_on_0.gif" alt="*" class="icon" id="icon_group" /> ';
				}
				elseif (isset ($ank['status']) == 0)
				{
					if ($ank['pol'] == 1) 
						$icon = ' <img src="/style/user/on_1.gif" alt="" class="icon" id="icon_group" /> ';
					else
						$icon = ' <img src="/style/user/on_0.gif" alt="" class="icon" id="icon_group" /> ';
				}
		}
		else
		{
				if ($ank['group_access'] > 7 && ($ank['group_access'] < 10 || $ank['group_access'] > 14)) 
				{
					if ($ank['pol'] == 1) 
					$icon = ' <img src="/style/user/admin_man_off.gif" alt="*" class="icon" id="icon_group" /> ';
					else
					$icon = ' <img src="/style/user/admin_woman_off.gif" alt="" class="icon"/> ';
				}
				elseif (($ank['group_access'] > 1 && $ank['group_access'] <= 7) || ($ank['group_access'] > 10 && $ank['group_access'] <= 14))
				{
					if ($ank['pol'] == 1)
						$icon = ' <img src="/style/user/mod_man_off.gif" alt="*" class="icon" id="icon_group" /> ';
					else
						$icon = ' <img src="/style/user/mod_woman_off.gif" alt="*" class="icon" id="icon_group" /> ';
				}
				elseif (isset ($ank['status']) == 0)
				{
					if ($ank['pol'] == 1) 
						$icon = ' <img src="/style/user/off_1.gif" alt="" class="icon" id="icon_group" /> ';
					else
						$icon = ' <img src="/style/user/off_0.gif" alt="" class="icon" id="icon_group" /> ';
				}
						
		}
			}
		}
		
		return $AVATAR . $icon;
		
	}
    
    
    
    /**
    * / Функция выборки пользовательских данных
    * / Выводин данные из таблицы user
    * / и генериует аватар, иконки медалей и онлайна в массив
    * $ank['link'], $ank['avatar'], $ank['online'], 
    * $ank['medal'], $ank['icon']
    */

    static function get_user($ID = 0, $photo = 1)
    {
        /*
        * $ID    - ID юзера 
        * $photo - Параметр на выборку аватара
        */
        
        global $user, $set;
        
        $ID = (int) $ID;
        
        $ank = array();
        $ank['group_name'] = null;
        
        // Если вы авторизованы, и функция вызывает 
        // ваш ID, то просто берем данные из $user
        
        if ($user['id'] == $ID) {
            $ank = $user;
        } else {
            $ank = mysql_fetch_assoc(mysql_query('SELECT * FROM `user` WHERE `id` = "' . $ID . '" LIMIT 1'));
        }
        
        // Если система или неопределенный юзер
        if ($ID == 0) { 
            $ank = array('id' => '0', 'pol' => '1', 'ank_name' => 'Система',  'ank_family' => 'оповещений', 'wmid' => '0', 'group_access' => '0', 'level' => '999'); 
        } elseif (!$ank) { 
            $ank = array('id' => '0', 'pol' => '1', 'ank_name' => 'Система',  'ank_family' => 'оповещений', 'wmid' => '0', 'group_access' => '0', 'level' => '0'); 
        } else { 
            $tmp_us = mysql_fetch_assoc(mysql_query("SELECT `level`,`name` AS `group_name` FROM `user_group` WHERE `id` = '" . $ank['group_access'] . "' LIMIT 1")); 
            $ank['group_name'] = $tmp_us['group_name'];
            $ank['level'] = $tmp_us['level'];
        }
        
        // Если поставлен параметр выводить фото
        if ($photo) {
            
            // Определяем аватар 
            $avatar = mysql_fetch_array(mysql_query("SELECT id,ras, id_gallery FROM `gallery_foto` WHERE `id_user` = '$ID' AND `avatar` = '1' LIMIT 1"));
            
            if (is_file(H.'sys/gallery/50/' . $avatar['id'] . '.jpg')) {
                $ank['avatar'] = ' <img id="photo-' . $avatar['id'] . '" class="avatar" src="/foto/foto50/' . $avatar['id'] . '.' . $avatar['ras'] . '" alt="Avatar" /> ';
            } else {
                $ank['avatar'] = '<img class="avatar" src="/style/user/noavatar_'.($ank['pol'] == 1 ? 1 : 0).'.png" width="50" alt="No Avatar" />';

            }        
        }
        
        // Вывод значка онлайн
        if ($ID != 0 && $ank['date_last'] > time() - $set['time_online']) {
            
            $ank['online'] = ' <img src="/style/icons/online' . ($ank['browser'] == 'wap' ? '' : '_web') . '.gif" alt="Online" /> ';
        } else {
            $ank['online'] = ' <img src="/style/icons/offline.gif" alt="Online" /> ';
        }
        
        // Вывод медали
        $R = $ank['balls'];
        
        if ($R >= 3000) {
            if ($R >= 3000 && $R <= 7000)        {$img = 1;}
            elseif ($R >= 7001 && $R <= 15000)    {$img = 2;}
            elseif ($R >= 15001)                {$img = 3;}
            $ank['medal'] = ' <img src="/style/medal/' . $img . '.gif" alt="*" /> ';
        } else {
            $ank['medal'] = null;
        }
        
 		// Иконка пользователя
		if (mysql_result(query("SELECT COUNT(*) FROM `ban` WHERE `id_user` = '$ID' AND (`time` > '" . time() . "' OR `navsegda` = '1')"), 0) != 0)
		{
			$ank['icon'] = ' <img src="/style/user/ban.png" alt="*" class="icon" id="icon_group" /> ';
		}
		else 
		{
	if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user` WHERE `id` = '$ID' AND `date_last` > '".(time()-$set['time_online'])."' LIMIT 1"),0)==1)
	{
				if (mysql_result(mysql_query("SELECT COUNT(*) FROM `user_icons` WHERE `id_user` = '$ID' AND `time` > '".(time()-604800)."'"), 0) != 0)
				{
					$icons = mysql_fetch_assoc(mysql_query("SELECT * FROM `user_icons` WHERE `id_user` = '$ID' AND `time` > '".(time()-604800)."' LIMIT 1"));
					$ank['icon'] =  ' <img src="/style/personal_icons/i (' . $icons['id'] . ').png" alt="" class="icon"/> ';
				}
				elseif ($ank['group_access'] > 7 && ($ank['group_access'] < 10 || $ank['group_access'] > 14))
			{
				if ($ank['pol'] == 1) 
				$ank['icon'] = ' <img src="/style/user/admin_1.gif" alt="*" class="icon" id="icon_group" /> ';
				else
				$ank['icon'] = ' <img src="/style/user/admin_0.gif" alt="" class="icon"/> ';
			}
			elseif (($ank['group_access'] > 1 && $ank['group_access'] <= 7) || ($ank['group_access'] > 10 && $ank['group_access'] <= 14))
			{
				if ($ank['pol'] == 1)
					$ank['icon'] = ' <img src="/style/user/mod_on_1.gif" alt="*" class="icon" id="icon_group" /> ';
				else
					$ank['icon'] = ' <img src="/style/user/mod_on_0.gif" alt="*" class="icon" id="icon_group" /> ';
			}
			else
			{
				if ($ank['pol'] == 1) 
					$ank['icon'] = ' <img src="/style/user/on_1.gif" alt="" class="icon" id="icon_group" /> ';
				else
					$ank['icon'] = ' <img src="/style/user/on_0.gif" alt="" class="icon" id="icon_group" /> ';
			}
	}
	else
	{
			if ($ank['group_access'] > 7 && ($ank['group_access'] < 10 || $ank['group_access'] > 14))
			{
				if ($ank['pol'] == 1) 
				$ank['icon'] = ' <img src="/style/user/admin_man_off.gif" alt="*" class="icon" id="icon_group" /> ';
				else
				$ank['icon'] = ' <img src="/style/user/admin_woman_off.gif" alt="" class="icon"/> ';
			}
			elseif (($ank['group_access'] > 1 && $ank['group_access'] <= 7) || ($ank['group_access'] > 10 && $ank['group_access'] <= 14))
			{
				if ($ank['pol'] == 1)
					$ank['icon'] = ' <img src="/style/user/mod_man_off.gif" alt="*" class="icon" id="icon_group" /> ';
				else
					$ank['icon'] = ' <img src="/style/user/mod_woman_off.gif" alt="*" class="icon" id="icon_group" /> ';
			}
			else
			{
				if ($ank['pol'] == 1) 
					$ank['icon'] = ' <img src="/style/user/off_1.gif" alt="" class="icon" id="icon_group" /> ';
				else
					$ank['icon'] = ' <img src="/style/user/off_0.gif" alt="" class="icon" id="icon_group" /> ';
			}	
	}
		}
		
		if ($ank['color1'] != null && $ank['color2'] != null)
			$ank['link'] = ' <b><a href="/id' . $ID . '">' . gradient(text($ank['nick']), $ank['color1'], $ank['color2']) . '</a></b> ';
		elseif ($ank['color1'] != null)
			$ank['link'] = ' <b><a style="color: #' . $ank['color1'] . ';" href="/id' . $ID . '">' . text($ank['nick']) . '</a></b> ';
		else
			$ank['link'] = ' <a href="/id' . $ID . '">' . text($ank['nick']) . '</a> ';
		
		$ank['nick'] = text($ank['nick']);
        
        return $ank;
    }
}
?>