» » Защита от ссылок в комментариях DLE

20-07-2017, 14:44

Защита от ссылок в комментариях DLE 

Защита от ссылок в комментариях DLE

Если пользователь оставит комментарий с ссылкой, то комментарий будет отправлен на модерацию с соответствующим уведомлением пользователя, в противном случае (без ссылок) комментарий будет добавлен сразу. На модерацию не будут уходить комментарии пользователей с 1-3 группы (администраторы, редакторы и журналисты).

Установка:
1. Открыть файл engine/modules/addcomments.php и найти:
if( $update_comments ) {
			
			$comments = $db->safesql( $row['text'] ) . "<br /><br />" . $db->safesql( $comments );
			$db->query( "UPDATE " . PREFIX . "_comments set date='$time', text='{$comments}', approve='{$where_approve}' WHERE id='{$row['id']}'" );
		
		} else {

Добавить выше следующий код:
if( preg_match ("/href|url|http|www|\.ru|\.com|\.net|\.info|\.org|\.ua/i", $comments) AND ($member_id['user_group'] > 3) ) {
			if( $update_comments ) {
				if( $row['approve'] ) $update_comments = false;
			}
			$where_approve = 0;
			$stop[] = $lang['news_err_31'];
			$CN_HALT = TRUE;
			msgbox( $lang['all_info'], implode( "<br />", $stop ) . "<br /><br /><a href=\"javascript:history.go(-1)\">" . $lang['all_prev'] . "</a>" );
		}

Вот и все... Ваши комментарии дополнительно защищены от спамеров. Тестировалось на версии скрипта DLE 10.3. Для того, чтобы пользователи могли оставлять комментарии со ссылками на вашем сайте, нужно разрешить эту опцию в настойках скрипта в Админпанели в разделе: Настройка групп пользователей включите опцию: Разрешить использование кликабельных ссылок.