<?php
/*
- NTLCMS v 18.0 12.04.2018 г
- Автор скрипта Александр (NTL)
- Скрипт клик клуба v 18.0
- Оф.сайт http://clicks24.ru
- Контакты ntl-jt@mail.ru
- Все права принадлежат разработчику
- Вы не имеете право вносить изменения в код скрипта
- Данный скрипт запрещено распространять
*/
/* Защита директорий */
defined('NTLCMS') or die('<center><b>Restricted access</b></center>');
/* Определяем данные пользователя */
include (dirname(__FILE__).'/MobileDetect.class.php');
/* Функция извлечения настроек */
if (@filemtime(FOLDER.'/cache/setting.dat') < TIME - 600){
$sys = DB :: run() -> query("select * from `set`");
$set = array();
while ($param = $sys -> fetch()){
$set[$param['name']] = $param['value'];
}
file_put_contents(FOLDER.'/cache/setting.dat', serialize($set), LOCK_EX);
} else {
$set = unserialize(file_get_contents(FOLDER.'/cache/setting.dat'));
}
/* Фильтр в базу */
function checkin($str){
$str = htmlentities(trim($str), ENT_QUOTES, 'UTF-8');
//$str = nl2br($str);
for ($i = 0; $i <= 31; $i++)
$str = str_replace(chr($i), NULL, $str);
$str = preg_replace('/[^\P{C}\n]+/u', '', $str);
$str = str_replace("\'", "'", $str);
$str = str_replace('"', '', $str);
$str = str_replace('\\', "\", $str);
$str = str_replace("|", "I", $str);
$str = str_replace("||", "I", $str);
$str = str_replace("/\\\$/", "$", $str);
$str = str_replace('+', '', $str);
//$str = str_replace('and', '', $str);
$str = str_replace('%20', '', $str);
$str = trim($str);
return $str;
}
/* Фильтр из базы */
function checkout($str){
$str = htmlentities($str, ENT_QUOTES, 'UTF-8');
//$str = nl2br($str);
//$str = str_replace("\r\n", ' ', $str);
$str = iconv('utf-8', 'windows-1251', $str);
$str = iconv('windows-1251', 'utf-8', $str);
for ($i = 0; $i <= 31; $i++)
$str = str_replace(chr($i), NULL, $str);
return $str;
}
/* Фильтр в базу */
function in_data($str){
if (is_string($str)){
$str = DB :: run() -> quote($str);
$str = stripslashes(trim($str));
$str = htmlentities(trim($str), ENT_QUOTES, 'UTF-8');
$str = iconv('utf-8', 'windows-1251', $str);
$str = iconv('windows-1251', 'utf-8', $str);
$str = nl2br($str);
for ($i = 0; $i <= 31; $i++)
$str = str_replace(chr($i), NULL, $str);
$str = preg_replace('/[^\P{C}\n]+/u', '', $str);
$str = str_replace("\'", "'", $str);
$str = str_replace('"', '', $str);
$str = str_replace('\\', "\", $str);
$str = str_replace("|", "I", $str);
$str = str_replace("||", "I", $str);
$str = str_replace("/\\\$/", "$", $str);
$str = str_replace('+', '', $str);
//$str = str_replace('and', '', $str);
$str = str_replace('%20', '', $str);
$str = trim($str);
$str = filter_var($str, FILTER_SANITIZE_FULL_SPECIAL_CHARS);
return $str;
}
}
/* Фильтр из базы */
function out_data($str){
$str = htmlentities($str, ENT_QUOTES, 'UTF-8');
//$str = nl2br($str);
//$str = str_replace("\r\n", ' ', $str);
$str = iconv('utf-8', 'windows-1251', $str);
$str = iconv('windows-1251', 'utf-8', $str);
for ($i = 0; $i <= 31; $i++)
$str = str_replace(chr($i), NULL, $str);
return $str;
}
/* Фильтр цифр */
function ints($str){
$str = abs(intval($str));
return $str;
}
function floats($str){
$str = abs(floatval($str));
return $str;
}
/* Проверка телефона */
function mobileValidate($match){
$regEx = "/^\(?([0-9]{4})\)?[-. ]?([0-9]{7})$/";
if (preg_match($regEx, $match)){
return true;
} else {
return false;
}
}
/* Функция скрытия символов */
function hide($str, $num){
$var = '';
if (is_numeric($num) && $num < strlen($str)){
$var = str_repeat('*', (strlen($str) - $num)).substr($str, - $num, $num);
}
return $var;
}
/* Определение расширения */
function exttype($filename){
return pathinfo($filename, PATHINFO_EXTENSION);
}
/* Обработка тестовых данных */
function outtext($str, $ent = false, $bbcode = false, $smile = false){
$str = ($ent == true) ? htmlentities($str, ENT_QUOTES, 'UTF-8') : $str;
$str = get_magic_quotes_gpc() ? stripslashes($str) : $str;
$str = trim($str);
if ($bbcode == true){
$str = nl2br($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('#\[quote\](.*?)\[/quote\]#si', '<div class="menu">Цитата:<br/><div class="tabl">\1</div></div>', $str);
$str = @preg_replace('#\\[code\\](.+?)\\[/code\\]#ie', "highlight('$1')", $str);
$str = preg_replace('/\[size\=(.*?)\](.*?)\[\/size\]/i', '<span style="font-size:\1px;">\2</span>', $str);
$str = preg_replace('#\[img\](.*?)(.png|.jpg|.jpeg|.gif)\[/img\]#si', '<div class="post" style="text-align: center;"><a href="\1\2"><img style="max-width: 230px;" src="\1\2" /></a></div>', $str);
//$str = preg_replace('/\[img\](.+)\[\/img\]/isU', '<div class="post" style="text-align: center;"><img src="\1" style="max-width:100%;"/></div>', $str);
$str = preg_replace('#\[icq\](.*?)\[/icq\]#si', '<img src="http://status.icq.com/online.gif?icq=\1&img=5"> \1', $str);
$str = preg_replace('/\[us\](.*?)\[\/us\]/i', '<a href=/$1.us>$1</a>', $str);
//$str = preg_replace_callback('~\\[url=(http://.+?)\\](.+?)\\[/url\\]|(http://(www.)?[0-9a-z\.\-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\-\~&;_=%:#\+]*)~', 'url_replace', $str);
$str = preg_replace('/\[url\s?=\s?([\'"]?)(?:http:\/\/)?(.*?)\1\](.*?)\[\/url\]/', ' <a href="/str/str.php?url=http://$2"> $3 </a> ', $str);
$str = preg_replace("~(^|\s|-|:| |\()(http(s?)://|(www\.))((\S{25})(\S{5,})(\S{15})([^\<\s.,>)\];'\"!?]))~i", "\\1<a href=\"/str/str.php?url=http\\3://\\4\\5\">\\4\\6...\\8\\9</a>", $str);
$str = preg_replace("~(^|\s|-|:|\(| |\xAB)(http(s?)://|(www\.))((\S+)([^\<\s.,>)\];'\"!?]))~i", "\\1<a href=\"/str/str.php?url=http\\3://\\4\\5\">\\4\\5</a>", $str);
}
if ($smile == true){
$sql = DB :: run() -> query("select * from `smiles` order by `id` desc");
while ($row = $sql -> fetch(PDO::FETCH_OBJ)){
$str = str_replace($row -> code, '<img src="'.URL.'/style/smiles/'.$row -> id.'.gif" alt="*"/>', $str);
}
}
return $str;
}
/* Работа с check формой */
function check($str, $real){
if ($str == $real){
return 'checked="checked"';
} else {
return;
}
}
/* Работа с select формой */
function select($str, $real){
if ($str == $real){
return 'selected="selected"';
} else {
return;
}
}
/* Статус юзера */
function status($status){
switch ($status){
default:
return '<span style="color:blue">Пользователь</span>';
break;
case 1:
return '<span style="color:red">Администратор</span>';
break;
case 2:
return '<span style="color:green">Модератор</span>';
break;
}
}
/* Вывод иконок */
function ico($str, $wh){
global $set;
$i = explode('|', $wh);
if ($set['images'] == '0'){
return '<img src="'.URL.'/img/'.$str.'" width="'.$i['0'].'" height="'.$i['1'].'" alt="*"/>';
}
}
/* Вывод иконок */
function image($str, $wh){
global $set;
$i = explode('|', $wh);
if ($set['images'] == '0'){
return '<img src="'.URL.'/style/icons/'.$str.'" width="'.$i['0'].'" height="'.$i['1'].'" alt="*"/>';
}
}
/* Функция подсветки PHP-кода */
function highlight($code){
$code = strtr($code, array('<br />' => "\r\n", '<br/>' => "\r\n", '<' => '<', '>' => '>', '&' => '&', '$' => '$', '"' => '"', ''' => "'", '\' => '\\', '`' => '`', '%' => '%', '^' => '^'));
if (!strpos($code, '<?') && mb_substr($code, 0, 2, 'UTF-8') != '<?'){
$code = "<?php\r\n" . trim($code) . "\r\n?>";
}
$code = highlight_string($code, true);
$code = strtr($code, array('<br />' => "\r\n", '<br/>' => "\r\n"));
$code = preg_replace('|( {2,})|', "\r\n\1", $code);
$codeline = explode("\r\n", $code);
foreach($codeline as $line => $string){
if ($string != ''){
$ret .= '<li> ' . trim($string) . '</li>';
}
}
$code = strtr($ret, array("\r\n" => '<br />', "\r\n" => '<br/>'));
#$code = strtr($ret, array('$' => '$', '\\' => '\', '`' => '`', '%' => '%', '^' => '^'));
return '<div class="code"><ol>' . $code . '</ol></div>';
}
/* Вставка в форму */
function quickpaste($form){
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>';
}
/* Открытие панели */
function fast_smile(){
?>
<script>
function ShowOrHide(d1){
if (d1 != '') DoDiv(d1);
}
function DoDiv(id){
var item = null;
if (document.getElementById){
item = document.getElementById(id);
} else if (document.all){
item = document.all[id];
} else if (document.layers){
item = document.layers[id];
}
if (!item){
}
else if (item.style){
if (item.style.display == 'none'){
item.style.display = '';
} else {
item.style.display = 'none';
}
} else {
item.visibility = 'show';
}
}
</script>
<div class="menu">
[<a href="javascript:ShowOrHide('1')">BBcode</a>] [<a href="javascript:ShowOrHide('2')">Смайлы</a>]:</div>
<div id="1" style="display:none;"><div class="menu">
<a href="javascript:tag('[b]', '[/b]', '');"><img src="/style/bb/b.gif" alt="b" title="Жирный"/></a>
<a href="javascript:tag('[i]', '[/i]', '');"><img src="/style/bb/i.gif" alt="i" title="Наклоненный"/></a>
<a href="javascript:tag('[u]', '[/u]', '');"><img src="/style/bb/u.gif" alt="u" title="Подчеркнутый"/></a>
<a href="javascript:tag('[br]', '');"><img src="/style/bb/br.gif" alt="br" title="Перенос"/></a>
<a href="javascript:tag('[del]', '[/del]', '');"><img src="/style/bb/del.gif" alt="del" title="Зачеркнутый"/></a>
<a href="javascript:tag('[small]', '[/small]', '');"><img src="/style/bb/small.gif" alt="small" title="Маленький"/></a>
<a href="javascript:tag('[code]', '[/code]', '');"><img src="/style/bb/code.gif" alt="code" title="PHP код"/></a>
</div></div>
<div id="2" style="display:none;"><div class="menu">
<a href="javascript:tag('.1.', '');"><img src="/style/smiles/1.gif" alt="img"/></a>
<a href="javascript:tag('.2.', '');"><img src="/style/smiles/2.gif" alt="img"/></a>
<a href="javascript:tag('.3.', '');"><img src="/style/smiles/3.gif" alt="img"/></a>
<a href="javascript:tag('.4.', '');"><img src="/style/smiles/4.gif" alt="img"/></a>
<a href="javascript:tag('.5.', '');"><img src="/style/smiles/5.gif" alt="img"/></a>
<a href="javascript:tag('.6.', '');"><img src="/style/smiles/6.gif" alt="img"/></a>
<a href="javascript:tag('.7.', '');"><img src="/style/smiles/7.gif" alt="img"/></a>
<a href="javascript:tag('.8.', '');"><img src="/style/smiles/8.gif" alt="img"/></a>
<a href="javascript:tag('.9.', '');"><img src="/style/smiles/9.gif" alt="img"/></a><br/>
<a href="javascript:tag('.10.', '');"><img src="/style/smiles/10.gif" alt="img"/></a>
<a href="javascript:tag('.11.', '');"><img src="/style/smiles/11.gif" alt="img"/></a>
<a href="javascript:tag('.12.', '');"><img src="/style/smiles/12.gif" alt="img"/></a>
<a href="javascript:tag('.15.', '');"><img src="/style/smiles/15.gif" alt="img"/></a>
<a href="javascript:tag('.16.', '');"><img src="/style/smiles/16.gif" alt="img"/></a>
<a href="javascript:tag('.22.', '');"><img src="/style/smiles/22.gif" alt="img"/></a><br/>
<a href="javascript:tag('.23.', '');"><img src="/style/smiles/23.gif" alt="img"/></a>
<a href="javascript:tag('.25.', '');"><img src="/style/smiles/25.gif" alt="img"/></a>
<a href="javascript:tag('.26.', '');"><img src="/style/smiles/26.gif" alt="img"/></a>
<a href="javascript:tag('.32.', '');"><img src="/style/smiles/32.gif" alt="img"/></a>
<a href="javascript:tag('.33.', '');"><img src="/style/smiles/33.gif" alt="img"/></a><br/>
<a href="javascript:tag('.36.', '');"><img src="/style/smiles/36.gif" alt="img"/></a>
<a href="javascript:tag('.37.', '');"><img src="/style/smiles/37.gif" alt="img"/></a>
<a href="javascript:tag('.38.', '');"><img src="/style/smiles/38.gif" alt="img"/></a>
<a href="javascript:tag('.39.', '');"><img src="/style/smiles/39.gif" alt="img"/></a>
</div></div>
<?php
}
/* Панель смайлов */
function panel(){
echo quickpaste('text');
//echo quicksmiles('text');
}
/* День недели */
function day($time){
if ($time == NULL) $time = TIME;
$day = date('D', $time);
if ($day == 'Sun') $day = 'Воскресенье';
if ($day == 'Sat') $day = 'Суббота';
if ($day == 'Fri') $day = 'Пятница';
if ($day == 'Thu') $day = 'Четверг';
if ($day == 'Wed') $day = 'Среда';
if ($day == 'Tue') $day = 'Вторник';
if ($day == 'Mon') $day = 'Понедельник';
return $day;
}
/* Обратный отсчет */
function date_ost($ost){
$days = floor($ost / 86400);
$hours = floor(($ost - ($days * 86400)) / 3600);
$minutes = floor(($ost - ($days * 86400) - ($hours * 3600)) / 60);
$seconds = floor($ost - ($days * 86400) - ($hours * 3600) - ($minutes * 60));
if ($days > 0){
if (($days >= 10) && ($days <= 20)){
$d = 'дней';
} else {
switch (substr($days, -1, 1)){
case 1: $d = 'день'; break;
case 2: case 3: case 4: $d = 'дня'; break;
case 5: case 6: case 7: case 8: case 9: case 0: $d = 'дней'; break;
}
}
} else {
$days = ''; $d = '';
}
if ($hours > 0){
if (($hours >= 10) && ($hours <= 20)){
$h = 'часов';
} else {
switch (substr($hours, -1, 1)){
case 1: $h = 'час'; break;
case 2: case 3: case 4: $h = 'часа'; break;
case 5: case 6: case 7: case 8: case 9: case 0: $h = 'часов'; break;
}
}
} else {
$hours = ''; $h = '';
}
if ($minutes > 0){
if (($minutes >= 10) && ($minutes <= 20)){
$m = 'минут';
} else {
switch (substr($minutes, -1, 1)){
case 1: $m = 'минута'; break;
case 2: case 3: case 4: $m = 'минуты'; break;
case 5: case 6: case 7: case 8: case 9: case 0: $m = 'минут'; break;
}
}
} else {
$minutes = ''; $m = '';
}
if ($seconds > 0){
if (($seconds >= 10) && ($seconds <= 20)){
$s = 'секунд';
} else {
switch (substr($seconds, -1, 1)){
case 1: $s = 'секунда'; break;
case 2: case 3: case 4: $s = 'секунды'; break;
case 5: case 6: case 7: case 8: case 9: case 0: $s = 'секунд'; break;
}
}
} else {
$seconds = ''; $s = '';
}
return '<b>'.$days.'</b> '.$d.' <b>'.$hours.'</b> '.$h.' <b>'.$minutes.'</b> '.$m.' <b>'.$seconds.'</b> '.$s;
}
/* Обратный отсчет */
function remain($times){
$times2 = $times - TIME;
if ($times2 > (60 * 60 * 24 * 30)) $times3 = round($times2 / (60 * 60 * 24 * 30)).' месяцев';
elseif ($times2 > (60 * 60 * 24)) $times3 = round($times2 / (60 * 60 * 24)).' дней';
elseif ($times2 > (60 * 60)) $times3 = round($times2 / (60 * 60)).' часов';
elseif ($times2 > 60) $times3 = round($times2 / 60).' минут';
else $times3 = $times2.' секунд';
return $times3;
}
/* Счетчик обратного отсчета */
function downcnt($date){
$check_time = $date - TIME;
if ($check_time <= 0){
return false;
}
$days = floor($check_time/86400);
$hours = floor(($check_time%86400)/3600);
$minutes = floor(($check_time%3600)/60);
$seconds = $check_time%60;
$str = '';
if ($days > 0){
$str .= $days.' дн. ';
}
if ($hours > 0){
$str .= $hours.' ч. ';
}
if ($minutes > 0){
$str .= $minutes.' мин. ';
return $str;
}
if ($seconds > 0) $str .= $seconds.' сек ';
return $str;
}
/* Окончание слов */
function word(){
$args = func_get_args();
$num = $args[0] % 100;
if ($num > 19){
$num = $num % 10;
}
switch ($num){
case 1:{
return $args[0].' '.$args[1];
}
case 2:
case 3:
case 4:{
return $args[0].' '.$args[2];
}
default:{
return $args[0].' '.$args[3];
}
}
}
/* Функция вывода оператора */
function opsos($opsos){
switch ($opsos){
case 1:
return '<span style="color:red">Мегафон</span>';
break;
case 2:
return '<span style="color:red">TELE2</span>';
break;
case 3:
return '<span style="color:red">Билайн</span>';
break;
case 4:
return '<span style="color:red">МТС</span>';
break;
case 5:
return '<span style="color:red">Башселл GSM</span>';
break;
case 6:
return '<span style="color:red">Акос</span>';
break;
case 7:
return '<span style="color:red">БайкалВестКом</span>';
break;
case 8:
return '<span style="color:red">Енисейтелеком</span>';
break;
case 9:
return '<span style="color:red">НСС</span>';
break;
case 10:
return '<span style="color:red">Смартс</span>';
break;
case 11:
return '<span style="color:red">Мотив</span>';
break;
}
}
/* Тип ссылки */
function typelink($type){
switch ($type){
case 1:
return '<span style="color:blue">WAP ссылка</span>';
break;
case 2:
return '<span style="color:green">WEB ссылка</span>';
break;
case 3:
return '<span style="color:red">IFRAME ссылка</span>';
break;
case 4:
return '<span style="color:lime">ALARM ссылка</span>';
break;
case 5:
return '<span style="color:gold">Для взрослых</span>';
break;
case 6:
return '<span style="color:black">Майнинг валют</span>';
break;
}
}
/* Статус вывода средств */
function cost($money){
switch ($money){
default:
return '<span style="color: blue">Ожидается</span>';
break;
case 'lock':
return '<span style="color: red">Отменена</span>';
break;
case 'on':
return '<span style="color: green">Выплачено</span>';
break;
}
}
/* Статус площадки */
function ststatus($str){
switch ($str){
case 1:
return '<span style="color:green">Допущена</span>';
break;
case 2:
return '<span style="color:blue">На модерации</span>';
break;
case 3:
return '<span style="color:red">Недопущена</span>';
break;
}
}
/* Прошедшее время */
function lasttime($time){
$sec = TIME - $time;
if($sec < 60) $_time = $sec.' сек. назад';
if($sec >= 60 && $sec < (60*60)) $_time = round($sec/60).' мин. назад';
if($sec >= (60*60) && $sec < ((60*60)*6)) $_time = 'Сегодня в '.date('H:i', $time);
if($sec >= ((60*60)*6) && $sec < ((60*60)*24)) $_time = round($sec/(60*60)).' час. назад';
if($sec >= ((60*60)*24) && $sec < (((60*60)*24)*2)) $_time = 'Вчера в '.date('H:i', $time);
if($sec >= (((60*60)*24)*2)){
$__time = date('d F Y в H:i', $time);
$__time = str_replace('January', 'Января', $__time);
$__time = str_replace('February', 'Февраля', $__time);
$__time = str_replace('March', 'Марта', $__time);
$__time = str_replace('April', 'Апреля', $__time);
$__time = str_replace('May', 'Мая', $__time);
$__time = str_replace('June', 'Июня', $__time);
$__time = str_replace('July', 'Июля', $__time);
$__time = str_replace('August', 'Августа', $__time);
$__time = str_replace('September', 'Сентября', $__time);
$__time = str_replace('October', 'Октября', $__time);
$__time = str_replace('November', 'Ноября', $__time);
$__time = str_replace('December', 'Декабря', $__time);
$_time = $__time;
}
return $_time;
}
/* Очистка рекламы пользователей */
DB :: run() -> query("delete from `reklama` where `date` <= ?", array(TIME));
/* Очистка рекламы сайта */
DB :: run() -> query("delete from `manager` where `date` <= ?", array(TIME));
/* Очистка забанненых юзеров */
DB :: run() -> query("delete from `ban` where `date` < ?", array(TIME));
/* Очистка гостей */
DB :: run() -> query("delete from `session` where `date` < ?", array(TIME - 300));
/* Очистка онлайн */
DB :: run() -> query("update `users` set `ontime` = ?, `transition` = ? where `ontime` < ?", array(0, 0, TIME - 300));
/* Работа с case */
$id = isset($_GET['id']) ? filter_var($_GET['id'], FILTER_SANITIZE_NUMBER_INT) : '0';
$act = isset($_GET['act']) ? filter_var($_GET['act'], FILTER_SANITIZE_URL) : false;
$ua = isset($_SERVER['HTTP_USER_AGENT']) ? filter_var($_SERVER['HTTP_USER_AGENT'], FILTER_SANITIZE_STRING) : 'Not_detected';
$ip = isset($_SERVER['REMOTE_ADDR']) ? preg_replace('|[^0-9\.]|', '', $_SERVER['REMOTE_ADDR']) : '127.0.0.1';
/* Функция пересчета на дни, или часы */
function timecount($string){
if (floor($string / 86400) > 0){
$day = floor($string / 86400).' дн. ';
} else {
$day = null;
}
$hours = floor(($string / 3600) - $day * 24);
$min = floor(($string - $hours * 3600 - $day * 86400) / 60);
$sec = $string - ($min * 60 + $hours * 3600 + $day * 86400);
return $day.' '.$hours.' ч. '.$min.' м. '.$sec.' сек.';
}
/* Функция времени */
function daytime($var){
if ($var == NULL) $var = TIME;
$full_time = date('d.m.Y в H:i', $var);
$date = date('d.m.Y', $var);
$time = date('H:i', $var);
if ($date == date('d.m.Y')) $full_time = date('Сегодня в H:i', $var);
if ($date == date('d.m.Y', TIME - 60*60*24)) $full_time = date('Вчера в H:i', $var);
return $full_time;
}
/* Отправка email */
function mailto($mail, $subject, $messages){
$subject = '=?UTF-8?B?'.base64_encode($subject).'?=';
$adds = "From: =?UTF-8?B?".base64_encode("Клик клуб")."?= <".SYSMAIL.">\n";
$adds .= "X-sender: =?UTF-8?B?".base64_encode("Клик клуб")."?= <".SYSMAIL.">\n";
$adds .= "List-Unsubscribe: <http://".URL."/cabinet.asp>\n";
$adds .= "Content-Type: text/html; charset=utf-8\n";
$adds .= "MIME-Version: 1.0\n";
$adds .= "Content-Transfer-Encoding: 8bit\n";
$adds .= "X-Mailer: PHP v.".phpversion()."\n";
$adds .= "Date: ".date("r")."\n";
return mail($mail, $subject, $messages, $adds);
}
/* Ссылка на анкету */
function login($us, $sex = false){
$row = DB :: run() -> query("select (`login`), (`admin`), (`sex`), (`privilege`) from `users` where `login` = ?", array($us)) -> fetch(PDO::FETCH_OBJ);
if ($row -> admin == '0') $color = '';
if ($row -> admin == '1') $color = 'red';
if ($row -> privilege == '1') $vip = '<span style="color:green"><small><sup>VIP</sup></small></span>';
if ($sex == NULL && $row -> sex == '1'){
$pol = image('male.png','18|18');
} elseif ($sex == NULL && $row -> sex == '0'){
$pol = image('female.png','18|18');
}
if (!empty($us)){
$us = '<a href="'.URL.'/'.checkout($row -> login).'.us"><span style="color:'.$color.'">'.checkout($row -> login).'</span></a> ';
} else {
$us = 'Удален с сайта ';
}
return $pol . $us . $vip;
}
/* Генерация паролей */
function generation($length){
$gens = str_split('qwertyuiopadsfghjklzxcvbnmQ12345WERTYUIOPASDFGHJKLZXCVBNM67890');
$gen = '';
for ($i = 0; $i < $length; $i++){
$gen .= $gens[array_rand($gens)];
}
return $gen;
}
/* Статус онлайн */
function online($us){
$row = DB :: run() -> query("select (`ontime`) from `users` where `login` = ?", array($us)) -> fetch(PDO::FETCH_OBJ);
return ($row -> ontime < TIME - 300) ? image('isoffline.png','18|18') : image('isonline.png','18|18');
}
/* Пол иконкой */
function sex($us){
$row = DB :: run() -> query("select (`sex`) from `users` where `login` = ?", array($us)) -> fetch(PDO::FETCH_OBJ);
return ($row -> sex == '1') ? image('male.png','18|18') : image('female.png','18|18');
}
/* Аватар юзера */
function ava($us){
if (is_file(FOLDER.'/avatars/'.$us.'.jpg')){
return '<img src="'.URL.'/avatars/'.$us.'.jpg" alt="'.$us.'" style=" width: 30px; height: 30px; border-radius: 10%">';
} else {
return '<img src="'.URL.'/style/icons/no-avatar.png" alt="No photo" style=" width: 30px; height: 30px; border-radius: 10%;">';
}
}
/* Флаг страны пользователя */
function country_icon($country){
$info = DB :: run() -> queryFetch("select (`id_country`) from `country` where `name_country` = '".$country."' limit 1");
return (!empty($country) ? '<img src="'.URL.'/style/flags/'.$info['id_country'].'.png" width="24" title="*">' : 'Страна и город не указан.');
}
/* В бане ли юзер */
function is_ban($us){
if (DB :: run() -> querySingle("select count(`id`) from `ban` where `who` = ?", array($us)) > 0){
return true;
} else {
return false;
}
}
/* В бане ли ip адрес */
function is_banip($ips){
if (DB :: run() -> querySingle("select count(`id`) from `banip` where `ips` = ?", array($ips)) > 0){
return true;
} else {
return false;
}
}
/* Приветствие */
function hello($time){
if ($time == NULL) $time = TIME;
$hi = date('H', $time);
if ($hi <= '4' || $hi >= '23') $hi = 'Доброй ночи';
if ($hi >= '5' && $hi <= '10') $hi = 'Доброе утро';
if ($hi >= '11' && $hi <= '17') $hi = 'Добрый день';
if ($hi >= '18' && $hi <= '22') $hi = 'Добрый вечер';
return $hi;
}
/* Функция кто где */
function where($module){
if ($module == 'index'){
$mesto = '<a href="'.URL.'">Главная</a>';
} elseif ($module == 'cabinet'){
$mesto = '<a href="'.URL.'/cabinet">Кабинет</a>';
} elseif ($module == 'go'){
$mesto = 'Просматривает сайт';
} elseif ($module == 'chat'){
$mesto = '<a href="'.URL.'/chats">Мини-Чатик</a>';
} elseif ($module == 'who'){
$mesto = '<a href="'.URL.'/chat_who">Кто в Мини-Чате?</a>';
} elseif ($module == 'exchange'){
$mesto = '<a href="'.URL.'/finances">Мои финансы</a>';
} elseif ($module == 'history'){
$mesto = '<a href="'.URL.'/history">История выплат</a>';
} elseif ($module == 'merchant'){
$mesto = '<a href="'.URL.'/autoinput">Автоввод средств</a>';
} elseif ($module == 'plus'){
$mesto = '<a href="'.URL.'/manualinput">Ввод средств</a>';
} elseif ($module == 'minus'){
$mesto = '<a href="'.URL.'/conclusion">Вывод средств</a>';
} elseif ($module == 'inhistory'){
$mesto = '<a href="'.URL.'/inhistory">История вводов</a>';
} elseif ($module == 'mobile'){
$mesto = '<a href="'.URL.'/mobile">Вывод на телефон</a>';
} elseif ($module == 'info'){
$mesto = '<a href="'.URL.'/help">Информация</a>';
} elseif ($module == 'bbcode'){
$mesto = '<a href="'.URL.'/help_bbcode">Справка по BB-Кодам</a>';
} elseif ($module == 'rules'){
$mesto = '<a href="'.URL.'/help_rules">Правила системы</a>';
} elseif ($module == 'contacts'){
$mesto = '<a href="'.URL.'/help_contacts">Контакты админа</a>';
} elseif ($module == 'smiles'){
$mesto = '<a href="'.URL.'/help_smiles">Справка по смайлам</a>';
} elseif ($module == 'mail'){
$mesto = '<a href="'.URL.'/messages">Личная почта</a>';
} elseif ($module == 'dialog'){
$mesto = 'Диалог с юзером';
} elseif ($module == 'newmes'){
$mesto = 'Новое сообщение';
} elseif ($module == 'notice'){
$mesto = '<a href="'.URL.'/notice">Уведомления</a>';
} elseif ($module == 'news'){
$mesto = '<a href="'.URL.'/feed">Новости системы</a>';
} elseif ($module == 'review'){
$mesto = 'Просмотр новости';
} elseif ($module == 'comment'){
$mesto = 'Комментарии новости';
} elseif ($module == 'rating'){
$mesto = '<a href="'.URL.'/rate">Рейтинги системы</a>';
} elseif ($module == 'click'){
$mesto = '<a href="'.URL.'/rate_click">Рейтинг по кликам</a>';
} elseif ($module == 'money'){
$mesto = '<a href="'.URL.'/rate_money">Рейтинг по балансу</a>';
} elseif ($module == 'ref'){
$mesto = '<a href="'.URL.'/rate_refer">Рейтинг по рефералам</a>';
} elseif ($module == 'last'){
$mesto = '<a href="'.URL.'/rate_last">Нас посетили</a>';
} elseif ($module == 'postchat'){
$mesto = '<a href="'.URL.'/rate_chat">Рейтинг в чате</a>';
} elseif ($module == 'banks'){
$mesto = '<a href="'.URL.'/rate_bank">Рейтинг по банку</a>';
} elseif ($module == 'active'){
$mesto = '<a href="'.URL.'/rate_active">Рейтинг по активу</a>';
} elseif ($module == 'badclick'){
$mesto = '<a href="'.URL.'/rate_badclick">Рейтинг по недопереходам</a>';
} elseif ($module == 'full'){
$mesto = '<a href="'.URL.'/full">Полная статистика</a>';
} elseif ($module == 'reviews'){
$mesto = '<a href="'.URL.'/responses">Ваши отзывы</a>';
} elseif ($module == 'add'){
$mesto = '<a href="'.URL.'/responses_add">Добавить отзыв</a>';
} elseif ($module == 'sites'){
$mesto = '<a href="'.URL.'/site">Мои площадки</a>';
} elseif ($module == 'asites'){
$mesto = '<a href="'.URL.'/site_add">Добавить площадку</a>';
} elseif ($module == 'anketa'){
$mesto = 'Анкета юзера';
} elseif ($module == 'ban'){
$mesto = 'Блокировка аккаунта';
} elseif ($module == 'banlist'){
$mesto = '<a href="'.URL.'/banlist">Список забаненных</a>';
} elseif ($module == 'changes'){
$mesto = '<a href="'.URL.'/changes">Мои настройки</a>';
} elseif ($module == 'closed'){
$mesto = 'Технические работы';
} elseif ($module == 'str'){
$mesto = 'Внешняя ссылка';
} elseif ($module == 'digest'){
$mesto = '<a href="'.URL.'/digest">Дайджест</a>';
} elseif ($module == 'error'){
$mesto = 'Страница ошибок';
} elseif ($module == 'forgot'){
$mesto = '<a href="'.URL.'/forgot">Забыли пароль?</a>';
} elseif ($module == 'input'){
$mesto = '<a href="'.URL.'/input">Авторизация</a>';
} elseif ($module == 'inputlogs'){
$mesto = '<a href="'.URL.'/inputlogs">Логи авторизаций</a>';
} elseif ($module == 'list'){
$mesto = '<a href="'.URL.'/site_list">Просмотр рекламы</a>';
} elseif ($module == 'auto'){
$mesto = '<a href="'.URL.'/auto">Автосерфинг сайтов</a>';
} elseif ($module == 'online'){
$mesto = '<a href="'.URL.'/online">Сейчас онлайн</a>';
} elseif ($module == 'pass'){
$mesto = '<a href="'.URL.'/pass">Смена пароля</a>';
} elseif ($module == 'quest'){
$mesto = '<a href="'.URL.'/quest">Бонусная программа</a>';
} elseif ($module == 'redirect'){
$mesto = 'Переход по рекламе';
} elseif ($module == 'referals'){
$mesto = '<a href="'.URL.'/referals">Мои рефералы</a>';
} elseif ($module == 'registration'){
$mesto = '<a href="'.URL.'/registration">Регистрация</a>';
} elseif ($module == 'stat'){
$mesto = '<a href="'.URL.'/stat">Статистика системы</a>';
} elseif ($module == 'userlist'){
$mesto = '<a href="'.URL.'/userlist">Список юзеров</a>';
} elseif ($module == 'webmoney'){
$mesto = '<a href="'.URL.'/webmoney">Webmoney бонусы</a>';
} elseif ($module == 'guest'){
$mesto = '<a href="'.URL.'/guest">Онлайн гостей</a>';
} elseif ($module == 'ads'){
$mesto = '<a href="'.URL.'/advert">Заказ рекламы</a>';
} elseif ($module == 'delads'){
$mesto = 'Удаление рекламы';
} elseif ($module == 'adsadd'){
$mesto = '<a href="'.URL.'/advert_add">Добавить рекламу</a>';
} elseif ($module == 'away'){
$mesto = 'Переход по рекламе';
} elseif ($module == 'day'){
$mesto = '<a href="'.URL.'/dayrate">Лучшие сегодня</a>';
} elseif ($module == 'bank'){
$mesto = '<a href="'.URL.'/bank">Банк кредитов</a>';
} elseif ($module == 'sale'){
$mesto = '<a href="'.URL.'/sale">Автопродажа CR</a>';
} elseif ($module == 'purchase'){
$mesto = '<a href="'.URL.'/purchase">Автопокупка CR</a>';
} elseif ($module == 'activation'){
$mesto = 'Активация аккаунта';
} elseif ($module == 'games'){
$mesto = '<a href="'.URL.'/apps">Игротека клуба</a>';
} elseif ($module == '777'){
$mesto = '<a href="'.URL.'/777">Игpa 777 (cлoт)</a>';
} elseif ($module == 'orel'){
$mesto = '<a href="'.URL.'/orel">Орел-Решка</a>';
} elseif ($module == 'ugad'){
$mesto = '<a href="'.URL.'/ugad">Угадай число</a>';
} elseif ($module == 'moneybox'){
$mesto = '<a href="'.URL.'/moneybox">Заполни копилку</a>';
} elseif ($module == 'autos'){
$mesto = 'Серфит сайт';
} elseif ($module == 'spam'){
$mesto = '<a href="'.URL.'/mailing">Рассылка писем</a>';
} elseif ($module == 'addspam'){
$mesto = '<a href="'.URL.'/addmailing">Заказ рассылки</a>';
} elseif ($module == 'myspam'){
$mesto = '<a href="'.URL.'/mymailing">Мои рассылки</a>';
} elseif ($module == 'task'){
$mesto = '<a href="'.URL.'/tasks">Задания юзеров</a>';
} elseif ($module == 'addtask'){
$mesto = '<a href="'.URL.'/addtask">Добавить задание</a>';
} elseif ($module == 'checktask'){
$mesto = 'Проверка выполнения';
} elseif ($module == 'mytask'){
$mesto = '<a href="'.URL.'/mytask">Ваши задания</a>';
} elseif ($module == 'listtask'){
$mesto = '<a href="'.URL.'/listtask">Список заданий</a>';
} elseif ($module == 'stattask'){
$mesto = '<a href="'.URL.'/stattask">Статистика выполнений</a>';
} elseif ($module == 'sitestat'){
$mesto = '<a href="'.URL.'/sitestat">Статистика сайта</a>';
} elseif ($module == 'city'){
$mesto = '<a href="'.URL.'/city">Местоположение</a>';
} elseif ($module == 'goodsite'){
$mesto = '<a href="'.URL.'/goodsite">Сайты для заработка</a>';
} elseif ($module == 'votes'){
$mesto = '<a href="'.URL.'/polls">Голосования</a>';
} elseif ($module == 'vote'){
$mesto = '<a href="'.URL.'/polls">Голосование</a>';
} elseif ($module == 'voice'){
$mesto = '<a href="'.URL.'/polls">Кто голосовал</a>';
} elseif ($module == 'menu'){
$mesto = '<a href="'.URL.'/menu">Личный кабинет</a>';
} elseif ($module == 'download'){
$mesto = '<a href="'.URL.'/download">Загрузки</a>';
} elseif ($module == 'panel'){
$mesto = 'Скрыто от просмотра';
} else {
$mesto = 'Не определено';
}
return $mesto;
}
/* IP адрес */
function CLIENT_IP(){
if (!empty($_SERVER['HTTP_CLIENT_IP'])){
$ip = filter_var($_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP);
} elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip = filter_var(array_shift(explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])), FILTER_VALIDATE_IP);
} else {
$ip = filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP);
$ipLong = sprintf("%u", ip2long($ip));
}
return $ip;
}
/* Браузер */
function CLIENT_UA(){
if (isset($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'])){
$ua = filter_var($_SERVER['HTTP_X_OPERAMINI_PHONE_UA'], FILTER_SANITIZE_STRING);
} elseif (isset($_SERVER['HTTP_USER_AGENT'])){
$ua = filter_var($_SERVER['HTTP_USER_AGENT'], FILTER_SANITIZE_STRING);
} else {
$ua = 'Not_detected';
}
return $ua;
}
/* Копирайт! Не снимать! */
function copyright(){
$copy = '<b>© <a href="http://clicks24.ru">NTLCMS v '.VERSION.'</a> 2013-2019 г</b>';
return $copy;
}
/* Функция авторизации пользователя */
if (isset($_SESSION['login']) && isset($_SESSION['pass'])){
$login = isset($_SESSION['login']) ? filter_var($_SESSION['login'], FILTER_SANITIZE_FULL_SPECIAL_CHARS) : false;
$sql = DB :: run() -> query("select * from `users` where `login` = ? limit 1", array($login));
$numuser = DB :: run() -> querySingle("select * from `users` where `login` = ?", array($login));
if ($numuser != 0){
$_USER = $sql -> fetch();
if ($_USER['login'] == strtolower($_SESSION['login']) || strtoupper($_SESSION['login']) && $_USER['pass'] == $_SESSION['pass']) {
/* Получаем данные пользователя */
/*if (@filemtime(FOLDER.'/cache/'.$_USER['login'].'.dat') < TIME - 600){
$us = DB :: run() -> query("select * from `users` where `login` = ? limit 1", array($_USER['login'])) -> fetch();
file_put_contents(FOLDER.'/cache/'.$_USER['login'].'.dat', serialize($us), LOCK_EX);
} else {
$_USER = unserialize(file_get_contents(FOLDER.'/cache/'.$_SESSION['auth_id'].'.dat'));
}*/
$active = true;
/* Время проведенное на сайте */
$alltime = TIME - $_USER['lasttime'];
if ($alltime < 300){
$alltime += $_USER['alltime'];
} else {
$alltime = $_USER['alltime'];
}
/* Онлайн пользователей */
if (!DB :: run() -> querySingle("select (`login`) from `users` where `login` = ?", array($_USER['login']))){
DB :: run() -> query("update `users` set `ip` = ?, `ua` = ?, `real` = ?, `realua` = ?, `ontime` = ?, `transition` = `transition` + ?, `cross` = `cross` + ?, `where` = ? where `login` = ? limit 1", array($ip, $ua, CLIENT_IP(), CLIENT_UA(), $_USER['invisible'] == '1' ? '0' : TIME, 1, 1, $module, $_USER['login']));
} else {
DB :: run() -> query("update `users` set `ontime` = ?, `transition` = `transition` + ?, `cross` = `cross` + ?, `ip` = ?, `ua` = ?, `real` = ?, `realua` = ? where `login` = ? limit 1", array($_USER['invisible'] == '1' ? '0' : TIME, 1, 1, $ip, $ua, CLIENT_IP(), CLIENT_UA(), $_USER['login']));
DB :: run() -> query("update `users` set `sess` = ?, `lasttime` = ?, `alltime` = ?, `oldip` = ?, `oldua` = ?, `where` = ? where `login` = ? limit 1", array($sess, TIME, $alltime, $ip, $ua, $module, $_USER['login']));
}
} else {
session_destroy();
}
} else {
session_destroy();
}
}
/* Актуализация переменных */
$onpage = ($active == true) ? filter_var($_USER['pages'], FILTER_SANITIZE_NUMBER_INT) : filter_var($set['pages'], FILTER_SANITIZE_NUMBER_INT);
$ulogin = isset($_USER['login']) ? filter_var($_USER['login'], FILTER_SANITIZE_FULL_SPECIAL_CHARS) : false;
$ilogin = isset($_USER['login']) ? filter_var($_USER['login'], FILTER_SANITIZE_FULL_SPECIAL_CHARS) : false;
/* Онлайн гостей */
if (!isset($active)){
if (!DB :: run() -> querySingle("select (`ip`) from `session` where `ip` = ?", array($ip))){
DB :: run() -> query("insert into `session` (`ip`, `ua`, `date`, `transition`, `real`, `realua`) values (?, ?, ?, ?, ?, ?)", array($ip, $ua, TIME, 1, CLIENT_IP(), CLIENT_UA()));
} else {
DB :: run() -> query("update `session` set `date` = ?, `transition` = `transition` + ?, `ip` = ?, `ua` = ?, `real` = ?, `realua` = ? where `ip` = ? limit 1", array(TIME, 1, $ip, $ua, CLIENT_IP(), CLIENT_IP(), $ip));
}
}
/* Выдает текущую страницу */
function page($k_page = 1){
$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;
}
if ($page > $k_page){
$page = $k_page;
}
}
return $page;
}
/* Высчитывает количество страниц */
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;
}
}
/* Вывод номеров страниц */
function navigation($link = '?', $k_page = 1, $page = 1){
if ($page < 1) {
$page = 1;
}
echo '<div class="hey">';
if ($page != 1){
echo 'Стр: <div class="panel"><a href="'.$link.'page=1">1</a></div>';
} else {
echo 'Стр: 1';
}
for ($i =- 3; $i <= 3; $i++){
if ($page + $i > 1 && $page + $i < $k_page){
if ($i ==- 3 && $page + $i > 2){
echo ' ..';
}
if ($i != 0){
echo '<div class="panel"><a href="'.$link.'page='.($page + $i).'">'.($page + $i).'</a></div>';
} else {
echo ' '.($page + $i).'';
}
if ($i == 3 && $page + $i < $k_page - 1){
echo ' ..';
}
}
}
if ($page != $k_page){
echo ' <div class="panel"><a href="'.$link.'page=end">'.$k_page.'</a></div>';
} elseif ($k_page > 1){
echo ' '.$k_page.'';
}
echo '</div>';
}
/* Функция скачивания файла */
function Downloads($filename, $name, $mimetype='application/octet-stream'){
if (!file_exists($filename))die('Файл не найден');
@ob_end_clean();
$from = 0;
$size = filesize($filename);
$to = $size;
if (isset($_SERVER['HTTP_RANGE'])){
if (preg_match ('#bytes=-([0-9]*)#i',$_SERVER['HTTP_RANGE'],$range)){
$from = $size-$range[1];
$to = $size;
} elseif(preg_match('#bytes=([0-9]*)-#i',$_SERVER['HTTP_RANGE'],$range)){
$from = $range[1];
$to = $size;
} elseif(preg_match('#bytes=([0-9]*)-([0-9]*)#i',$_SERVER['HTTP_RANGE'],$range)){
$from = $range[1];
$to = $range[2];
}
header('HTTP/1.1 206 Partial Content');
$cr = 'Content-Range: bytes '.$from .'-'.$to.'/'.$size;
}
else
header('HTTP/1.1 200 Ok');
$etag = md5($filename);
$etag = substr($etag, 0, 8) . '-' . substr($etag, 8, 7) . '-' . substr($etag, 15, 8);
header('ETag: "'.$etag.'"');
header('Accept-Ranges: bytes');
header('Content-Length: ' .($to-$from));
if (isset($cr))header($cr);
header('Connection: close');
header('Content-Type: ' . $mimetype);
header('Last-Modified: ' . gmdate('r', filemtime($filename)));
header("Last-Modified: ".gmdate("D, d M Y H:i:s", filemtime($filename))." GMT");
header("Expires: ".gmdate("D, d M Y H:i:s", time() + 3600)." GMT");
$f = fopen($filename, 'rb');
if (preg_match('#^image/#i',$mimetype))
header('Content-Disposition: filename="'.$name.'";');
else
header('Content-Disposition: attachment; filename="'.$name.'";');
fseek($f, $from, SEEK_SET);
$size = $to;
$downloaded = 0;
while(!feof($f) and !connection_status() and ($downloaded<$size)){
$block = min(1024*8, $size - $downloaded);
echo fread($f, $block);
$downloaded += $block;
flush();
}
fclose($f);
}
/* Функция форматированного вывода размера файла */
function read_file($file){
if (file_exists($file)){
return formatsize(filesize($file));
} else {
return 0;
}
}
/* Функция подсчета веса директории */
function read_dir($dir){
if (empty($allsize)){
$allsize = 0;
}
if ($path = opendir($dir)){
while ($file_name = readdir($path)){
if (($file_name !== '.') && ($file_name !== '..')){
if (is_dir($dir.'/'.$file_name)){
$allsize += read_dir($dir.'/'.$file_name);
} else {
$allsize += filesize($dir.'/'.$file_name);
}
}
}
closedir ($path);
}
return $allsize;
}
/* Вывод веса базы данных */
function DataBaseSize($db){
$sql = DB :: run() -> query('show table status');
$dbsize = 0;
while ($row = $sql -> fetch()){
$dbsize += ($row['Index_length'] + $row['Data_length']);
}
return $dbsize;
}
/* Вывод веса файла */
function formatsize($file_size){
if ($file_size >= 1048576000){
$file_size = round(($file_size / 1073741824), 2).' Гб';
} elseif ($file_size >= 1024000){
$file_size = round(($file_size / 1048576), 2).' Мб';
} elseif ($file_size >= 1000){
$file_size = round(($file_size / 1024), 2).' Кб';
} else {
$file_size = round($file_size).' б';
}
return $file_size;
}
/* Статус площадок пользователей */
$sql = DB :: run() -> query("select (`login`), (`credit`) from `users`");
while($row = $sql -> fetch(PDO::FETCH_OBJ)){
if ($row -> credit > '0'){
DB :: run() -> query("update `sites` set `active` = ? where `login` = ?", array(1, $row -> login));
} elseif($row -> credit <= '0'){
DB :: run() -> query("update `sites` set `active` = ? where `login` = ?", array(0, $row -> login));
}
}
/* Кто откуда пришел */
if (isset($_SERVER['HTTP_REFERER']) && stripos($_SERVER['HTTP_REFERER'], 'clicks24.ru') != true){
$site = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '-----';
if (!DB :: run() -> querySingle("select (`ip`) from `referer` where `ip` = ?", array($ip))){
DB :: run() -> query("insert into `referer` (`date`, `site`, `ip`, `browser`) values (?, ?, ?, ?)", array(TIME, $site, $ip, $ua));
}
}
/* Статистика сайта */
if (DB :: run() -> querySingle("select count(*) from `count_day` where `date` = '".date('d.m.Y')."' limit 1") == 0) DB :: run() -> query("insert into `count_day` (`date`) values ('".date('d.m.Y')."')");
else {
//if (!isset($_COOKIE['count'])){
if (!DB :: run() -> querySingle("select * from `count_sip` where `soft` = '".$ua."' and `ip` = '".$ip."'")){
DB :: run() -> query("update `count_day` set `host` = `host` + 1, `hit` = `hit` + 1 where `date` = '".date('d.m.Y')."'");
DB :: run() -> query("insert into `count_sip` set `date` = '".date('d.m.Y')."', `soft` = '".$ua."', `ip` = '".$ip."', `time` = '".TIME."', `realip` = '".CLIENT_IP()."', `realua` = '".CLIENT_UA()."'");
} else DB :: run() -> query("update `count_day` set `hit` = `hit` + 1 where `date` = '".date('d.m.Y')."'");
}
$cron = DB :: run() -> query("select (`value`) from `set` where `name` = 'cron_date'") -> fetch(PDO::FETCH_OBJ);
/* Обновление статистики $set['cron_date'] */
if (date('d') != $cron -> value){
include (dirname(__FILE__).'/cron.php');
include (dirname(__FILE__).'/stats.php');
DB :: run() -> query("update `set` set `value` = '".date('d')."' where `name` = 'cron_date'");
DB :: run() -> query("truncate table `click`");
DB :: run() -> query("update `sites` set `day` = ?", array(0));
DB :: run() -> query("update `ref` set `day` = ?", array(0));
DB :: run() -> query("update `users` set `click_day` = ?, `myprofit` = ?", array(0, 0));
}
/* Счетчики модулей */
include (dirname(__FILE__).'/syscount.php');
/* Если IP забанен */
if (is_banip(IP)) die("<center><b>Сайт временно недоступен!</b></center>");
?>