Вход Регистрация
Файл: incfiles/func.php
Строк: 349
<?php


function SendEmail($toEmail$fromEmail$subject$content$from){
$subject "=?utf-8?b?" base64_encode($subject) . "?=";
$headers "MIME-Version: 1.0rn";
$headers .= "Content-type: text/html; charset=utf-8rn";
$headers .= "From: =?utf-8?b?" base64_encode($from) . "?= <" $fromEmail ">";
return (
mail($toEmail$subject,$content$headers));
}

function 
checkout($var)
{
    return 
strip_tags(addslashes(html_entity_decode($var,ENT_QUOTES'utf-8')));
}

function 
parse_url_if_valid($url)
{
    
$arUrl parse_url($url);
    
$ret null;

    if (!
array_key_exists("scheme"$arUrl)
            || !
in_array($arUrl["scheme"], array("http""https")))
        
$arUrl["scheme"] = "http";

    if (
array_key_exists("host"$arUrl) &&
            !empty(
$arUrl["host"]))
        
$ret sprintf("%s://%s%s"$arUrl["scheme"],
                        
$arUrl["host"], $arUrl["path"]);

   else if (
preg_match("/^w+.[w.]+(/.*)?$/"$arUrl["path"]))
        
$ret sprintf("%s://%s"$arUrl["scheme"], $arUrl["path"]);

    if (
$ret && empty($ret["query"]))
        
$ret .= sprintf("?%s"$arUrl["query"]);

    return 
$ret;
}

function 
text($mes)
{
    
$mes nl2br($mes);
 
    return 
$mes;
}

function 
no_tags($mes)
{
    
$mes str_replace("<br />""rn"$mes);
 
    return 
$mes;
}
    


// Ретранслит русских букв на латинницу
function retranslit($in)
{

    
$trans1= array("'",'`',',',' ',"Ё","Ж","Ч","Ш","Щ","Э","Ю","Я","ё","ж","ч","ш","щ","э","ю","я","А","Б","В","Г","Д","Е","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ь","Ы","а","б","в","г","д","е","з","и","й","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ь","ы");
    
    
$trans2= array('_','_','_','_',"JO","ZH","CH","SH","SCH","Je","Jy","Ja","jo","zh","ch","sh","sch","je","jy","ja","A","B","V","G","D","E","Z","I","J","K","L","M","N","O","P","R","S","T","U","F","H","C","","Y","a","b","v","g","d","e","z","i","j","k","l","m","n","o","p","r","s","t","u","f","h","c","","y");
    
    return 
str_replace($trans1,$trans2,$in);

}

// Ретранслит латинских букв на русские
function translit($in)
{
    
$trans1= array("w","yu","W","YU","JO","ZH","CH","SH","SCH","JE","JY","JA","jo","zh","ch","sh","sch","je","jy","ja","A","B","V","G","D","E","Z","I","J","K","L","M","N","O","P","R","S","T","U","F","H","C","'","Y","a","b","v","g","d","e","z","i","j","k","l","m","n","o","p","r","s","t","u","f","h","c","'","y");
    
$trans2= array("ш","ю","Ш","Ю","Ё","Ж","Ч","Ш","Щ","Э","Ю","Я","ё","ж","ч","ш","щ","э","ю","я","А","Б","В","Г","Д","Е","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ь","Ы","а","б","в","г","д","е","з","и","й","к","л","м","н","о","п","р","с","т","у","ф","х","ц","ь","ы");
    return 
str_replace($trans1,$trans2,$in);
}

// Проверка длины русских символов
function strlen_rus($var)
{
    
$rus_symbols = array('а''б''в''г''д''е''ё''ж''з''и''й''к''л''м''н''о''п''р''с''т''у''ф''х''ц''ч''ш''щ''ъ''ы''ь''э''ю''я''А''Б''В''Г''Д''Е''Ё''Ж''З''И''Й''К''Л''М''Н''О''П''Р''С''Т''У''Ф''Х''Ц''Ч''Ш''Щ''Ъ''Ы''Ь''Э''Ю''Я''І''і''Ї''ї''Є''є');

    return 
strlen(str_replace($rus_symbols'0'$var));
}

function 
generate($number){
    
$arr = array('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','r','s','t','u','v','x','y','z','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','R','S','T','U','V','X','Y','Z','1','2','3','4','5','6','7','8','9','0');  
    
// Генерируем пароль  
    
$pass '';  
    for(
$i 0$i $number$i++){
        
// Вычисляем случайный индекс массива
        
$index rand(0count($arr) - 1);
        
$pass .= $arr[$index];  
    }
    return 
$pass;  
}

function 
utfwin($str) {
    
$str strtr($str, array("Р°" => "а""Р±" => "б""РІ" => "в""Рі" => "г""Рґ" => "д""Рµ" => "е""С‘" => "ё""Р¶" => "ж""Р·" => "з""Рё" => "и""Р№" => "й""Рє" => "к""Р»" => "л""Рј" => "м""РЅ" => "н""Рѕ" => "о",
    
"Рї" => "п""СЂ" => "р""СЃ" => "с""С‚" => "т""Сѓ" => "у""С„" => "ф""С…" => "х""С†" => "ц""С‡" => "ч""С€" => "ш""С‰" => "щ""СЉ" => "ъ""С‹" => "ы""СЊ" => "ь""СЌ" => "э""СЋ" => "ю""СЏ" => "я""Рђ" => "А",
    
"Р‘" => "Б""Р’" => "В""Р“" => "Г""Р”" => "Д""Р•" => "Е""РЃ" => "Ё""Р–" => "Ж""Р—" => "З""И" => "И""Р™" => "Й""Рљ" => "К""Р›" => "Л""Рњ" => "М""Рќ" => "Н""Рћ" => "О""Рџ" => "П""Р " => "Р""РЎ" => "С",
    
"Рў" => "Т""РЈ" => "У""Р¤" => "Ф""РҐ" => "Х""Р¦" => "Ц""Р§" => "Ч""РЁ" => "Ш""Р©" => "Щ""РЄ" => "Ъ""Р«" => "Ы""Р¬" => "Ь""Р­" => "Э""Р®" => "Ю""РЇ" => "Я"));
    return 
$str;
}

function 
winutf($str) {
    
$str strtr($str, array("а" => "Р°""б" => "Р±""в" => "РІ""г" => "Рі""д" => "Рґ""е" => "Рµ""ё" => "С‘""ж" => "Р¶""з" => "Р·""и" => "Рё""й" => "Р№""к" => "Рє""л" => "Р»""м" => "Рј""н" => "РЅ""о" => "Рѕ""п"
    
=> "Рї""р" => "СЂ""с" => "СЃ""т" => "С‚""у" => "Сѓ""ф" => "С„""х" => "С…""ц" => "С†""ч" => "С‡""ш" => "С€""щ" => "С‰""ъ" => "СЉ""ы" => "С‹""ь" => "СЊ""э" => "СЌ""ю" => "СЋ""я" => "СЏ""А" => "Рђ""Б" =>
    
"Р‘""В" => "Р’""Г" => "Р“""Д" => "Р”""Е" => "Р•""Ё" => "РЃ""Ж" => "Р–""З" => "Р—""И" => "И""Й" => "Р™""К" => "Рљ""Л" => "Р›""М" => "Рњ""Н" => "Рќ""О" => "Рћ""П" => "Рџ""Р" => "Р ""С" => "РЎ""Т" =>
    
"Рў""У" => "РЈ""Ф" => "Р¤""Х" => "РҐ""Ц" => "Р¦""Ч" => "Р§""Ш" => "РЁ""Щ" => "Р©""Ъ" => "РЄ""Ы" => "Р«""Ь" => "Р¬""Э" => "Р­""Ю" => "Р®""Я" => "РЇ"));
    return 
$str;
}

$dir opendir(HOME.'/autoload/');

while (
$file readdir($dir))
{
    if (
preg_match('/.php$/i'$file)) require_once(HOME.'/autoload/'$file);
}

// Обработка времени
function vtime($var$title=false)
{
    
# Если время не задано берем текущее
    
if ($var == NULL$var time();

    
# Время + Дата
    
$full_time date('d.m.Y '.lang('в','о').' H:i'$var);

    
# Дата
    
$date date('d.m.Y'$var);

    
# Время
    
$time date('H:i'$var);

    
# Если текущаяя дата совпадает с заданной
    
if ($date == date('d.m.Y'))
    {
        
$full_time date(''.lang('Сегодня в','Сьогодні о').' H:i'$var);
        
$h date('H'$var);
        
$i date('i'$var);
        if (
$h == date('H'))
        {
            if (
$i == date('i')) $full_time lang('только что','тільки що');
            else 
$full_time = (date('i') - $i).' '.lang('мин. назад','хв. тому');
        }
        else
        {
            
$full_time $time;
        }
    }

    
# Вчерашняя дата
    
if ($date == date('d.m.Y'time()-60*60*24)) $full_time date(''.lang('Вчера в','Вчора о').' H:i'$var);

    if (
$title == false$full_time '<font class="time"><small>'.$full_time.'</small></font>';
    
    return 
$full_time;
}

// Вывод ошибок
function err($err) {
if (
$err == true$err '<div class="err">'.$err.'</div>';
    else 
$err '';
    return 
$err;
}
function 
ok($text) {
if (!empty(
$text))
{
    
$text '<div class="ok">'.$text.'</div>';
}
    return 
$text;
}


// рекурсивное удаление папки
function delete_dir($dir){
if (
is_dir($dir)){$od=opendir($dir);
while (
$rd=readdir($od)){
if (
$rd == '.' || $rd == '..') continue;
if (
is_dir("$dir/$rd")){
@
chmod("$dir/$rd"0777);
delete_dir("$dir/$rd");}
else{
@
chmod("$dir/$rd"0777);
@
unlink("$dir/$rd");}}
closedir($od);
@
chmod("$dir"0777);
return @
rmdir("$dir");}
else{
@
chmod("$dir"0777);
@
unlink("$dir");}}

function 
getYoutubeVideoID($url){
 
    
// допустимые доменые имена в ссылке
    
$names = array('www.youtube.com','youtube.com');
 
    
// разбор адреса
    
$up parse_url($url);
 
    
// проверка параметров
    
if (isset($up['host']) && in_array($up['host'],$names) &&
        isset(
$up['query']) && strpos($up['query'],'v=') !== false){
 
        
// достаем параметр ID
        
$lp explode('v=',$url);
 
        
// отсекаем лишние параметры
        
$rp explode('&',$lp[1]);
 
        
// возвращаем строку, либо false
        
return (!empty ($rp[0]) ? $rp[0] : false);
    }
    return 
false;
}
/*
function check_youtube($text){



     filter_var($text,FILTER_VALIDATE_URL,FILTER_FLAG_PATH_REQUIRED){
    $videoID = getYoutubeVideoID($text);
} else {
    $videoID = false;
}
    $findme   = 'https://www.youtube.com/watch?v=';
    $pos = strpos($text, $findme);

// Заметьте, что используется ===.  Использование == не даст верного 
// результата, так как 'a' в нулевой позиции.
if ($pos !== false) {

    $text = "[youtube]$findme[/youtube]";

}
    return $text;
   
                             }
                             */
function youtube_title($id) {
// $id = 'YOUTUBE_ID';
// returns a single line of JSON that contains the video title. Not a giant request.
$videoTitle file_get_contents("https://www.googleapis.com/youtube/v3/videos?id=".$id."&key=AIzaSyBfA6iMvBmb1o2fFqwijv76A2MBkGh4has&fields=items(id,snippet(title),statistics)&part=snippet,statistics");
// despite @ suppress, it will be false if it fails
if ($videoTitle) {
$json json_decode($videoTitletrue);

return 
$json['items'][0]['snippet']['title'];
} else {
return 
false;
}
}
function 
youtube_about($id) {
// $id = 'YOUTUBE_ID';
// returns a single line of JSON that contains the video title. Not a giant request.
$videoTitle file_get_contents("https://www.googleapis.com/youtube/v3/videos?id=".$id."&key=AIzaSyBfA6iMvBmb1o2fFqwijv76A2MBkGh4has&fields=items(id,snippet(description),statistics)&part=snippet,statistics");
// despite @ suppress, it will be false if it fails
if ($videoTitle) {
$json json_decode($videoTitletrue);
$about $json['items'][0]['snippet']['description'];    
$about mb_convert_encoding($about"EUC-JP""auto");
return 
$about;
} else {
return 
false;
}
}
function 
yt_exists($videoID) {
    
$theURL "http://www.youtube.com/oembed?url=http://www.youtube.com/watch?v=$videoID&format=json";
    
$headers get_headers($theURL);

    if (
substr($headers[0], 93) !== "404") {
        return 
true;
    } else {
        return 
false;
    }
}                            
function 
gethashtags($text)
{
  
//Match the hashtags
  
preg_match_all('/(^|[^0-9A-Za-zА-Яа-яҐІЇЄґіїєЁё_])#([0-9A-Za-zА-Яа-яҐІЇЄґіїєЁё_]+)/u'$text$matchedHashtags);
  
$hashtag '';
  
// For each hashtag, strip all characters but alpha numeric
  
if(!empty($matchedHashtags[0])) {
      foreach(
$matchedHashtags[0] as $match) {
          
$hashtag .= preg_replace("/[^0-9A-Za-zА-Яа-яҐІЇЄґіїєЁё_]+/u"""$match).',';
      }
  }
    
//to remove last comma in a string
return rtrim($hashtag',');
}
function 
convert_clickable_links($message)
{
    
$vowels = array("&#039;");//заміняємо апострофф))
 
$message str_replace($vowels"'"$message); 
    
$parsedMessage preg_replace(array('/(?i)b((?:https?://|wwwd{0,3}[.]|[0-9A-Za-zА-Яа-яҐІЇЄґіїє.-]+[.][a-z0-9A-ZА-Яа-яҐІЇЄґіїє]{2,4}/)(?:[^s()<>]+|(([^s()<>]+|(([^s()<>]+)))*))+(?:(([^s()<>]+|(([^s()<>]+)))*)|[^s`!()[]{};:'".,<>?«»“”‘’]))/', '/(^|[^0-9A-Za-zА-Яа-яҐІЇЄґіїє_])@([0-9A-Za-zА-Яа-яҐІЇЄґіїє_]+)/u', '/(^|[^0-9A-Za-zА-Яа-яҐІЇЄґіїє_])#([0-9A-Za-zА-Яа-яҐІЇЄґіїє_]+)/u'), array('<a href="$1" target="_blank">$1</a>', '$1<a href="">@$2</a>', '$1<a href="'.URL.'/modules/hashtag?hashtag=$2" onclick="Page.Go(this.href); return false">#$2</a>'), $message);
    return 
$parsedMessage;
}
function cut(
$str,$href,$num=300) {
if (mb_strlen(
$str) > $num
{
  
$str = str_replace("|", "<br />", mb_substr(str_replace("<br />", "|", $str), 0, $num, 'UTF-8')).'...<br/><a class="for_pc" style="font-weight:bold;" href="'.$href.'" onclick="Window.Open(this.href); return false">'.lang('Читать делее...','Читати далі...').'</a><a class="for_mobile" style="font-weight:bold;" href="'.$href.'" onclick="Page.Go(this.href); return false">'.lang('Читать делее...','Читати далі...').'</a>';
}else{
  
$str = $str;
}
return 
$str;
}
function convertHashtags(
$str){
  
 
$vowels = array("&#039;");//заміняємо апострофф))
    
$str str_replace($vowels"'"$str);
    
$regex "/#+([[^0-9A-Za-zА-Яа-яҐІЇЄґіїє_]+)/u";
    
$str preg_replace($regex'<a href="'.URL.'/modules/hashtag?hashtag=$1" onclick="Page.Go(this.href); return false">$0</a>'$str);
    return(
$str);
 
//$str = str_replace($vowels, "'", $str); 
 //$str = preg_replace('/#(w+)/u', ' <a href="'.URL.'/modules/hashtag?hashtag=$1" onclick="Page.Go(this.href); return false">$1</a>', $str);



  
return($str);

}


function 
text_view($text){
    
//mb_convert_encoding($text, "UTF-8", "HTML-ENTITIES");
    
$text BBCode::parse(smiles(links(convertHashtags($text))));



    return 
$text;
                         }
// -------------- Функция "быстрого" ресайза -------------//
function showgift($var$size$size1)
{
    return 
'<img src="'.URL.'/'.$var.'" width="'.$size.'" height="'.$size1.'" alt="*">
    '
;
}                         

function 
headMenu(){
    echo
'<style>
    .container{
        overflow:hidden;
        width:200px
        text-align right;
            }
    .box{white-space:nowrap}
    .box div{width:90px;display:inline-block;border:1px solid black}
         </style>
  <div class="head_player for_pc" style="width:850px; margin: auto;">
  <div class="sm2-bar-ui playlist-close full-width flat" style="text-align: left;width: 600px; margin-left:125px;">
  <div class="sm2-inline-element sm2-button-element sm2-menu">
  <div class="sm2-button-bd3">
  <div class="box">
    <div>content1</div>
    <div>content2</div>
    <div>content3</div>
  </div>
  </div>
  </div>
  </div>
  </div>
    '
;
}
function 
right_menu(){
        global 
$user_id $device $user ;
        if (!empty(
$user_id) && $device == 'Computer')
        {
        
?>
        <div id='snav' class='en'>

         <ul>
    <li>
    <a href="<?=URL?>/?id=<?=$user_id?>" onclick="Page.Go(this.href); return false">
        <i class="fa fa-home"></i>
        <span><?=lang('Моя Стр.','Моя Стор.')?></span>
      </a>
    </li>       

     <li>
      <a href="<?=URL?>/mail/" onclick="Page.Go(this.href); return false">
        <i class="fa fa-envelope"><font size="2" color="red" face="Arial"><?=($user['notifications_mail']>0?'+<b>'.$user['notifications_mail'].'</b>':'')?></font></i>
        <span><?=lang('Сообщения','Повідомлення')?></span>
      </a>
     </li>

     <li>
      <a href="<?=URL?>/friends?id=<?=$user_id?>" onclick="Page.Go(this.href); return false">
        <i class="fa fa-users"><font size="2" color="red" face="Arial"><?=($user['notifications_friends']>0?'+<b>'.$user['notifications_friends'].'</b>':'')?></font></i>
        <span><?=lang('Друзья','Друзі')?></span>
      </a>
    </li> 
         
    <li>
      <a href="<?=URL?>/user/journal.php" onclick="Page.Go(this.href); return false">
        <i class="fa fa-bell"><font size="2" color="red" face="Arial"><?=($user['notifications_journal']>0?'+<b>'.$user['notifications_journal'].'</b>':'')?></font></i>
        <span><?=lang('Ответы','Відповіді')?></span>
      </a>
     </li>
    <li>
      <a href="<?=URL?>/feed/" onclick="Page.Go(this.href); return false">
        <i class="fa fa-rss"></i>
        <span><?=lang('Новости','Новини')?></span>
      </a>
    </li>    
     <li>
    <a href="<?=URL?>/photos/?id=<?=$user_id?>" onclick="Page.Go(this.href); return false">

        <i class="fa fa-camera"></i>
        <span><?=lang('Фото','Фото')?></span>
        
      </a>
    </li>
    
    <li>
      <a href="<?=URL?>/audio/?id=<?=$user_id?>" onclick="Page.Go(this.href); return false">
        <i class="fa fa-music"></i>
        <span><?=lang('Музыка','Музика')?></span>
      </a>
     </li>
    <li>
      <a href="<?=URL?>/video/index::default/" onclick="Page.Go(this.href); return false">
        <i class="fa fa-video-camera"></i>
        <span><?=lang('Видео','Відео')?></span>
      </a>
    </li>
     <li>
      <a href="<?=URL?>/groups/my.php?id=<?=$user_id?>" onclick="Page.Go(this.href); return false">
        <i class="fa fa-comments-o"></i>
        <span><?=lang('Группы','Спільноти')?></span>
      </a>
    </li>
    
    <li>
      <a href="<?=URL?>/user/settings.php" onclick="Page.Go(this.href); return false">
        <i class="fa fa-cogs"></i>
        <span><?=lang('Настройки','Налаштування')?></span>
      </a>
    </li>
    
    <li>
      <a href="<?=URL?>/exit.php" onclick="Page.Go(this.href); return false">
        <i class="fa fa-sign-out"></i>
        <span><?=lang('Выход','Вихід')?></span>
      </a>
    </li>
    <?
    
if ($user['level'] > 0) {
    
?>   
    <li>
      <a href="<?=URL?>/adm" onclick="Page.Go(this.href); return false">
        <i class="fa fa-lock"></i>
        <span><?=lang('Admin','admin')?></span>
      </a>
    </li>
    <?
    
}
    
?>
  </ul>

</div>
        
    <?  
        
}
}
function 
timeSpam($stime,$table,$collumb){
    global  
$id;
    
$timeSpam =(time()-$stime);
    if (
DB::$dbs->querySingle("SELECT COUNT(`id`) FROM ".$table." WHERE `".$collumb."` = ? AND `time` > ?", array($id,$timeSpam)) == TRUE
            return 
true;else return false;
  
/*  echo $err1;
    return $err1;*/
                         
}
?>
Онлайн: 2
Реклама