Вход Регистрация
Файл: sys/classes/emailuser.class.php
Строк: 74
<?php

class EmailUser {

    protected 
$address;

    public function 
__construct($to null) {
        
$this->address $to;
    }

    public function 
getUser() {
        
$callback $this->getAddres();

        return 
call_user_func(array($this$callback['method']));
    }

    protected function 
getAddres() {
        if (
preg_match("#^[A-z0-9-._-]+@[A-z0-9._-]{2,}.[A-z]{2,8}$#ui"$this->address)) {
            
$data = array('method' => 'getUserEmail');
        } elseif (
$this->address === '0') {
            
$data = array('method' => 'getUserSystem');
        } elseif (
is_numeric($this->address) || preg_match('/^([A-z0-9-.-_]+)$/ui'$this->address$matches)) {
            
$data = array('method' => 'getUserSite');
        } else {
            
$data = array('method' => 'getUserNew');
        }

        return 
$data;
    }

    protected function 
getUserEmail() {
        global 
$config;

        if (
preg_match("#^[A-z0-9-._-]+@[A-z0-9._-]{2,}.[A-z]{2,4}$#ui"$this->address)) {
            if (
in_array(strtolower(preg_replace("/.*?@/"''$this->address)), $config['aliase'])) {
                
$user mysql_fetch_assoc(mysql_query("SELECT * FROM `user` AS u WHERE `nick` = '" mysql_real_escape_string(preg_replace("/@.*/"''$this->address)) . "' LIMIT 1"));
                return 
$this->getUserSite($user);
            }
        }

        return array(
            
'avatar' => '<img src="style/icons/email.jpg" />',
            
'icon' => '<img src="style/icons/e.gif" />',
            
'nick' => stripcslashes(htmlspecialchars($this->address)),
            
'link' => stripcslashes(htmlspecialchars($this->address)),
            
'id' => $this->address,
            
'ban' => false,
        );
    }

    protected function 
getUserSite($user null) {
        if (
$user == null) {
            
$user mysql_fetch_assoc(mysql_query("SELECT * FROM `user` AS u WHERE `id` = '" . (int) $this->address "' OR `nick` = '" mysql_real_escape_string($this->address) . "' LIMIT 1"));
        }

        if (empty(
$user)) {
            return 
$this->getUserNew();
        }

        
$user['avatar'] = $this->getAvatar($user['id'], '40');
        
$user['icon'] = "<span class='fa fa-user fa-fw'></span>";
        
$user['link'] = $user['icon'] . ' <a class="' . ($user['ban'] == true 'user-ban' '') . '" href="/info.php?id=' $user['id'] . '">' $user['nick'] . '</a> ' . ($user['date_last'] > time() - 600 '<img src="style/icons/online.png" />' '');
        return 
$user;
    }

    
#Система сайта

    
protected function getUserSystem() {
        return array(
            
'avatar' => '',
            
'icon' => "<span class='fa fa-life-ring'>",
            
'id' => 0,
            
'nick' => 'Система',
            
'ncolor' => '000',
            
'ncolor2' => '000',
            
'ban' => false,
        );
    }

    
/**
     * Если новое сообщение
     * @return Array()
     */
    
protected function getUserNew() {
        return array(
            
'avatar' => '',
            
'icon' => '',
            
'id' => '',
            
'ban' => false,
            
'nick' => 'Новое сообщение'
        
);
    }

    
#Определение аватара

    
protected function getAvatar($id$px '40') {

        
$ank get_user($id);

        if (
$ank['sex'] == 0) {
            
$sex 'zh.jpg';
        } else {
            
$sex 'm.jpg';
        }
        if (
is_file("user/avatar/$id.gif")) {
            
$a "/user/avatar/$id.gif";
        } elseif (
is_file("user/avatar/$id.jpg")) {
            
$a "/user/avatar/$id.jpg";
        } elseif (
is_file("user/avatar/$id.png")) {
            
$a "/user/avatar/$id.png";
        } else {
            
$a "/user/avatar/$sex";
        }
        
        return 
"<img src='$a' style='width: {$px}px;height: {$px}px' class='img-circle media-object'/>";
    }

}
Онлайн: 1
Реклама