Вход Регистрация
Файл: backup_fzrf 2/system/modules/social.php
Строк: 582
<?php
/*========================================= 
    Appointment: Соц.сети
    File: social.php 
    Author: Sergei Pavlenko 
    Engine: People Engine Cms
    Copyright: People Design Group (с) 2014
    e-mail: info@vxas.ru
    URL: http://www.vxas.ru/
    Данный код защищен авторскими правами
==========================================*/

if(!defined('MOZG'))
    die(
'Hacking attempt!');

if(
$ajax == 'yes')
    
NoAjaxQuery();

if(
$logged){
    
$act $_GET['act'];
    
$user_id $user_info['user_id'];
    
    switch(
$act){
        
//* VK *// 
        
        
case "vk":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$vk_login textFilter($_POST['vk_login']);
            
$vk_pass textFilter($_POST['vk_pass']);
            
//* Удаляем старые куки *//
            
            
if($_POST['not_logged']){
            
                @
unlink(ROOT_DIR."/system/cache/social/coo{$user_info['user_id']}.txt");
                
//* Входим ВК *//
                
                
post_content("https://login.vk.com/?act=login""act=login&q=1&al_frame=1&expire=&captcha_sid=&captcha_key=&from_host=vk.com&email={$vk_login}&pass={$vk_pass}");
                
                @
chmod(ROOT_DIR."/system/cache/social/coo{$user_info['user_id']}.txt"0666);
                
                if(
$_POST['vk_save_cook']){
                    
                    
$check $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_social` WHERE suser_id = '{$user_id}'");
                    
                    if(!
$check['cnt'])
                        
$db->query("INSERT INTO `".PREFIX."_social` SET suser_id = '{$user_id}', vk_login = '{$vk_login}', vk_pass = '{$vk_pass}'");
                    else
                        
$db->query("UPDATE `".PREFIX."_social` SET vk_login = '{$vk_login}', vk_pass = '{$vk_pass}' WHERE suser_id = '{$user_id}'");
                    
                } else
                    
$db->query("DELETE FROM `".PREFIX."_social` WHERE suser_id = '{$user_id}'");
            
            }
            
//* Открываем ленту новостей *//
            
            
$pars_data post_content("http://vk.com/feed");

            
preg_match_all("#<div id="security_check">(.*?)<table#si"$pars_data['content'], $mob_sec);

            if(
$mob_sec[1][0]){
                
                
preg_match_all("#, to: '(.*?)'#si"$pars_data['content'], $mob_to);
                
preg_match_all("#, al_page: '(.*?)'#si"$pars_data['content'], $mob_al_page);
                
preg_match_all("#<td><div class="label ta_r">(.*?)</div>#si"$pars_data['content'], $mob_number);
            
                
$pars_data_mob post_content("http://m.vk.com/");
                
                
preg_match_all("#&hash=(.*?)"#si", $pars_data_mob['content'], $mob_hash);

                
$tpl->load_template('social/vk_check.tpl');
                
$tpl->set('{text}'str_replace(iconv('utf-8''windows-1251''К сожалению, цифры указаны неверно. Вы можете повторить попытку через 4 часа.'), ''$mob_sec[1][0]));
                
$tpl->set('{mob_to}''');
                
$tpl->set('{al_page}''');
                
$tpl->set('{mob_hash}'$mob_hash[1][0]);
                
$tpl->set('{mob_number}'$mob_number[1][0]);
                
$tpl->compile('content');
                
                
AjaxTpl();
                
                exit;
                
            }

            
$st1 explode('<div class="post_table">'$pars_data['content']);
            
            
preg_match_all("#id: (.*?),#si"$pars_data['content'], $to_id);
            
            if(!
$to_id[1][0] OR stripos($pars_data['content'], "/images/pics/spamfight.gif") !== false) exit;
            
            
preg_match_all("#"offset":10,"from":"(.*?)"#si"$pars_data['content'], $next_page_id);
            
preg_match_all("#,"offset":(.*?),"#si", $pars_data['content'], $offset);
            
preg_match_all("#,"post_hash":"(.*?)","#si", $pars_data['content'], $vk_post_hash);

            
$rptext iconv('utf-8''windows-1251''Мои Сообщения');
            
preg_match_all("#Pads.show('msg', event)" onclick="return (checkEvent(event) || browser.msie6) ? true : cancelEvent(event)"><span class="left_count_wrap  fl_r"><span class="inl_bl left_count">+(.*?)</span></span></span><span class="left_label inl_bl">{$rptext}</span>#si", $pars_data['content'], $vk_new_msg_num);
            
$vk_new_msg_num[1][0] = str_replace('+'''$vk_new_msg_num[1][0]);
                
            if(
$_POST['not_logged']){
            
                
$tpl->load_template('social/vk_head.tpl');
                
$tpl->set('{next_page_id}'$next_page_id[1][0]);
                
$tpl->set('{vk_post_hash}'$vk_post_hash[1][0]);
                
$tpl->set('{to_id}'$to_id[1][0]);
                
$tpl->set('{vk_new_msg_num}'$vk_new_msg_num[1][0]);
                
$tpl->compile('info');
            
            } else
                
$tpl->result['content'] .= "<script>$('#vk_new_msg_num').text('{$vk_new_msg_num[1][0]}')</script>";
            
            
$tpl->result['content'] .= '<div id="vk_page_go">';
            
            
$tpl->load_template('social/vk_feed.tpl');
            foreach(
$st1 as $arr){
                
                
$rdaomc '';
                
                
preg_match_all("#<div class="wall_text">(.*?)</a>#si"$arr$data);
                
                if(
$data[1][0]){
                    
                    if(
stripos($arr'published_by') !== false){
                        
                        
preg_match_all("#<a class="published_by"(.*?)</a>#si"$arr$data10);
                        
preg_match_all("#<div class="published_by_date">(.*?)</a>#si"$arr$data11);
                        
                        
$repostpref ' <font color="#000">-> '.strip_tags('<a '.$data10[1][0]).'</font> / <span style="font-weight:normal;color:#777"><small>'.strip_tags($data11[1][0]).'</small></span>';
                        
                    } else
                        
$repostpref '';
                        
                    
$arr preg_replace("#<table cellpadding="0" cellspacing="0" class="published_by_wrap">(.*?)</table>#si"""$arr);
                    
//* Комментарии *//
                    
                    
preg_match_all("#<div class="replies_wrap clear"(.*?)<div class="feed_row#si", $arr, $xdata1);
                    
                    
$fdsakm explode('<div class="reply_table">'$xdata1[1][0]);
                    
                    foreach(
$fdsakm as $onemcdata){
                        
                        
preg_match_all("#<a class="author"(.*?)</a>#si"$onemcdata$xdata2);
                        
$raen2 explode('>'$xdata2[1][0]);
                        
                        
preg_match_all("#<div class="wall_reply_text">(.*?)</div>#si"$onemcdata$xdata3);
                        
preg_match_all("#<span class="rel_date(.*?)</span>#si", $onemcdata, $xdata4);
                        
$expdsate explode('">'$xdata4[1][0]);
                        
$xdata4[1][0] = str_replace('">'''$expdsate[1]);
                        
                        
preg_match_all("#img src="(.*?)"#si"$onemcdata$xdata5);
                        
$xdata4[1][0] = str_replace('">'''$xdata4[1][0]);
                        
                        
$checkpost2 explode('http://'$xdata5[1][0]);
                        if(!
$checkpost2[1]) $xdata5[1][0] = 'http://vk.com'.$xdata5[1][0];
                        
                        
$xdata3[1][0] = strip_tags($xdata3[1][0]);
                        
                        if(
$xdata4[1][0]){
                        
                            
$rdaomc .= <<<HTML
<div class="wall_fast_block" style="border-top:1px solid #DAE1E8;margin-top:5px">
  <div class="wall_fast_ava">
   <img src="
{$xdata5[1][0]}" />
  </div>
  <div>
    <a>
{$raen2[1]}</a>
  </div>
  <div class="wall_fast_comment_text">
{$xdata3[1][0]}</div>
  <div class="wall_fast_date">
    
{$xdata4[1][0]}
  </div>
  <div class="clear"></div>
</div>
HTML;
                        }
                        
                    }

                    
$tpl->set('{comments}'$rdaomc);
                    
                    
preg_match_all("#"><img src="(.*?)" width="50"#si", $arr, $data1);
                    
preg_match_all("#<div class="wall_text">(.*?)<div class="post_like_wrap#si", $arr, $data2);
                    
preg_match_all("#<span class="rel_date(.*?)</span>#si", $arr, $data3);
                    
preg_match_all("#<span class="post_like_count fl_l"(.*?)</span>#si"$arr$data4);
                    
                    
preg_match_all("#<div id="wpt(.*?)_#si", $arr, $data10);

                    
$tpl->set('{vk_uid}'$data10[1][0]);
                    
$tpl->set('{rand}'rand(1104032421));

                    
$author strip_tags($data[1][0]);
                    
$author trim($author);
                    
$poster trim($data1[1][0]);
                    
$checkpost explode('http://'$poster);
                    if(!
$checkpost[1]) $poster 'http://vk.com'.$poster;

                    
$epxdat explode($author.'</a>'$data2[1][0]);
                    
$data2[1][0] = $epxdat[1];
                    
                    
$text $data2[1][0];
                    
$text str_replace(array('<br>''<br />'), '{br}'$text);
                    
$text strip_tags($text);
                    
$text str_replace('{br}''<br />'$text);
                    
$text trim($text);
                    
                    
$text preg_replace('`(http(?:s)?://w+[^s[]<]+)`i''<a href="/away.php?url=$1" target="_blank">$1</a>'$text);
                    
                    
preg_match_all("#<img src="(.*?)"#si"$data2[1][0], $imgposer);
                    if(!
$imgposer[1][0]) preg_match_all("#background-image: url((.*?))#si"$arr$imgposer);
                    
                    
$expdatess explode('">'$data3[1][0]);
                    
$likes strip_tags('<a'.$data4[1][0]);

                    
$tpl->set('{author}'$author.$repostpref);
                    
$tpl->set('{poster}'$poster);
                    
$tpl->set('{text}'$text);
                    if(
$text$br_text '<br />';
                    else 
$br_text '';
                    if(
$imgposer[1][0]) $tpl->set('{addmsgpos}'"{$br_text}<img src="{$imgposer[1][0]}" />");
                    else 
$tpl->set('{addmsgpos}''');
                    
$tpl->set('{date}'$expdatess[1]);
                    
$tpl->set('{likes}'$likes);
                    
                    
preg_match_all("#id="post_hash(.*?)/>#si", $arr, $forcommga);
                    
$expds3 explode('" value="'$forcommga[1][0]);
                    
$expds3[1] = str_replace('"'''$expds3[1]);
                    
                    
$tpl->set('{vk_hash}'$expds3[1]);
                    
$tpl->set('{vk_id}'$expds3[0]);
                    
                    if(
$expds3[1]){
                    
                        
$tpl->set('[comm]''');
                        
$tpl->set('[/comm]''');
                    
                    } else
                        
$tpl->set_block("'\[comm\](.*?)\[/comm\]'si","");
                    
                    if(
$expds3[0] > 0){
                    
                        
$tpl->set('[msg]''');
                        
$tpl->set('[/msg]''');
                    
                    } else
                        
$tpl->set_block("'\[msg\](.*?)\[/msg\]'si","");
                    
                    
$news_found true;

                    
$tpl->compile('content');
                
                }

            }
            
            if(
$news_found){
            
                
$tpl->load_template('social/vk_boot.tpl');
                
$tpl->set('{next_page_id}'$next_page_id[1][0]);
                
$tpl->set('{offset}'$offset[1][0]);
                
$tpl->compile('content');
                
            } else {
            
                
$tpl->result['content'] = iconv('utf-8''windows-1251''<div class="info_center" style="margin-top:60px;margin-bottom:50px">Здесь Вы будете видеть новостную ленту своих друзей.</div>');
                
            }
            
            
$tpl->result['content'] .= '</div>';

            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Показать предыдущие новости *//
        
        
case "vk_news_page":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
//* Получаем POST данные *//
            
            
$next_page_id $_POST['next_page_id'];
            
$vk_offset $_POST['vk_offset'];
            
//* Открываем пред.новости *//
            
            
$pars_data post_content("http://vk.com/al_feed.php?sm_news""al=1&from={$next_page_id}&more=1&offset={$vk_offset}&part=1&section=news&subsection=recent");
            
            
preg_match_all("#"from":"(.*?)"#si"$pars_data['content'], $new_next_page_id);
            
preg_match_all("#,"offset":(.*?),"#si", $pars_data['content'], $offset);
            
            
$st1 explode('<div class="post_table">'$pars_data['content']);
            
            echo 
$new_next_page_id[1][0].'|||||||||!!!!';
            echo 
$offset[1][0].'|||||||||!!!!';
            
            
$tpl->load_template('social/vk_feed.tpl');
            foreach(
$st1 as $arr){
                
                
preg_match_all("#<div class="wall_text">(.*?)</a>#si"$arr$data);
                
                
$rdaomc '';
                
                if(
$data[1][0]){
                    
                    if(
stripos($arr'published_by') !== false){
                        
                        
preg_match_all("#<a class="published_by"(.*?)</a>#si"$arr$data10);
                        
preg_match_all("#<div class="published_by_date">(.*?)</a>#si"$arr$data11);
                        
                        
$repostpref ' <font color="#000">-> '.strip_tags('<a '.$data10[1][0]).'</font> / <span style="font-weight:normal;color:#777"><small>'.strip_tags($data11[1][0]).'</small></span>';
                        
                    } else
                        
$repostpref '';
                        
                    
$arr preg_replace("#<table cellpadding="0" cellspacing="0" class="published_by_wrap">(.*?)</table>#si"""$arr);
                    
//* Комментарии *//
                    
                    
preg_match_all("#<div class="replies_wrap clear"(.*?)<div class="feed_row#si", $arr, $xdata1);
                    
                    
$fdsakm explode('<div class="reply_table">'$xdata1[1][0]);
                    
                    foreach(
$fdsakm as $onemcdata){
                        
                        
preg_match_all("#<a class="author"(.*?)</a>#si"$onemcdata$xdata2);
                        
$raen2 explode('>'$xdata2[1][0]);
                        
                        
preg_match_all("#<div class="wall_reply_text">(.*?)</div>#si"$onemcdata$xdata3);
                        
preg_match_all("#<span class="rel_date(.*?)</span>#si", $onemcdata, $xdata4);
                        
$expdsate explode('">'$xdata4[1][0]);
                        
$xdata4[1][0] = str_replace('">'''$expdsate[1]);
                        
                        
preg_match_all("#img src="(.*?)"#si"$onemcdata$xdata5);
                        
$xdata4[1][0] = str_replace('">'''$xdata4[1][0]);
                        
                        
$checkpost2 explode('http://'$xdata5[1][0]);
                        if(!
$checkpost2[1]) $xdata5[1][0] = 'http://vk.com'.$xdata5[1][0];
                        
                        
$xdata3[1][0] = strip_tags($xdata3[1][0]);
                        
                        if(
$xdata4[1][0]){
                        
                            
$rdaomc .= <<<HTML
<div class="wall_fast_block" style="border-top:1px solid #DAE1E8;margin-top:5px">
  <div class="wall_fast_ava">
   <img src="
{$xdata5[1][0]}" />
  </div>
  <div>
    <a>
{$raen2[1]}</a>
  </div>
  <div class="wall_fast_comment_text">
{$xdata3[1][0]}</div>
  <div class="wall_fast_date">
    
{$xdata4[1][0]}
  </div>
  <div class="clear"></div>
</div>
HTML;
                        }
                        
                    }

                    
$tpl->set('{comments}'$rdaomc);
                    
                    
preg_match_all("#"><img src="(.*?)" width="50"#si", $arr, $data1);
                    
preg_match_all("#<div class="wall_text">(.*?)<div class="post_like_wrap#si", $arr, $data2);
                    
preg_match_all("#<span class="rel_date(.*?)</span>#si", $arr, $data3);
                    
preg_match_all("#<span class="post_like_count fl_l"(.*?)</span>#si"$arr$data4);

                    
preg_match_all("#<div id="wpt(.*?)_#si", $arr, $data10);

                    
$tpl->set('{vk_uid}'$data10[1][0]);
                    
$tpl->set('{rand}'rand(1104032421));
                    
                    
$author strip_tags($data[1][0]);
                    
$author trim($author);
                    
$poster trim($data1[1][0]);
                    
$checkpost explode('http://'$poster);
                    if(!
$checkpost[1]) $poster 'http://vk.com'.$poster;

                    
$epxdat explode($author.'</a>'$data2[1][0]);
                    
$data2[1][0] = $epxdat[1];
                    
                    
$text $data2[1][0];
                    
$text str_replace(array('<br>''<br />'), '{br}'$text);
                    
$text strip_tags($text);
                    
$text str_replace('{br}''<br />'$text);
                    
$text trim($text);
                    
                    
$text preg_replace('`(http(?:s)?://w+[^s[]<]+)`i''<a href="/away.php?url=$1" target="_blank">$1</a>'$text);
                    
                    
preg_match_all("#<img src="(.*?)"#si"$data2[1][0], $imgposer);
                    if(!
$imgposer[1][0]) preg_match_all("#background-image: url((.*?))#si"$arr$imgposer);
                    
                    
$expdatess explode('">'$data3[1][0]);
                    
$likes strip_tags('<a'.$data4[1][0]);

                    
$tpl->set('{author}'$author.$repostpref);
                    
$tpl->set('{poster}'$poster);
                    
$tpl->set('{text}'$text);
                    if(
$text$br_text '<br />';
                    else 
$br_text '';
                    if(
$imgposer[1][0]) $tpl->set('{addmsgpos}'"{$br_text}<img src="{$imgposer[1][0]}" />");
                    else 
$tpl->set('{addmsgpos}''');
                    
$tpl->set('{date}'$expdatess[1]);
                    
$tpl->set('{likes}'$likes);
                    
                    
preg_match_all("#id="post_hash(.*?)/>#si", $arr, $forcommga);
                    
$expds3 explode('" value="'$forcommga[1][0]);
                    
$expds3[1] = str_replace('"'''$expds3[1]);
                    
                    
$tpl->set('{vk_hash}'$expds3[1]);
                    
$tpl->set('{vk_id}'$expds3[0]);
                    
                    if(
$expds3[1]){
                    
                        
$tpl->set('[comm]''');
                        
$tpl->set('[/comm]''');
                    
                    } else
                        
$tpl->set_block("'\[comm\](.*?)\[/comm\]'si","");
                    
                    if(
$expds3[0] > 0){
                    
                        
$tpl->set('[msg]''');
                        
$tpl->set('[/msg]''');
                    
                    } else
                        
$tpl->set_block("'\[msg\](.*?)\[/msg\]'si","");

                    
$news_found true;
                    
                    
$tpl->compile('content');
                
                }

            }
            
            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Отправка записи на стену *//
        
        
case "vk_send_post":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
//* Получаем POST данные *//
            
            
$vk_text $_POST['vk_text'];
            
$hash $_POST['hash'];
            
$to_id $_POST['to_id'];
            
$from $_POST['from'];
            
//* Открываем пред.новости *//
            
            
$pars_data post_content("http://vk.com/al_wall.php""act=post&al=1&hash={$hash}&message={$vk_text}&type=feed&to_id={$to_id}&from={$from}");

            
$st1 explode('<div class="post_table">'$pars_data['content']);

            
$tpl->load_template('social/vk_feed.tpl');
            
            
$arr $st1[1];
                
            
preg_match_all("#<div class="wall_text">(.*?)</a>#si"$arr$data);
                
            if(
$data[1][0]){

                if(
stripos($arr'published_by') !== false){
                        
                    
preg_match_all("#<a class="published_by"(.*?)</a>#si"$arr$data10);
                    
preg_match_all("#<div class="published_by_date">(.*?)</a>#si"$arr$data11);
                        
                    
$repostpref ' <font color="#000">-> '.strip_tags('<a '.$data10[1][0]).'</font> / <span style="font-weight:normal;color:#777"><small>'.strip_tags($data11[1][0]).'</small></span>';
                        
                } else
                    
$repostpref '';
                        
                
$arr preg_replace("#<table cellpadding="0" cellspacing="0" class="published_by_wrap">(.*?)</table>#si"""$arr);
                    
                
preg_match_all("#"><img src="(.*?)" width="50"#si", $arr, $data1);
                
preg_match_all("#<div class="wall_text">(.*?)<div class="post_like_wrap#si", $arr, $data2);
                
preg_match_all("#<span class="rel_date rel_date_needs_update"(.*?)</span>#si"$arr$data3);
                
preg_match_all("#<span class="post_like_count fl_l"(.*?)</span>#si"$arr$data4);

                
$author strip_tags($data[1][0]);
                
$author trim($author);
                
$poster trim($data1[1][0]);
                
$checkpost explode('http://'$poster);
                if(!
$checkpost[1]) $poster 'http://vk.com'.$poster;

                
$epxdat explode($author.'</a>'$data2[1][0]);
                
$data2[1][0] = $epxdat[1];
                    
                
$text $data2[1][0];
                
$text str_replace(array('<br>''<br />'), '{br}'$text);
                
$text strip_tags($text);
                
$text str_replace('{br}''<br />'$text);
                
$text trim($text);
                    
                
$text preg_replace('`(http(?:s)?://w+[^s[]<]+)`i''<a href="/away.php?url=$1" target="_blank">$1</a>'$text);
                    
                
preg_match_all("#<img src="(.*?)"#si"$data2[1][0], $imgposer);
                if(!
$imgposer[1][0]) preg_match_all("#background-image: url((.*?))#si"$arr$imgposer);
                
                
$date strip_tags('<a'.$data3[1][0]);
                
$likes strip_tags('<a'.$data4[1][0]);
                    
                
$tpl->set('{author}'$author.$repostpref);
                
$tpl->set('{poster}'$poster);
                
$tpl->set('{text}'$text);
                if(
$text$br_text '<br />';
                else 
$br_text '';
                if(
$imgposer[1][0]) $tpl->set('{addmsgpos}'"{$br_text}<img src="{$imgposer[1][0]}" />");
                else 
$tpl->set('{addmsgpos}''');
                
$tpl->set('{date}'$date);
                
$tpl->set('{likes}'$likes);
                    
                
$news_found true;
                    
                
$tpl->compile('content');
                
            }

            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Список друзей *//
        
        
case "vk_friends":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
//* Открываем список друзей *//
            
            
$pars_data post_content("http://vk.com/friends?section=all");

            
$stps explode('<div class="user_block'$pars_data['content']);
            
$cnt 0;
            
            
$rptext iconv('utf-8''windows-1251''Мои Сообщения');
            
preg_match_all("#Pads.show('msg', event)" onclick="return (checkEvent(event) || browser.msie6) ? true : cancelEvent(event)"><span class="left_count_wrap  fl_r"><span class="inl_bl left_count">+(.*?)</span></span></span><span class="left_label inl_bl">{$rptext}</span>#si", $pars_data['content'], $vk_new_msg_num);
            
$vk_new_msg_num[1][0] = str_replace('+'''$vk_new_msg_num[1][0]);
            
$tpl->result['content'] .= "<script>$('#vk_new_msg_num').text('{$vk_new_msg_num[1][0]}')</script>";
            
            
$tpl->load_template('social/vk_friend_head.tpl');
            
preg_match_all("#<div class="summary" id="friends_summary">(.*?)</div>#si"$pars_data['content'], $friends_summary);
            
$tpl->set('{friend-text}'$friends_summary[1][0]);
            
$tpl->compile('info');
            
            
$tpl->load_template('social/vk_friend.tpl');
            foreach(
$stps as $frdata){
            
                
preg_match_all("#<img class="friends_photo_img" src="(.*?)"#si"$frdata$data);
                
preg_match_all("# <div class="friends_field">(.*?)</div>#si"$frdata$data1);
                
preg_match_all("#onclick="return showWriteMessageBox(event, (.*?))">#si"$frdata$data2);
                
preg_match_all("# <div class="online">(.*?)</div>#si"$frdata$data3);
                
                
$photo $data[1][0];
                
$frname strip_tags($data1[1][0]);
                
$info strip_tags($data1[1][1]);
                
$vk_uid strip_tags($data2[1][0]);
                
                if(
$photo AND $vk_uid){
                    
                    
$cnt++;
                    
                    if(
$cnt <= 15){
                    
                        
$checkpost explode('http://'$photo);
                        if(!
$checkpost[1]) $photo 'http://vk.com'.$photo;
                        
                        
$tpl->set('{ava}'$photo);
                        
$tpl->set('{name}'$frname);
                        
$tpl->set('{mininfo}'$info);
                        
$tpl->set('{online}'$data3[1][0]);
                        
$tpl->set('{vk_uid}'$vk_uid);
                        
                        
$tpl->compile('content');
                        
                    }
                    
                }
                
            }
            
            if(
$cnt >= 15){
                
$tpl->load_template('social/vk_friend_boot.tpl');
                
preg_match_all("#id: (.*?),#si"$pars_data['content'], $to_id);
                
$tpl->set('{vk_uid}'$to_id[1][0]);
                
$tpl->compile('content');
            }
            
            if(!
$cnt){
                
                
$tpl->result['content'] = iconv('utf-8''windows-1251''<div class="info_center" style="margin-top:60px;margin-bottom:50px">Здесь Вы будете видеть список своих друзей.</div>');
                
            }
            
            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Список друзей / Показ всех *//
        
        
case "vk_friends_prev":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$vk_uid $_POST['vk_uid'];
            
//* Получаем список друзей *//
            
            
$pars_data post_content("http://vk.com/al_friends.php""act=load_friends_silent&al=1&gid=0&id={$vk_uid}");
            
$pars_data['content'] = nl2br($pars_data['content']);
            
            
$paramexps explode('<br />'$pars_data['content']);
            
$cnt 0;
            
            
$tpl->load_template('social/vk_friend.tpl');
            foreach(
$paramexps as $frdata){
            
                
$cnt++;
                
                if(
$cnt 15){
                
                    
$data explode("','"$frdata);
                    
                    
$checkpost explode('http://'$data[1]);
                    if(!
$checkpost[1]) $data[1] = 'http://vk.com'.$data[1];
                        
                    
$tpl->set('{ava}'$data[1]);
                    
$tpl->set('{name}'$data[5]);
                    
$tpl->set('{mininfo}''');
                    if(
$data[4]) $tpl->set('{online}''Online');
                    else 
$tpl->set('{online}''');
                    
$tpl->set('{vk_uid}'$data[0]);
                    
                    
$tpl->compile('content');
                
                }
                
            }
            
            
AjaxTpl();

            exit;
            
        break;
        
//* VK / Сообщения *//
        
        
case "vk_msg":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$pars_data post_content("http://vk.com/mail");
            
            
$exppa explode('<tr class="'$pars_data['content']);
            
            
$rptext iconv('utf-8''windows-1251''Мои Сообщения');
            
preg_match_all("#Pads.show('msg', event)" onclick="return (checkEvent(event) || browser.msie6) ? true : cancelEvent(event)"><span class="left_count_wrap  fl_r"><span class="inl_bl left_count">+(.*?)</span></span></span><span class="left_label inl_bl">{$rptext}</span>#si", $pars_data['content'], $vk_new_msg_num);
            
$vk_new_msg_num[1][0] = str_replace('+'''$vk_new_msg_num[1][0]);
            
$tpl->result['content'] .= "<script>$('#vk_new_msg_num').text('{$vk_new_msg_num[1][0]}')</script>";
            
            
$tpl->load_template('social/vk_msg_head.tpl');
            
preg_match_all("#<span id="mail_summary">(.*?)</span>#si"$pars_data['content'], $friends_summary);
            
$tpl->set('{msg-text}'$friends_summary[1][0]);
            
$tpl->compile('info');
            
            
$tpl->load_template('social/vk_msg.tpl');
            foreach(
$exppa as $msdata){

                
preg_match_all("#<img width="50" height="50" src="(.*?)"#si"$msdata$data);
                
preg_match_all("#<div class="name wrapped">(.*?)</a>#si"$msdata$data1);
                
preg_match_all("#<div class="date">(.*?)</div>#si"$msdata$data2);
                
preg_match_all("#href="/mail?act=show&id=(.*?)"#si"$msdata$data3);
                
preg_match_all("#<div class="mail_body">(.*?)</div>#si"$msdata$data4);
                
preg_match_all("#<div class="online">(.*?)</div>#si"$msdata$data5);
                
preg_match_all("#<div class="mail_topic">(.*?)</div>#si"$msdata$data6);
                
                
$ava $data[1][0];
                
                if(
$ava){
                    
                    
$msdata str_replace(',"new_msg":'''$msdata);
                    
                    
$epxsnew explode('new_msg"'$msdata);
                    
                    
$checkpost explode('http://'$ava);
                    if(!
$checkpost[1]) $ava 'http://vk.com'.$ava;
                    
                    
$name strip_tags($data1[1][0]);
                    
$date strip_tags($data2[1][0]);
                    
$msgid $data3[1][0];
                    
$msgtext $data4[1][0];
                    
$msgtext str_replace(array('<br>''<br />'), '{br}'$msgtext);
                    
$msgtext strip_tags($msgtext);
                    
$msgtext str_replace('{br}''<br />'$msgtext);
                    
$online $data5[1][0];
                    
$subj strip_tags($data6[1][0]);
                    
                    
$tpl->set('{ava}'$ava);
                    
$tpl->set('{name}'$name);
                    
$tpl->set('{date}'$date);
                    
$tpl->set('{msgid}'$msgid);
                    
$tpl->set('{msgtext}'$msgtext);
                    
$tpl->set('{online}'$online);
                    
$tpl->set('{subj}'$subj);
                    
                    if(
$epxsnew[1]) $tpl->set('{msg_new}''msg_new');
                    else 
$tpl->set('{msg_new}''');
    
                    
$tpl->compile('content');
                
                }
                
            }
            
            
$intvnum explode(' '$friends_summary[1][0]);
            
            if(
$intvnum[2] > 20){
            
                
$tpl->load_template('social/vk_msg_boot.tpl');
                
$tpl->compile('content');
                
            }
            
            if(!
$intvnum[2])
                
$tpl->result['content'] = iconv('utf-8''windows-1251''<div class="info_center" style="margin-top:60px;margin-bottom:52px">У Вас нет ни одного сообщения..</div>');
            
            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Сообщения / Страницы *//
        
        
case "vk_msg_prev":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$offset $_POST['vk_offset_msg'];
            
$pars_data post_content("http://vk.com/al_mail.php""al=1&filter=all&offset={$offset}");
            
            
$exppa explode('<tr class="'$pars_data['content']);

            
$tpl->load_template('social/vk_msg.tpl');
            foreach(
$exppa as $msdata){
                
                
$epxsnew explode('new_msg'$msdata);
                
                
preg_match_all("#<img width="50" height="50" src="(.*?)"#si"$msdata$data);
                
preg_match_all("#<div class="name wrapped">(.*?)</a>#si"$msdata$data1);
                
preg_match_all("#<div class="date">(.*?)</div>#si"$msdata$data2);
                
preg_match_all("#href="/mail?act=show&id=(.*?)"#si"$msdata$data3);
                
preg_match_all("#<div class="mail_body">(.*?)</div>#si"$msdata$data4);
                
preg_match_all("#<div class="online">(.*?)</div>#si"$msdata$data5);
                
preg_match_all("#<div class="mail_topic">(.*?)</div>#si"$msdata$data6);
                
                
$ava $data[1][0];
                
                if(
$ava){
                
                    
$checkpost explode('http://'$ava);
                    if(!
$checkpost[1]) $ava 'http://vk.com'.$ava;
                    
                    
$name strip_tags($data1[1][0]);
                    
$date strip_tags($data2[1][0]);
                    
$msgid $data3[1][0];
                    
$msgtext $data4[1][0];
                    
$msgtext str_replace(array('<br>''<br />'), '{br}'$msgtext);
                    
$msgtext strip_tags($msgtext);
                    
$msgtext str_replace('{br}''<br />'$msgtext);
                    
$online $data5[1][0];
                    
$subj strip_tags($data6[1][0]);
                    
                    
$tpl->set('{ava}'$ava);
                    
$tpl->set('{name}'$name);
                    
$tpl->set('{date}'$date);
                    
$tpl->set('{msgid}'$msgid);
                    
$tpl->set('{msgtext}'$msgtext);
                    
$tpl->set('{online}'$online);
                    
$tpl->set('{subj}'$subj);
                    
                    if(
$epxsnew[1]) $tpl->set('{msg_new}''msg_new');
                    else 
$tpl->set('{msg_new}''');
                    
                    
$tpl->compile('content');
                
                }
                
            }
            
            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Сообщения / Просмотр *//
        
        
case "vk_msg_read":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$msgid $_POST['msgid'];
            
$pars_data post_content("http://vk.com/mail?act=show&id={$msgid}");
            
            
preg_match_all("#<img width="100" src="(.*?)"#si"$pars_data['content'], $data);
            
preg_match_all("#<a class="mem_link"(.*?)</a>#si"$pars_data['content'], $data1);
            
preg_match_all("#<div class="mail_envelope_time">(.*?)</div>#si"$pars_data['content'], $data2);
            
preg_match_all("#<div class="mail_envelope_body(.*?)</div>#si", $pars_data['content'], $data3);
            
preg_match_all("#<div class="mail_envelope_online">(.*?)</div>#si"$pars_data['content'], $online);
            
preg_match_all("#onclick="mail.showHistory((.*?));#si", $pars_data['content'], $toid);

            
$data1[1][0] = strip_tags('<a '.$data1[1][0]);
            
            
$ava $data[1][0];

            
$checkpost explode('http://'$ava);
            if(!
$checkpost[1]) $ava 'http://vk.com'.$ava;
                    
            
$name strip_tags($data1[1][0]);
            
$date strip_tags($data2[1][0]);
            
$msgtext '<div class="'.$data3[1][0];
            
$msgtext str_replace(array('<br>''<br />'), '{br}'$msgtext);
            
$msgtext strip_tags($msgtext);
            
$msgtext str_replace('{br}''<br />'$msgtext);
            
            
$tpl->set('{ava}'$ava);
            
$tpl->set('{name}'$name);
            
$tpl->set('{date}'$date);
            
$tpl->set('{msgid}'$msgid);
            
$tpl->set('{msgtext}'$msgtext);
            
$tpl->set('{online}'$online[1][0]);
            
$tpl->set('{toid}'$toid[1][0]);
            
$tpl->set('{subj}'$subj);
                    
            
$tpl->load_template('social/vk_msg_view.tpl');
            
$tpl->compile('content');
            
            
AjaxTpl();
            
            exit;
            
        break;
        
//* VK / Сообщения / Отправка *// 
        
        
case "vk_msg_send":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$vk_msg_value $_POST['vk_msg_value']; 
            
$msgid $_POST['msgid']; 
            
$toid $_POST['toid']; 

//* Открываем моб версию, что узнать chas *//
            
            
$pars_data_mb post_content("http://m.vk.com/mail?act=show&peer={$toid}");
            
//* Получаем chas *//
            
            
preg_match_all("#from=dialog&hash=(.*?)"#si", $pars_data_mb['content'], $hash);

//* Отправляем сообщение *//
            
            
post_content("http://vk.com/al_mail.php""act=a_send&al=1&chas={$hash[1][0]}&from=msg&title=...&to_id={$toid}&to_reply={$msgid}&message={$vk_msg_value}");

            exit;
            
        break;
        
//* VK / Сообщения / Открытие окна для написания сообщения *//
        
        
case "vk_msg_box":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$toid $_POST['toid'];

            
$pars_data post_content("http://vk.com/al_mail.php""act=write_box&al=1&to={$toid}");
            
            
preg_match_all("#hash: '(.*?)'#si"$pars_data['content'], $hash);
            
            echo 
$hash[1][0];
            
            exit;
            
        break;
        
//* VK / Сообщения / Быстрая отправка *//
        
        
case "vk_msg_fast_send":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$vk_msg_hash $_POST['vk_msg_hash']; 
            
$vk_msg_fast_text $_POST['vk_msg_fast_text']; 
            
$toid $_POST['toid']; 

//* Отправляем сообщение *//
            
            
post_content("http://vk.com/al_mail.php""act=a_send&al=1&chas={$vk_msg_hash}&from=box&to_ids={$toid}&message={$vk_msg_fast_text}");

            exit;
            
        break;
        
//* VK / Проверка безопасности *//
        
        
case "vk_check_mob":
            
//* Устанавливаем кодировку *//
            
            
header('Content-type: text/html; charset=windows-1251');
            
            
NoAjaxQuery();
            
            
$code $_POST['code'];
            
$to $_POST['to'];
            
$al_page $_POST['al_page'];
            
$hash $_POST['hash'];
            
            
$pars_content post_content("http://vk.com/login.php""al=1&act=security_check&to=&hash={$hash}&code={$code}");

            
$epas explode('<!int>'$pars_content['content']);
            
$ezpd explode('<!>'$epas[1]);
            
            echo 
$ezpd[1];

            exit;
            
        break;
        
//* VK / Отправка комментария *//
        
        
case "vk_send_comm":
        
            
header('Content-type: text/html; charset=windows-1251');
            
            
$hash str_replace(' '''$_POST['hash']);
            
$message $_POST['message'];
            
$reply_to $_POST['reply_to'];

            
post_content("http://vk.com/al_wall.php""act=post&al=1&hash={$hash}&message={$message}&reply_to={$reply_to}&reply_to_user=0&type=feed");

            exit();
            
        break;
        
//* VK / Выход *// 
        
        
case "vk_logout":
            
            
NoAjaxQuery();
            
            @
unlink(ROOT_DIR."/system/cache/social/coo{$user_info['user_id']}.txt");
            
            
$db->query("DELETE FROM `".PREFIX."_social` WHERE suser_id = '{$user_id}'");
            
            exit;
            
        break;
        
            default:

//* VK / Страница входа *// 
            

            
            
if($a){
            
                
$row $db->super_query("SELECT vk_login, vk_pass FROM `".PREFIX."_social` WHERE suser_id = '{$user_id}'");
                
                
$tpl->load_template('social/main.tpl');
                
$tpl->set('{vk_login}'$row['vk_login']);
                
$tpl->set('{vk_pass}'stripslashes($row['vk_pass']));
                if(
$row['vk_login']) $tpl->set('{authologin}''vk.login()');
                else 
$tpl->set('{authologin}''');
                
$tpl->compile('content');
            
            }
            
            
msgbox('''Сервис недоступен.''info_2');
            
    }
    
    
$tpl->clear();
    
$db->free();
    
} else {
    
$user_speedbar $lang['no_infooo'];
    
msgbox(''$lang['not_logged'], 'info');
}
?>
Онлайн: 0
Реклама