function stats_board() { $itogoboards = 0; if (file_exists(DATADIR . "/board/database.dat")) { $file = file(DATADIR . "/board/database.dat"); foreach ($file as $bval) { $dtb = explode("|", $bval); if (file_exists(DATADIR . "/board/{$dtb['2']}.dat")) { $total = counter_string(DATADIR . "/board/{$dtb['2']}.dat"); $itogoboards += $total; } } } return (int) $itogoboards; }
} $uzdata = reading_profil($uz); echo 'Ваш положительный голос за пользователя ' . nickname($uz) . ' успешно оставлен!<br />'; echo 'В данный момент его авторитет: ' . (int) $uzdata[49] . '<br />'; echo 'Всего положительных голосов: ' . (int) $uzdata[50] . '<br />'; echo 'Всего отрицательных голосов: ' . (int) $uzdata[51] . '<br /><br />'; echo 'От общего числа положительных и отрицательных голосов строится рейтинг самых авторитетных<br />'; echo 'Внимание, следующий голос вы сможете оставить не менее чем через 3 часа!<br />'; } ############################################################################################ ## Уменьшение авторитета ## ############################################################################################ if ($action == "minus") { change_profil($log, array(48 => SITETIME + 10800)); write_files(DATADIR . "dataraiting/{$log}.dat", "{$uz}|-|\r\n", 0, 0666); $countstr = counter_string(DATADIR . "dataraiting/{$log}.dat"); if ($countstr >= 20) { delete_lines(DATADIR . "dataraiting/{$log}.dat", array(0, 1)); } $uzdata = reading_profil($uz); change_profil($uz, array(49 => $uzdata[49] - 1, 51 => $uzdata[51] + 1)); //------------------------------Уведомление по привату------------------------// if ($config['notificraiting'] == 1) { $filesize = filesize(DATADIR . 'privat/' . $uz . '.priv'); $pers = round($filesize / 1024 * 100 / $config['limitsmail']); if ($pers < 100) { change_profil($uz, array(10 => $uzdata[10] + 1)); $text = no_br($log . '|<img src="../images/img/minus.gif" alt="Минус" /> Пользователь ' . nickname($log) . ' поставил вам минус|' . SITETIME . '|'); write_files(DATADIR . 'privat/' . $uz . '.priv', "{$text}\r\n"); } }
############################################################################################ ## Дабавление контактов ## ############################################################################################ if ($action == "add") { $uid = check($_GET['uid']); if (isset($_POST['uz'])) { $uz = check($_POST['uz']); } elseif (isset($_GET['uz'])) { $uz = check($_GET['uz']); } else { $uz = ""; } if ($uid == $_SESSION['token']) { if (preg_match('|^[a-z0-9\\-]+$|i', $uz)) { if (file_exists(DATADIR . "profil/{$uz}.prof")) { if (counter_string(DATADIR . "datakontakt/{$log}.dat") <= 50) { if ($uz != $log) { $addstr = search_string(DATADIR . "datakontakt/{$log}.dat", $uz, 1); if (empty($addstr)) { write_files(DATADIR . "datakontakt/{$log}.dat", '|' . $uz . '|' . SITETIME . "|\r\n", 0, 0666); //------------------------------Уведомление по привату------------------------// if ($udata[74] < SITETIME) { $ignorstr = search_string(DATADIR . "dataignor/{$uz}.dat", $log, 1); if (empty($ignorstr)) { $filesize = filesize(DATADIR . 'privat/' . $uz . '.priv'); $pers = round($filesize / 1024 * 100 / $config['limitsmail']); if ($pers < 99) { $text = no_br($log . '|Пользователь ' . nickname($log) . ' добавил вас в свой контакт-лист|' . SITETIME . '|'); write_files(DATADIR . 'privat/' . $uz . '.priv', "{$text}\r\n"); $uzdata = reading_profil($uz); change_profil($uz, array(10 => $uzdata[10] + 1));
echo '<br /><b>Операция:</b><br />'; echo '<form action="bank.php?action=operacia&' . SID . '" method="post">'; echo '<input name="gold" /><br />'; echo '<select name="oper">'; echo '<option value="2">Положить на счет</option><option value="1">Снять со счета</option>'; echo '</select><br /><br />'; echo '<input type="submit" value="Продолжить" /></form><hr />'; echo 'Минимальная сумма вклада или остатка счета: ' . moneys(10) . '<br />'; echo 'Максимальная сумма вклада: ' . moneys($config['maxsumbank']) . '<br /><br />'; echo 'Процентная ставка зависит от суммы вклада<br />'; echo 'Вклад до 100тыс. - ставка 12%<br />'; echo 'Вклад более 100тыс. - ставка 6%<br />'; echo 'Вклад более 250тыс. - ставка 3%<br />'; echo 'Вклад более 500тыс. - ставка 2%<br />'; echo 'Вклад более 1млн. - ставка 1%<br /><br />'; echo 'Всего вкладчиков: <b>' . counter_string(DATADIR . "bank.dat") . '</b><br />'; } ############################################################################################ ## Операции ## ############################################################################################ if ($action == "operacia") { $gold = (int) $_POST['gold']; $oper = (int) $_POST['oper']; //----------------------- Снятие со счета ----------------------------// if ($oper == 1) { echo '<b>Снятие со счета</b><br />'; if ($gold >= 10) { $string = search_string(DATADIR . "bank.dat", $log, 1); if ($string) { if ($gold <= $string[2] - 10) { change_profil($log, array(41 => $udata[41] + $gold));
} else { $start = 0; } if (isset($_GET['uz'])) { $uz = check($_GET['uz']); } elseif (isset($_POST['uz'])) { $uz = check($_POST['uz']); } else { $uz = ""; } echo '<img src="../images/img/partners.gif" alt="image" /> <b>Рейтинг долгожителей</b><br /><br />'; ############################################################################################ ## Запись в кэш ## ############################################################################################ $filtime = filemtime(DATADIR . "datatmp/lifelist.dat"); $user_count = counter_string(DATADIR . "datatmp/lifelist.dat"); $filtime = $filtime + 3600 * $config['lifelistcache']; if (SITETIME > $filtime || $user_count < 100) { $array_users = array(); $globusers = glob(DATADIR . "datalife/*.dat"); foreach ($globusers as $filename) { $array_users[] = basename($filename); } if (count($array_users) > 0) { $dat_life = array(); $dat_login = array(); foreach ($array_users as $userval) { $tex = file_get_contents(DATADIR . "datalife/{$userval}"); $data = explode("|", $tex); $dat_life[] = (int) $data[1]; $dat_login[] = check($data[2]);
$msg = check($_POST['msg']); show_title('partners.gif', 'Добавление комментария'); if (is_user()) { if (preg_match('|^[a-z0-9_\\.\\-]+$|i', $gid)) { if (utf_strlen(trim($msg)) > 5 && utf_strlen($msg) < 1000) { if (file_exists(DATADIR . "datagallery/{$gid}")) { antiflood("Location: index.php?action=komm&gid={$gid}&isset=antiflood&" . SID); karantin($udata[6], "Location: index.php?action=komm&gid={$gid}&isset=karantin&" . SID); statistics(7); $msg = no_br($msg, '<br />'); $msg = antimat($msg); $msg = smiles($msg); $text = no_br($msg . '||' . SITETIME . '|' . $log . '|'); write_files(DATADIR . "datagallery/{$gid}.dat", "{$text}\r\n", 0, 0666); //---------------------------------------------------------// $countstr = counter_string(DATADIR . "datagallery/{$gid}.dat"); if ($countstr >= $config['maxpostgallery']) { delete_lines(DATADIR . "datagallery/{$gid}.dat", array(0, 1)); } change_profil($log, array(14 => $ip, 33 => $udata[33] + 1, 36 => $udata[36] + 1, 41 => $udata[41] + 1)); header("location: index.php?action=komm&gid={$gid}&isset=addkomm&" . SID); exit; } else { show_error('Ошибка, такой фотографии не существует!'); } } else { show_error('Вы не написали комментарий или он слишком короткий'); } } else { show_error('Ошибка! Недопустимое название изображения!'); }
#-----------------------------------------------------# require_once '../includes/start.php'; require_once '../includes/functions.php'; require_once '../includes/header.php'; include_once '../themes/' . $config['themes'] . '/index.php'; show_title('menu.gif', 'Форум ' . $config['title']); $config['newtitle'] = 'Форум - Список разделов'; if (file_exists(DATADIR . "dataforum/mainforum.dat")) { $fileforum = file(DATADIR . "dataforum/mainforum.dat"); $total = count($fileforum); if ($total > 0) { foreach ($fileforum as $forumval) { $forum = explode("|", $forumval); echo '<div class="b"><img src="/images/img/forums.gif" alt="image" /> '; echo '<b><a href="forum.php?fid=' . $forum[0] . '&' . SID . '">' . $forum[1] . '</a></b> (' . $forum[2] . '/' . $forum[3] . ')</div>'; $totalforum = counter_string(DATADIR . "dataforum/topic" . $forum[0] . ".dat"); if ($totalforum > 0) { $filetopic = file(DATADIR . "dataforum/topic" . $forum[0] . ".dat"); $topic = explode("|", end($filetopic)); if (file_exists(DATADIR . 'dataforum/' . $forum[0] . '-' . $topic[0] . '.dat')) { $filepost = file(DATADIR . 'dataforum/' . $forum[0] . '-' . $topic[0] . '.dat'); $post = explode("|", end($filepost)); if (utf_strlen($topic[3]) > 35) { $topic[3] = utf_substr($topic[3], 0, 30); $topic[3] .= "..."; } echo '<div>Тема: <a href="topic.php?act=end&fid=' . $forum[0] . '&id=' . $topic[0] . '&' . SID . '">' . $topic[3] . '</a><br />'; echo 'Сообщение: ' . nickname($post[2]) . ' (' . date_fixed($post[6]) . ')</div>'; } else { echo 'Последняя тема не найдена!'; }
$action = check($_GET['action']); } else { $action = ""; } show_title('partners.gif', 'Доска объявлений'); ############################################################################################ ## Вывод перечня категорий ## ############################################################################################ if ($action == "") { if (file_exists(DATADIR . "databoard/database.dat")) { $lines = file(DATADIR . "databoard/database.dat"); $total = count($lines); if ($total > 0) { foreach ($lines as $boardval) { $data = explode("|", $boardval); $totalboard = counter_string(DATADIR . "databoard/{$data['2']}.dat"); echo '<div class="b"><img src="../images/img/forums.gif" alt="image" /> '; echo '<b><a href="index.php?action=board&id=' . $data[2] . '&' . SID . '">' . $data[0] . '</a></b> (' . (int) $totalboard . ')</div>'; echo '<div>' . $data[1] . '<br />'; if ($totalboard > 0) { $fileboard = file(DATADIR . "databoard/{$data['2']}.dat"); $lostlist = explode("|", end($fileboard)); if (utf_strlen($lostlist[0]) > 35) { $lostlist[0] = utf_substr($lostlist[0], 0, 30); $lostlist[0] .= "..."; } echo 'Тема: <a href="index.php?action=view&id=' . $lostlist[6] . '&bid=' . $lostlist[5] . '&' . SID . '">' . $lostlist[0] . '</a><br />'; echo 'Объявление: <a href="../pages/anketa.php?uz=' . $lostlist[1] . '&' . SID . '"> ' . nickname($lostlist[1]) . '</a> <small>(' . date_fixed($lostlist[3]) . ')</small>'; } else { echo 'Рубрика пуста, объявлений нет!'; }
if (utf_strlen($msg) > 3 && utf_strlen($msg) < 1000) { if (is_quarantine($log)) { if (is_flood($log)) { $msg = antimat($msg); $file = file(DATADIR . "/chat/chat.dat"); $data = explode("|", end($file)); $unifile = unifile(DATADIR . "/chat/chat.dat", 9); if (!isset($data[7])) { $data[7] = ''; } if (!isset($data[8])) { $data[8] = ''; } $text = no_br($msg . '|' . $log . '||' . SITETIME . '|' . $brow . '|' . $ip . '|0|' . $data[7] . '|' . $data[8] . '|' . $unifile . '|'); write_files(DATADIR . "/chat/chat.dat", "{$text}\r\n"); $countstr = counter_string(DATADIR . "/chat/chat.dat"); if ($countstr >= $config['maxpostchat']) { delete_lines(DATADIR . "/chat/chat.dat", array(0, 1, 2, 3, 4)); } DB::run()->query("UPDATE `users` SET `users_point`=`users_point`+1, `users_money`=`users_money`+5 WHERE `users_login`=?", array($log)); // --------------------------------------------------------------------------// if ($config['botnik'] == 1) { include_once "bots/chat_bot.php"; if ($mssg != "") { $unifile = unifile(DATADIR . "/chat/chat.dat", 9); $text = no_br($mssg . '|' . $namebots . '||' . SITETIME . '|MOT-V3|L-O-V-E|0|' . $data[7] . '|' . $data[8] . '|' . $unifile . '|'); write_files(DATADIR . "/chat/chat.dat", "{$text}\r\n"); } } // --------------------------------------------------------------------------// if ($config['magnik'] == 1) {
if ($string) { antiflood("Location: komm.php?id={$id}&isset=antiflood&" . SID); karantin($udata[6], "Location: komm.php?id={$id}&isset=karantin&" . SID); statistics(3); $msg = no_br($msg, '<br />'); $msg = antimat($msg); $msg = smiles($msg); $lastid = 0; if (file_exists(DATADIR . "datakomm/{$id}.dat")) { $file = file(DATADIR . "datakomm/{$id}.dat"); $lastkomm = explode("|", end($file)); $lastid = $lastkomm[5] + 1; } $text = no_br($brow . ', ' . $ip . '|' . $msg . '||' . SITETIME . '|' . $log . '|' . $lastid . '|'); write_files(DATADIR . "datakomm/{$id}.dat", "{$text}\r\n", 0, 0666); $countstr = counter_string(DATADIR . "datakomm/{$id}.dat"); if ($countstr >= $config['maxkommnews']) { delete_lines(DATADIR . "datakomm/{$id}.dat", array(0, 1)); } change_profil($log, array(14 => $ip, 33 => $udata[33] + 1, 36 => $udata[36] + 1, 41 => $udata[41] + 1)); header("Location: komm.php?id={$id}&isset=addon&" . SID); exit; } else { show_error('Ошибка! Выбранная вами новость не существует, возможно она была удалена!'); } } else { show_error('Ошибка! Слишком длинное или короткое сообщение!'); } } else { show_error('Ошибка! Неверный идентификатор сессии, повторите действие!'); }
} else { $start = 0; } if (isset($_GET['uz'])) { $uz = check($_GET['uz']); } elseif (isset($_POST['uz'])) { $uz = check($_POST['uz']); } else { $uz = ""; } echo '<img src="../images/img/partners.gif" alt="image" /> <b>Рейтинг авторитетов</b><br /><br />'; ############################################################################################ ## Запись в кэш ## ############################################################################################ $filtime = filemtime(DATADIR . "datatmp/avtorlist.dat"); $user_count = counter_string(DATADIR . "datatmp/avtorlist.dat"); $filtime = $filtime + 3600 * $config['avtorlistcache']; if (SITETIME > $filtime || $user_count < 100) { $array_users = array(); $globusers = glob(DATADIR . "profil/*.prof"); foreach ($globusers as $filename) { $array_users[] = basename($filename); } if (count($array_users) > 0) { $dat_log = array(); $dat_reg = array(); $dat_avtoritet = array(); $dat_plus = array(); $dat_minus = array(); foreach ($array_users as $userval) { $tex = file_get_contents(DATADIR . "profil/{$userval}");
############################################################################################ ## Дабавление пользователей ## ############################################################################################ if ($action == "add") { $uid = check($_GET['uid']); if (isset($_POST['uz'])) { $uz = check($_POST['uz']); } elseif (isset($_GET['uz'])) { $uz = check($_GET['uz']); } else { $uz = ""; } if ($uid == $_SESSION['token']) { if (preg_match('|^[a-z0-9\\-]+$|i', $uz)) { if (file_exists(DATADIR . "profil/{$uz}.prof")) { if (counter_string(DATADIR . "dataignor/{$log}.dat") <= 50) { if ($uz != $log) { $addstr = search_string(DATADIR . "dataignor/{$log}.dat", $uz, 1); if (empty($addstr)) { write_files(DATADIR . "dataignor/{$log}.dat", '|' . $uz . '|' . SITETIME . "|\r\n", 0, 0666); //------------------------------Уведомление по привату------------------------// if ($udata[74] < SITETIME) { $ignorstr = search_string(DATADIR . "dataignor/{$uz}.dat", $log, 1); if (empty($ignorstr)) { $filesize = filesize(DATADIR . 'privat/' . $uz . '.priv'); $pers = round($filesize / 1024 * 100 / $config['limitsmail']); if ($pers < 99) { $text = no_br($log . '|Пользователь ' . nickname($log) . ' добавил вас в свой игнор-лист|' . SITETIME . '|'); write_files(DATADIR . 'privat/' . $uz . '.priv', "{$text}\r\n"); $uzdata = reading_profil($uz); change_profil($uz, array(10 => $uzdata[10] + 1));
echo '<input name="ftype" type="radio" value="4" /> По IP-адресу<br /><br />'; echo '<input value="Поиск" type="submit" /></form><hr />'; echo '<br />Если результат поиска ничего не дал, тогда можно поискать по первым символам логина или ника<br />'; echo 'В этом случае будет выдан результат похожий на введенный вами запрос<br />'; } ############################################################################################ ## Поиск пользователя ## ############################################################################################ if ($action == "search") { $uz = check($_POST['uz']); $ftype = (int) $_POST['ftype']; if ($uz != "") { if ($ftype != "") { //------------------------------ НОВАЯ ФУНКЦИЯ КЕШИРОВАНИЯ ------------------------------// $filtime = filemtime(DATADIR . "datatmp/searchuser.dat"); $user_count = counter_string(DATADIR . "datatmp/searchuser.dat"); $filtime = $filtime + 3600 * $config['usersearchcache']; if (SITETIME > $filtime || $user_count < 50) { $array_users = array(); $globusers = glob(DATADIR . "profil/*.prof"); foreach ($globusers as $filename) { $array_users[] = basename($filename); } sort($array_users); $dat_top = array(); foreach ($array_users as $k => $v) { $tex = file_get_contents(DATADIR . "profil/{$v}"); $data = explode(":||:", $tex); $data[19] = preg_replace('|[^0-9]|', '', $data[19]); $dat_top[] = '|' . $data[0] . '|' . $data[65] . '|' . $data[19] . '|' . $data[14] . '|'; }
} else { $start = 0; } if (isset($_GET['uz'])) { $uz = check($_GET['uz']); } elseif (isset($_POST['uz'])) { $uz = check($_POST['uz']); } else { $uz = ""; } echo '<img src="../images/img/partners.gif" alt="image" /> <b>Рейтинг толстосумов</b><br /><br />'; ############################################################################################ ## Запись в кэш ## ############################################################################################ $filtime = filemtime(DATADIR . "datatmp/raitinglist.dat"); $user_count = counter_string(DATADIR . "datatmp/raitinglist.dat"); $filtime = $filtime + 3600 * $config['raitinglistcache']; if (SITETIME > $filtime || $user_count < 100) { $array_users = array(); $globusers = glob(DATADIR . "profil/*.prof"); foreach ($globusers as $filename) { $array_users[] = basename($filename); } if (count($array_users) > 0) { $dat_log = array(); $dat_gold = array(); $dat_bank = array(); $dat_all = array(); foreach ($array_users as $userval) { $userfile = file_get_contents(DATADIR . "profil/{$userval}"); $data = explode(":||:", $userfile);
<?php #-----------------------------------------------------# # ********* WAP-MOTORS ********* # # Made by : VANTUZ # # E-mail : visavi.net@mail.ru # # Site : http://pizdec.ru # # WAP-Site : http://visavi.net # # ICQ : 36-44-66 # # Вы не имеете право вносить изменения в код скрипта # # для его дальнейшего распространения # #-----------------------------------------------------# require_once "../includes/start.php"; require_once "../includes/functions.php"; //-------------------- Вывод статистики ------------------------------// $counter_online = counter_string(DATADIR . "online.dat"); $counter_host = 0; $counter_hits = 0; if (file_exists(DATADIR . "datacounter/host.dat")) { $count = file_get_contents(DATADIR . "datacounter/host.dat"); $count = explode("|", $count); $counter_host = $count[1]; } if (file_exists(DATADIR . "datacounter/hits.dat")) { $hcount = file_get_contents(DATADIR . "datacounter/hits.dat"); $hcount = explode("|", $hcount); $counter_hits = $hcount[1]; } $img = imageCreateFromGIF(BASEDIR . 'images/img/counter.gif'); $color = imagecolorallocate($img, 169, 169, 169); $color2 = imagecolorallocate($img, 102, 102, 102);
@unlink($filename); } } // -------------------------- Проверка на время -----------------------------// if (file_exists(DATADIR . '/antidos/' . $ip . '.dat')) { $file_dos = file(DATADIR . '/antidos/' . $ip . '.dat'); $file_str = explode('|', $file_dos[0]); if ($file_str[0] < time() - 60) { @unlink(DATADIR . '/antidos/' . $ip . '.dat'); } } // ------------------------------ Запись логов -------------------------------// $write = time() . '|' . $request_uri . '|' . $http_referer . '|' . $brow . '|' . $username . '|'; write_files(DATADIR . '/antidos/' . $ip . '.dat', $write . "\r\n", 0, 0666); // ----------------------- Автоматическая блокировка ------------------------// if (counter_string(DATADIR . '/antidos/' . $ip . '.dat') > $config['doslimit']) { if (!empty($config['errorlog'])) { $banip = DB::run()->querySingle("SELECT `ban_id` FROM `ban` WHERE `ban_ip`=? LIMIT 1;", array($ip)); if (empty($banip)) { DB::run()->query("INSERT INTO `error` (`error_num`, `error_request`, `error_referer`, `error_username`, `error_ip`, `error_brow`, `error_time`) VALUES (?, ?, ?, ?, ?, ?, ?);", array(666, $request_uri, $http_referer, $username, $ip, $brow, SITETIME)); DB::run()->query("INSERT IGNORE INTO ban (`ban_ip`, `ban_time`) VALUES (?, ?);", array($ip, SITETIME)); save_ipban(); } } unlink(DATADIR . '/antidos/' . $ip . '.dat'); } } } ############################################################################################ ## Сжатие и буферизация данныx ## ############################################################################################
# ICQ : 36-44-66 # # Вы не имеете право вносить изменения в код скрипта # # для его дальнейшего распространения # #-----------------------------------------------------# require_once "../includes/start.php"; require_once "../includes/functions.php"; require_once "../includes/header.php"; if (isset($_GET['error'])) { if ($_GET['error'] == 403 || $_GET['error'] == 404) { $error = (int) $_GET['error']; $write = '|' . $request_uri . '|' . SITETIME . '|' . $http_referer . '|' . $username . '|' . $brow . '|' . $ip . '|'; if ($error == 403) { write_files(DATADIR . "datalog/error403.dat", "{$write}\r\n", 0, 0666); $countstr = counter_string(DATADIR . "datalog/error403.dat"); if ($countstr >= $config['maxlogdat']) { delete_lines(DATADIR . "datalog/error403.dat", array(0, 1)); } } if ($error == 404) { write_files(DATADIR . "datalog/error404.dat", "{$write}\r\n", 0, 0666); $countstr = counter_string(DATADIR . "datalog/error404.dat"); if ($countstr >= $config['maxlogdat']) { delete_lines(DATADIR . "datalog/error404.dat", array(0, 1)); } } header("Location: " . $config['home'] . "/index.php?isset=" . $error . "&" . SID); exit; } } header("Location: " . $config['home'] . "/index.php?isset=404&" . SID); exit;
} else { $start = 0; } if (isset($_GET['uz'])) { $uz = check($_GET['uz']); } elseif (isset($_POST['uz'])) { $uz = check($_POST['uz']); } else { $uz = ""; } echo '<img src="../images/img/partners.gif" alt="image" /> <b>Статистика вкладчиков</b><br /><br />'; ############################################################################################ ## Запись в кэш ## ############################################################################################ $filtime = filemtime(DATADIR . "datatmp/vkladlist.dat"); $user_count = counter_string(DATADIR . "datatmp/vkladlist.dat"); $filtime = $filtime + 3600 * $config['vkladlistcache']; if (SITETIME > $filtime || $user_count < 100) { $array_users = array(); $vklad_user = array(); $vklad_operacia = array(); $bankfile = file(DATADIR . "bank.dat"); foreach ($bankfile as $bankval) { $data = explode("|", $bankval); $array_users[] = $data[1]; $vklad_user[] = $data[2]; $vklad_operacia[] = trim($data[3]); } if (count($array_users) > 0) { arsort($vklad_user); $dat_top = array();
if ($config['nickname'] == '' && file_exists(BASEDIR . 'INSTALL.php') && !strstr($php_self, 'INSTALL.php')) { header('Location: ' . BASEDIR . 'INSTALL.php?' . SID); exit; } if ($config['closedsite'] == 1 && !strstr($php_self, 'pages/closed.php') && !strstr($php_self, 'input.php') && $log != $config['nickname']) { header('Location: ' . $config['home'] . '/pages/closed.php?' . SID); exit; } $header_title = ''; ############################################################################################ ## Кто-откуда ## ############################################################################################ if ($http_referer != 'Не определено') { $checkref = check_string($http_referer); if ($checkref != $config['servername']) { if (preg_match('#^([a-z0-9_\\-\\.])+(\\.([a-z0-9\\/])+)+$#', $checkref)) { $refstring = search_string(DATADIR . 'referer.dat', $checkref, 0); if ($refstring) { $textref = no_br($checkref . '|' . ($refstring[1] + 1) . '|' . SITETIME . '|' . $ip . '|'); replace_lines(DATADIR . 'referer.dat', $refstring['line'], $textref); } else { $textref = no_br($checkref . '|1|' . SITETIME . '|' . $ip . '|'); write_files(DATADIR . 'referer.dat', $textref . "\r\n"); } $refcount = counter_string(DATADIR . 'referer.dat'); if ($refcount >= $config['referer']) { delete_lines(DATADIR . 'referer.dat', array(0, 1)); } } } }
if (preg_match('#^http://([a-z0-9_\\-\\.])+(\\.([a-z0-9\\/])+)+$#', $linkurl)) { $linkcell_url = search_string(DATADIR . "link.dat", $linkurl, 0); $linkcell_log = search_string(DATADIR . "link.dat", $log, 2); if (empty($linkcell_url)) { if (empty($linkcell_log)) { $text = $linkurl . '|' . $linkname . '|' . $log . '|'; $text = no_br($text); if ($text != "" && $linkurl != "") { $fp = fopen(DATADIR . "link.dat", "a+"); flock($fp, LOCK_EX); fputs($fp, "{$text}\r\n"); fflush($fp); flock($fp, LOCK_UN); fclose($fp); } $countstr = counter_string(DATADIR . "link.dat"); if ($countstr > $config['showlink']) { delete_lines(DATADIR . "link.dat", 0); } header("Location: link.php?isset=addlink&" . SID); exit; } else { echo '<b>Вы уже добавили сайт в базу, запрещено добавлять несколько сайтов подряд</b><br />'; } } else { echo '<b>Данный сайт уже имеется в базе, запрещено добавлять несколько сайтов подряд</b><br />'; } } else { echo '<b>Неправильный адрес! Разрешается добавлять только адрес главной страницы!</b><br />'; } } else {
############################################################################################ } elseif ($config['bookadds'] == 1) { $provkod = (int) $_POST['provkod']; if ($uid == $_SESSION['token']) { if (utf_strlen(trim($msg)) >= 5 && utf_strlen($msg) < 1000) { if ($provkod == $_SESSION['protect']) { $_SESSION['protect'] = ""; unset($_SESSION['protect']); antiflood("Location: index.php?isset=antiflood&" . SID); statistics(0); $msg = no_br($msg, '<br />'); $msg = antimat($msg); $msg = smiles($msg); $text = no_br($msg . '|' . $config['guestsuser'] . '||' . SITETIME . '|' . $brow . '|' . $ip . '|||'); write_files(DATADIR . "book.dat", "{$text}\r\n"); $countstr = counter_string(DATADIR . "book.dat"); if ($countstr >= $config['maxpostbook']) { delete_lines(DATADIR . "book.dat", array(0, 1)); } $_SESSION['note'] = 'Сообщение успешно добавлено!'; header("Location: index.php?" . SID); exit; } else { show_error('Ошибка! Проверочное число не совпало с данными на картинке!'); } } else { show_error('Ошибка! Слишком длинное или короткое сообщение!'); } } else { show_error('Ошибка! Неверный идентификатор сессии, повторите действие!'); }
$lines = array_reverse($lines); $total = count($lines); if ($total > 0) { echo '<form action="gallery.php?action=del&start=' . $start . '&uid=' . $_SESSION['token'] . '&' . SID . '" method="post">'; if ($start < 0 || $start > $total) { $start = 0; } if ($total < $start + $config['fotolist']) { $end = $total; } else { $end = $start + $config['fotolist']; } for ($i = $start; $i < $end; $i++) { $dt = explode("|", $lines[$i]); $num = $total - $i - 1; $totalkomm = counter_string(DATADIR . "datagallery/{$dt['6']}.dat"); $filesize = formatsize(filesize(DATADIR . 'datagallery/' . $dt[6])); echo '<div class="b"><img src="../images/img/gallery.gif" alt="image" /> '; echo '<b><a href="../gallery/fullsize.php?name=' . $dt[6] . '">' . $dt[1] . '</a></b> (' . $filesize . ')<br />'; echo '<input type="checkbox" name="del[]" value="' . $num . '" /> '; echo '<a href="gallery.php?action=edit&start=' . $start . '&id=' . $num . '&' . SID . '">Редактировать</a>'; echo '</div><div>'; echo '<a href="../gallery/fullsize.php?name=' . $dt[6] . '"><img src="../gallery/resize.php?name=' . $dt[6] . '" alt="image" /></a>'; echo '<br />' . $dt[0] . '<br />'; echo 'Добавлено: <a href="../pages/anketa.php?uz=' . $dt[2] . '&' . SID . '">' . nickname($dt[2]) . '</a> (' . date_fixed($dt[4]) . ')<br />'; echo '<a href="../gallery/index.php?action=komm&gid=' . $dt[6] . '&' . SID . '">Комментарии</a> (' . (int) $totalkomm . ')'; echo '</div>'; } echo '<br /><input type="submit" value="Удалить выбранное" /></form>'; page_jumpnavigation('gallery.php?', $config['fotolist'], $start, $total); page_strnavigation('gallery.php?', $config['fotolist'], $start, $total);
} if ($total < $start + $config['forumtem']) { $end = $total; } else { $end = $start + $config['forumtem']; } for ($i = $start; $i < $end; $i++) { $data = explode("|", $files[$i]); if ($data[5] == 1) { $icon = 'lock.gif'; } elseif ($data[6] == 1) { $icon = 'zakr.gif'; } else { $icon = 'forums.gif'; } $totalpost = counter_string(DATADIR . 'dataforum/' . $fid . '-' . $data[0] . '.dat'); echo '<div class="b"><img src="/images/img/' . $icon . '" alt="image" /> '; echo '<b><a href="topic.php?fid=' . $fid . '&id=' . $data[0] . '&' . SID . '">' . $data[3] . '</a></b> (' . $totalpost . ')</div>'; if ($totalpost > 0) { $filepost = file(DATADIR . 'dataforum/' . $fid . '-' . $data[0] . '.dat'); $datapost = explode("|", end($filepost)); $lastpage = ceil($totalpost / $config['forumpost']) * $config['forumpost'] - $config['forumpost']; echo '<div>Страницы: '; forum_navigation('topic.php?fid=' . $datapost[1] . '&id=' . $datapost[0] . '&', $config['forumpost'], $totalpost); echo 'Сообщение: ' . nickname($datapost[2]) . ' (' . date_fixed($datapost[6]) . ')</div>'; } else { echo 'Тема пустая! Сообщений еще нет!'; } } page_strnavigation('forum.php?fid=' . $fid . '&', $config['forumtem'], $start, $total); } else {
show_error('Ошибка! Данного раздела не существует!'); } echo '<img src="/images/img/back.gif" alt="image" /> <a href="topic.php?fid=' . $fid . '&id=' . $id . '&' . SID . '">Вернуться</a><br />'; break; ############################################################################################ ## Переход к последней странице ## ############################################################################################ ############################################################################################ ## Переход к последней странице ## ############################################################################################ case "end": $forum = search_string(DATADIR . "dataforum/mainforum.dat", $fid, 0); if ($forum) { $topic = search_string(DATADIR . "dataforum/topic{$fid}.dat", $id, 0); if ($topic) { $totpage = counter_string(DATADIR . 'dataforum/' . $fid . '-' . $id . '.dat'); $lastpage = ceil($totpage / $config['forumpost']) * $config['forumpost'] - $config['forumpost']; redirect("topic.php?fid={$fid}&id={$id}&start={$lastpage}&" . SID); } else { show_error('Ошибка! Данной темы не существует!'); } } else { show_error('Ошибка! Данного раздела не существует!'); } echo '<img src="/images/img/back.gif" alt="image" /> <a href="index.php?' . SID . '">Вернуться</a><br />'; break; default: redirect("index.php?" . SID); } } else { show_error('Данной темы не существует, возможно она была удалена!');
show_title('partners.gif', 'Новости сайта'); $file = file(DATADIR . "news.dat"); $file = array_reverse($file); $total = count($file); if ($total > 0) { if ($start < 0 || $start > $total) { $start = 0; } if ($total < $start + $config['postnews']) { $end = $total; } else { $end = $start + $config['postnews']; } for ($i = $start; $i < $end; $i++) { $data = explode("|", $file[$i]); echo '<div class="b"><img src="../images/img/files.gif" alt="image" /> '; echo '<b>' . $data[0] . '</b><small> (' . date_fixed($data[3]) . ')</small></div>'; echo '<div>' . bb_code($data[1]) . '<br />'; echo 'Разместил: <a href="../pages/anketa.php?uz=' . $data[4] . '&' . SID . '"> ' . nickname($data[4]) . ' </a><br />'; echo '<a href="komm.php?id=' . (int) $data[5] . '&' . SID . '">Комментарии</a> '; $countkomm = counter_string(DATADIR . "datakomm/{$data['5']}.dat"); echo '(' . (int) $countkomm . ')</div>'; } page_jumpnavigation('index.php?', $config['postnews'], $start, $total); page_strnavigation('index.php?', $config['postnews'], $start, $total); } else { show_error('Новостей еще нет!'); } echo '<br /><br /><img src="../images/img/rss.gif" alt="image" /> <a href="rss.php?' . SID . '">RSS подписка</a><br />'; echo '<img src="../images/img/homepage.gif" alt="image" /> <a href="../index.php?' . SID . '">На главную</a>'; include_once "../themes/" . $config['themes'] . "/foot.php";
$filesize = filesize(DATADIR . 'privat/' . $uz . '.priv'); $pers = round($filesize / 1024 * 100 / $config['limitsmail']); if ($pers < 100) { $string = search_string(DATADIR . "dataignor/{$uz}.dat", $log, 1); if (empty($string)) { antiflood("Location: privat.php?action=submit&isset=antiflood&uz={$uz}&" . SID); $msg = no_br($msg, '<br />'); $msg = antimat($msg); $msg = smiles($msg); $text = no_br($log . '|' . $msg . '|' . SITETIME . '|'); write_files(DATADIR . 'privat/' . $uz . '.priv', "{$text}\r\n"); $uzdata = reading_profil($uz); change_profil($uz, array(10 => $uzdata[10] + 1)); $sendtext = no_br($uz . '|' . $msg . '|' . SITETIME . '|'); write_files(DATADIR . 'dataoutput/' . $log . '.priv', "{$sendtext}\r\n", 0, 0666); $countstr = counter_string(DATADIR . 'dataoutput/' . $log . '.priv'); if ($countstr >= 20) { delete_lines(DATADIR . 'dataoutput/' . $log . '.priv', 0); } header("Location: privat.php?isset=mail&" . SID); exit; } else { show_error('Ошибка! Вы внесены в игнор-лист получателя!'); } } else { show_error('Ошибка! Ящик получателя переполнен!'); } } else { show_error('Ошибка! Такого адресата не существует!'); } } else {
if (empty($_SESSION['reguser'])) { if (strlen($logs) <= 20 && strlen($pars) <= 20) { if (strlen($logs) >= 3 && strlen($pars) >= 3) { if (preg_match('|^[a-z0-9\\-]+$|i', $logs)) { if (preg_match('|^[a-z0-9\\-]+$|i', $pars)) { if (preg_match('#^([a-z0-9_\\-\\.])+\\@([a-z0-9_\\-\\.])+(\\.([a-z0-9])+)+$#', $meil)) { if (!file_exists(DATADIR . "profil/{$logs}.prof")) { if ($pars == $pars2) { if ($logs != $pars) { if (!ctype_digit($pars)) { if (substr_count($logs, '-') < 3) { ############################################################################################ ## Запись в кэш ## ############################################################################################ $filtime = filemtime(DATADIR . "datatmp/reguser.dat"); $user_count = counter_string(DATADIR . "datatmp/reguser.dat"); $filtime = $filtime + 3600 * $config['regusercache']; if (SITETIME > $filtime || $user_count < 100) { $array_users = array(); $globusers = glob(DATADIR . "profil/*.prof"); foreach ($globusers as $filename) { $tex = file_get_contents($filename); $data = explode(":||:", $tex); $array_users[] = strtolower($data[0]) . '|' . $data[4] . '|' . rus_utf_tolower($data[65]) . '|'; } if (count($array_users) > 0) { $dat_top = implode("\r\n", $array_users); write_files(DATADIR . "datatmp/reguser.dat", "{$dat_top}\r\n", 1, 0666); } } ############################################################################################
if (is_user()) { if (utf_strlen($msg) >= 5 && utf_strlen($msg) < 300) { if (is_admin(array(101, 102, 103, 105))) { if (file_exists("color/{$log}.dat")) { $selt = file_get_contents("color/{$log}.dat"); if (!empty($selt)) { $msg = str_replace("{$msg}", "[{$selt}] {$msg} [/{$selt}]", $msg); } } } antiflood("Location: index.php?isset=antiflood&" . SID); $msg = no_br($msg, '<br />'); $msg = antimat($msg); $msg = smiles($msg); $text = no_br($log . '|' . $msg . '|' . $icq . '|' . SITETIME . '|' . $ip . '|' . $brow . '|'); write_files("msg.dat", "{$text}\r\n", 0, 0666); $countstr = counter_string("msg.dat"); if ($countstr >= $all_msg) { delete_lines(DATADIR . "msg.dat", array(0, 1)); } header("Location: ../index.php?isset=addon&" . SID); exit; } else { show_error('Ошибка! Слишком длинное или короткое сообщение!'); } } else { show_login('Вы не авторизованы, чтобы добавить сообщение, необходимо'); } echo '<br /><img src="../images/img/back.gif" alt="image" /> <a href="index.php?' . SID . '">Вернуться</a><br />'; echo '<img src="../images/img/homepage.gif" alt="image" /> <a href="../index.php?' . SID . '">На главную</a>'; include_once "../themes/" . $config['themes'] . "/foot.php";
} else { echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br />'; } } else { echo '<b>Ошибка! Очищать мини-чат могут только суперадмины!</b><br />'; } echo '<br /><img src="../images/img/back.gif" alt="image" /> <a href="chat.php?' . SID . '">Вернуться</a>'; } ############################################################################################ ## Пересчет мини-чата ## ############################################################################################ if ($action == "restatement") { $uid = check($_GET['uid']); if (is_admin(array(101))) { if ($uid == $_SESSION['token']) { $count = counter_string(DATADIR . "chat.dat"); statistics(8, $count); header("Location: chat.php?isset=mp_chatrestatement&" . SID); exit; } else { echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br />'; } } else { echo '<b>Ошибка! Пересчитывать сообщения могут только суперадмины!</b><br />'; } echo '<br /><img src="../images/img/back.gif" alt="image" /> <a href="chat.php?' . SID . '">Вернуться</a>'; } ############################################################################################ ## Удаление сообщений ## ############################################################################################ if ($action == "del") {
} else { echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br />'; } } else { echo '<b>Ошибка! Очищать админ-чат могут только суперадмины!</b><br />'; } echo '<br /><img src="../images/img/back.gif" alt="image" /> <a href="adminchat.php?' . SID . '">Вернуться</a>'; } ############################################################################################ ## Пересчет мини-чата ## ############################################################################################ if ($action == "restatement") { $uid = check($_GET['uid']); if (is_admin(array(101))) { if ($uid == $_SESSION['token']) { $count = counter_string(DATADIR . "adminchat.dat"); statistics(4, $count); header("Location: adminchat.php?isset=mp_adminrestatement&" . SID); exit; } else { echo '<b>Ошибка! Неверный идентификатор сессии, повторите действие!</b><br />'; } } else { echo '<b>Ошибка! Пересчитывать сообщения могут только суперадмины!</b><br />'; } echo '<br /><img src="../images/img/back.gif" alt="image" /> <a href="adminchat.php?' . SID . '">Вернуться</a>'; } echo '<br /><img src="../images/img/panel.gif" alt="image" /> <a href="index.php?' . SID . '">В админку</a><br />'; echo '<img src="../images/img/homepage.gif" alt="image" /> <a href="../index.php?' . SID . '">На главную</a><br />'; } else { header("Location: ../index.php?isset=404&" . SID);