- <?php
-
- // Фильтрация цисловых данных
- function num($var)
- {
- return abs(intval($var));
- }
-
- // Фильтрация текстовых данных
- function txt($var)
- {
- return htmlspecialchars(trim($var));
- }
-
- // Фильтрация перед записью в базу данных
- function input($var)
- {
- return mysql_real_escape_string(trim($var));
- }
-
- // Фильтрация для правильного вывода из базы данных
- function output($var)
- {
- return smiles(bbcode(nl2br($var)));
- }
-
- // Шифрование пароля
- function encrypt($var)
- {
- return md5(base64_encode($var) .'SteamCMS');
- }
-
- /*function key()
- {
- return md5(time());
- }*/
-
- // Проверка длины русских символов
- function strlen_rus($var)
- {
- $rus_symbols = array('а', 'б', 'в', 'г', 'д', 'е', 'ё', 'ж', 'з', 'и', 'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я', 'А', 'Б', 'В', 'Г', 'Д', 'Е', 'Ё', 'Ж', 'З', 'И', 'Й', 'К', 'Л', 'М', 'Н', 'О', 'П', 'Р', 'С', 'Т', 'У', 'Ф', 'Х', 'Ц', 'Ч', 'Ш', 'Щ', 'Ъ', 'Ы', 'Ь', 'Э', 'Ю', 'Я');
-
- return strlen(str_replace($rus_symbols, '0', $var));
- }
-
- // Обработка времени
- function vtime($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;
- }
-
- # Получения настроек из базы данных
- $sql_system = mysql_query("SELECT * FROM `system`");
-
- while ($var_system = mysql_fetch_array($sql_system))
- {
- $system[$var_system[0]] = $var_system[1];
- }
-
- # IP адрес
- $system['ip'] = input($_SERVER['REMOTE_ADDR']);
-
- # Браузер
- $system['browser'] = input($_SERVER['HTTP_USER_AGENT']);
- $system['browser'] = strtok($system['browser'], '/');
- $system['browser'] = strtok($system['browser'], '(');
- $system['browser'] = preg_replace('/[^a-z^0-9^\-^\.]/i', '', $system['browser']);
-
- # Подключение файлов из папки /autoload/
- $dir = opendir(HOME .'/autoload/');
-
- while ($file = readdir($dir))
- {
- if (preg_match('/\.php$/i', $file)) require_once(HOME .'/autoload/'. $file);
- }
-
- // Подключение библиотек
- function require_lib($var)
- {
- if (file_exists(HOME .'/libs/'. $var)) require_once(HOME .'/libs/'. $var);
- else exit('Невозможно подключить библиотеку '. $var);
- }
-
- // Вывод ошибок
- function error($var)
- {
- if (!empty($var)) echo '<div class="error">'. $var .'</div>';
- }
-
- // Вывод уведомлений
- function message($var)
- {
- if (!empty($var)) echo '<div class="message">'. $var .'</div>';
- }
-
- // обработка bb кодов
- function bbcode($str)
- {
- $bbcode = array(
- '~\[url=(.*?)?\](.*?)\[\/url\]~si' => '<a href="$1" target="_blank">$2</a>',
- '~\[img=(.*?)\](.*?)\[\/img\]~si' => '<img src="$1" alt="$2" />',
- '/\[b\](.+)\[\/b\]/isU' => '<b>$1</b>',
- '/\[u\](.+)\[\/u\]/isU' => '<span style="text-decoration:underline;">$1</span>',
- '/\[s\](.+)\[\/s\]/isU' => '<s>$1</s>',
- '/\[i\](.+)\[\/i\]/isU' => '<i>$1</i>',
- '/\[br\](.+)/isU' =>'<br />$1',
- '/\[hr\](.+)/isU' => '<hr />$1',
- '/\[big\](.+)\[\/big\]/isU' => '<span style="font-size:large;">$1</span>',
- '/\[small\](.+)\[\/small\]/isU' => '<span style="font-size:small;">$1</span>',
- '/\[red\](.+)\[\/red\]/isU' => '<span style="color:#ff0000;">$1</span>',
- '/\[yellow\](.+)\[\/yellow\]/isU' => '<span style="color:#ffff22;">$1</span>',
- '/\[green\](.+)\[\/green\]/isU' => '<span style="color:#00bb00;">$1</span>',
- '/\[blue\](.+)\[\/blue\]/isU' => '<span style="color:#0000bb;">$1</span>',
- '/\[white\](.+)\[\/white\]/isU' => '<span style="color:#fff;">$1</span>',
- '/\[color=(.+)\](.+)\[\/color\]/isU' => '<span style="color:#$1;">$2</span>',
- '/\[q\](.+)\[\/q\]/isU' => '<div class="q">Цитата: "$1"</div>',
- '/\[size=([0-9]+)\](.+)\[\/size\]/isU' => '<span style="font-size:$1px;">$2</span>',
- );
- $str = preg_replace(array_keys($bbcode), array_values($bbcode), $str); // заменяем коды на теги
-
- return $str;
- }
-
- function smiles($text) {
- $text = strtr($text, array(
- ':ангел:' => '<img src="/design/smiles/aa.gif" alt="smile" />',
- ':-)' => '<img src="/design/smiles/ab.gif" alt="smile" />',
- '=)' => '<img src="/design/smiles/ab.gif" alt="smile" />',
- ':улыбка:' => '<img src="/design/smiles/ab.gif" alt="smile" />',
- ':улыбка:' => '<img src="/design/smiles/ab.gif" alt="smile" />',
- ':грустный:' => '<img src="/design/smiles/ac.gif" alt="smile" />',
- ':подмигиваю:' => '<img src="/design/smiles/ad.gif" alt="smile" />',
- ':язык:' => '<img src="/design/smiles/ae.gif" alt="smile" />',
- ':крутой:' => '<img src="/design/smiles/af.gif" alt="smile" />',
- ':смех:' => '<img src="/design/smiles/ag.gif" alt="smile" />',
- ':смущение:' => '<img src="/design/smiles/ah.gif" alt="smile" />',
- ':удивление:' => '<img src="/design/smiles/ai.gif" alt="smile" />',
- ':поцелуй:' => '<img src="/design/smiles/aj.gif" alt="smile" />',
- ':слезы:' => '<img src="/design/smiles/ak.gif" alt="smile" />',
- ':секрет:' => '<img src="/design/smiles/al.gif" alt="smile" />',
- ':драка:' => '<img src="/design/smiles/am.gif" alt="smile" />',
- ':дурак?:' => '<img src="/design/smiles/an.gif" alt="smile" />',
- ':обида:' => '<img src="/design/smiles/ao.gif" alt="smile" />',
- ':хи-хи:' => '<img src="/design/smiles/ap.gif" alt="smile" />',
- ':дьявол:' => '<img src="/design/smiles/aq.gif" alt="smile" />',
- ':музыка:' => '<img src="/design/smiles/ar.gif" alt="smile" />',
- ':доволен:' => '<img src="/design/smiles/as.gif" alt="smile" />',
- ':тошнит:' => '<img src="/design/smiles/at.gif" alt="smile" />',
- ':засыпаю:' => '<img src="/design/smiles/au.gif" alt="smile" />',
- ':стоп:' => '<img src="/design/smiles/av.gif" alt="smile" />',
- ':целуются:' => '<img src="/design/smiles/aw.gif" alt="smile" />',
- ':цветок:' => '<img src="/design/smiles/ax.gif" alt="smile" />',
- ':молодец:' => '<img src="/design/smiles/ay.gif" alt="smile" />',
- ':пиво:' => '<img src="/design/smiles/az.gif" alt="smile" />',
- ':любовь:' => '<img src="/design/smiles/ba.gif" alt="smile" />',
- ':бомба:' => '<img src="/design/smiles/bb.gif" alt="smile" />',
- ':SOS:' => '<img src="/design/smiles/bc.gif" alt="smile" />',
- ':гангстер:' => '<img src="/design/smiles/bd.gif" alt="smile" />',
- ':запутался:' => '<img src="/design/smiles/be.gif" alt="smile" />',
- ':отлично:' => '<img src="/design/smiles/bf.gif" alt="smile" />',
- ':нигга:' => '<img src="/design/smiles/bg.gif" alt="smile" />',
- ':извиняюсь:' => '<img src="/design/smiles/bh.gif" alt="smile" />',
- ':хлоп-хлоп:' => '<img src="/design/smiles/bi.gif" alt="smile" />',
- ':ржу:' => '<img src="/design/smiles/bj.gif" alt="smile" />',
- ':невинность:' => '<img src="/design/smiles/bk.gif" alt="smile" />',
- ':нет:' => '<img src="/design/smiles/bl.gif" alt="smile" />',
- ':crazy:' => '<img src="/design/smiles/bm.gif" alt="smile" />',
- ':не знаю:' => '<img src="/design/smiles/bn.gif" alt="smile" />',
- ':танец:' => '<img src="/design/smiles/bo.gif" alt="smile" />',
- ':ура:' => '<img src="/design/smiles/bp.gif" alt="smile" />',
- ':аяй:' => '<img src="/design/smiles/bq.gif" alt="smile" />',
- ':силач:' => '<img src="/design/smiles/br.gif" alt="smile" />',
- ':пока:' => '<img src="/design/smiles/bs.gif" alt="smile" />',
- ':ржу нимагу:' => '<img src="/design/smiles/bv.gif" alt="smile" />',
- ':думаю:' => '<img src="/design/smiles/bw.gif" alt="smile" />',
- ));
- return $text;
- }
-
- // Определение размера
- function size($var) {
- if ($var >= 1073741824) return round($var/1073741824, 2) .' гб';
- else if ($var >= 1048576) return round($var/1048576, 2) .' мб';
- elseif($var >= 1024) return round($var/1024, 2) .' кб';
- else return round($var) .' байт';
- }
-
- // Рекурсивное удаление
- function rrmdir($dir) {
- if (is_dir($dir)) {
- $objects = scandir($dir);
- foreach ($objects as $object) {
- if ($object != "." && $object != "..") {
- if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
- }
- }
- reset($objects);
- rmdir($dir);
- }
- }
-
- ?>