Перейти к содержанию
CMSTOOLS.org - форум поддержки и развития CMS

Рекомендуемые сообщения

 

Инструкция:

Открой:/system/modules/login.php

Найди запрос с таким началом: $user_info = $db->super_query("SELECT user_id, user_email, (он самый верхний)

Добавь в него  user_invisibility, 

Открой:/system/modules/settings.php

Найди:     switch($act){

и ниже вставь:

        //Выключить невидимку         
        case "invisibility_off":           
          $db->query("UPDATE `".PREFIX."_users` SET user_invisibility = 0, invisibility_date = '0' WHERE user_id = '{$user_id}'");           
        break;

        //Включить невидимку
        case "invisibility_on":
        $row = $db->super_query("SELECT user_balance FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
        $datatime = 7 ? $server_time + (7 * 60 * 60 * 24) : 0;
        if($user_info['user_invisibility'] == 0 AND $row['user_balance'] >= $config['invisibility']){
          $db->query("UPDATE `".PREFIX."_users` SET user_invisibility = 1, user_balance = user_balance-{$config['invisibility']}, invisibility_date = '{$datatime}' WHERE user_id = '{$user_id}'");
        }          
        break;
        
        
        //################### Невидимка ###################//
        case "invisibility":
            $tpl->load_template('settings/invisibility.tpl');
            $tpl->set('{invisibility_price}', $config['invisibility']);
                 if($user_info['user_invisibility'] == 1){
                 $tpl->set('{user_invisibility}', '<div class="mgclr"></div>
                 <div class="button_div fl_l"><button onClick="settings.invisibility_off(); return false">Выключить "Невидимку"</button></div><div class="mgclr"></div>');
                 } else {
                 $tpl->set('{user_invisibility}', '<div class="mgclr"></div>
                 <div class="button_div fl_l"><button onClick="invisibility_on.invisibility_on(); return false">Включить "Невидимку"</button></div><div class="mgclr"></div>');
                 }    
                 
                 $row = $db->super_query("SELECT user_balance FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
                 if($row['user_balance'] >= $config['invisibility']){
                 $tpl->set('{user_invisibilityonscript}', "<script>
var invisibility_on = {
invisibility_on: function() {
                $.post('/index.php?go=settings&act=invisibility_on', function(data){
                         Box.Info('err', 'Невидимка', 'Режим невидимки включен!', 200, 1500);
                                 location.reload();
                });
        },
}
</script>");
                 } else {
                 $tpl->set('{user_invisibilityonscript}', "<script>
var invisibility_on = {
invisibility_on: function() {
                $.post('/index.php?go=settings&act=invisibility_on', function(data){
                         Box.Info('err', 'Ошибка', 'На вашем счету недостаточно баллов!', 200, 1500);
                });
        },
}
</script>");
                 }
                 
                 $tpl->compile('info');
        break;

Открой: /templates/Default/js/profile.js


найди: var settings = {


и ниже вставь:

invisibility_off: function() {
                $.post('/index.php?go=settings&act=invisibility_off', function(data){
                                Box.Info('err', 'Невидимка', 'Режим невидимки отключен!', 200, 1500);
                                 location.reload();
                });
        },


Открой: .htaccess


Найди: 

RewriteRule ^settings/blacklist(/?)+$ index.php?go=settings&act=blacklist [L]

и ниже вставь:

RewriteRule ^settings/invisibility(/?)+$ index.php?go=settings&act=invisibility [L]


(Если у тя и у меня разные моды "гостей"  напиши мне в вк)Открой: /system/modules/profile.php найди:

            //Гости
            if($id != $user_info['user_id']){
            
                $checkGuest = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_guests` WHERE ouid = '{$id}' AND guid = '{$user_id}'");
                
                if($checkGuest['cnt'])
                
                    $db->query("UPDATE `".PREFIX."_guests` SET gdate = '{$server_time}', new = '1' WHERE ouid = '{$id}' AND guid = '{$user_id}'");
                    
                else
                
                    $db->query("INSERT INTO `".PREFIX."_guests` SET gdate = '{$server_time}', ouid = '{$id}', guid = '{$user_id}', new = '1'");
                
                $db->super_query("UPDATE `".PREFIX."_users` SET guests = guests + 1 WHERE user_id = '{$id}'");
                
            }

И замени на 


            //Гости
            $invisibility = $db->super_query("SELECT user_invisibility FROM `".PREFIX."_users` WHERE user_id = '{$user_id}'");
            if($id != $user_info['user_id'] AND $invisibility['user_invisibility'] == 0){
                $checkGuest = $db->super_query("SELECT COUNT(*) AS cnt FROM `".PREFIX."_guests` WHERE ouid = '{$id}' AND guid = '{$user_id}'");
                
                if($checkGuest['cnt'])
                
                    $db->query("UPDATE `".PREFIX."_guests` SET gdate = '{$server_time}', new = '1' WHERE ouid = '{$id}' AND guid = '{$user_id}'");
                    
                else
                
                    $db->query("INSERT INTO `".PREFIX."_guests` SET gdate = '{$server_time}', ouid = '{$id}', guid = '{$user_id}', new = '1'");
                
                $db->super_query("UPDATE `".PREFIX."_users` SET guests = guests + 1 WHERE user_id = '{$id}'");
            }


Шаблон: invisibility.tpl загрузи в /templates/Default/settings/

И в каждом шалоне в папке /templates/Default/settings/ кроме baduser.tpl и invisibility.tpl  после:

  <a href="/settings/blacklist" onClick="Page.Go(this.href); return false;"><div><b>Черный список</b></div></a>

добавь

  <a href="/settings/invisibility" onClick="Page.Go(this.href); return false;"><div><b>Невидимка</b></div></a>

 

В /templates/Default/style/style.css добавь

.pf_promo_img-c {
margin-top: 20px;

}

.invisibility-text {
    color: #536069;
    font-size: 14px;
    line-height: 1.286em;
    margin: 0px 200px 1.286em;
}


Открыть:/system/data/config.php

найти:
'offline_msg' => "Сайт находится на текущей реконструкции, после завершения всех работ сайт будет открыт. \r\nПриносим вам свои извинения за доставленные неудобства.",

и ниже вставить

'invisibility' => "14",

потом открыть /system/inc/system.php

найти

<div class="fllogall">Список используемых языков (название папок): <br /><br />пример: <b>Русский | Russian</b></div><textarea class="inpu" name="save[lang_list]">{$config['lang_list']}</textarea>


и ниже вставить

<div class="fllogall">Стоимость сервиса «Невидимка»:</div><input type="text" name="save[invisibility]" class="inpu" value="{$config['invisibility']}" /><div class="mgcler"></div>

зайти вбазу даных и В vii_users создать поле user_invisibility (int) 11

кстате я же забыл ты мне напомнил чтобы невидимка уберался через 7 дней открой /system/init.php

найди if($logged){ и после вставь

//Если у пользователя закончился срок действия услуги «Невидимка» то убираем
$invisibility = $db->super_query("SELECT invisibility_date FROM `" . PREFIX . "_users` WHERE user_id = '{$user_info['user_id']}'");
if ($invisibility['invisibility_date'] < $server_time) {
$db->query("UPDATE LOW_PRIORITY `" . PREFIX . "_users` SET user_invisibility = '0', invisibility_date = '0' WHERE user_id = '{$user_info['user_id']}'");
}

Все! Настроить цену сервиса "Невидимка" можно настроить а админ панели в разделе Настройка системы
 

Default.rar

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...