Вход Регистрация
Файл: system/modules/groups.php
Строк: 851
<?php
/*
    Appointment: Группы
    File: groups.php

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

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

if(
$logged){
    
$act $_GET['act'];
    
$user_id $user_info['user_id'];

    if(
$_GET['page'] > 0$page intval($_GET['page']); else $page 1;
    
$gcount 20;
    
$limit_page = ($page-1)*$gcount;

    
$metatags['title'] = $lang['communities'];

    switch(
$act){

        
//################### Отправка сообщества БД ###################//
        
case "send":
            
NoAjaxQuery();
            
$title ajax_utf8(textFilter($_POST['title'], falsetrue));
            if(isset(
$title) AND !empty($title)){
                
$db->query("INSERT INTO `".PREFIX."_communities` SET title = '{$title}', type = 1, discussion=1, traf = 1, ulist = '|{$user_id}|', date = NOW(), admin = 'id{$user_id}|', real_admin = '{$user_id}', comments = 1");
                
$cid $db->insert_id();
                
$db->query("INSERT INTO `".PREFIX."_friends` SET friend_id = '{$cid}', user_id = '{$user_id}', friends_date = NOW(), subscriptions = 2");
                
$db->query("UPDATE `".PREFIX."_users` SET user_public_num = user_public_num+1 WHERE user_id = '{$user_id}'");

                @
mkdir(ROOT_DIR.'/uploads/groups/'.$cid.'/'0777);
                @
chmod(ROOT_DIR.'/uploads/groups/'.$cid.'/'0777);

                @
mkdir(ROOT_DIR.'/uploads/groups/'.$cid.'/photos/'0777);
                @
chmod(ROOT_DIR.'/uploads/groups/'.$cid.'/photos/'0777);

                
mozg_mass_clear_cache_file("user_{$user_id}/profile_{$user_id}|groups/{$user_id}");

                echo 
$cid;
            } else
                echo 
'no_title';

            die();
        break;

        
//################### Выход из сообщества ###################//
        
case "exit":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$check $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_friends` WHERE friend_id = '{$id}' AND user_id = '{$user_id}' AND subscriptions = 2");
            if(
$check['cnt']){
                
$db->query("DELETE FROM `".PREFIX."_friends` WHERE friend_id = '{$id}' AND user_id = '{$user_id}' AND subscriptions = 2");
                
$db->query("UPDATE `".PREFIX."_users` SET user_public_num = user_public_num-1 WHERE user_id = '{$user_id}'");
                
$db->query("UPDATE `".PREFIX."_communities` SET traf = traf-1, ulist = REPLACE(ulist, '|{$user_id}|', '') WHERE id = '{$id}'");

                
mozg_mass_clear_cache_file("user_{$user_id}/profile_{$user_id}|groups/{$user_id}");
            }
            die();
        break;
     
//################### Бокс инвайт от MainTalk.ru ###################//
case "invitebox":
NoAjaxQuery();
$group_id intval($_POST['group_id']);

$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.friend_id, tb2.user_id, user_search_pref, user_photo, user_country_city_name, user_status FROM `".PREFIX."_friends` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = '{$user_id}' AND tb1.friend_id = tb2.user_id AND tb1.subscriptions = 0 ORDER by `friends_date` DESC LIMIT 0, 40"1);


$checkg $db->super_query("SELECT ulist, ban, del FROM `".PREFIX."_communities` WHERE id = '{$group_id}'");


foreach(
$sql_ as $row){

$checkq $db->super_query("SELECT * FROM `".PREFIX."_communities_demands` WHERE for_user_id = '{$row['user_id']}' AND groups_id = '{$group_id}'");

if(
stripos($checkg['ulist'], "|{$row['user_id']}|") === false AND $checkg['del'] == AND $checkg['ban'] == 0){
if(
$row['user_photo']) {
$ava $config['home_url'].'uploads/users/'.$row['friend_id'].'/50_'.$row['user_photo'];
}else{
$ava 'templates/Default/images/no_ava_50.png';}
if(
$checkq) {
echo 
"<div class="oneusergr"><a href="/u{$row['user_id']}"><img src="{$ava}"></a><a href="/u{$row['user_id']}"><span>{$row['user_search_pref']}</span></a><div class="sendgroup" style="width:250px;"><a>Уже приглашен на MainTalk.ru!</a></div></div>";
} else {
echo 
"<div class="oneusergr"><a href="/u{$row['user_id']}"><img src="{$ava}"></a><a href="/u{$row['user_id']}"><span>{$row['user_search_pref']}</span></a><div class="sendgroup"><a href="" onclick="groups.send({$row['user_id']},{$group_id}); return false">Выслать приглашение</a></div></div>";
}
}
}



die();
break;


//################### Отправка инвайта ###################//
case "invitesend":
NoAjaxQuery();
$group_id intval($_POST['group_id']);
$for_user_id intval($_POST['user_id']);


$db->query("INSERT INTO `".PREFIX."_communities_demands` SET user_id = '{$user_id}', for_user_id = '{$for_user_id}', date = '{$server_time}', groups_id = '{$group_id}'");
$db->query("UPDATE `".PREFIX."_users` SET demands = demands+1 WHERE user_id = '{$for_user_id}'");
mozg_mass_clear_cache_file("user_{$for_user_id}/profile_{$for_user_id}|groups/{$for_user_id}");
mozg_clear_cache_file('user_'.$for_user_id.'/profile_'.$for_user_id);
die();
break;

//################### Страница заявок в сообществе ###################//
case "requests":
$user_id $user_info['user_id'];



if(
$user_info['user_id']){
$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS user_id, groups_id, for_user_id FROM `".PREFIX."_communities_demands` WHERE for_user_id = '{$user_id}' ORDER by `date` DESC LIMIT 0, 5"1);

$tpl->load_template('groups/request.tpl');
foreach(
$sql_ as $row){
$gid $row['groups_id'];
$uid $row['user_id'];
$rowg$db->super_query("SELECT * FROM `".PREFIX."_communities` WHERE id = '{$gid}'");
$riwu $db->super_query("SELECT user_id, user_search_pref FROM `".PREFIX."_users` WHERE user_id = '{$uid}'");
$tpl->set('{user-id}'$riwu['user_id']);
$tpl->set('{name}'$rowg['title']);
$tpl->set('{group-id}'$rowg['id']);
$tpl->set('{invname}'$riwu['user_search_pref']);
$tpl->set('{user_id}'$user_info['user_id']);

if(
$rowg['photo'])
$tpl->set('{ava}'$config['home_url'].'uploads/groups/'.$rowg['id'].'/100_'.$rowg['photo']);
else
$tpl->set('{ava}''{theme}/images/100_no_ava.png');

$tpl->compile('content');
}
navigation($gcount$user_info['user_friends_demands'], $config['home_url'].'friends/requests/page/');

} else
msgbox('''У Вас нет приглашений в сообщество''info_2');

break;


//################### окей ###################//
case "inviteyes":
NoAjaxQuery();
$group_id intval($_POST['gi']);
$userid intval($_POST['ui']);

//Проверка на существования юзера в сообществе
$row $db->super_query("SELECT ulist, del, ban FROM `".PREFIX."_communities` WHERE id = '{$group_id}'");
if(
stripos($row['ulist'], "|{$userid}|") === false AND $row['del'] == AND $row['ban'] == 0){
$ulist $row['ulist']."|{$userid}|";
$db->query("UPDATE `".PREFIX."_communities` SET traf = traf+1, ulist = '{$ulist}' WHERE id = '{$group_id}'");
$db->query("UPDATE `".PREFIX."_users` SET user_public_num = user_public_num+1 WHERE user_id = '{$userid}'");
$db->query("INSERT INTO `".PREFIX."_friends` SET friend_id = '{$group_id}', user_id = '{$userid}', friends_date = NOW(), subscriptions = 2");
$db->query("DELETE FROM `".PREFIX."_communities_demands` WHERE groups_id = '{$group_id}' AND for_user_id = '{$userid}'");
$db->query("UPDATE `".PREFIX."_users` SET demands = demands-1 WHERE user_id = '{$userid}'");
mozg_mass_clear_cache_file("user_{$userid}/profile_{$userid}|groups/{$userid}");
mozg_clear_cache_file('user_'.$userid.'/profile_'.$userid);
}
die();
break;


//################### ноу ###################//
case "inviteno":
NoAjaxQuery();
$group_id intval($_POST['gi']);
$userid intval($_POST['ui']);


$db->query("DELETE FROM `".PREFIX."_communities_demands` WHERE groups_id = '{$group_id}' AND for_user_id = '{$userid}'");
$db->query("UPDATE `".PREFIX."_users` SET demands = demands-1 WHERE user_id = '{$userid}'");
mozg_mass_clear_cache_file("user_{$userid}/profile_{$userid}|groups/{$userid}");
mozg_clear_cache_file('user_'.$userid.'/profile_'.$userid);

die();
break;

        
//################### Страница загрузки главного фото сообщества ###################//
        
case "loadphoto_page":
            
NoAjaxQuery();
            
$tpl->load_template('groups/load_photo.tpl');
            
$tpl->set('{id}'$_POST['id']);
            
$tpl->compile('content');
            
AjaxTpl();
            die();
        break;

        
//################### Загрузка и изминение главного фото сообщества ###################//
        
case "loadphoto":
            
NoAjaxQuery();

            
$id intval($_GET['id']);

            
//Проверка на то, что фото обновляет адмиH
            
$row $db->super_query("SELECT admin, photo, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false AND $row['del'] == AND $row['ban'] == 0){

                
//Разришенные форматы
                
$allowed_files = array('jpg''jpeg''jpe''png''gif');

                
//Получаем данные о фотографии
                
$image_tmp $_FILES['uploadfile']['tmp_name'];
                
$image_name totranslit($_FILES['uploadfile']['name']); // оригинальное название для оприделения формата
                
$image_rename substr(md5($server_time+rand(1,100000)), 020); // имя фотографии
                
$image_size $_FILES['uploadfile']['size']; // размер файла
                
$type end(explode("."$image_name)); // формат файла

                //Проверям если, формат верный то пропускаем
                
if(in_array(strtolower($type), $allowed_files)){
                    if(
$image_size 5000000){
                        
$res_type strtolower('.'.$type);

                        
$upload_dir ROOT_DIR."/uploads/groups/{$id}/";

                        if(
move_uploaded_file($image_tmp$upload_dir.$image_rename.$res_type)){
                            
//Подключаем класс для фотографий
                            
include ENGINE_DIR.'/classes/images.php';

                            
//Создание оригинала
                            
$tmb = new thumbnail($upload_dir.$image_rename.$res_type);
                            
$tmb->size_auto('200'1);
                            
$tmb->jpeg_quality('97');
                            
$tmb->save($upload_dir.$image_rename.$res_type);

                            
//Создание маленькой копии 100
                            
$tmb = new thumbnail($upload_dir.$image_rename.$res_type);
                            
$tmb->size_auto('100x100');
                            
$tmb->jpeg_quality('100');
                            
$tmb->save($upload_dir.'100_'.$image_rename.$res_type);

                            
//Создание маленькой копии 50
                            
$tmb = new thumbnail($upload_dir.$image_rename.$res_type);
                            
$tmb->size_auto('50x50');
                            
$tmb->jpeg_quality('100');
                            
$tmb->save($upload_dir.'50_'.$image_rename.$res_type);

                            if(
$row['photo']){
                                @
unlink($upload_dir.$row['photo']);
                                @
unlink($upload_dir.'50_'.$row['photo']);
                                @
unlink($upload_dir.'100_'.$row['photo']);
                            }

                            
//Вставляем фотографию
                            
$db->query("UPDATE `".PREFIX."_communities` SET photo = '{$image_rename}{$res_type}' WHERE id = '{$id}'");

                            
//Результат для ответа
                            
echo $image_rename.$res_type;

                            
mozg_clear_cache_folder('groups');
                        } else
                            echo 
'big_size';
                    } else
                        echo 
'big_size';
                } else
                    echo 
'bad_format';
            }
            die();
        break;

        
//################### Удаление фото сообщества ###################//
        
case "delphoto":
            
NoAjaxQuery();
            
$id intval($_POST['id']);

            
//Проверка на то, что фото удалет админ
            
$row $db->super_query("SELECT photo, admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false){
                
$upload_dir ROOT_DIR."/uploads/groups/{$id}/";
                @
unlink($upload_dir.$row['photo']);
                @
unlink($upload_dir.'50_'.$row['photo']);
                @
unlink($upload_dir.'100_'.$row['photo']);
                
$db->query("UPDATE `".PREFIX."_communities` SET photo = '' WHERE id = '{$id}'");

                
mozg_clear_cache_folder('groups');
            }
            die();
        break;

//Загрузка фотографии на обложку
case "upload_cover":
NoAjaxQuery();

            
$id intval($_GET['id']);

            
//Проверка на то, что фото обновляет адмиH
            
$row $db->super_query("SELECT admin, photo, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false AND $row['del'] == AND $row['ban'] == 0){

                
//Разришенные форматы
                
$allowed_files = array('jpg''jpeg''jpe''png''gif');

                
//Получаем данные о фотографии
                
$image_tmp $_FILES['uploadfile']['tmp_name'];
                
$image_name totranslit($_FILES['uploadfile']['name']); // оригинальное название для оприделения формата
                
$image_rename substr(md5($server_time+rand(1,100000)), 020); // имя фотографии
                
$image_size $_FILES['uploadfile']['size']; // размер файла
                
$type end(explode("."$image_name)); // формат файла

                //Проверям если, формат верный то пропускаем
                
if(in_array(strtolower($type), $allowed_files)){
                    if(
$image_size 5000000){
                        
$res_type strtolower('.'.$type);

                        
$upload_dir ROOT_DIR."/uploads/groups/{$id}/";

                        if(
move_uploaded_file($image_tmp$upload_dir.$image_rename.$res_type)){
                            
//Подключаем класс для фотографий
                            
include ENGINE_DIR.'/classes/images.php';

                            
//Создание оригинала
                            
$tmb = new thumbnail($upload_dir.$image_rename.$res_type);
                            
$tmb->size_auto('770'1);
                            
$tmb->jpeg_quality('95');
                            
$tmb->save($upload_dir.$image_rename.$res_type);

$image_rename $db->safesql($image_rename);
$res_type $db->safesql($res_type);

$cover $id.'/'.$image_rename.$res_type;

//Заносим данные об обложке в бд
$db->query("UPDATE `".PREFIX."_communities` SET cover = '{$cover}' WHERE id = '{$id}'");
echo 
$id.'/'.$image_rename.$res_type;
} else
echo 
'bad';
} else
echo 
'big_size';
} else
echo 
'bad_format';
}
die();
break;

  
//Cохранение позиции у обложки
  
case "savecoverpos":
  
$id intval($_GET['id']);
  
//Проверка на то, что фото удалет админ
  
$row $db->super_query("SELECT photo, admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");
  if(
stripos($row['admin'], "id{$user_id}|") !== false){
  
$pos $_POST['pos'];
  if(
$id){
  if(
$pos){
        
$db->query("UPDATE `".PREFIX."_communities` SET cover_pos = '{$pos}' WHERE id = '{$id}'");
   }
  }
  }
  die();
  break;

//Удаление фотографии в обложках
case "delcover":
NoAjaxQuery();
$id intval($_GET['id']);
//Проверка на то, что фото удалет админ
$row $db->super_query("SELECT photo, admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");
if(
stripos($row['admin'], "id{$user_id}|") !== false){
$uploaddir ROOT_DIR.'/uploads/groups/{$id}/';
$row $db->super_query("SELECT cover FROM `".PREFIX."_communities` WHERE id = '{$id}'");

$db->query("UPDATE `".PREFIX."_communities` SET cover = '' WHERE id = '{$id}'");
@
unlink($uploaddir.$row['cover']);
}
die();
break;

        
//################### Вступление в сообщество ###################//
        
case "login":
            
NoAjaxQuery();
            
$id intval($_POST['id']);

            
//Проверка на существования юзера в сообществе
            
$row $db->super_query("SELECT ulist, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['ulist'], "|{$user_id}|") === false AND $row['del'] == AND $row['ban'] == 0){
                
$ulist $row['ulist']."|{$user_id}|";
                
$db->query("UPDATE `".PREFIX."_communities` SET traf = traf+1, ulist = '{$ulist}' WHERE id = '{$id}'");
                
$db->query("UPDATE `".PREFIX."_users` SET user_public_num = user_public_num+1 WHERE user_id = '{$user_id}'");
                
$db->query("INSERT INTO `".PREFIX."_friends` SET friend_id = '{$id}', user_id = '{$user_id}', friends_date = NOW(), subscriptions = 2");

                
mozg_mass_clear_cache_file("user_{$user_id}/profile_{$user_id}|groups/{$user_id}");
            }
            die();
        break;

        
//################### Страница добавления контактов ###################//
        
case "addfeedback_pg":
            
NoAjaxQuery();
            
$tpl->load_template('groups/addfeedback_pg.tpl');
            
$tpl->set('{id}'$_POST['id']);
            
$tpl->compile('content');
            
AjaxTpl();
            die();
        break;

        
//################### Добавления контакт в БД ###################//
        
case "addfeedback_db":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$upage intval($_POST['upage']);
            
$office ajax_utf8(textFilter($_POST['office'], falsetrue));
            
$phone ajax_utf8(textFilter($_POST['phone'], falsetrue));
            
$email ajax_utf8(textFilter($_POST['email'], falsetrue));

            
//Проверка на то, что действиие делает админ
            
$checkAdmin $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");

            
//Проверяем что такой юзер есть на сайте
            
$row $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_users` WHERE user_id = '{$upage}'");

            
//Проверяем на то что юзера нет в списке контактов
            
$checkSec $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_communities_feedback` WHERE fuser_id = '{$upage}' AND cid = '{$id}'");

            if(
$row['cnt'] AND stripos($checkAdmin['admin'], "id{$user_id}|") !== false AND !$checkSec['cnt']){
                
$db->query("UPDATE `".PREFIX."_communities` SET feedback = feedback+1 WHERE id = '{$id}'");
                
$db->query("INSERT INTO `".PREFIX."_communities_feedback` SET cid = '{$id}', fuser_id = '{$upage}', office = '{$office}', fphone = '{$phone}', femail = '{$email}', fdate = '{$server_time}'");
            } else
                echo 
1;

            die();
        break;

        
//################### Удаление контакта из БД ###################//
        
case "delfeedback":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$uid intval($_POST['uid']);

            
//Проверка на то, что действиие делает админ
            
$checkAdmin $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");

            
//Проверяем на то что юзера есть в списке контактов
            
$checkSec $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_communities_feedback` WHERE fuser_id = '{$uid}' AND cid = '{$id}'");

            if(
stripos($checkAdmin['admin'], "id{$user_id}|") !== false AND $checkSec['cnt']){
                
$db->query("UPDATE `".PREFIX."_communities` SET feedback = feedback-1 WHERE id = '{$id}'");
                
$db->query("DELETE FROM `".PREFIX."_communities_feedback` WHERE fuser_id = '{$uid}' AND cid = '{$id}'");
            }

            die();
        break;

        
//################### Выводим фотографию юзера при указании ИД страницы ###################//
        
case "checkFeedUser":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$row $db->super_query("SELECT user_photo, user_search_pref FROM `".PREFIX."_users` WHERE user_id = '{$id}'");
            if(
$row) echo $row['user_search_pref']."|".$row['user_photo'];
            die();
        break;

        
//################### Сохранение отредактированых данных контакт в БД ###################//
        
case "editfeeddave":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$upage intval($_POST['uid']);
            
$office ajax_utf8(textFilter($_POST['office'], falsetrue));
            
$phone ajax_utf8(textFilter($_POST['phone'], falsetrue));
            
$email ajax_utf8(textFilter($_POST['email'], falsetrue));

            
//Проверка на то, что действиие делает админ
            
$checkAdmin $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");

            
//Проверяем на то что юзера есть в списке контактов
            
$checkSec $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_communities_feedback` WHERE fuser_id = '{$upage}' AND cid = '{$id}'");

            if(
stripos($checkAdmin['admin'], "id{$user_id}|") !== false AND $checkSec['cnt']){
                
$db->query("UPDATE `".PREFIX."_communities_feedback` SET office = '{$office}', fphone = '{$phone}', femail = '{$email}' WHERE fuser_id = '{$upage}' AND cid = '{$id}'");
            } else
                echo 
1;

            die();
        break;

        
//################### Все контакты (БОКС) ###################//
        
case "allfeedbacklist":
            
NoAjaxQuery();
            
$id intval($_POST['id']);

            
//Выводим ИД админа
            
$owner $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");

            
$sql_ $db->super_query("SELECT tb1.fuser_id, office, fphone, femail, tb2.user_search_pref, user_photo FROM `".PREFIX."_communities_feedback` tb1, `".PREFIX."_users` tb2 WHERE tb1.cid = '{$id}' AND tb1.fuser_id = tb2.user_id ORDER by `fdate` ASC"1);
            
$tpl->load_template('groups/allfeedbacklist.tpl');
            if(
$sql_){
                foreach(
$sql_ as $row){
                    
$tpl->set('{id}'$id);
                    
$tpl->set('{name}'$row['user_search_pref']);
                    
$tpl->set('{office}'stripslashes($row['office']));
                    
$tpl->set('{phone}'stripslashes($row['fphone']));
                    
$tpl->set('{user-id}'$row['fuser_id']);
                    if(
$row['fphone'] AND $row['femail']) $tpl->set('{email}'', '.stripslashes($row['femail']));
                    else 
$tpl->set('{email}'stripslashes($row['femail']));
                    if(
$row['user_photo']) $tpl->set('{ava}''/uploads/users/'.$row['fuser_id'].'/50_'.$row['user_photo']);
                    else 
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                    if(
stripos($owner['admin'], "id{$user_id}|") !== false){
                        
$tpl->set('[admin]''');
                        
$tpl->set('[/admin]''');
                    } else
                        
$tpl->set_block("'\[admin\](.*?)\[/admin\]'si","");
                    
$tpl->compile('content');
                }
                
AjaxTpl();
            } else
                echo 
'<div align="center" style="padding-top:10px;color:#777;font-size:13px;">Список контактов пуст.</div>';

            if(
stripos($owner['admin'], "id{$user_id}|") !== false)
                echo 
"<style>#box_bottom_left_text{padding-top:6px;float:left}</style><script>$('#box_bottom_left_text').html('<a href="/" onClick="groups.addcontact({$id}); return false">Добавить контакт</a>');</script>";

            die();
        break;

            
//################### Сохранение отредактированых данных группы ###################//
        
case "saveinfo":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$comments intval($_POST['comments']);
            
$title ajax_utf8(textFilter($_POST['title'], falsetrue));
            
$adres_page ajax_utf8(strtolower(textFilter($_POST['adres_page'], falsetrue)));
            
$descr ajax_utf8(textFilter($_POST['descr'], 5000));
            
            if(!
preg_match("/^[a-zA-Z0-9_-]+$/"$adres_page)) $adress_ok false;
            else 
$adress_ok true;

            
//Проверка на то, что действиие делает админ
            
$checkAdmin $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '".$id."'");

            if(
stripos($checkAdmin['admin'], "u{$user_id}|") !== false AND isset($title) AND !empty($title) AND $adress_ok){
                if(
preg_match('/public[0-9]/i'$adres_page))
                    
$adres_page '';
                    
                
//Проверка на то, что адрес страницы свободен
                
if($adres_page)
                    
$checkAdres $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_communities` WHERE adres = '".$adres_page."' AND id != '".$id."'");
                
                if(!
$checkAdres['cnt'] OR $adres_page == ''){
                    
$db->query("UPDATE `".PREFIX."_communities` SET title = '".$title."', descr = '".$descr."', comments = '".$comments."', adres = '".$adres_page."' WHERE id = '".$id."'");
                    if(!
$adres_page)
                        echo 
'no_new';
                } else
                    echo 
'err_adres';
                    
                
mozg_clear_cache_folder('groups');
            }
            
            die();
        break;

        
//################### Выводим информацию о пользователе которого будем делать админом ###################//
        
case "new_admin":
            
NoAjaxQuery();
            
$new_admin_id intval($_POST['new_admin_id']);
            
$row $db->super_query("SELECT tb1.user_id, tb2.user_photo, user_search_pref, user_sex FROM `".PREFIX."_friends` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = '{$new_admin_id}' AND tb1.user_id = tb2.user_id AND tb1.subscriptions = 2");
            if(
$row AND $user_id != $new_admin_id){
                if(
$row['user_photo']) $ava "/uploads/users/{$new_admin_id}/100_{$row['user_photo']}";
                else 
$ava "/templates/{$config['temp']}/images/100_no_ava.png";
                if(
$row['user_sex'] == 1$gram 'был';
                else 
$gram 'была';
                echo 
"<div style="padding:15px"><img src="{$ava}" align="left" style="margin-right:10px" id="adm_ava" />Вы хотите чтоб <b id="adm_name">{$row['user_search_pref']}</b> {$gram} одним из руководителей страницы?</div>";
            } else
                echo 
"<div style="padding:15px"><div class="err_red">Пользователь с таким адресом страницы не подписан на эту страницу.</div></div><script>$('#box_but').hide()</script>";

            die();
        break;

        
//################### Запись нового админа в БД ###################//
        
case "send_new_admin":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$new_admin_id intval($_POST['new_admin_id']);
            
$row $db->super_query("SELECT admin, ulist FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false AND stripos($row['admin'], "id{$new_admin_id}|") === false AND stripos($row['ulist'], "|{$user_id}|") !== false){
                
$admin $row['admin']."id{$new_admin_id}|";
                
$db->query("UPDATE `".PREFIX."_communities` SET admin = '{$admin}' WHERE id = '{$id}'");
            }
            die();
        break;

        
//################### Удаление админа из БД ###################//
        
case "deladmin":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$uid intval($_POST['uid']);
            
$row $db->super_query("SELECT admin, ulist, real_admin FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false AND stripos($row['admin'], "id{$uid}|") !== false AND $uid != $row['real_admin']){
                
$admin str_replace("id{$uid}|"''$row['admin']);
                
$db->query("UPDATE `".PREFIX."_communities` SET admin = '{$admin}' WHERE id = '{$id}'");
            }
            die();
        break;

        
//################### Добавление записи на стену ###################//
        
case "wall_send":
            
NoAjaxQuery();
            
$id intval($_POST['id']);
            
$wall_text ajax_utf8(textFilter($_POST['wall_text']));
            
$attach_files ajax_utf8(textFilter($_POST['attach_files'], falsetrue));

            
//Проверка на админа
            
$row $db->super_query("SELECT admin, del, ban FROM `".PREFIX."_communities` WHERE id = '{$id}'");
            if(
stripos($row['admin'], "id{$user_id}|") !== false AND isset($wall_text) AND !empty($wall_text) OR isset($attach_files) AND !empty($attach_files) AND $row['del'] == AND $row['ban'] == 0){

                    
//Оприделение изображения к ссылке
                    
if(stripos($attach_files'link|') !== false){
                        
$attach_arr explode('||'$attach_files);
                        
$cnt_attach_link 1;
                        foreach(
$attach_arr as $attach_file){
                            
$attach_type explode('|'$attach_file);
                            if(
$attach_type[0] == 'link' AND preg_match('/http://(.*?)+$/i'$attach_type[1]) AND $cnt_attach_link == 1){
                                
$domain_url_name explode('/'$attach_type[1]);
                                
$rdomain_url_name str_replace('http://'''$domain_url_name[2]);
                                
$rImgUrl $attach_type[4];
                                
$rImgUrl str_replace("\", "/", $rImgUrl);
                                
$img_name_arr = explode(".", $rImgUrl);
                                
$img_format = totranslit(end($img_name_arr));
                                
$image_name = substr(md5($server_time.md5($rImgUrl)), 0, 15);

                                //Разришенные форматы
                                
$allowed_files = array('jpg', 'jpeg', 'jpe', 'png', 'gif');

                                //Загружаем картинку на сайт
                                if(in_array(strtolower(
$img_format), $allowed_files) AND preg_match("/http://(.*?)(.jpg|.png|.gif|.jpeg|.jpe)/i", $rImgUrl)){

                                    //Директория загрузки фото
                                    
$upload_dir ROOT_DIR.'/uploads/attach/'.$user_id;

                                    
//Если нет папки юзера, то создаём её
                                    
if(!is_dir($upload_dir)){
                                        @
mkdir($upload_dir0777);
                                        @
chmod($upload_dir0777);
                                    }

                                    
//Подключаем класс для фотографий
                                    
include ENGINE_DIR.'/classes/images.php';

                                    if(@
copy($rImgUrl$upload_dir.'/'.$image_name.'.'.$img_format)){
                                        
$tmb = new thumbnail($upload_dir.'/'.$image_name.'.'.$img_format);
                                        
$tmb->size_auto('100x80');
                                        
$tmb->jpeg_quality(100);
                                        
$tmb->save($upload_dir.'/'.$image_name.'.'.$img_format);

                                        
$attach_files str_replace($attach_type[4], '/uploads/attach/'.$user_id.'/'.$image_name.'.'.$img_format$attach_files);
                                    }
                                }
                                
$cnt_attach_link++;
                            }
                        }
                    }

                
$attach_files str_replace('vote|''hack|'$attach_files);
                
$attach_files str_replace(array('&amp;#124;''&amp;raquo;''&amp;quot;'), array('&#124;''&raquo;''&quot;'), $attach_files);

                
//Голосование
                
$vote_title ajax_utf8(textFilter($_POST['vote_title'], falsetrue));
                
$vote_answer_1 ajax_utf8(textFilter($_POST['vote_answer_1'], falsetrue));

                
$ansers_list = array();

                if(isset(
$vote_title) AND !empty($vote_title) AND isset($vote_answer_1) AND !empty($vote_answer_1)){

                    for(
$vote_i 1$vote_i <= 10$vote_i++){

                        
$vote_answer ajax_utf8(textFilter($_POST['vote_answer_'.$vote_i], falsetrue));
                        
$vote_answer str_replace('|''&#124;'$vote_answer);

                        if(
$vote_answer)
                            
$ansers_list[] = $vote_answer;

                    }

                    
$sql_answers_list implode('|'$ansers_list);

                    
//Вставляем голосование в БД
                    
$db->query("INSERT INTO `".PREFIX."_votes` SET title = '{$vote_title}', answers = '{$sql_answers_list}'");

                    
$attach_files $attach_files."vote|{$db->insert_id()}||";

                }

                
//Вставляем саму запись в БД
                
$db->query("INSERT INTO `".PREFIX."_communities_wall` SET public_id = '{$id}', text = '{$wall_text}', attach = '{$attach_files}', add_date = '{$server_time}'");
                
$dbid $db->insert_id();
                
$db->query("UPDATE `".PREFIX."_communities` SET rec_num = rec_num+1 WHERE id = '{$id}'");

                
//Вставляем в ленту новотсей
                
$db->query("INSERT INTO `".PREFIX."_news` SET ac_user_id = '{$id}', action_type = 11, action_text = '{$wall_text}', obj_id = '{$dbid}', action_time = '{$server_time}'");

                
//Загружаем все записи
                
if(stripos($row['admin'], "id{$user_id}|") !== false)
                    
$public_admin true;
                else
                    
$public_admin false;

                
$limit_select 10;
                
$pid $id;
                include 
ENGINE_DIR.'/classes/wall.public.php';
                
$wall = new wall();
                
$wall->query("SELECT SQL_CALC_FOUND_ROWS tb1.id, text, public_id, add_date, fasts_num, attach, likes_num, likes_users, tell_uid, public, tell_date, tell_comm, tb2.title, photo, comments FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_communities` tb2 WHERE tb1.public_id = '{$id}' AND tb1.public_id = tb2.id AND fast_comm_id = 0 ORDER by `add_date` DESC LIMIT 0, {$limit_select}");
                
$wall->template('groups/record.tpl');
                
$wall->compile('content');
                
$wall->select($public_admin$server_time);
                
AjaxTpl();
            }
            die();
        break;

        
//################### Добавление комментария к записи ###################//
        
case "wall_send_comm":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$public_id intval($_POST['public_id']);
            
$wall_text ajax_utf8(textFilter($_POST['wall_text']));

            
//Проверка на админа и проверяем включены ли комменты
            
$row $db->super_query("SELECT tb1.fasts_num, tb2.admin, comments FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_communities` tb2 WHERE tb1.public_id = tb2.id AND tb1.id = '{$rec_id}'");

            if(
$row['comments'] OR stripos($row['admin'], "id{$user_id}|") !== false AND isset($wall_text) AND !empty($wall_text)){

                
//Вставляем саму запись в БД
                
$db->query("INSERT INTO `".PREFIX."_communities_wall` SET public_id = '{$user_id}', text = '{$wall_text}', add_date = '{$server_time}', fast_comm_id = '{$rec_id}'");
                
$db->query("UPDATE `".PREFIX."_communities_wall` SET fasts_num = fasts_num+1 WHERE id = '{$rec_id}'");

                
$row['fasts_num'] = $row['fasts_num']+1;

                if(
$row['fasts_num'] > 3)
                    
$comments_limit $row['fasts_num']-3;
                else
                    
$comments_limit 0;

                
$sql_comments $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.id, public_id, text, add_date, tb2.user_photo, user_search_pref FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_users` tb2 WHERE tb1.public_id = tb2.user_id AND tb1.fast_comm_id = '{$rec_id}' ORDER by `add_date` ASC LIMIT {$comments_limit}, 3"1);

                
//Загружаем кнопку "Показать N запсии"
                
$tpl->load_template('groups/record.tpl');
                
$tpl->set('{gram-record-all-comm}'gram_record(($row['fasts_num']-3), 'prev').' '.($row['fasts_num']-3).' '.gram_record(($row['fasts_num']-3), 'comments'));
                if(
$row['fasts_num'] < 4)
                    
$tpl->set_block("'\[all-comm\](.*?)\[/all-comm\]'si","");
                else {
                    
$tpl->set('{rec-id}'$rec_id);
                    
$tpl->set('[all-comm]''');
                    
$tpl->set('[/all-comm]''');
                }
                
$tpl->set('{public-id}'$public_id);
                
$tpl->set_block("'\[record\](.*?)\[/record\]'si","");
                
$tpl->set_block("'\[comment-form\](.*?)\[/comment-form\]'si","");
                
$tpl->set_block("'\[comment\](.*?)\[/comment\]'si","");
                
$tpl->compile('content');

                
$tpl->load_template('groups/record.tpl');
                
//Сообственно выводим комменты
                
foreach($sql_comments as $row_comments){
                    
$tpl->set('{public-id}'$public_id);
                    
$tpl->set('{name}'$row_comments['user_search_pref']);
                    if(
$row_comments['user_photo'])
                        
$tpl->set('{ava}'$config['home_url'].'uploads/users/'.$row_comments['public_id'].'/50_'.$row_comments['user_photo']);
                    else
                        
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                    
$tpl->set('{comm-id}'$row_comments['id']);
                    
$tpl->set('{user-id}'$row_comments['public_id']);

                    
$expBR2 explode('<br />'$row_comments['text']);
                    
$textLength2 count($expBR2);
                    
$strTXT2 strlen($row_comments['text']);
                    if(
$textLength2 OR $strTXT2 470)
                        
$row_comments['text'] = '<div class="wall_strlen" id="hide_wall_rec'.$row_comments['id'].'" style="max-height:102px"">'.$row_comments['text'].'</div><div class="wall_strlen_full" onMouseDown="wall.FullText('.$row_comments['id'].', this.id)" id="hide_wall_rec_lnk'.$row_comments['id'].'">Показать полностью..</div>';

                    
$tpl->set('{text}'stripslashes($row_comments['text']));
                    
megaDate($row_comments['add_date']);
                    if(
stripos($row['admin'], "id{$user_id}|") !== false OR $user_id == $row_comments['public_id']){
                        
$tpl->set('[owner]''');
                        
$tpl->set('[/owner]''');
                    } else
                        
$tpl->set_block("'\[owner\](.*?)\[/owner\]'si","");

                    
$tpl->set('[comment]''');
                    
$tpl->set('[/comment]''');
                    
$tpl->set_block("'\[record\](.*?)\[/record\]'si","");
                    
$tpl->set_block("'\[comment-form\](.*?)\[/comment-form\]'si","");
                    
$tpl->set_block("'\[all-comm\](.*?)\[/all-comm\]'si","");
                    
$tpl->compile('content');
                }

                
//Загружаем форму ответа
                
$tpl->load_template('groups/record.tpl');
                
$tpl->set('{rec-id}'$rec_id);
                
$tpl->set('{user-id}'$public_id);
                
$tpl->set('[comment-form]''');
                
$tpl->set('[/comment-form]''');
                
$tpl->set_block("'\[record\](.*?)\[/record\]'si","");
                
$tpl->set_block("'\[comment\](.*?)\[/comment\]'si","");
                
$tpl->set_block("'\[all-comm\](.*?)\[/all-comm\]'si","");
                
$tpl->compile('content');

                
AjaxTpl();
            }
            die();
        break;

        
//################### Удаление записи ###################//
        
case "wall_del":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$public_id intval($_POST['public_id']);

            
//Проверка на админа и проверяем включены ли комменты
            
if($public_id){
                
$row $db->super_query("SELECT admin FROM `".PREFIX."_communities` WHERE id = '{$public_id}'");
                
$row_rec $db->super_query("SELECT fast_comm_id, public_id FROM `".PREFIX."_communities_wall` WHERE id = '{$rec_id}'");
            } else
                
$row $db->super_query("SELECT tb1.public_id, attach, tb2.admin FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_communities` tb2 WHERE tb1.public_id = tb2.id AND tb1.id = '{$rec_id}'");

            if(
stripos($row['admin'], "id{$user_id}|") !== false OR $user_id == $row_rec['public_id']){
                if(
$public_id)
                    
$db->query("UPDATE `".PREFIX."_communities_wall` SET fasts_num = fasts_num-1 WHERE id = '{$row_rec['fast_comm_id']}'");
                else {
                    
$db->query("DELETE FROM `".PREFIX."_communities_wall` WHERE fast_comm_id = '{$rec_id}'");
                    
$db->query("DELETE FROM `".PREFIX."_news` WHERE obj_id = '{$rec_id}' AND action_type = '11'");
                    
$db->query("UPDATE `".PREFIX."_communities` SET rec_num = rec_num-1 WHERE id = '{$row['public_id']}'");

                    
//Удаляем фотку из прикрипленой ссылке, если она есть
                    
if(stripos($row['attach'], 'link|') !== false){
                        
$attach_arr explode('link|'$row['attach']);
                        
$attach_arr2 explode('|/uploads/attach/'.$user_id.'/'$attach_arr[1]);
                        
$attach_arr3 explode('||'$attach_arr2[1]);
                        if(
$attach_arr3[0])
                            @
unlink(ROOT_DIR.'/uploads/attach/'.$user_id.'/'.$attach_arr3[0]);
                    }
                }

                
$db->query("DELETE FROM `".PREFIX."_communities_wall` WHERE id = '{$rec_id}'");
            }
            die();
        break;

        
//################### Показ всех комментариев к записи ###################//
        
case "all_comm":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$public_id intval($_POST['public_id']);

            
//Проверка на админа и проверяем включены ли комменты
            
$row $db->super_query("SELECT tb2.admin, comments FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_communities` tb2 WHERE tb1.public_id = tb2.id AND tb1.id = '{$rec_id}'");

            if(
$row['comments'] OR stripos($row['admin'], "id{$user_id}|") !== false){
                
$sql_comments $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.id, public_id, text, add_date, tb2.user_photo, user_search_pref FROM `".PREFIX."_communities_wall` tb1, `".PREFIX."_users` tb2 WHERE tb1.public_id = tb2.user_id AND tb1.fast_comm_id = '{$rec_id}' ORDER by `add_date` ASC"1);
                
$tpl->load_template('groups/record.tpl');
                
//Сообственно выводим комменты
                
foreach($sql_comments as $row_comments){
                    
$tpl->set('{public-id}'$public_id);
                    
$tpl->set('{name}'$row_comments['user_search_pref']);
                    if(
$row_comments['user_photo'])
                        
$tpl->set('{ava}'$config['home_url'].'uploads/users/'.$row_comments['public_id'].'/50_'.$row_comments['user_photo']);
                    else
                        
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                    
$tpl->set('{comm-id}'$row_comments['id']);
                    
$tpl->set('{user-id}'$row_comments['public_id']);

                    
$expBR2 explode('<br />'$row_comments['text']);
                    
$textLength2 count($expBR2);
                    
$strTXT2 strlen($row_comments['text']);
                    if(
$textLength2 OR $strTXT2 470)
                        
$row_comments['text'] = '<div class="wall_strlen" id="hide_wall_rec'.$row_comments['id'].'" style="max-height:102px"">'.$row_comments['text'].'</div><div class="wall_strlen_full" onMouseDown="wall.FullText('.$row_comments['id'].', this.id)" id="hide_wall_rec_lnk'.$row_comments['id'].'">Показать полностью..</div>';

                    
$tpl->set('{text}'stripslashes($row_comments['text']));
                    
megaDate($row_comments['add_date']);
                    if(
stripos($row['admin'], "id{$user_id}|") !== false OR $user_id == $row_comments['public_id']){
                        
$tpl->set('[owner]''');
                        
$tpl->set('[/owner]''');
                    } else
                        
$tpl->set_block("'\[owner\](.*?)\[/owner\]'si","");

                    
$tpl->set('[comment]''');
                    
$tpl->set('[/comment]''');
                    
$tpl->set_block("'\[record\](.*?)\[/record\]'si","");
                    
$tpl->set_block("'\[comment-form\](.*?)\[/comment-form\]'si","");
                    
$tpl->set_block("'\[all-comm\](.*?)\[/all-comm\]'si","");
                    
$tpl->compile('content');
                }

                
//Загружаем форму ответа
                
$tpl->load_template('groups/record.tpl');
                
$tpl->set('{rec-id}'$rec_id);
                
$tpl->set('{user-id}'$public_id);
                
$tpl->set('[comment-form]''');
                
$tpl->set('[/comment-form]''');
                
$tpl->set_block("'\[record\](.*?)\[/record\]'si","");
                
$tpl->set_block("'\[comment\](.*?)\[/comment\]'si","");
                
$tpl->set_block("'\[all-comm\](.*?)\[/all-comm\]'si","");
                
$tpl->compile('content');

                
AjaxTpl();
            }
            die();
        break;

        
//################### Страница загрузки фото в сообщество ###################//
        
case "photos":
            
NoAjaxQuery();
            
$public_id intval($_POST['public_id']);
            
$rowPublic $db->super_query("SELECT admin, photos_num FROM `".PREFIX."_communities` WHERE id = '{$public_id}'");
            if(
stripos($rowPublic['admin'], "id{$user_id}|") !== false){

                if(
$_POST['page'] > 0$page intval($_POST['page']); else $page 1;
                
$gcount 36;
                
$limit_page = ($page-1)*$gcount;

                
//HEAD
                
$tpl->load_template('public/photos/head.tpl');
                
$tpl->set('{photo-num}'$rowPublic['photos_num'].' '.gram_record($rowPublic['photos_num'], 'photos'));
                
$tpl->set('{public_id}'$public_id);
                
$tpl->set('[top]''');
                
$tpl->set('[/top]''');
                
$tpl->set_block("'\[bottom\](.*?)\[/bottom\]'si","");
                
$tpl->compile('info');

                
//Выводим фотографии
                
if($rowPublic['photos_num']){
                    
$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS photo FROM `".PREFIX."_communities_photos` WHERE public_id = '{$public_id}' ORDER by `add_date` DESC LIMIT {$limit_page}{$gcount}"1);
                    
$tpl->load_template('public/photos/photo.tpl');
                    foreach(
$sql_ as $row){
                        
$tpl->set('{photo}'$row['photo']);
                        
$tpl->set('{public-id}'$public_id);
                        
$tpl->compile('content');
                    }
                    
box_navigation($gcount$rowPublic['photos_num'], $page'groups.wall_attach_addphoto'$public_id);
                } else
                    
msgbox('''<div class="clear" style="margin-top:150px;margin-left:27px"></div>В альбоме сообщества нет загруженных фотографий.''info_2');

                
//BOTTOM
                
$tpl->load_template('public/photos/head.tpl');
                
$tpl->set('[bottom]''');
                
$tpl->set('[/bottom]''');
                
$tpl->set_block("'\[top\](.*?)\[/top\]'si","");
                
$tpl->compile('content');

                
AjaxTpl();
            }
            die();
        break;

        
//################### Выводим инфу о видео при прикриплении видео на стену ###################//
        
case "select_video_info":
            
NoAjaxQuery();
            
$video_id intval($_POST['video_id']);
            
$row $db->super_query("SELECT photo FROM `".PREFIX."_videos` WHERE id = '".$video_id."'");
            if(
$row){
                
$photo end(explode('/'$row['photo']));
                echo 
$photo;
            } else
                echo 
'1';

            die();
        break;

        
//################### Ставим мне нравится ###################//
        
case "wall_like_yes":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$row $db->super_query("SELECT likes_users FROM `".PREFIX."_communities_wall` WHERE id = '".$rec_id."'");
            if(
$row AND stripos($row['likes_users'], "id{$user_id}|") === false){
                
$likes_users "id{$user_id}|".$row['likes_users'];
                
$db->query("UPDATE `".PREFIX."_communities_wall` SET likes_num = likes_num+1, likes_users = '{$likes_users}' WHERE id = '".$rec_id."'");
                
$db->query("INSERT INTO `".PREFIX."_communities_wall_like` SET rec_id = '".$rec_id."', user_id = '".$user_id."', date = '".$server_time."'");
            }
            die();
        break;

        
//################### Убераем мне нравится ###################//
        
case "wall_like_remove":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$row $db->super_query("SELECT likes_users FROM `".PREFIX."_communities_wall` WHERE id = '".$rec_id."'");
            if(
stripos($row['likes_users'], "id{$user_id}|") !== false){
                
$likes_users str_replace("id{$user_id}|"''$row['likes_users']);
                
$db->query("UPDATE `".PREFIX."_communities_wall` SET likes_num = likes_num-1, likes_users = '{$likes_users}' WHERE id = '".$rec_id."'");
                
$db->query("DELETE FROM `".PREFIX."_communities_wall_like` WHERE rec_id = '".$rec_id."' AND user_id = '".$user_id."'");
            }
            die();
        break;

        
//################### Выводим последних 7 юзеров кто поставил "Мне нравится" ###################//
        
case "wall_like_users_five":
            
NoAjaxQuery();
            
$rec_id intval($_POST['rec_id']);
            
$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.user_id, tb2.user_photo FROM `".PREFIX."_communities_wall_like` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = tb2.user_id AND tb1.rec_id = '{$rec_id}' ORDER by `date` DESC LIMIT 0, 7"1);
            if(
$sql_){
                foreach(
$sql_ as $row){
                    if(
$row['user_photo']) $ava '/uploads/users/'.$row['user_id'].'/50_'.$row['user_photo'];
                    else 
$ava '/templates/'.$config['temp'].'/images/no_ava_50.png';
                    echo 
'<a href="/u'.$row['user_id'].'" id="Xlike_user'.$row['user_id'].'_'.$rec_id.'" onClick="Page.Go(this.href); return false"><img src="'.$ava.'" width="32" /></a>';
                }
            }
            die();
        break;

        
//################### Выводим всех юзеров которые поставили "мне нравится" ###################//
        
case "all_liked_users":
            
NoAjaxQuery();
            
$rid intval($_POST['rid']);
            
$liked_num intval($_POST['liked_num']);

            if(
$_POST['page'] > 0$page intval($_POST['page']); else $page 1;
            
$gcount 24;
            
$limit_page = ($page-1)*$gcount;

            if(!
$liked_num)
                
$liked_num 24;

            if(
$rid AND $liked_num){
                
$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.user_id, tb2.user_photo, user_search_pref FROM `".PREFIX."_communities_wall_like` tb1, `".PREFIX."_users` tb2 WHERE tb1.user_id = tb2.user_id AND tb1.rec_id = '{$rid}' ORDER by `date` DESC LIMIT {$limit_page}{$gcount}"1);

                if(
$sql_){
                    
$tpl->load_template('profile_subscription_box_top.tpl');
                    
$tpl->set('[top]''');
                    
$tpl->set('[/top]''');
                    
$tpl->set('{subcr-num}''Понравилось '.$liked_num.' '.gram_record($liked_num'like'));
                    
$tpl->set_block("'\[bottom\](.*?)\[/bottom\]'si","");
                    
$tpl->compile('content');

                    
$tpl->result['content'] = str_replace('Всего'''$tpl->result['content']);

                    
$tpl->load_template('profile_friends.tpl');
                    foreach(
$sql_ as $row){
                        if(
$row['user_photo'])
                            
$tpl->set('{ava}'$config['home_url'].'uploads/users/'.$row['user_id'].'/50_'.$row['user_photo']);
                        else
                            
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                        
$friend_info_online explode(' '$row['user_search_pref']);
                        
$tpl->set('{user-id}'$row['user_id']);
                        
$tpl->set('{name}'$friend_info_online[0]);
                        
$tpl->set('{last-name}'$friend_info_online[1]);
                        
$tpl->compile('content');
                    }
                    
box_navigation($gcount$liked_num$rid'groups.wall_all_liked_users'$liked_num);

                    
AjaxTpl();
                }
            }
            die();
        break;

        
//################### Рассказать друзьям "Мне нравится" ###################//
        
case "wall_tell":
            
NoAjaxQuery();
            
$rid intval($_POST['rec_id']);

            
//Проверка на существование записи
            
$row $db->super_query("SELECT add_date, text, public_id, attach, tell_uid, tell_date, public FROM `".PREFIX."_communities_wall` WHERE fast_comm_id = 0 AND id = '{$rid}'");

            if(
$row){
                if(
$row['tell_uid']){
                    
$row['add_date'] = $row['tell_date'];
                    
$row['author_user_id'] = $row['tell_uid'];
                    
$row['public_id'] = $row['tell_uid'];
                } else
                    
$row['public'] = 1;

                
//Проверяем на существование этой записи у себя на стене
                
$myRow $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_wall` WHERE tell_uid = '{$row['public_id']}' AND tell_date = '{$row['add_date']}' AND author_user_id = '{$user_id}' AND public = '{$row['public']}'");
                if(
$row['tell_uid'] != $user_id AND $myRow['cnt'] == false){
                    
$row['text'] = $db->safesql($row['text']);
                    
$row['attach'] = $db->safesql($row['attach']);

                    
//Всталвяем себе на стену
                    
$db->query("INSERT INTO `".PREFIX."_wall` SET author_user_id = '{$user_id}', for_user_id = '{$user_id}', text = '{$row['text']}', add_date = '{$server_time}', fast_comm_id = 0, tell_uid = '{$row['public_id']}', tell_date = '{$row['add_date']}', public = '{$row['public']}', attach = '".$row['attach']."'");
                    
$dbid $db->insert_id();
                    
$db->query("UPDATE `".PREFIX."_users` SET user_wall_num = user_wall_num+1 WHERE user_id = '{$user_id}'");

                    
//Вставляем в ленту новостей
                    
$db->query("INSERT INTO `".PREFIX."_news` SET ac_user_id = '{$user_id}', action_type = 1, action_text = '{$row['text']}', obj_id = '{$dbid}', action_time = '{$server_time}'");

                    
//Чистим кеш
                    
mozg_clear_cache_file("user_{$user_id}/profile_{$user_id}");
                } else
                    echo 
1;
            } else
                echo 
1;

            die();
        break;

        
//################### Показ всех подпискок ###################//
        
case "all_people":
            
NoAjaxQuery();

            if(
$_POST['page'] > 0$page intval($_POST['page']); else $page 1;
            
$gcount 24;
            
$limit_page = ($page-1)*$gcount;

            
$public_id intval($_POST['public_id']);
            
$subscr_num intval($_POST['num']);

            
$sql_ $db->super_query("SELECT tb1.user_id, tb2.user_name, user_lastname, user_photo FROM `".PREFIX."_friends` tb1, `".PREFIX."_users` tb2 WHERE tb1.friend_id = '{$public_id}' AND tb1.user_id = tb2.user_id AND tb1.subscriptions = 2 ORDER by `friends_date` DESC LIMIT {$limit_page}{$gcount}"1);

            if(
$sql_){
                
$tpl->load_template('profile_subscription_box_top.tpl');
                
$tpl->set('[top]''');
                
$tpl->set('[/top]''');
                
$tpl->set('{subcr-num}'$subscr_num.' '.gram_record($subscr_num'subscribers'));
                
$tpl->set_block("'\[bottom\](.*?)\[/bottom\]'si","");
                
$tpl->compile('content');

                
$tpl->load_template('profile_friends.tpl');
                foreach(
$sql_ as $row){
                    if(
$row['user_photo'])
                        
$tpl->set('{ava}''/uploads/users/'.$row['user_id'].'/50_'.$row['user_photo']);
                    else
                        
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                    
$tpl->set('{user-id}'$row['user_id']);
                    
$tpl->set('{name}'$row['user_name']);
                    
$tpl->set('{last-name}'$row['user_lastname']);
                    
$tpl->compile('content');
                }

                
box_navigation($gcount$subscr_num$public_id'groups.all_people'$subscr_num);

            }

            
AjaxTpl();

            die();
        break;

        
//################### Показ всех сообщества юзера на которые он подписан (BOX) ###################//
        
case "all_groups_user":
            if(
$_POST['page'] > 0$page intval($_POST['page']); else $page 1;
            
$gcount 20;
            
$limit_page = ($page-1)*$gcount;

            
$for_user_id intval($_POST['for_user_id']);
            
$subscr_num intval($_POST['num']);

            
$sql_ $db->super_query("SELECT SQL_CALC_FOUND_ROWS tb1.friend_id, tb2.id, title, photo, traf, adres FROM `".PREFIX."_friends` tb1, `".PREFIX."_communities` tb2 WHERE tb1.user_id = '{$for_user_id}' AND tb1.friend_id = tb2.id AND tb1.subscriptions = 2 ORDER by `traf` DESC LIMIT {$limit_page}{$gcount}"1);

            if(
$sql_){
                
$tpl->load_template('profile_subscription_box_top.tpl');
                
$tpl->set('[top]''');
                
$tpl->set('[/top]''');
                
$tpl->set('{subcr-num}'$subscr_num.' '.gram_record($subscr_num'subscr'));
                
$tpl->set_block("'\[bottom\](.*?)\[/bottom\]'si","");
                
$tpl->compile('content');

                
$tpl->load_template('profile_group.tpl');
                foreach(
$sql_ as $row){
                    if(
$row['photo']) $tpl->set('{ava}''/uploads/groups/'.$row['id'].'/50_'.$row['photo']);
                    else 
$tpl->set('{ava}''{theme}/images/no_ava_50.png');
                    
$tpl->set('{name}'stripslashes($row['title']));
                    
$tpl->set('{public-id}'$row['id']);
                    
$tpl->set('{num}''<span id="traf">'.$row['traf'].' '.gram_record($row['traf'], 'subscribers'));
                    if(
$row['adres']) $tpl->set('{adres}'$row['adres']);
                    else 
$tpl->set('{adres}''public'.$row['id']);
                    
$tpl->compile('content');
                }

                
box_navigation($gcount$subscr_num$for_user_id'groups.all_groups_user'$subscr_num);

            }

            
AjaxTpl();

            die();
        break;

        default:

            
//################### Вывод всех сообществ ###################//
            
$owner $db->super_query("SELECT user_public_num FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");

            if(
$act == 'admin'){
                
$tpl->load_template('groups/head_admin.tpl');
                
$sql_sort "SELECT SQL_CALC_FOUND_ROWS id, title, photo, traf, adres FROM `".PREFIX."_communities` WHERE admin regexp '[[:<:]](id{$user_id})[[:>:]]' ORDER by `traf` DESC LIMIT {$limit_page}{$gcount}";
                
$sql_count $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_communities` WHERE admin regexp '[[:<:]](id{$user_id})[[:>:]]'");
                
$owner['user_public_num'] = $sql_count['cnt'];
            } else {
                
$sql_sort "SELECT SQL_CALC_FOUND_ROWS tb1.friend_id, tb2.id, title, photo, traf, adres FROM `".PREFIX."_friends` tb1, `".PREFIX."_communities` tb2 WHERE tb1.user_id = '{$user_id}' AND tb1.friend_id = tb2.id AND tb1.subscriptions = 2 ORDER by `traf` DESC LIMIT {$limit_page}{$gcount}";
                
$tpl->load_template('groups/head.tpl');
            }

            if(
$owner['user_public_num']){
                
$tpl->set('{num}'$owner['user_public_num'].' '.gram_record($owner['user_public_num'], 'groups'));
                
$tpl->set('[yes]''');
                
$tpl->set('[/yes]''');
                
$tpl->set_block("'\[no\](.*?)\[/no\]'si","");
            } else {
                
$tpl->set('[no]''');
                
$tpl->set('[/no]''');
                
$tpl->set_block("'\[yes\](.*?)\[/yes\]'si","");
            }
            
$tpl->compile('info');

            if(
$owner['user_public_num']){

                
$sql_ $db->super_query($sql_sort1);

                
$tpl->load_template('groups/group.tpl');
                foreach(
$sql_ as $row){
                    
$tpl->set('{id}'$row['id']);
                    if(
$row['adres']) $tpl->set('{adres}'$row['adres']);
                    else 
$tpl->set('{adres}''public'.$row['id']);

                    
$tpl->set('{name}'stripslashes($row['title']));
                    
$tpl->set('{traf}'$row['traf'].' '.gram_record($row['traf'], 'groups_users'));

                    if(
$act != 'admin'){
                        
$tpl->set('[admin]''');
                        
$tpl->set('[/admin]''');
                    } else
                        
$tpl->set_block("'\[admin\](.*?)\[/admin\]'si","");

                    if(
$row['photo'])
                        
$tpl->set('{photo}'"/uploads/groups/{$row['id']}/100_{$row['photo']}");
                    else
                        
$tpl->set('{photo}'"{theme}/images/no_ava_groups_100.gif");

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

                if(
$act == 'admin'$admn_act 'act=admin&';

                
navigation($gcount$owner['user_public_num'], 'groups?'.$admn_act.'page=');

            }
    }
    
$tpl->clear();
    
$db->free();
} else {
    
$user_speedbar $lang['no_infooo'];
    
msgbox(''$lang['not_logged'], 'info');
}
?>
Онлайн: 1
Реклама