Intellect Board — cистема управления сайтом

Построение сайта на основе форума

Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.20 »   ПОДПИСКА на ТЕМУ
RSS

ПОДПИСКА на ТЕМУ

как запретить высылку темы, если там использован HTML

Текущий рейтинг темы: Нет
Выводить сообщения

<<Назад  Вперед>>Страницы: 1 2
Модераторы: aerograf, wsx
Печать
 
assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
Есть такая бяда. Администратор постит в теме и использует HTML-код. Есть пользователи, которые подписаны на эту тему и им исправно приходят посты с эти html-кодом. Что не есть хорошо.

Поскольку html- код может писать ТОЛЬКО Администратор, прошу мастеров написать и подсказать, где и что подправить, чтобы не отсылались подписанные посты, если там есть htm-код.

Т.е.ввести проверку (где и какой код проверки написать?):

ЕСЛИ НЕТ HTML-кода в посте (посылка поста)
Gram
Администратор

Gram
Откуда: Нижний Новгород
Всего сообщений: 1011
Рейтинг пользователя: 38


Ссылка


Дата регистрации на форуме:
23 июля 2003
Т.е. тело поста не отсылалось или сами письма тоже чтоб не уходили?

Ну вот чтобы в теле письма не отсылался пост надо сделать вот что. Открываем файл process.php находим в функции do_process_post строчку $GLOBALS['text']=$text; (строчка примерно 176) и заменяем её на

  if ($GLOBALS['inuserlevel']>=$GLOBALS['inforum']['f_lhtml'] && intval(getvar("p__html") >0)) $GLOBALS['text']="Содержание данного сообщения можно увидеть только зайдя на форум в соответствующую тему";
  else $GLOBALS['text']=$text;


как то так...

assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
Подправил. Но....
Стоит параметр "Отправка уведомлений о новых темах", поэтому пришло два письма.
Первое письмо - уведомление о создании новых тем:
"Новое сообщение в теме *******" и там все-равно выводится текст с хтмл-кодом

[q]
Пользователь хххххххх создал новую тему "ррррр".
Первое сообщение темы содержит:
--------------------------------------
<center>1234</center>
--------------------------------------
[/q]


Второе письмо - о непосредственно посте:
[q]
Пользователь ХХХХХХХ отправил в эту тему новое сообщение:
--------------------------------------
Содержание данного сообщения можно увидеть только зайдя на форум в соответствующую тему
--------------------------------------
[/q]


Надо бы первое сообщение тоже где-то подправить!!!
assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
И еще, Gram, расшифруй, пожалуйста, олператор IF, что он проверяет?
$GLOBALS['inuserlevel'] - что это?
$GLOBALS['inforum']['f_lhtml'] - что это?
intval(getvar("p__html") - что это? Какие значения бывают?
assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
Первое письмо - это std_tpc.txt , которое выводит корневой stdforum.php
<? 
if (!$premod) {
    
$sql "SELECT u__name,u__email FROM ".$GLOBALS['DBprefix']."Subscription sb, ".$GLOBALS['DBprefix']."User u WHERE sb.uid=u.u_id AND sb.fid=".$GLOBALS['forum'].
           
" AND sb.tid=449724 AND sb.uid!=".$GLOBALS['inuserid'];
    
$res =&amp;db_query($sql,$link);
    
$buffer=load_mail("std_tpc.txt");
  }
  else {
......
 
?>


где еще подправить?
assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
По аналогии сделал:
<? 
while ($email=db_fetch_row($res)) {
    
$GLOBALS['username']=$email[0];
    
$GLOBALS['postername']=$GLOBALS['inuser']['u__name'];
    
$GLOBALS['ftitle']=$GLOBALS['inforum']['f_title'];

// чтобы не отправлялись посты с хтмл-кодом
// $GLOBALS['text']=$_POST['p_text'];
if ($GLOBALS['inuserlevel']>=$GLOBALS['inforum']['f_lhtml'] &amp;&ampintval(getvar("p__html") >0)) 
$GLOBALS['text']="Содержание этого сообщения можно увидеть только зайдя на форум в соответствующую тему.";
else 
$GLOBALS['text']=$_POST['p_text'];
// чтобы не отправлялись посты с хтмл-кодом

    
$GLOBALS['flink']=$GLOBALS['opt_url']."/index.php?t=".$GLOBALS['topic'];
    
$GLOBALS['sublink']=$GLOBALS['opt_url']."/agent.php?a=subscr&u=".$GLOBALS['inuserid']."&t=".
                     
$GLOBALS['topic']."&key=".md5($GLOBALS['topic'].$GLOBALS['inuser']['u__key']);
    
$GLOBALS['unsublink']=$GLOBALS['opt_url']."/agent.php?a=unsub&u=".$GLOBALS['inuserid']."&t=".
                     
$GLOBALS['topic']."&key=".md5($GLOBALS['topic'].$GLOBALS['inuser']['u__key']);
    
replace_mail($buffer,$email[1],MSG_p_newmessage." ".$GLOBALS['ttitle']);
  }
 
?>


Спасибочки, Gram, за помощь.
Gram
Администратор

Gram
Откуда: Нижний Новгород
Всего сообщений: 1011
Рейтинг пользователя: 38


Ссылка


Дата регистрации на форуме:
23 июля 2003
На всякий случай распишу.

$GLOBALS['inuserlevel'] — уровень пользователя
$GLOBALS['inforum']['f_lhtml'] - уровень постинга html для форума
intval(getvar("p__html") - это значение галочки "Использовать HTML" при отправки поста (1 — отмечена, 0 — не отмечена)
assessor
Долгожитель форума


Всего сообщений: 495
Рейтинг пользователя: 14


Ссылка


Дата регистрации на форуме:
13 фев. 2007
Спасибо, Gram.

А вот в http://intboard.ru/support/1930/ можно ли что сделать? Или принципиально (из-за архитектуры движка ) нельзя?
4X_Pro
Руководитель Проекта
Настоящий Компьютерщик
4X_Pro
Откуда: Москва
Всего сообщений: 3299
Рейтинг пользователя: 70


Ссылка


Дата регистрации на форуме:
29 сен. 2001
Gram, а может лучше strip_tags делать, чем отсылать такое?
А вот содержимое тегов hide и level действительно надо бы вырезать...

---
Спорить со мной по поводу того, что в IntB будет, а чего нет -- бесполезно!
Gram
Администратор

Gram
Откуда: Нижний Новгород
Всего сообщений: 1011
Рейтинг пользователя: 38


Ссылка


Дата регистрации на форуме:
23 июля 2003
4X_Pro, ну во-первых, меня спросили конкретный вопрос, я ответил \":)\" Во-вторых, я думал об этом, но на ум пришла ситуация, когда админ захочит запостить какой-нибудь исходный код в виде голового html, а получится, что в письме он вырежится.
<<Назад  Вперед>>Страницы: 1 2
Модераторы: aerograf, wsx
Печать
Intellect Board — cистема управления сайтом »   Техническая поддержка версии 2.20 »   ПОДПИСКА на ТЕМУ
RSS

1 посетитель просмотрел эту тему за последние 10 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
Ограничение доступа
не отображаются разделы
Архив версий
Установка стиля на Intellect Board 2.22
Завершилась работа над новой версией 3.00

Самые активные 5 тем RSS


Время выполнения скрипта: 0.0644. Количество выполненных запросов: 17, время выполнения запросов 0.0000
Creative Commons License Rambler's Top100 Rambler's Top100 Рейтинг@Mail.ru Valid HTML 4.01 Transitional Valid CSS!