Вход Регистрация
Файл: sys/func.php
Строк: 305
<?php
session_start
();
ob_start();

define('home', 'http://'.$_SERVER['HTTP_HOST']); //адрес сайта

function daytime($var) {

    
$date = date('d.m.Y', $var);

    if (
$date == date('d.m.Y')) {
        
$full_time = date('Сегодня в H:i', $var);
    } elseif (
$date == date('d.m.Y', time() - 3600 * 24)) {
        
$full_time = date('Вчера в H:i', $var);
    } elseif (
$date == date('d.m.Y', time() + 3600 * 24)) {
        
$full_time = date('Завтра в H:i', $var);
    } else {
        
$full_time = date('d.m.Y в H:i', $var);
    }

    return 
$full_time;
}


function 
showDate( $date ) // $date --> время в формате Unix time
{
    
$stf      = 0;
    
$cur_time = time();
    
$diff     = $cur_time - $date;
 
    
$seconds = array( 'секунда', 'секунды', 'секунд' );
    
$minutes = array( 'минута', 'минуты', 'минут' );
    
$hours   = array( 'час', 'часа', 'часов' );
    
$days    = array( 'день', 'дня', 'дней' );
    
$weeks   = array( 'неделя', 'недели', 'недель' );
    
$months  = array( 'месяц', 'месяца', 'месяцев' );
    
$years   = array( 'год', 'года', 'лет' );
    
$decades = array( 'десятилетие', 'десятилетия', 'десятилетий' );
 
    
$phrase = array( $seconds, $minutes, $hours, $days, $weeks, $months, $years, $decades );
    
$length = array( 1, 60, 3600, 86400, 604800, 2630880, 31570560, 315705600 );
 
    for ( 
$i = sizeof( $length ) - 1; ( $i >= 0 ) && ( ( $no = $diff / $length[ $i ] ) <= 1 ); $i -- ) {
        ;
    }
    if ( 
$i < 0 ) {
        
$i = 0;
    }
    
$_time = $cur_time - ( $diff % $length[ $i ] );
    
$no    = floor( $no );
    
$value = sprintf( "%d %s ", $no, getPhrase( $no, $phrase[ $i ] ) );
 
    if ( ( 
$stf == 1 ) && ( $i >= 1 ) && ( ( $cur_time - $_time ) > 0 ) ) {
        
$value .= time_ago( $_time );
    }
 
    return 
$value . ' назад';
}
 
function 
getPhrase( $number, $titles ) {
    
$cases = array( 2, 0, 1, 1, 1, 2 );
 
    return 
$titles[ ( $number % 100 > 4 && $number % 100 < 20 ) ? 2 : $cases[ min( $number % 10, 5 ) ] ];
}

// Функции постраничной навигации
function page($k_page = 1) {
    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;
        } else {
            if (
$page > $k_page) {
                
$page = $k_page;
            }
        }
    } else {
        
$page = 1;
    }
    return 
$page;
}
function 
k_page($k_post = 0, $k_p_str = 10) {
    
$v_pages = $k_post != 0 ? ceil($k_post / $k_p_str) : 1;
    return 
$v_pages;
}
function 
navigation($k_page = 1, $page = 1, $link = '?') {
    echo 
'<nav aria-label="Page navigation">
  <ul class="pagination">'
;
    if (
$page < 1) {
        
$page = 1;
    }
    if (
$page != 1) {
        echo 
'<li>
      <a href="'
.$link.'page=1" aria-label="Previous">
        <span aria-hidden="true">&laquo;</span>
      </a>
    </li>
    <li><a href="'
.$link.'page=1">1</a></li>';
    } else {
        echo 
'<li class="active"><a href="#">1</a></li>';
    }
    for (
$i = -3; $i <= 3; $i++) {
        if (
$page + $i > 1 && $page + $i < $k_page) {
            if (
$i == -3 && $page + $i > 2) {
                echo 
'<li class="disabled"><a href="#">...</a></li>';
            }
            if (
$i != 0) {
                echo 
'<li><a href="'.$link.'page='.($page + $i).'">'.($page + $i).'</a></li>';
            } else {
                echo 
'<li class="active"><a href="#">'.($page + $i).'</a></li>';
            }
            if (
$i == 3 && $page + $i < $k_page - 1) {
                echo 
'<li class="disabled"><a href="#" aria-label="Previous"><span aria-hidden="true">...</span></a></li>';
            }
        }
    }
    if (
$page != $k_page) {
        echo 
'<li><a href="'.$link.'page=end">'.$k_page.'</a></li> 
        <li>
      <a href="'
.$link.'page=end" aria-label="Next">
        <span aria-hidden="true">&raquo;</span>
      </a>
    </li>'
;
    } elseif (
$k_page > 1) {
        echo 
'<li class="active"><a href="#">'.$k_page.'</a></li>';
    }
    echo 
'</ul>
</nav>'
;
}

/*
================================================
================================================
================================================
*/


// Ручной фильтр
function f($str) {
    
$str = trim(stripslashes(htmlspecialchars($str, ENT_QUOTES)));
    return 
$str;
}


/*Градиент цвета ника 555555555555555555555555555555555555555*/
function str2gradient($text,$from='', $to='', $mode="hex")
{
    if(
$mode=="hex")
    {
        
$to   = hexdec($to[0].$to[1]).",".hexdec($to[2].$to[3]).",".hexdec($to[4].$to[5]);
        
$from = hexdec($from[0].$from[1]).",".hexdec($from[2].$from[3]).",".hexdec($from[4].$from[5]);
    }

    if( empty(
$text) )
        return 
'';
    else
        
$levels=mb_strlen($text);

    if (empty(
$from))
        
$from = array(0,0,255);
    else
        
$from = explode(",", $from);

    if (empty(
$to))

        
$to = array(255,0,0);
    else
        
$to = explode(",", $to);

    
$output = "";

    for (
$i=1;$i<=$levels;$i++)
    {
        for (
$ii=0;$ii<3;$ii++)
        {
            
$tmp[$ii] = $from[$ii] - $to[$ii];
            
$tmp[$ii] = floor($tmp[$ii] / $levels);
            
$rgb[$ii] = $from[$ii] -($tmp[$ii] * $i);

            if (
$rgb[$ii] > 255) $rgb[$ii] = 255;

            
$rgb[$ii] = dechex($rgb[$ii]);
            
$rgb[$ii] = mb_strtoupper($rgb[$ii]);

            if (
mb_strlen($rgb[$ii]) < 2) $rgb[$ii] = "0$rgb[$ii]";
        }
        
$output .= '<font color="'.$rgb[0].$rgb[1].$rgb[2].'">' . $text[$i -1 ] . '</font>';
    }
    return 
$output;
}
function 
buildTextGradient($str, $points, $mode="hex"){
    if( 
count($points) >= 2 && !empty($str) ){
        if( 
count($points) == 2 ){
            return 
iconv("windows-1251", "UTF-8", str2gradient( iconv("UTF-8", "windows-1251", $str), $points[0], $points[1], $mode ) );
        }else{
            
$str = iconv("UTF-8", "windows-1251", $str);
            
$parts_count = count($points) - 1;
            
$let_in_part = round( strlen($str) / $parts_count );
            
$result = '';

            for(
$i = 0; $i < $parts_count; $i++){
                
$s = substr($str, $i * $let_in_part, ($i < $parts_count ? $let_in_part : strlen($str) - $i * $let_in_part) );
                
$result .= str2gradient( $s, $points[ $i ], $points[ $i + 1 ], $mode );
            }

            return 
iconv("windows-1251", "UTF-8", $result );
        }
    }
    return 
'';
}



/*==================================ФУНКЦИЯ НИКА===========================================================*/


function ank($id) {
    global 
$db;
$usq = $db->query("SELECT * FROM `users` WHERE `id` = '".$id."'")->fetch_assoc();

//должность
if($usq['admin'] == 3) {
$rang = '<font color="Orange">[SD]</font> ';
} 
if(
$usq['admin'] == 2) {
$rang = '<font color="blue">[Адм]</font> ';
}
if(
$usq['admin'] == 1) {
$rang = '<font color="green">[Moder]</font> ';
}
if(
$usq['admin'] == 0) {
$rang = '';
}
//бан

$ban = $db->query("select * from `ban` where `user` = '".$usq['id']."' limit 1")->fetch_assoc();

if(
$ban['time'] > time()) {
$rang = '<font color="black"><b>[Забанен]</b></font>';
}


//определяем онлайн
$time = time();
//Мужик
if ($usq['pol'] == 1) {
if (
$usq['online'] > ($time - 300)) {
    
if(
$usq['admin'] == 3 || $usq['admin'] == 2) {

$on = ' <img src="/files/admin.png"> ';
//убрать если не надо
$onn = '<img src="/files/online.gif">';
} elseif(
$usq['admin'] == 1) {
    
$on = ' <img src="/files/mod.png"> ';
    
//убрать если не надо
$onn = '<img src="/files/online.gif">';
} else {

$on = '<img src="/files/mon.png">';
//убрать если не надо
$onn = '<img src="/files/online.gif">';
}
} else {
$onn = '<img src="/files/online1.gif">';
$on = '<img src="/files/mof.png">';
}
}

//Баба
if ($usq['pol'] == 2) {
if (
$usq['online'] > ($time - 300)) {
    
if(
$usq['admin'] == 3 || $usq['admin'] == 2) {

$on = ' <img src="/files/admin.png"> ';
//убрать если не надо
$onn = '<img src="/files/online.gif">';
} elseif(
$usq['admin'] == 1) {
    
$on = ' <img src="/files/mod.png"> ';
    
//убрать если не надо
$onn = '<img src="/files/online.gif">';
} else {

$on = '<img src="/files/jon.png">';
//убрать если не надо
$onn = '<img src="/files/online.gif">';
}
} else {
$onn = '<img src="/files/online1.gif">';
$on = '<img src="/files/jof.png">';
}
}

return 
''.$on.' <a href="/ank/'.$usq['id'].'">'.buildTextGradient($usq['login'], array($usq['color1'], $usq['color2'])).'</a> '.$rang.''.$onn.'';
}



/* Функция ББ кодов */
function bb($str) {
/* Жирный шрифт */
$str = preg_replace('#[b](.*?)[/b]#si', '<b>1</b>', $str);
/* Наклоненный шрифт */
$str = preg_replace('#[i](.*?)[/i]#si', '<i>1</i>', $str);
/* Подчеркнутый шрифт */
$str = preg_replace('#[u](.*?)[/u]#si', '<u>1</u>', $str);
/* Перенос текста */
$str = preg_replace('#[br]#si', '<br/>', $str);
/* Зачеркнутый шрифт */
$str = preg_replace('#[del](.*?)[/del]#si', '<del>1</del>', $str);
/* Маленький шрифт */
$str = preg_replace('#[small](.*?)[/small]#si', '<small>1</small>', $str);
/* Цветной шрифт */
$str = preg_replace('#[color=(.*?)](.*?)[/color]#si', '<span style="color:1">2</span>', $str);
/* Цитата */
$str = preg_replace('#[cit](.*?)[/cit]#si', '<div class="q">1</div>', $str);
//картинка
$str = preg_replace('#[img](.*?)[/img]#si', '<a href="1"><img src="1" alt="*" style="max-width:50%; border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; border-top-right-radius: 20px; border-top-left-radius: 20px;"/></a>', $str);
//код
$str = preg_replace('#[code](.*?)[/code]#si', '<div style="background-color: #e0e6e9; border: 1px dotted #9faebb; margin-top: 4px; padding: 0 2px 0 2px; overflow-x: auto"><pre class="php" style="font-family:monospace;"><div style="padding-left: 6px; white-space: pre-wrap"><span style="color: #000000; font-weight: bold;">1</span></pre></div>', $str);
//ссылка
$str = preg_replace('/[urls?=s?(['"]?)(?:http://)?(.*?)1](.*?)[/url]/', ' <a href="http://$2"> $3 </a> ', $str);
//видео с ютуба
$str = preg_replace('/[youtube]([w-]{11})[/youtube]/s', '<iframe width="350" height="250" src="https://www.youtube.com/embed/$1" frameborder="0" allowfullscreen></iframe>', $str);
//картинка маленькая
$str = preg_replace('#[im](.*?)[/im]#si', '<a href="1"><img src="1" alt="*" style="max-width:10%; border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; border-top-right-radius: 20px; border-top-left-radius: 20px;"/></a>', $str);


return 
$str;
}

/*==============================================================
==================================================================
===================================================================
*/


/* Функция смайлов */
function smile($str) {

$str = preg_replace('#*nunet#si', '<img src="/files/smile/nunet.png">', $str);
$str = preg_replace('#*heh#si', '<img src="/files/smile/heh.png">', $str);
$str = preg_replace('#*loh#si', '<img src="/files/smile/loh.png">', $str);

return 
$str;
}

/***************************************************************/
/* Функция фильтр спама */
function spam($str) {

$str = preg_replace('#.ru#si', '[b]мой сайт говно[/b]', $str);
$str = preg_replace('#.su#si', '[b]мой сайт говно[/b]', $str);
$str = preg_replace('#.net#si', '[b]мой сайт говно[/b]', $str);
$str = preg_replace('#.ga#si', '[b]мой сайт говно', $str);
$str = preg_replace('#.cf#si', '[b]мой сайт говно[/b]', $str);
$str = preg_replace('#.ml#si', '[b]мой сайт говно[/b]', $str);
$str = preg_replace('#.mobi#si', '[b]мой сайт говно[/b]', $str);

return 
$str;
}

/***************************************************************/

function links($msg){
        
$msg = preg_replace_callback('/[url=(.+)](.+)[/url]/isU', 'links_preg1', $msg);
        
$msg = preg_replace_callback('~(^|s)([a-z]+://([^ rnt`'"]+))(s|$)~iu', 'links_preg2', $msg);
        return 
$msg;
    }
    
     function links_preg1(
$arr){
        if (preg_match('#^http://'.preg_quote(
$_SERVER['HTTP_HOST']).'#',$arr[1]) || !preg_match('#://#',$arr[1]))
        return '<a href="'.$arr[1].'">'.
$arr[2].'</a>';
        else
        return '<a href="
http://'.$_SERVER['HTTP_HOST'].'/exit2.php?go='.$arr[1].'">'.$arr[2].'</a>';

    
}
     function 
links_preg2($arr){
        if (
preg_match('#^http://'.preg_quote($_SERVER['HTTP_HOST']).'#',$arr[2]))
        return 
$arr[1].'<a href="'.$arr[2].'">'.$arr[2].'</a>'.$arr[4];
        else
        return 
$arr[1].'<a href="http://'.$_SERVER['HTTP_HOST'].'/exit2.php?go='.$arr[2].'"> Перейти по Ссылке ТЫК</a>'.$arr[4];
    }

foreach (
$_GET as $links) {
if (!
is_string($links) || !preg_match('#^(?:[a-z-a-я?:0-9_?.-/]+|.+(?!/))*$#i', $links)) {
header ('Location: /');
exit;
} 
}

unset(
$links);


// Функция отправки почты на email
function mailto($mail, $theme, $text, $str) {
$utf = "From: ".$str." n";
$utf.= "X-sender: < ".$str." >n";
$utf.= "Content-Type: text/html; charset=utf-8n";
return 
mail($mail, $theme, $text, $utf);
}

/*

=================вывод настроек из бд===========================

*/
$set = $db->query("select * from `sett`")->fetch_assoc();

// Новый сайт в каталоге
//$link_desc = mysql_fetch_assoc(mysql_query("select * from `link` where `off` = '0' order by `id` desc limit 1"));
// Кол-во новостей
$count_news = $db->query("SELECT * FROM `news`")->num_rows;

$ip = f($_SERVER['REMOTE_ADDR']);
$IP = f($_SERVER['REMOTE_ADDR']);
$UA = f($_SERVER['HTTP_USER_AGENT']);

// Кол-во сайтов
//$count_link = mysql_num_rows(mysql_query("select * from `link`"));
// Рекомендации
//$count_best_link = mysql_num_rows(mysql_query("select * from `link` where `off` = '0' and `star` = '1' and `ban` = '0'"));
// Кол-во активных сайтов
//$count_active_link = mysql_num_rows(mysql_query("select * from `link` where `off` = '0' and `ban` = '0'"));
// Кол-во неактивных сайтов
//$count_mod_link = mysql_num_rows(mysql_query("select * from `link` where `off` = '1'"));

?>
Онлайн: 3
Реклама