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

Как разрешить пользователям оценивать свои комментарии и материалы в 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. Очистите кэш. На этом разрешение оценки своих материалов закончено.

«Pandoge» - помощник веб-мастера
7
комментариев
29.07 в 22:33

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

  • 0

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

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

else {

$db->close();

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

die();

}

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

else {

$db->close();

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

die();

}

  • 12
30.07 в 18:00

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

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

  • 0
22.04 в 17:08

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

  • 0

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

  • 0

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

$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 группы пользователей.

  • 0

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

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