anonymous@RULINUX.NET~# | Last login: 2024-12-23 10:41:50 |
Регистрация Вход | Новости | Разметка | Пользователи | Галерея | Форум | Статьи | Неподтвержденное | Трекер | Правила форума | F.A.Q. | Ссылки | Поиск |
Форум - Rulinux.net | [RSS] |
Как лучше реализовать?
1. Хратить в базе html(как сделано сейчас) и каждый раз при редактировании парсить его преобразовывая в ТеХ, ББКод или еще что-то в зависимости от настроек профиля.
2. Хранить в базе сырое сообщение(добавить колонку raw_comment и raw_type) и в зависимости от того с помощью какого типа разметки было написано исходное сообщение, использовать эту разметку при редактировании игнорируя настройки типа разметки в профиле.
Ну и само-собой со временем будет добавлен ББкод и скорее всего Wiki базовый хтмл. Настройки типа разметки можно будет указать в профиле.
Tux-oid(*) (2009-09-25 11:00:00)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1) Gecko/20090624 Firefox/3.5
|
|
|
Скрыть
Re: Редактирование постов.Конечно сохраняй raw в дополнительном текстовом поле - это пригодится даже если придётся менять правила обработки форматирования для уже определенных правил разметки - тогда просто сбросишь в NULL форматированные поля и при первом обращении отпарсишь заново (т.е. надо будет проверять не пустое ли). Про мат, нужно будет как минимум 3 таблички: первая фильтры с ID равным степени двойки что бы можно было несколько признаков (фильтров) объединять в битовую маску (или лучше кросс-референс таблу использовать с полями пост_ид и фильтр_ид что бы не упереться потом в размер числа?), вторая - таблица всех регэкспов, третья - кросс-референс между регэкспами и признаками: допускаю что некоторые регэкспы могут использоваться сразу для нескольких признаков. Например, что-нить типа "хохлоблядь" будет соответствовать и нацполу и мату одновременно, соответственно можно использовать один регэксп для двух признаков одновременно. Кстати, продумай диагностику для регэкспов. Я думаю, что в боевом режиме, если ты по очереди будешь прикладывать регэкспы для каждого признака, то надо будет останавливаться при первом же совпадении для заданного признака и переходить к следующему (например если встретил "хуй" - пометил как содержащее мат, и на "пизду" проверять уже ни к чему, можно переходить к проверкам на нацпол). Но для отладки, наверное будет удобнее отключить такой режим что бы сразу проверить несколько выражений за один пост.. Кстати при постинге надо будет как-то показывать пользователю что распозналось как мат и давать возм-ть перепостить (и тут же можно и багрепортную ссылку прикрутить) - накладки наверняка будут. |
Скрыть
Re: Редактирование постов.>Конечно сохраняй raw в дополнительном текстовом поле - это пригодится даже если придётся менять правила обработки форматирования для уже определенных правил разметки - тогда просто сбросишь в NULL форматированные поля и при первом обращении отпарсишь заново (т.е. надо будет проверять не пустое ли).
>Про мат, нужно будет как минимум 3 таблички: первая фильтры с ID равным степени двойки что бы можно было несколько признаков (фильтров) объединять в битовую маску (или лучше кросс-референс таблу использовать с полями пост_ид и фильтр_ид что бы не упереться потом в размер числа?), вторая - таблица всех регэкспов, третья - кросс-референс между регэкспами и признаками: допускаю что некоторые регэкспы могут использоваться сразу для нескольких признаков. Например, что-нить типа "хохлоблядь" будет соответствовать и нацполу и мату одновременно, соответственно можно использовать один регэксп для двух признаков одновременно.
Tux-oid(*)(2009-09-25 14:27:38)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1) Gecko/20090624 Firefox/3.5 |
gnomino(*)(2009-09-25 14:36:12)
Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.3) Gecko/20090909 Fedora/3.5.3-1.fc11 Firefox/3.5.3 |
Скрыть
Re: Редактирование постов.> зачем тебе редактиврование
|
Скрыть
Re: Редактирование постов.Скорее всего реализуем проверку айпишника и ЮА сообщения с айпишником и ЮА зашедшего на форум анона, и если он будет свопадать, то редактирование сообщения(пусть и другого анона) будет разрешено. Как вам такой вариант, на мой взгляд сомнительный, но другого мне не приходит в голову. Tux-oid(*)(2009-09-25 15:09:22)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1) Gecko/20090624 Firefox/3.5 |
Скрыть
Re: Редактирование постов.Зарегаюсь когда-нить, но время становления ресурса лучше похожу анонимусом, что бы убедиться, что права анонимуса не ущемляются. |
Скрыть
Re: Редактирование постов.>но другого мне не приходит в голову.
gnomino(*)(2009-09-25 15:13:57)
Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.3) Gecko/20090909 Fedora/3.5.3-1.fc11 Firefox/3.5.3 |
Скрыть
Re: Редактирование постов.Разрешай по ИД сессии, меньше вероятность ошибок. А кто не хочет поддерживать и сессионные куки - тот сам знает на что идёт. |
Скрыть
Re: Редактирование постов.>Конечно сохраняй raw в дополнительном текстовом поле
>Например, что-нить типа "хохлоблядь" будет соответствовать и нацполу и мату одновременно, соответственно можно использовать один регэксп для двух признаков одновременно.
//2туксойд, да, мне очень интересно, как ты будешь определять нацпол, т.к. наличие определенных слов необязательно должно указывать на нацпол, в то же время их отсутствие необязательно должно указывать на отсутствие нацпола. anonymous(*)(2009-09-25 15:18:10)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.14) Gecko/2009082707 Firefox/3.0.14 |
Скрыть
Re: Редактирование постов.>Скорее всего реализуем проверку айпишника и ЮА сообщения с айпишником и ЮА зашедшего на форум анона, и если он будет свопадать, то редактирование сообщения(пусть и другого анона) будет разрешено. Как вам такой вариант, на мой взгляд сомнительный, но другого мне не приходит в голову.
anonymous(*)(2009-09-25 15:20:09)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.14) Gecko/2009082707 Firefox/3.0.14 |
Скрыть
Re: Редактирование постов.> можешь привести другой пример?
> /2туксойд, да, мне очень интересно, как ты будешь определять нацпол, т.к. наличие определенных слов необязательно должно указывать на нацпол, в то же время их отсутствие необязательно должно указывать на отсутствие нацпола.
|
Скрыть
Re: Редактирование постов.> а написать еще одно сообщение не судьба?
|
Скрыть
Re: Редактирование постов.>//2туксойд, да, мне очень интересно, как ты будешь определять нацпол, т.к. наличие определенных слов необязательно должно указывать на нацпол, в то же время их отсутствие необязательно должно указывать на отсутствие нацпола.
Tux-oid(*)(2009-09-25 15:31:38)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1) Gecko/20090624 Firefox/3.5 |
Скрыть
Re: Редактирование постов.>Наличие слова Путяш явно указывает на наличие нацпола. Так-вот если в случае с матом наличие одного совпадения однозначно указывает на наличие нецензурщины, то в случае с нацполом определять два или три совпадения и только тогда ставить тег нацпол.
>Ну и ессно просмотр сообщений модератором. Т.к. это не удаление, а всего-лишь установка тега, то модераторской предвзятости можно не бояться.
anonymous(*)(2009-09-25 15:51:04)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.14) Gecko/2009082707 Firefox/3.0.14 |
Скрыть
Re: Редактирование постов.>Зачем растаскивать сообщение по всему треду? Читать потом неудобно будет.
anonymous(*)(2009-09-25 15:54:49)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.14) Gecko/2009082707 Firefox/3.0.14 |
Скрыть
Re: Редактирование постов.s/с которыми ничего из-за этого не произойдет/без видимого результата своей деятельности/ //в принципе смысл почти не изменился, но так более понятно что я хотел сказать. anonymous(*)(2009-09-25 17:25:49)
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.14) Gecko/2009082707 Firefox/3.0.14 |
|
|
|
Этот тред читают 3 пользователя: |
Анонимных: 3 Зарегистрированных: 0 |
Re: Редактирование постов.
И еще вопрос. Для того чтобы при постинге автоматически ставились метки(мат, нацпол и пр.) я думаю добавить табличку со списком регекспов определяющих мат. Посему мне нужна ваша помощь в составлении регекпов матерных слов. Пример ху(й|йня|ёво|етень|юмбула|ёвина). Т.е. мне нужно вспомнить максимально возможное количество вариаций матерных слов составленных в виде регекспов.
Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1) Gecko/20090624 Firefox/3.5