<?php
if(!function_exists('get_http')) {
function get_http($url) {
/**
* Проверяет доступность переданного url
* @param string $url - адрес страницы
* @return boolean
**/
if(preg_match("/^(https?)?(\:)?(\/\/)?/si", $url))
$url = preg_replace("/^(https?)?(\:)?(\/\/)?/si", 'http://', $url);
if($url = get_headers($url))
$url = explode(' ', $url[0]);
return (($url[1] > 199 && $url[1] < 400)?true:false);
}
}
if(!function_exists('get_curlopt')) {
function get_curlopt($url, $ua = false, $proxy = false, $referer = false) {
/**
* Анналог file_get_contents с подменой ip, ua and referer
* @param string $url - адрес страницы
* @param string $ua - юзер агент
* @param string $proxy - IP
* @return mixed
**/
$return = false;
if($curl = curl_init()) {
@curl_setopt_array($curl,
array(CURLOPT_URL => $url,
CURLOPT_HEADER => false,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CONNECTTIMEOUT => 30,
CURLOPT_USERAGENT => $ua,
CUPLOPT_PROXY => $proxy,
CURLOPT_REFERER => $referer));
$return = curl_exec($curl);
curl_close($curl);
}
return $return;
}
}
if(!function_exists('text_escape')) {
function text_escape($text) {
/**
* Текст для записи в БД
**/
return addcslashes(trim($text), "\"'\r\n\t\v\s\f,.<>/(){}[]!@#$%^&*-_+=\\|;:?`~");
}
}
if(!function_exists('escape_text')) {
function escape_text($text) {
/**
* Текст для вывода из БД
**/
return text::toOutput(stripslashes($text));
}
}
if(!function_exists('mess_send')) {
function mess_send($author, $visavi, $message) {
/**
* Отправка уведомлений в приват
* @param integer $author - от кого
* @param integer $visavi - кому
* @param string $message - сообщение
**/
mysql_query("INSERT INTO `mail` SET `id_user` = ".(int)$visavi.", `id_sender` = ".(int)$author.", `mess` = '".mysql_real_escape_string($message)."', `time` = ".time());
}
}
if(!function_exists('dir_decode')) {
function dir_decode($str) {
/**
* Фильтрует query отрезок url
* @param string $str
* @return string
**/
if(preg_match("/[^\/]+/umi", $str)) {
$str = urldecode($str);
if(preg_match("/^\/+|\/+$|[^a-zа-яёъїі0-9\-\_\!\?\.\,\:\;\s]+/umi", $str)) {
$str = preg_replace("/^\/+|\/+$|[^a-zа-яёъїі0-9\-\_\!\?\.\,\:\;\s\/]+/umi", '', $str);
}
if(preg_match("/\/+/umi", $str)) {
$str = preg_replace("/\/+/umi", '/', $str);
}
$str = "/{$str}/";
}
else {
$str = '/';
}
return $str;
}
}
if(!function_exists('refresh')) {
/**
* Переадресация
* @param string $url - адрес перенаправления
* @param integer $time - время задержки
* @param string $msg - текст сообщения
* @param boolean $errmsg - тип сообщения
**/
function refresh($errmsg = true, $msg = false, $url = false, $time = false) {
if($msg) {
global $doc;
if(!$doc) {
$doc = new document;
}
if($errmsg) {
$doc -> msg(__($msg));
}
else {
$doc -> err(__($msg));
}
unset($doc);
}
if($url) {
if($time) {
header("Refresh: {$time};url={$url}");
}
else {
header("Location: {$url}");
}
}
die;
}
}
?>