Супербыстрый хостинг на SSD от 165р в месяц   •   Реклама
1 387 просм
20 комм
Поделиться:

Как разрешить пользователям оценивать свои комментарии и материалы в DLE?

По умолчанию в DataLife Engine запрещено оценивать свои материалы. Сегодня же, с помощью внесения небольших изменений, я покажу вам, как можно снять это ограничение.

1. Все изменения мы будем делать в файлах движка, поэтому первым шагом будет подключение к сайту по FTP. Дальше же шаги аналогичны для обоих случаев.

Разрешаем пользователям оценивать свои комментарии в DataLife Engine

2. Откройте файл ratingcomments.php в папке /engine/ajax/

3. Найдите строки (примерно 134-148):

if( $is_logged AND $allrate['user_id'] == $member_id['user_id'] ) { 
$db->close(); 
echo "{"error":true, "errorinfo":"{$lang['rating_error4']}"}"; 
die(); 
} elseif( !$is_logged AND $_IP == $allrate['ip'] ) { 
$db->close(); 
echo "{"error":true, "errorinfo":"{$lang['rating_error4']}"}"; 
die(); 
} 

Удалите или закомментируйте их.

Сохраните изменения и отправьте файл обратно на сайт.

4. Очистите кэш. На этом разрешение оценки своих комментариев закончено.

Разрешаем пользователям оценивать свои материалы в DataLife Engine

2. Откройте файл rating.php в папке /engine/ajax/

3. Найдите строки (примерно 134-140):

if( $allrate['user_id'] == $member_id['user_id'] ) { 
$db->close(); 
echo "{"error":true, "errorinfo":"{$lang['rating_error1']}"}"; 
die(); 
}

Удалите или закомментируйте их.

Сохраните изменения и отправьте файл обратно на сайт.

4. Очистите кэш. На этом разрешение оценки своих материалов закончено.

20
комментариев
Гостям запрещено участвовать в обсуждениях сайта. Авторизуйтесь, чтобы расширить привилегии гостевого посещения и получить необходимую помощь от сообщества Pandoge.
Администратор  |  725

Егор, внизу сайта есть форма обратной связи.

21.10 в 22:02
  • 0
Пользователь  |  8

Артем Мáлков, куда мне вам написать? Не как не получается. Даже с админам связался форма. Он говорит не знает первый раз такое видит. Почитал пару статей пытался сделать не выходит(

21.10 в 19:37
  • 0
Пользователь  |  8

Артем Мáлков, Тоже хороший способ учту. Спасибо за помощь))

18.10 в 07:39
  • 0
Администратор  |  725

Егор, Прошу прощения за поздний ответ. Ваш вопрос решается куда проще.

1. Заходите в панель управления сайтом.

2. Переходите в раздел Утилиты - Фильтр по: IP, Логину или E-Mail.

3. Создаете запрет для одного логина, по типу:

IP, Логин или E-mail - admin

Срок окончания бана - оставляете пустым.

Причина бана - Логин запрещенный к регистрации.

Добавили, и тоже самое делаете для остальных запрещенных слов.

17.10 в 23:50
  • 0
Пользователь  |  8

Артем Мáлков, Я решил вопрос вот так, вдруг кому помогу :

открой файл register.php (modules)

найди там

Код:

if( preg_match( "/[\||\'|\<|\>|\[|\]|\%|\"|\!|\?|\$|\@|\#|\/|\\\|\&\~\*\{\}\+]/", $name ) ) $stop .= $lang['reg_err_4']

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

Код:

if( preg_match( "/^(vip)|(admin)|(bot)|(support)|(user)$/i", $name ) ) $stop .= $lang['reg_err_4'];

registration.php (ajax)

найти

Код:

if (preg_match("/[\||\'|\<|\>|\[|\]|\%|\"|\!|\?|\$|\@|\#|\/|\\\|\&\~\*\{\}\+]/",$name)) {

$stop .= $lang['reg_err_4'];

}

добавить ниже

Код:

if( preg_match( "/^(vip)|(admin)|(bot)|(support)|(user)$/i", $name ) ) {

$stop .= $lang['reg_err_4'];

}

добавляй новые ники через |

к примеру

|(user)|(newnick) и тд

17.10 в 07:25
  • 1
Пользователь  |  8

Артем Мáлков, - Можете помочь с последним вопросом: Хочу при регистрации убрать таки "Ники" как - admin-Administration-Moder-Moderator" Как можно это реализовать?!

- Пытался так сделать - В файле /engine/modules/register.php добавить:

if( preg_match( "/[admin-Administration-Moder-Moderator]/", $name ) ) $stop .= $lang['reg_err_100'];

- В файле /engine/ajax/registration.php добавил:

if( preg_match( "/[admin-Administration-Moder-Moderator]/", $name ) )

{

$stop .= $lang['reg_err_100'];

}

- В файле /language/Russian/website.lng добавил:

'reg_err_100' => "Копия имени служебных лиц строга запрещена.",

- Не работает. Можете подсказать буду очень благодарен!? draw

16.10 в 07:54
  • 1
Пользователь  |  8

Артем Мáлков, Добрый день! Всё получилось!!! Как я понимаю я так могу экспериментировать и с другими функциями. Спасибо вам большое! Если у меня будет подобная трудная проблема. Можно к вас обратиться?! smiley

16.10 в 07:02
  • 0
Администратор  |  725

Егор, если я правильно понял, то

<li><a href="https://kiv-max.ru/admin.php?mod=addnews&action=addnews"><span class="fa fa-plus"></span>Добавить пост</a></li>

замените на:

[not-group=4]<li><a href="https://kiv-max.ru/admin.php?mod=addnews&action=addnews"><span class="fa fa-plus"></span>Добавить пост</a></li>[/not-group]

и

<li><a href="{stats-link}"><span class="fa fa-bar-chart-o"></span>Статистика</a></li>

замените на:

[not-group=4]<li><a href="{stats-link}"><span class="fa fa-bar-chart-o"></span>Статистика</a></li>[/not-group]
16.10 в 00:46
  • 0
Пользователь  |  8

Артем Мáлков,

Смотрите:

</div>

<ul class="lb-menu icon-l">

[group=1-2]<li><a href="{admin-link}" target="_blank"><span class="fa fa-cog"></span>Админпанель</a></li>[/group]

<li><a href="https://kiv-max.ru/admin.php?mod=addnews&action=addnews"><span class="fa fa-plus"></span>Добавить пост</a></li>

<li><a href="{profile-link}"><span class="fa fa-cog"></span>Мой профиль</a></li>

<li><a href="{pm-link}"><span class="fa fa-envelope-o"></span>Сообщения: ({new-pm})</a></li>

<li><a href="{favorites-link}"><span class="fa fa-heart-o"></span>Мои закладки (<span id="l-fav">{favorite-count}</span>)</a></li>

<li><a href="{stats-link}"><span class="fa fa-bar-chart-o"></span>Статистика</a></li>

<li><a href="{newposts-link}"><span class="fa fa-file-text-o"></span>Непрочитанное</a></li>

<li><a href="/?do=lastcomments"><span class="fa fa-comments"></span>Последние комментарии</a></li>

<li><a href="{logout-link}"><span class="fa fa-sign-out"></span>Выйти</a></li>

</ul>

</div>

Получается такой код 1-2 группа это админ и заместитель админа у меня. Так вот можно сделать группа номер 4 "пользователь и без "Статистики и добавить пост?" (Я всё в админке сделал! но ссылка есть, когда нажимают переходят на вход DLE) Можно создать как я выше описал под 4 группу? пытался не выходит, функции смещаются!(

15.10 в 22:49
  • 0
Администратор  |  725

Egor Vladimir, ссылку на добавление Вы должны убрать сами в том файле, где у Вас формируется меню. Всего скорее - это login.tpl в теме сайта.

Что касается функции добавления, отключить ее можно по такому пути:

Панель управления сайтом - Пользователи - Настройка групп пользователей - Гости (или Пользователи) - Редактировать - Новости - Разрешить добавлять новости c сайта - Нет.

15.10 в 17:01
  • 0
Проверенный  |  2

Артем Мáлков, Всё я сделал. Можете подсказать как сделать что бы "Гости, Пользователи не могли добавлять новости. Я всё отключил в админке. Но когда пользователь зарегистрировался нажимает на кнопку меню там есть ссылка "+ Добавить пост" Как можно убрать именно у "Гости, Пользователи" остальным оставить?! Можете подсказать, в интернете ничего не смог найти cry

15.10 в 07:49
  • 0
Администратор  |  725

Egor Vladimir, а что пишет, когда Вы оцениваете свои материалы?

14.10 в 18:48
  • 0
Проверенный  |  2

Артем Мáлков, Здравствуйте! Можете подсказать такая вот проблема: делаю всё как вы говорить - "Разрешаем пользователям оценивать свои материалы в DataLife Engine" = Но не выходит кэш чистил: Dle, браузер. Что это может быть?! (Строку я удалил)

14.10 в 09:56
  • 0
Проверенный  |  11

Спасибо большое за ответ!

23.04 в 19:14
  • 1
Администратор  |  725

Артём Ройзман, блок:

$db->close();

echo "{\"error\":true, \"errorinfo\":\"{$lang['rating_error2']}\"}";

die();

в файле /engine/ajax/rating.php замените на:

if($member_id['user_group'] != 1) {

$db->close();

echo "{\"error\":true, \"errorinfo\":\"{$lang['rating_error2']}\"}";

die();

}

Где 1 - ID группы пользователей.

23.04 в 12:18
  • 0
Проверенный  |  11

Артём, а как сделать чтобы только админ мог многократно оценивать новости, и больше никто кроме него?

23.04 в 02:40
  • 0
Гости  |  679

Спасибо Артем! Весьма полезно )

22.04 в 17:08
  • 0
Гости  |  679

Работает. Спасибо большое!

Отличный блог!!!

30.07 в 18:00
  • 0
Администратор  |  725

Андрей, конечно. smiley

Для комментариев, удаляем или комментируем:

else {

$db->close();

echo "{\"error\":true, \"errorinfo\":\"{$lang['rating_error5']}\"}";

die();

}

Тоже самое для новостей:

else {

$db->close();

echo "{\"error\":true, \"errorinfo\":\"{$lang['rating_error2']}\"}";

die();

}

30.07 в 01:42
  • 12
Гости  |  679

Артем, спасибо за хак! А не знаешь как отключить проверку, чтобы можно было многократно оценивать?

29.07 в 22:33
  • 0
Подняться наверх
«Pandoge» - помощник веб-мастера