Вход Регистрация
Файл: wapxl.ru/shaxty/classes/functions.php
Строк: 730
<?php


class func extends core
{

    public static function 
no_guest()
    {
       if(!isset(
core::$user['id'])){
               
$title 'Ошибка';
            
$align 'center';
            
$head 'Ошибка';
            include_once (
H.'shaxty/head.php');

            echo 
"<b>Вы не можете просмотреть данную страницу потому, что вы не авторизированы!</b><br />";
            echo 
"Пожалуйста пройдите<br />";


            echo 
"<a href="/in.php" class="href">Авторизацию</a> или <a href="/reg.php" class="href">Регистрацию</a><br />";
            echo 
'<br />';

            echo 
'<br />';
            include_once (
H.'shaxty/foot.php');
            exit;

       }
    }


    
/* Фильтрация строк */
    
public static function checkin($str)
    {
        
$str htmlentities($strENT_QUOTES'UTF-8');
        if (
function_exists('iconv')) {
            
$str iconv("UTF-8""UTF-8"$str);
        }

        
// Фильтруем невидимые символы
        
$str preg_replace('/[^P{C}n]+/u'''$str);

        return 
trim($str);
    }

    
/* Маскировка ссылок в тексте */
    
public static function antilink($var)
    {
        
$var preg_replace('~\[url=(https?://.+?)\](.+?)\[/url\]|(https?://(www.)?[0-9a-z.-]+.[0-9a-z]{2,6}[0-9a-zA-Z/?.~&amp;_=/%-:#]*)~''###'$var);
        
$replace = array(
            
'.ru' => '***',
            
'.com' => '***',
            
'.biz' => '***',
            
'.cn' => '***',
            
'.in' => '***',
            
'.net' => '***',
            
'.org' => '***',
            
'.info' => '***',
            
'.mobi' => '***',
            
'.wen' => '***',
            
'.kmx' => '***',
            
'.h2m' => '***'
        
);

        return 
strtr($var$replace);
    }



    
/**
     * Обработка текстов перед выводом на экран
     *
     * @param string $str
     * @param int $br   Параметр обработки переносов строк
     *                     0 - не обрабатывать (по умолчанию)
     *                     1 - обрабатывать
     *                     2 - вместо переносов строки вставляются пробелы
     * @param int $tags Параметр обработки тэгов
     *                     0 - не обрабатывать (по умолчанию)
     *                     1 - обрабатывать
     *                     2 - вырезать тэги
     *
     * @return string
     */

 
public static function text($str$br 1$tags 1) {

    if (
$br == 1)
        
$str nl2br($str);
    elseif (
$br == 2)
        
$str str_replace("rn"' '$str);
    if (
$tags == 1){
        
$str bbcode::tags($str);
        
/*$str = bbcode::bb_code($str);

      $str = bbcode::smiles($str);
     $str = bbcode::img_bb($str);*/

    
}elseif ($tags == 2){
        
$str notags($str);
        }


        return 
trim($str);
    }


    
/**
     * Сообщения об ошибках
     *
     * @param string|array $error Сообщение об ошибке (или массив с сообщениями)
     * @param string $link  Необязательная ссылка перехода
     *
     * @return bool|string
     */
    
public static function errors($error ''$link '')
    {


            
$title 'Ошибка';
            
$align 'left';
            
$head 'Ошибка';
            include_once (
H.'shaxty/head.php');

            echo 
'<p>'.$error.'</p> '.(!empty($link) ? '<p>' $link '</p>' '');


            include_once (
H.'shaxty/foot.php');
            exit;


    }



/* Определение мобильного браузера */
    
public static function is_mobile()
    {

        if (isset(
$_SESSION['is_mobile'])) {
            return 
$_SESSION['is_mobile'] == 0;
        }

        
$user_agent = isset($_SERVER['HTTP_USER_AGENT']) ? strtolower($_SERVER['HTTP_USER_AGENT']) : '';
        
$accept = isset($_SERVER['HTTP_ACCEPT']) ? strtolower($_SERVER['HTTP_ACCEPT']) : '';

        if ((
strpos($accept'text/vnd.wap.wml') !== FALSE) || (strpos($accept'application/vnd.wap.xhtml+xml') !== FALSE))  return 1;

        if (isset(
$_SERVER['HTTP_X_WAP_PROFILE']) || isset($_SERVER['HTTP_PROFILE']))  return 1;

        if (
preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)/|plucker|pocket|psp|symbian|treo|up.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i'$user_agent)
            || 
preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|/(k|l|u)|50|54|e-|e/|-[a-w])|libw|lynx|m1-w|m3ga|m50/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(-|2|g)|yas-|your|zeto|zte-/i'substr($user_agent04))
        ) {
            
$_SESSION['is_mobile'] = 1;
            return 
1;
        }
        
$_SESSION['is_mobile'] = 0;
        return 
0;
    }


         
// </div><br />
public static function sp_head($name NULL$name2 NULL$d1 NULL$d2 NULL){
$spoil rand(0000,9999);

if(
self::is_mobile()==0){

return 
''.$d1.$name.' <span id="sp'.$spoil.'" style="line-height: 18px"><a href="#" onClick="spoiler('.$spoil.'); return false" class="href">(Отобразить)</a></span>'.$d2.'<div id="spoiler'.$spoil.'" style="display: none"> ';

}else{

return 
$d1.$name2.$d2;

}

}

public static function 
sp_foot($var NULL){

if(
self::is_mobile()==0){

return 
'</div>';

}

}


public static function 
file_size($size NULL){
$filesizename = array(" Байт"" Кб"" Мб"" Гб");
return 
$size round($size/pow(1024, ($i floor(log($size1024)))), 2) . $filesizename[$i] : '0 Байт';
}



public static function 
del($text NULL)
{
    
$text=str_replace('&amp;',''$text);
    
$text=str_replace('ndash;',''$text);
    
$text=str_replace(' ','_'$text);
    
$text=str_replace('"',''$text);
    
$text=str_replace("'",''$text);
    
$text=str_replace('&',''$text);
    
$text=str_replace('$',''$text);
    
$text=str_replace('>',''$text);
    
$text=str_replace('<',''$text);
    
$text=str_replace('~',''$text);
    
$text=str_replace('`',''$text);
    
$text=str_replace('#',''$text);
    
$text=str_replace('*',''$text);
    
$text=str_replace('&#39',''$text);
    
$text=str_replace('/','_'$text);
    return 
$text;
}

// Функция "Вы уверены?"
public static function danger($link=NULL,$kom=NULL,$log_mod=NULL,$log=NULL,$end=NULL)
{


$danger = isset ($_REQUEST['danger']) ? trim($_REQUEST['danger']) : '';
if (empty(
$danger)){

if(isset(
$log_mod)){

$msglog = isset ($_REQUEST['msglog']) ? self::checkin($_REQUEST['msglog']) : '';

if (empty(
$msglog)){
echo 
'<form action="'.$link.'" method="post" enctype="multipart/form-data">';
if(
$kom==NULL)echo '<br /><b>ВНИМАНИЕ!</b> Данное действие приведет к безвозвратной потере данных<br />';
else echo 
'<br />'.$kom.'<br />';

echo 
"<br />Причина удаления:<br/>";
echo
'<textarea cols="'.core::$user['pole2'].'" rows="'.core::$user['pole1'].'" name="msglog" ></textarea><br />';

echo 
'<br /><input type="submit" class="ibutton" value="Продолжить"/> | <a href="'.htmlspecialchars(getenv("HTTP_REFERER")).'">Отмена</a></form><br /><br />';
echo 
'<br />';

}else{
if (
func::utf_strlen($msglog) < 10)func::errors('<b>Укажите причину!</b>');

$messs ''.$log.'<br /> Причина: <b>'.$msglog.'</b>';
core::$db->query ("INSERT INTO logs (log,msg,time,user_id) VALUES (?,?,?,?)",array($log_mod,$messs,core::$realtime,core::$user['id']));

}
}else{

echo 
'<form action="'.$link.'&amp;danger=danger" method="post" enctype="multipart/form-data">';
if(
$kom==NULL)echo '<br /><b>ВНИМАНИЕ!</b> Данное действие приведет к безвозвратной потере данных<br />';
else echo 
'<br />'.$kom.'<br />';


echo 
'<br /><input type="submit" class="ibutton" value="Продолжить"/> | <a href="'.htmlspecialchars(getenv("HTTP_REFERER")).'">Отмена</a></form><br /><br />';
echo 
'<br />';         // <a href="'.$link.'&amp;danger=danger">'.$link.'</a>



}
}
echo 
$end;
include_once (
H.'shaxty/foot.php');
}



public static function 
slova($str NULL,$msg1 NULL,$msg2 NULL,$msg3 NULL) {
$str = (int)$str;

$str1 abs($str) % 100;
$str2 $str 10;

if (
$str1 10 && $str1 20) return $str .' '$msg3;
if (
$str2 && $str2 5) return $str .' '$msg2;
if (
$str2 == 1) return $str .' '$msg1;

return 
$str .' '$msg3;
}



// ------------------ Функция перекодировки из UTF в WIN --------------------//
public static function utf_to_win($str NULL) {
    if (
function_exists('mb_convert_encoding')) return mb_convert_encoding($str'windows-1251''utf-8');
    if (
function_exists('iconv')) return iconv('utf-8''windows-1251'$str);

    
$utf8win1251 = array("А" => "xC0""Б" => "xC1""В" => "xC2""Г" => "xC3""Д" => "xC4""Е" => "xC5""Ё" => "xA8""Ж" => "xC6""З" => "xC7""И" => "xC8""Й" => "xC9""К" => "xCA""Л" => "xCB""М" => "xCC",
        
"Н" => "xCD""О" => "xCE""П" => "xCF""Р" => "xD0""С" => "xD1""Т" => "xD2""У" => "xD3""Ф" => "xD4""Х" => "xD5""Ц" => "xD6""Ч" => "xD7""Ш" => "xD8""Щ" => "xD9""Ъ" => "xDA",
        
"Ы" => "xDB""Ь" => "xDC""Э" => "xDD""Ю" => "xDE""Я" => "xDF""а" => "xE0""б" => "xE1""в" => "xE2""г" => "xE3""д" => "xE4""е" => "xE5""ё" => "xB8""ж" => "xE6""з" => "xE7",
        
"и" => "xE8""й" => "xE9""к" => "xEA""л" => "xEB""м" => "xEC""н" => "xED""о" => "xEE""п" => "xEF""р" => "xF0""с" => "xF1""т" => "xF2""у" => "xF3""ф" => "xF4""х" => "xF5",
        
"ц" => "xF6""ч" => "xF7""ш" => "xF8""щ" => "xF9""ъ" => "xFA""ы" => "xFB""ь" => "xFC""э" => "xFD""ю" => "xFE""я" => "xFF");

    return 
strtr($str$utf8win1251);
}
// ------------------ Функция перекодировки из WIN в UTF --------------------//
public static function win_to_utf($str NULL) {
    if (
function_exists('mb_convert_encoding')) return mb_convert_encoding($str'utf-8''windows-1251');
    if (
function_exists('iconv')) return iconv('windows-1251''utf-8'$str);

    
$win1251utf8 = array("xC0" => "А""xC1" => "Б""xC2" => "В""xC3" => "Г""xC4" => "Д""xC5" => "Е""xA8" => "Ё""xC6" => "Ж""xC7" => "З""xC8" => "И""xC9" => "Й""xCA" => "К""xCB" => "Л""xCC" => "М",
        
"xCD" => "Н""xCE" => "О""xCF" => "П""xD0" => "Р""xD1" => "С""xD2" => "Т""xD3" => "У""xD4" => "Ф""xD5" => "Х""xD6" => "Ц""xD7" => "Ч""xD8" => "Ш""xD9" => "Щ""xDA" => "Ъ",
        
"xDB" => "Ы""xDC" => "Ь""xDD" => "Э""xDE" => "Ю""xDF" => "Я""xE0" => "а""xE1" => "б""xE2" => "в""xE3" => "г""xE4" => "д""xE5" => "е""xB8" => "ё""xE6" => "ж""xE7" => "з",
        
"xE8" => "и""xE9" => "й""xEA" => "к""xEB" => "л""xEC" => "м""xED" => "н""xEE" => "о""xEF" => "п""xF0" => "р""xF1" => "с""xF2" => "т""xF3" => "у""xF4" => "ф""xF5" => "х",
        
"xF6" => "ц""xF7" => "ч""xF8" => "ш""xF9" => "щ""xFA" => "ъ""xFB" => "ы""xFC" => "ь""xFD" => "э""xFE" => "ю""xFF" => "я");

    return 
strtr($str$win1251utf8);
}
// ------------------ Функция преобразования в нижний регистр для UTF ------------------//
public static function rus_utf_tolower($str NULL) {
    if (
function_exists('mb_strtolower')) return mb_strtolower($str'utf-8');

    
$arraytolower = array('А' => 'а''Б' => 'б''В' => 'в''Г' => 'г''Д' => 'д''Е' => 'е''Ё' => 'ё''Ж' => 'ж''З' => 'з''И' => 'и''Й' => 'й''К' => 'к''Л' => 'л''М' => 'м''Н' => 'н''О' => 'о''П' => 'п''Р' => 'р''С' => 'с''Т' => 'т''У' => 'у''Ф' => 'ф''Х' => 'х''Ц' => 'ц''Ч' => 'ч''Ш' => 'ш''Щ' => 'щ''Ь' => 'ь''Ъ' => 'ъ''Ы' => 'ы''Э' => 'э''Ю' => 'ю''Я' => 'я',
        
'A' => 'a''B' => 'b''C' => 'c''D' => 'd''E' => 'e''I' => 'i''F' => 'f''G' => 'g''H' => 'h''J' => 'j''K' => 'k''L' => 'l''M' => 'm''N' => 'n''O' => 'o''P' => 'p''Q' => 'q''R' => 'r''S' => 's''T' => 't''U' => 'u''V' => 'v''W' => 'w''X' => 'x''Y' => 'y''Z' => 'z');

    return 
strtr($str$arraytolower);
}

public static function 
kikt($t NULL) {

$t2 $t-core::$realtime;
if(
$t2>(60*60*24*30)) $t3 round($t2/(60*60*24*30)).' месяцев';
else if(
$t2>(60*60*24)) $t3 round($t2/(60*60*24)).' дней';
else if(
$t2>(60*60)) $t3 round($t2/(60*60)).' часов';
else if(
$t2>60$t3 round($t2/60).' минут';
else 
$t3 $t2.' секунд';
return 
$t3;
}


// ----------------------- Функция обрезки строки с условием -------------------------//
public static function subtok($string NULL$chr NULL$pos NULL$len null) {
    return 
implode($chrarray_slice(explode($chr$string), $pos$len));
}


// ------------------ Функция генерирования паролей --------------------//
public static function generate_password($length NULL) {
    if (empty(
$length)) {
        
$length mt_rand(1012);
    }
    
$salt str_split('aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ0123456789');

    
$makepass "";
    for (
$i 0$i $length$i++) {
        
$makepass .= $salt[array_rand($salt)];
    }
    return 
$makepass;
}



// ---------- Аналог функции substr для UTF-8 ---------//
public static function utf_substr($str NULL$offset NULL$length null) {
    if (
function_exists('mb_substr')) return mb_substr($str$offset$length'utf-8');
    if (
function_exists('iconv_substr')) return iconv_substr($str$offset$length'utf-8');

    
$str self::utf_to_win($str);
    
$str substr($str$offset$length);
    return 
self::win_to_utf($str);
}
// ---------------------- Аналог функции strlen для UTF-8 -----------------------//
public static function utf_strlen($str NULL) {
    if (
function_exists('mb_strlen')) return mb_strlen($str'utf-8');
    if (
function_exists('iconv_strlen')) return iconv_strlen($str'utf-8');
    if (
function_exists('utf8_decode')) return strlen(utf8_decode($str));
    return 
strlen(self::utf_to_win($str));
}
// ---------- Аналог функции wordwrap для UTF-8 ---------//
public static function utf_wordwrap($str NULL$width 75$break ' '$cut 1) {
    
$str self::utf_to_win($str);
    
$str wordwrap($str$width$break$cut);
    return 
self::win_to_utf($str);
}
// ----------------------- Функция определения кодировки ------------------------//
public static function is_utf($str NULL) {
    
$c 0;
    
$b 0;
    
$bits 0;
    
$len strlen($str);
    for(
$i 0$i $len$i++) {
        
$c ord($str[$i]);
        if (
$c 128) {
            if ((
$c >= 254)) return false;
            elseif (
$c >= 252$bits 6;
            elseif (
$c >= 248$bits 5;
            elseif (
$c >= 240$bits 4;
            elseif (
$c >= 224$bits 3;
            elseif (
$c >= 192$bits 2;
            else return 
false;
            if ((
$i $bits) > $len) return false;
            while (
$bits 1) {
                
$i++;
                
$b ord($str[$i]);
                if (
$b 128 || $b 191) return false;
                
$bits--;
            }
        }
    }
    return 
true;
}
// ----------------------- Функция отправки письма по e-mail ------------------------//
public static function addmail($usermail NULL$subject NULL$msg NULL$mail NULL$name NULL) {


    if (
$mail == "") {
        
$mail core::$set['emails'];
        
$name core::$set['nickname'];
    }

   
/* $subject = self::utf_to_win($subject);
    $msg = self::utf_to_win($msg);
    $name = self::utf_to_win($name);

    $subject = convert_cyr_string($subject, 'w', 'k');
    $msg = convert_cyr_string($msg, 'w', 'k');
    $name = convert_cyr_string($name, 'w', 'k');*/

    
$subject '=?UTF-8?B?'.base64_encode($subject).'?=';

    
$adds "From: =?UTF-8?B?".base64_encode($name)."?= <".$mail.">n";
    
$adds .= "X-sender: =?UTF-8?B?".base64_encode($name)."?= <".$mail.">n";
    
$adds .= "Content-Type: text/plain; charset=utf-8n";
    
$adds .= "MIME-Version: 1.0n";
    
$adds .= "Content-Transfer-Encoding: 8bitn";
    
$adds .= "X-Mailer: PHP v.".phpversion()."n";
    
$adds .= "Date: ".date("r")."n";

    return 
mail($usermail$subject$msg$adds);
}
// Вывод времени
public static function times($times=NULL)
{

if((
core::$realtime-$times)<=1){
$timesp 'только что';
return 
$timesp;
}else
if((
core::$realtime-$times)<=60){
$timesp self::slova(((core::$realtime-$times)),'секунду','секунды','секунд').' назад';
return 
$timesp;
}else if((
core::$realtime-$times)<=3600){$timesp self::slova(((core::$realtime-$times)/60),'минуту','минуты','минут').' назад';
return 
$timesp;
}else{

$today date("j M Y"core::$realtime);

$today date("j M Y"core::$realtime);
$yesterday date("j M Y"strtotime("-1 day"));

$timesp=date("j M Y  в H:i"$times);

$timesp str_replace($today'Сегодня'$timesp);
$timesp str_replace($yesterday'Вчера'$timesp);

$timesp strtr($timesp, array ("Jan" => "Янв","Feb" => "Фев","Mar" => "Марта","May" => "Мая","Apr" => "Апр","Jun" => "Июня","Jul" => "Июля","Aug" => "Авг","Sep" => "Сент","Oct" => "Окт","Nov" => "Ноября","Dec" => "Дек",));
return 
$timesp;
}
}



// Вывод времени (старый)
public static function times_old($times=NULL)
{

$today date("j M Y"core::$realtime);

$today date("j M Y"core::$realtime);
$yesterday date("j M Y"strtotime("-1 day"));

$timesp=date("j M Y  в H:i"$times);

$timesp strtr($timesp, array ("Jan" => "Янв","Feb" => "Фев","Mar" => "Марта","May" => "Мая","Apr" => "Апр","Jun" => "Июня","Jul" => "Июля","Aug" => "Авг","Sep" => "Сент","Oct" => "Окт","Nov" => "Ноября","Dec" => "Дек",));
return 
$timesp;
}


public static function 
timecount($var NULL) {
if (
$var 0$var 0;
$day ceil($var 86400);
if (
$var 345600) return $day ' дней';
elseif (
$var >= 172800) return $day ' дня';
elseif (
$var >= 86400) return '1 день';
else return 
gmdate('G:i:s'$var);

}


// --------------------- Функция шифровки Email-адреса ------------------------//
public static function crypt_mail($mail NULL) {
    
$output "";
    
$strlen strlen($mail);
    for (
$i 0$i $strlen$i++) {
        
$output .= '&#' ord($mail[$i]) . ';';
    }
    return 
$output;
}



/*public static function utf_strlens($str)
{
$rus=array('й','ц','у','к','е','н','г','ш','щ','з','х','ъ','ф','ы','в','а','п','р','о','л','д','ж','э','я','ч','с','м','и','т','ь','б','ю','Й','Ц','У','К','Е','Н','Г','Ш','Щ','З','Х','Ъ','Ф','Ы','В','А','П','Р','О','Л','Д','Ж','Э','Я','Ч','С','М','И','Т','Ь','Б','Ю');
return strlen(str_replace($rus, '0', $str));
}
*/
public static function tr_loads($in NULL)
{
return 
preg_replace('#[^a-z0-9_-.()]+#ui''_'$in);
}

public static function 
retranslit($in NULL)
{
$trans1= array("'",'`',',',' ',"Ё","Ж","Ч","Ш","Щ","Э","Ю","Я","ё","ж","ч","ш","щ","э","ю","я","А","Б","В","Г","Д","Е","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ь","Ы","а","б","в","г","д","е","з","и","й","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ь","ы");
$trans2= array('_','_','_','_',"JO","ZH","CH","SH","SCH","Je","Jy","Ja","jo","zh","ch","sh","sch","je","jy","ja","A","B","V","G","D","E","Z","I","J","K","L","M","N","O","P","R","S","T","U","F","H","C","","Y","a","b","v","g","d","e","z","i","j","k","l","m","n","o","p","r","s","t","u","f","h","c","","y");
return 
str_replace($trans1,$trans2,$in);
}


/* Транслитерация с Русского в латиницу */
public static function rus_lat($str NULL) {
    
$str strtr($str, array (
        
'а' => 'a',
        
'б' => 'b',
        
'в' => 'v',
        
'г' => 'g',
        
'д' => 'd',
        
'е' => 'e',
        
'ё' => 'e',
        
'ж' => 'j',
        
'з' => 'z',
        
'и' => 'i',
        
'й' => 'i',
        
'к' => 'k',
        
'л' => 'l',
        
'м' => 'm',
        
'н' => 'n',
        
'о' => 'o',
        
'п' => 'p',
        
'р' => 'r',
        
'с' => 's',
        
'т' => 't',
        
'у' => 'u',
        
'ф' => 'f',
        
'х' => 'h',
        
'ц' => 'c',
        
'ч' => 'ch',
        
'ш' => 'sh',
        
'щ' => 'sch',
        
'ъ' => "",
        
'ы' => 'y',
        
'ь' => "",
        
'э' => 'ye',
        
'ю' => 'yu',
        
'я' => 'ya'
    
));
    return 
$str;
}


/* Транслитерация текста */
    
public static function translit($str NULL)
    {
        
$replace = array(
            
'a' => 'а',
            
'b' => 'б',
            
'v' => 'в',
            
'g' => 'г',
            
'd' => 'д',
            
'e' => 'е',
            
'yo' => 'ё',
            
'zh' => 'ж',
            
'z' => 'з',
            
'i' => 'и',
            
'j' => 'й',
            
'k' => 'к',
            
'l' => 'л',
            
'm' => 'м',
            
'n' => 'н',
            
'o' => 'о',
            
'p' => 'п',
            
'r' => 'р',
            
's' => 'с',
            
't' => 'т',
            
'u' => 'у',
            
'f' => 'ф',
            
'h' => 'х',
            
'c' => 'ц',
            
'ch' => 'ч',
            
'w' => 'ш',
            
'sh' => 'щ',
            
'q' => 'ъ',
            
'y' => 'ы',
            
'x' => 'э',
            
'yu' => 'ю',
            
'ya' => 'я',
            
'A' => 'А',
            
'B' => 'Б',
            
'V' => 'В',
            
'G' => 'Г',
            
'D' => 'Д',
            
'E' => 'Е',
            
'YO' => 'Ё',
            
'ZH' => 'Ж',
            
'Z' => 'З',
            
'I' => 'И',
            
'J' => 'Й',
            
'K' => 'К',
            
'L' => 'Л',
            
'M' => 'М',
            
'N' => 'Н',
            
'O' => 'О',
            
'P' => 'П',
            
'R' => 'Р',
            
'S' => 'С',
            
'T' => 'Т',
            
'U' => 'У',
            
'F' => 'Ф',
            
'H' => 'Х',
            
'C' => 'Ц',
            
'CH' => 'Ч',
            
'W' => 'Ш',
            
'SH' => 'Щ',
            
'Q' => 'Ъ',
            
'Y' => 'Ы',
            
'X' => 'Э',
            
'YU' => 'Ю',
            
'YA' => 'Я'
        
);

        return 
strtr($str$replace);
    }



public static function 
page($k_page=1){ // Выдает текущую страницу
$page=1;
$page=htmlspecialchars(trim($page));
$k_page=htmlspecialchars(trim($k_page));
if (isset(
$_GET['page'])){
if (
$_GET['page']=='end')$page=intval($k_page);elseif(is_numeric($_GET['page'])) $page=intval($_GET['page']);}
if (
$page<1)$page=1;
if (
$page>$k_page)$page=$k_page;
return 
$page;}

public static function 
k_page($k_post=0,$k_p_str=10){ // Высчитывает количество страниц
if ($k_post!=0){$v_pages=ceil($k_post/$k_p_str);return $v_pages;}
else return 
1;}

public static function 
str($link='?',$k_page=1,$page=1){ // Вывод номеров страниц (только на первый взгляд кажется сложно ;))

if ($page<1)$page=1;
$page=htmlspecialchars(trim($page));
$k_page=htmlspecialchars(trim($k_page));
echo 
$divnav;

if (
$page>1)echo '<a href="'.$link.'page='.($page-1).'">&lt;&lt; Назад</a> ';
else echo 
"&lt;&lt; Назад ";
echo 
" | ";
if (
$page<$k_page)echo ' <a href="'.$link.'page='.($page+1).'" >Вперед &gt;&gt;</a>';
else echo 
" Вперед &gt;&gt;";

echo 
"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
if (
$page!=1)echo "<a href="".$link."page=1" >1</a>";else echo "<b>1</b>";
for (
$ot=-3$ot<=3$ot++){
if (
$page+$ot>&& $page+$ot<$k_page){
if (
$ot==-&& $page+$ot>2)echo " ..";
if (
$ot!=0)echo "|<a href="".$link."page=".($page+$ot)."" >".($page+$ot)."</a>";else echo "|<b>".($page+$ot)."</b>";
if (
$ot==&& $page+$ot<$k_page-1)echo "|..";}}
if (
$page!=$k_page)echo "|<a href="".$link."page=end" >$k_page</a>";elseif ($k_page>1)echo "|<b>$k_page</b>";
echo 
$div9;
}

public static function 
navf($link='?',$k_page=1,$page=1){ // Вывод номеров страниц (только на первый взгляд кажется сложно ;))

if ($page<1)$page=1;
$page=htmlspecialchars(trim($page));
$k_page=htmlspecialchars(trim($k_page));
echo 
'<div class="nav">';
//if ($page!=1)echo "<a href="".$link."/1">&lt;&lt;</a> ";
if ($page>1)echo "<a href="".$link."/".($page-1)."">&lt;&lt; Назад</a> ";
else echo 
"&lt;&lt; Назад ";
echo 
" | ";
if (
$page<$k_page)echo " <a href="".$link."/".($page+1)."" >Вперед &gt;&gt;</a>";
else echo 
" Вперед &gt;&gt;";
//if ($page!=$k_page)echo " <a href="".$link."/end">&gt;&gt;</a>";
echo "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
if (
$page!=1)echo "<a href="".$link."/1" >1</a>";else echo "<b>1</b>";
for (
$ot=-3$ot<=3$ot++){
if (
$page+$ot>&& $page+$ot<$k_page){
if (
$ot==-&& $page+$ot>2)echo " ..";
if (
$ot!=0)echo "|<a href="".$link."/".($page+$ot)."" >".($page+$ot)."</a>";else echo "|<b>".($page+$ot)."</b>";
if (
$ot==&& $page+$ot<$k_page-1)echo "|..";}}
if (
$page!=$k_page)echo "|<a href="".$link."/end" >$k_page</a>";elseif ($k_page>1)echo "|<b>$k_page</b>";
echo 
'</div>';
}



public static function 
nav($link='?',$k_page=1,$page=1){ // Вывод номеров страниц (только на первый взгляд кажется сложно ;))

if ($page<1)$page=1;
$page=htmlspecialchars(trim($page));
$k_page=htmlspecialchars(trim($k_page));

echo 
'<div class="nav">';

if (
$page>1)echo '<a href="'.$link.'page='.($page-1).'">&lt;&lt; Назад</a> ';
else echo 
"&lt;&lt; Назад ";
echo 
" | ";
if (
$page<$k_page)echo ' <a href="'.$link.'page='.($page+1).'" >Вперед &gt;&gt;</a>';
else echo 
" Вперед &gt;&gt;";

echo 
"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
if (
$page!=1)echo "<a href="".$link."page=1" >1</a>";else echo "<b>1</b>";
for (
$ot=-3$ot<=3$ot++){
if (
$page+$ot>&& $page+$ot<$k_page){
if (
$ot==-&& $page+$ot>2)echo " ..";
if (
$ot!=0)echo "|<a href="".$link."page=".($page+$ot)."" >".($page+$ot)."</a>";else echo "|<b>".($page+$ot)."</b>";
if (
$ot==&& $page+$ot<$k_page-1)echo "|..";}}
if (
$page!=$k_page)echo "|<a href="".$link."page=end" >$k_page</a>";elseif ($k_page>1)echo "|<b>$k_page</b>";
echo 
'</div>';
}



public static function 
pagination($link='?',$k_page=1,$page=1){ // Вывод номеров страниц для диза на Bootstrap

if ($page<1)$page=1;
$page=htmlspecialchars(trim($page));
$k_page=htmlspecialchars(trim($k_page));

echo 
'<div class="pagination"><ul class="pagination">';

if (
$page>1){
echo 
'<li class="control"><a href="'.$link.'page=1">Первая</a></li>';
echo 
'<li class="control"><a href="'.$link.'page='.($page-1).'">&laquo;</a></li>';

}else{
echo 
'<li class="disabled"><span>Первая</span></li>';
echo 
'<li class="disabled"><span>&laquo;</span></li>';
}

if (
$page!=1)echo '<li><a href="'.$link.'page=1">1</a></li>';
else
echo 
'<li class="active"><a href="'.$link.'page=1">1</a></li>';


for (
$ot=-3$ot<=3$ot++){
if (
$page+$ot>&& $page+$ot<$k_page){


if (
$ot!=0)echo '<li><a href="'.$link.'page='.($page+$ot).'">'.($page+$ot).'</a></li>';
else
echo 
'<li class="active"><a href="'.$link.'page='.($page+$ot).'">'.($page+$ot).'</a></li>';

}
}


if (
$page!=$k_page){
echo 
'<li class="control"><a href="'.$link.'page=end">'.$k_page.'</a></li>';
echo 
'<li class="control"><a href="'.$link.'page='.($page+1).'">&raquo;</a></li>';
echo 
'<li class="control"><a href="'.$link.'page=end">Последняя</a></li>';


}else{
echo 
'<li class="active"><a href="'.$link.'page=end">'.$page.'</a></li>';
echo 
'<li class="disabled"><span>&raquo;</span></li>';
echo 
'<li class="disabled"><span>Последняя</span></li>';

}

echo 
'</ul></div>';

}




public static function 
otkuda($ref NULL)
{
if (
eregi('^/forum/',$ref))
$mesto='Форум';
elseif (
eregi('^/exit.php',$ref))
$mesto='Выход';
elseif (
eregi('^/in.php',$ref))
$mesto='Авторизация';
elseif (
eregi('^/??$',$ref))
$mesto='На главной';
elseif (
eregi('^/user/',$ref))
$mesto='Личный Кабинет';
elseif (
eregi('^/info/',$ref))
$mesto='Смотрит анкету';
elseif (
eregi('^/rules.php',$ref))
$mesto='Правила';
elseif (
eregi('^/onl.php',$ref))
$mesto='Kтo онлайн?';
elseif (
eregi('^/onl.php',$ref))
$mesto='Kтo онлайн?';
//
elseif (eregi('^/news.php',$ref))
$mesto='Новости';
elseif (
eregi('^/gbook.php',$ref))
$mesto='Гостевая книга';
elseif (
eregi('^/down/',$ref))
$mesto='Архив файлов';
elseif (
eregi('^/usscripts/',$ref))
$mesto='Скрипты Пользователей';
elseif (
eregi('^/fo/',$ref))
$mesto='Обменник файлов';
elseif (
eregi('^/wm_infa/',$ref))
$mesto='Информация Wap-мастеру';
elseif (
eregi('^/votes.php',$ref))
$mesto='Голосования';

elseif (
eregi('^/akcyi.php',$ref))
$mesto='Акции';
elseif (
eregi('^/konkurs.php',$ref))
$mesto='Конкурсы';
elseif (
eregi('^/objavs.php',$ref))
$mesto='Объявление';
elseif (
eregi('^/messages.php',$ref))
$mesto='Смотрит приват';
elseif (
eregi('^/board.php',$ref))
$mesto='Доска почета';
elseif (
eregi('^/stat.php',$ref))
$mesto='Статистика сайта';
elseif (
eregi('^/faq.php',$ref))
$mesto='Информация/FAQ';


else
$mesto=false;
return 
$mesto;
}
//////////////////////////////////

public static function posts_min($nk NULL$ref NULL)
{


$us core:: $db -> queryFetch("SELECT * FROM `users` WHERE `id`=? LIMIT 1;", array($nk));

if(
$ref=='forum'){
$us['postsf']--;
$us['posts']--;
/*$us['dayp']--;*/
}
if(
$ref=='komm'){
$us['postsk']--;
$us['posts']--;
/*$us['dayp']--;*/
}
if(
$ref=='guest'){
$us['postsg']--;
$us['posts']--;
/*$us['dayp']--;*/
}
if(
$ref=='chat'){
$us['postsc']--;
$us['posts']--;
/*$us['dayp']--;*/
}


mysql_query("UPDATE `users` SET `posts` = '$us[posts]', dayp = '$us[dayp]', postsf = '$us[postsf]', postsk = '$us[postsk]', postsg = '$us[postsg]', postsc = '$us[postsc]' WHERE `id` = '$us[id]';");

}

//////////////////////////////////

public static function posts_add($ref NULL)
{


if (isset(
core::$user['id']))
{
if(
$ref=='forum'){core::$user['postsf']++;
core::$user['posts']++;
core::$user['dayp']++;
}
if(
$ref=='komm'){core::$user['postsk']++;
core::$user['posts']++;
core::$user['dayp']++;
}
if(
$ref=='guest'){core::$user['postsg']++;
core::$user['posts']++;
core::$user['dayp']++;
}
if(
$ref=='chat'){core::$user['postsc']++;
core::$user['posts']++;
core::$user['dayp']++;
}


mysql_query("UPDATE `users` SET `posts` = '".core::$user['posts']."', dayp = '".core::$user[dayp]."', postsf = '".core::$user[postsf]."', postsk = '".core::$user[postsk]."', postsg = '".core::$user[postsg]."', postsc = '".core::$user[postsc]."' WHERE `id` = '".core::$user[id]."';");
}
}

public static function 
forum_new() {
  
//WHERE `forum_t`.`close` != '1' AND   Только открытые
$cmac core:: $db -> querySingle("select count(id) as num from `forum_t` LEFT JOIN `forum_rdm` ON `forum_t`.`id` = `forum_rdm`.`t_id` AND `forum_rdm`.`user_id` = '" core::$user['id'] . "' WHERE `forum_t`.`levels` <= '" core::$level "' AND (`forum_rdm`.`t_id` Is Null OR `forum_t`.`time` > `forum_rdm`.`time`)");

return 
$cmac;

}



// Функция вывода аватара пользователя//
public static function user_avatars($ref NULL) {

if (
core::$user['forum_ava']==1){
if(
$ref=== '0')return '<img src="'.H2.'avatars/273.gif" width="32" height="32" alt="" /> ';
if(
$ref=== '01')return '<img src="'.H2.'avatars/273.gif" width="32" height="32" alt="" /> ';
if(
$ref=== '02')return '<img src="'.H2.'avatars/273.gif" width="32" height="32" alt="" /> ';
if(
$ref=== '03')return '<img src="'.H2.'avatars/273.gif" width="32" height="32" alt="" /> ';

if(
user::user_inf($ref,'myavatar')){
return 
'<img src="/'.user::user_inf($ref,'myavatar').'" width="32" height="32" alt="" /> ';
}else return 
'<img src="'.H2.'avatars/noavatar.gif" width="32" height="32" alt="" /> ';
}

}


//Функция вывода пользовательских тегов
public static function quickcode() {

}
// Функция вывода быстрых смайлов
public static function quicksmiles() {

}
//Вспомогательная функция быстрой вставки
public static function quickpaste($form NULL) {
  echo 
'<script language="JavaScript" type="text/javascript">
function tag(text1, text2) {
if ((document.selection)) {
document.form.' 
$form '.focus();
document.form.document.selection.createRange().text = text1+document.form.document.selection.createRange().text+text2;
} else if(document.forms['
form'].elements['' . $form . ''].selectionStart!=undefined) {
var element = document.forms['
form'].elements['' . $form . ''];
var str = element.value;
var start = element.selectionStart;
var length = element.selectionEnd - element.selectionStart;
element.value = str.substr(0, start) + text1 + str.substr(start, length) + text2 + str.substr(start + length);
} else document.form.' 
$form '.value += text1+text2;
}
</script>'
;
 echo 
'BB-код<br />';
  echo 
'<a href="#form" onclick="javascript:tag('[url=]', '[/url]');"><img src="' H2 'img/editor/a.gif" alt="url" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[b]', '[/b]');"><img src="' H2 'img/editor/b.gif" alt="b" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[big]', '[/big]');"><img src="' H2 'img/editor/big.gif" alt="big" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[small]', '[/small]');"><img src="' H2 'img/editor/small.gif" alt="small" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[i]', '[/i]');"><img src="' H2 'img/editor/i.gif" alt="i" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[u]', '[/u]');"><img src="' H2 'img/editor/u.gif" alt="u" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[q]', '[/q]');"><img src="' H2 'img/editor/q.gif" alt="q" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[del]', '[/del]');"><img src="' H2 'img/editor/del.gif" alt="del" /></a>';
 echo 
'<a href="#form" onclick="javascript:tag('[img]', '[/img]');"><img src="' H2 'img/editor/img.gif" alt="hide" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[code]', '[/code]');"><img src="' H2 'img/editor/code.gif" alt="code" /></a>';

  echo 
'<a href="#form" onclick="javascript:tag('[spoiler]', '[/spoiler]');"><img src="' H2 'img/editor/spoiler.gif" alt="code" /></a>';

  echo 
'<a href="#form" onclick="javascript:tag('[red]', '[/red]');"><img src="' H2 'img/editor/red.gif" alt="red" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[green]', '[/green]');"><img src="' H2 'img/editor/green.gif" alt="green" /></a>';
  echo 
'<a href="#form" onclick="javascript:tag('[blue]', '[/blue]');"><img src="' H2 'img/editor/blue.gif" alt="blue" /></a>';
  echo 
'<br />';
  echo 
'Смайлы<br />';
  echo 
'<a href="#form" onclick="javascript:tag(' :-) ', '');"><img src="' H2 'smiles/smile.gif" alt=":)" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :-( ', '');"><img src="' H2 'smiles/sad.gif" alt=":(" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :-', '');"><img src="' H2 'smiles/biggrin.gif" alt=":E" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' =)) ', '');"><img src="' H2 'smiles/biggrin2.gif" alt=":E" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :-] ', '');"><img src="' H2 'smiles/dovolen.gif" alt="hello" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' 8-) ', '');"><img src="' H2 'smiles/poh.gif" alt="cry" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' ;-) ', '');"><img src="' H2 'smiles/wink.gif" alt="obana" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :-/ ', '');"><img src="' H2 'smiles/hm.gif" alt="infat" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :ok', '');"><img src="' H2 'smiles/ok.gif" alt="krut" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :apl', '');"><img src="' H2 'smiles/apl.gif" alt="klass" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :kul', '');"><img src="' H2 'smiles/kul.gif" alt="vtopku" /></a> ';
  echo 
'<a href="#form" onclick="javascript:tag(' :ploho', '');"><img src="' H2 'smiles/ploho.gif" alt="vtopku" /></a> ';
  echo 
'<br />';

}




//Функция жалобы на спам
public static function spam($mesto NULL$userid NULL$spam_id NULL$msgs NULL$msg_id NULL$msg_t NULL$komment NULL$msg_razd_id NULL)
{

$r mysql_query("Select * from `spam` WHERE `msg_id` = '".$msg_id."' AND `msg_t` = '".$msg_t."'");
if (
mysql_affected_rows()==0){

$spam user::user_inf($spam_id,'antispam')+1;
mysql_query("UPDATE `users` SET `antispam` = '".$spam."' WHERE `id` = '".$spam_id."'");
// если включен банн
/*if (core::$set['antispam']==1){

$mesg = 'На вас поступило(а) [b]'.$spam.'[/b] жалоб(а) на спам! После [b]5-ти[/b] жалоб, вы будете автоматически забаннены!';
//mysql_query ("INSERT INTO privat (user,user_id,to_user,to_id,time,msg) VALUES ('<b>system</b>','0','".user::user_inf($spam_id,'user')."','".user::user_inf($spam_id,'id')."','core::$realtime','$mesg')");

// Если спамер не в бане, исправляем это гг
if($spam>=5 && user::user_inf($spam_id,'bann')<core::$realtime){

$na = core::$realtime+60*60*24;
mysql_query('UPDATE `users` SET `bann` = "'.$na.'", `whobann` = "'.core::$user['id'].'", `whybann` = "Неоднократный спам!", `antispam` = "0" WHERE `id` = "'.user::user_inf($spam_id,'id').'" LIMIT 1');

$messs = '[b]Система[/b] забаннила пользователя [b]'.user::user_inf($spam_id,'user').'[/b] на [b]'.self::kikt($na).'[/b]<br /> Причина: [b]Неоднократный спам![/b]';
//mysql_query ("INSERT INTO logs (sid,log,msg,time) VALUES ('".user::user_inf($spam_id,'sid')."','ban','$messs','core::$realtime')");

}
// если бан отключен, просто информируем о жалобе
}else{*/

$mesg 'На вас поступило(а) [b]'.$spam.'[/b] жалоб(а) на спам!';
//mysql_query ("INSERT INTO privat (sid,user,user_id,to_user,to_id,time,msg) VALUES ('".user::user_inf($spam_id,'sid')."','<b>".chat_inf(user::user_inf($spam_id,'sid'),'system')."</b>','0','".user::user_inf($spam_id,'user')."','".user::user_inf($spam_id,'id')."','core::$realtime','$mesg')");


//}

// вычисляем админа чата и сообщаем о жалобе
//$uss=mysql_fetch_assoc(mysql_query ("Select * from users WHERE `sid` = '".user::user_inf($spam_id,'sid')."' and `level` = '9' order by id asc LIMIT 1"));

$mesg2 'На пользователя с ником [b]'.user::user_inf($spam_id,'user').'[/b] (ID: '.user::user_inf($spam_id,'id').') поступила жалоба на спам '.$mesto.'. Советуем принять меры! Жалобы на спам можете посмотреть [url=/admin/index?mod=spam]здесь[/url]';
//mysql_query ("INSERT INTO privat (sid,user,user_id,to_user,to_id,time,msg) VALUES ('".user::user_inf($spam_id,'sid')."','<b>".chat_inf(user::user_inf($spam_id,'sid'),'system')."</b>','0','".$uss['user']."','".$uss['id']."','core::$realtime','$mesg2')");

mysql_query ("INSERT INTO spam (user_id,spam_id,mesto,time,msg,komment,msg_t,msg_id,msg_razd_id) VALUES ('$userid','$spam_id','$mesto','".core::$realtime."','$msgs','$komment','$msg_t','$msg_id','$msg_razd_id')");

return 
$div4.'Администрация уведомлена о спаме! Спасибо...'.$div9;
}else return 
$div4.'Администрация уже уведомлена о этом спаме!<br />'.$div9;

include_once (
H.'shaxty/foot.php');
}



// Функция пинка
public static function spamer()
{

$query core::$db->query("Select *  FROM `spamer` WHERE `user_id`=? and `code`=?", array(core::$user['id'],1));
if (
$query->fetchColumn() > 0){
echo 
'<div align="center">';
if(!isset(
$_POST['kod'])){
echo 
"<b>Вы привысили лимит активности!</b><br />Подтвердите, что вы не робот<br /> Введите код с картинки в поле ниже";

echo 
'<form action="?'.$_SERVER['QUERY_STRING'].'" method="post" enctype="multipart/form-data">';

 echo 
'<img src="/shaxty_code.php?r='.rand(10009999).'" alt="Проверочный код"/><br />';
echo 
'<b>Код с картинки:</b><br/><input type="text" size="5" maxlength="5"  name="kod"/><br />';
echo 
'<br /><input type="submit" class="ibutton" value="Подтвердить"/></form><br /><br />';

}else{
$reg_kod = isset($_POST['kod']) ? self::checkin($_POST['kod']) : '';

// Проверка кода CAPTCHA
$err 0;
if (empty(
$reg_kod) || self::utf_strlen($reg_kod) < 4){$err 1;}

if (
$reg_kod != $_SESSION['code']){$err 1;}

if(
$err != 0){

header("Location: ?".$_SERVER['QUERY_STRING']);

}else{

$delspamer core::$db -> prepare("DELETE FROM `spamer` WHERE `user_id`=?");
$delspamer -> execute(core::$user['id']);

header("Location: ?".$_SERVER['QUERY_STRING']);
}

}

echo 
"</div>";
echo 
'<br />';
include_once (
H.'/shaxty/foot.php');
}

}

// Функция пинка
public static function spamer_on($sp_m=NULL$p_t=NULL)
{
if(isset(
$sp_m)) $sp_m=self::checkin($sp_m);
if(isset(
$p_t)) $p_t=self::checkin($p_t);

$dbi core::$db -> prepare("INSERT INTO `spamer` SET `user_id`=?, `spam_m`=?, `post_time`=?, `code`=?");
$dbi -> execute(core::$user['id'],$sp_m,$p_t,1);
}




/* функция вывода города, региона, страны*/
function cities($c=NULL,$w=NULL,$i=NULL) {

if(
$w==1){
$crc 'cities';
$crc2 'city_id';
$crc3 'city_rus';
}else if(
$w==2){
$crc 'regions';
$crc2 'region_id';
$crc3 'region_rus';
}else if(
$w==3){
$crc 'country';
$crc2 'country_id';
$crc3 'country_rus';
}
$cities core:: $db -> queryFetch("SELECT * FROM `".$crc."` WHERE `".$crc2."`=? LIMIT 1;", array($c));
if(
$i==NULL)return $cities[$crc3];
else return 
$cities[$crc2];
}

public static function 
opovesh($mod '',$msg ''$link '')
    {
            if(isset(
$mod)) $mod=self::checkin($mod);

            
/*$title = 'Ошибка';
            $align = 'left';
            $head = 'Ошибка';
            include_once (H.'shaxty/head.php');*/

            
$opcore:: $db -> query("SELECT * FROM `opovesh` WHERE `user_id`=? AND `mod`=? AND `read`=? LIMIT 1;", array(core::$user_id$mod1));
            
$opn $op -> fetch();
            if (
$opn == 0) {

            echo 
'<p>'.$msg.'</p></div>'.(!empty($link) ? '<p>' $link '</p>' '');


             
$dbr core::$db -> prepare("INSERT INTO `opovesh` SET `user_id`=?, `mod`=?, `read`=?;");
             
$dbr -> execute(core::$user_id$mod1);

            echo 
'<br />';
            include_once (
H.'shaxty/foot.php');
            exit;
           }

    }


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