Ычан: [d | au / b / bro / hr / l / m / mi / mu / o / r / s / sci / tran / tu / tv / vg / x | a / aa / c / fi / jp / rm / tan / to / vn / vo]
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]
Ответ в нить [Последние 50 сообщений]
Имя
Animapcha image [@] [?]
Тема   ( ответ в 20450)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, MP4, OGG, OGV, PDF, PNG, PSD, RAR, SVG, SWF, TXT, WEBM, WEBP, XCF, ZIP размером до 5000 кБ.
  • Ныне 3619 unique user posts. Посмотреть каталог
  • Предельное количество бампов нити: 500
410.png - (34.48KB, 500×500)
20450
No. 20450  
После публикации исходников мы можем обсуждать доработку не только ранее общедоступных частей интерфейса, но и движка в целом.

Репозиторий: https://bitbucket.org/Therapont/fbe-410
1. Для ваших предложений предназначена ветка public.
2. Только администрация 410чана решает, что в этом движке надо, а что не надо. Соответственно, не стоит излишне пропихивать всякие там революционные идеи. Одобренные потенциальные изменения перечислены на багтрекере (записи, созданные владельцами репозитория).
3. Тестирование предложенных изменений и развёртывание принятых ведётся при наличии у администрации свободного времени на это. Обычно это делается по выходным.
4. Код выложен как есть. Никаких неопубликованных скрытых функций и частей не существует.

Предыдущая нить: >>17371
452 сообщений пропущено. Показаны 50 последних сообщений
No. 25812  
>>25810
Кстати, я оставил сообщения об ошибке при наведении курсора на ссылку на заархивированный пост. Это сделано только потому что концептуально в моём представлении пост с IS_DELETED=1 сервером во всех смыслах считается удалённым. Но довольно просто можно было бы сделать так чтобы и аяксом эти заархивированные посты возвращались и появлялись в превьюшках. Едиственное, их сложно будет отличить от постов удалённых как-то по-другому, которые действительно не должны нигде появляться. Видимо, это можно будет сделать только по различию deletedat у поста и ОП-поста его треда. А для ОП-постов определить как они были удалены (в ходе архивации, или, например, самим постером) будет ещё сложнее. Только по наличию html-файла в архиве, наверное.
No. 25813  
>>25812
Неправильно написал. По deletedat можно только выявить посты, которые были удалены отдельно от треда (точно удалённые на совсем). Чтобы определить, как был удалён тред, для всех постов, и открывающих, и остальных, придётся проверять наличие файла в архиве.
No. 25814  
Пулл-реквест для задания 42.

Создал страницу Main Subpages в админке для добавления подстраниц на главной. Если не добавлено ни одной страницы, то используются захардкоженные, то есть те, которые на главной сейчас.

Используется новая таблица main_subpages; инсерт можно взять из 410chan.sql. Главная продолжит работать без добавления новой таблицы, потому что в news.php была добавлена проверка, использующая information_schema. Страница в админке, разумеется, без новой таблицы работать не будет.

Страницу radio.unix.html тоже нужно добавить в таблицу на странице Main Subpages c чекнутым флагом hidden и любым значением в поле Name.
No. 25815  
>>25814
Кстати, на странице Радио ссылка снизу "Вещание под GNU/Linux" не работает во фрейме. Надо или проставить ей target="_blank" или поменять 410chan.ru на 410chan.org, но тогда ссылка не будет работать, если заходить c 410chan.ru.
No. 25816  
>>25815
Надо просто сделать её относительной, от корня, и тогда будет работать откуда бы не зашли.
No. 25817  
>>25816
Да, так и есть. Это я знатно затупил.
No. 25818  
Пулл-реквест для задания 35.
А как работает локализация на 410чане? Я поставил в админке локаль ru у одной доски, и что-то ничего не переводится. В репозитории много .mo файлов, но они же должны компилиться из .po, правильно? А .po есть только в папке /inc/lang/cu. Я сделал title "Collapse all images" у иконки (кстати, для сворачивания отдельной иконки не нашлось), как добавить перевод не знаю.
No. 25819  
>>25811
Кроме огорода с удалёнными ещё вопрос с нагрузкой на движок от этого всего.

>>25818
Указания локали в админке должно быть достаточно, если что-то не сломано.
Файлы надо вручную декомпилировать, видимо.
No. 25820  
>>25818
>А как работает локализация на 410чане?
Выглядит так будто она почему-то сломана. Выше в этом треде пытались выяснить почему. Начинай читать с >>25123
No. 25821  
>>25818
>>25819
>Файлы надо вручную декомпилировать, видимо.

Всё так, делается с помощью poedit:
> ./poedit/bin/msgunfmt ab_AB.mo > ab_AB.po

Только помните, разные файлы локализации у нас не равнозначны.
И еще, у нас не все строки которые есть в .mo / .po файлах присутствуют в .pot шаблоне, если вы попытаетесь воспользоваться шаблоном - в конце у вас будет не корректный файл локализации.
No. 25822  
>>25814
Во-первых, по умолчанию было бы логично оставить только FAQ и Правила, как наиболее универсальные.
Во-вторых, необходимость прописывать все стандартные страницы заново, если вы, допустим, хотите добавить одну дополнительную, довольно неудобна.

>>25820
Для локали достаточно прописать название каталога с ней (т.е. «ru»). По библиотекам должен быть текущий стабильный «Дебиан», как здесь.
No. 25823  
>>25822
>Во-первых, по умолчанию было бы логично оставить только FAQ и Правила, как наиболее универсальные.
Страницы по умолчанию сделаны только для того, чтобы всё совсем не развалилось, если в админке нет настроек.
>Во-вторых, необходимость прописывать все стандартные страницы заново, если вы, допустим, хотите добавить одну дополнительную, довольно неудобна.
Предполагается, что стандартные страницы будут прописаны не когда возникнет потребность в дополнительной, а сразу. Если оставлять FAQ и Правила как страницы по умолчанию (или показывать их всегда, независимо от настроек), то всё равно придётся прописывать в админке три из пяти страниц, которые есть сейчас.
Мне показалось, что в таске имеется ввиду "English, Радио и все остальные". Но если надо, могу сделать так, чтобы FAQ и Rules появлялись независимо от настроек. Так, как сейчас в пул-реквесте, на мой взгляд универсальней. Если захочется какую-то из страниц убрать, то тоже не придётся ничего менять в коде.
Оставить как есть? Переделать?

>>25819
>Кроме огорода с удалёнными ещё вопрос с нагрузкой на движок от этого всего.
У меня на G4600 перегенерация 4000 постов в 40-ка тредах занимает около 5-ти секунд, немного меньше. В каждом посте ссылка, которая, в соответствии с послденими правками, проверяется по базе. Если нужно, в архиве php файл, который устанавливает рансомварь выдаёт информацию по наличию заархивированных тредов в базе.
Я посмотрел треды заархивированные в разные годы. В основном проблемы из-за того, что css файлы не грузятся. Не грузятся они из-за того, что c https идёт ссылка на http (http://410chan.ru). Нужно просто поменять ссылки в тегах link на относительные, чтобы они заработали. Если заходить в архив с http-адреса, то и так работает. По вёрстке там проблема только в пустом месте сверху, там где сейчас полоса меню. И ещё картинки над текстом поста, а не сбоку, а в оп-посте вообще над шапкой поста. Так и было раньше или это сломалось?
У некоторых тредов в архиве даже можно заставить работать дропдаун для выбора стиля сайта, если поменять protoaculous на jQuery. Но со старыми тредами это не рабоает.
И ещё у архивов 2018-го, 2019-го миниатюрки картинок потерялись.
No. 25824  
>>/b/167954-кун просит не скрывать кнопки в шапке поста на мобильных устройствах. Действительно, а зачем так сделано? Они не очень много места занимают по сравнению со всем остальным. Это чтобы по другой кнопке случайно не попасть? Убрать стили, которые их скрывают?
No. 25825  
>>25823
Ладно, пока оставим так.

>>25824
Оно было скрыто, потому что криво работало под мобилками. Там и сейчас на скрине какие-то лишние плюсы повылазили.
No. 25826  
>>25825
Лишние плюс там из-за 593-й строчки img_global.css
@media only screen and (max-width: 480px)

.unhidethread {
    background: transparent url(./icons/red/icons.svg) -48px 0px no-repeat;
}

No. 25830  
>>25820
>>25822
>Для локали достаточно прописать название каталога с ней (т.е. «ru»). По библиотекам должен быть текущий стабильный «Дебиан», как здесь.
У меня что на Дебиан 11, что на Винде работает только с этим фиксом: >>25130. PHP 7.4. На Дебиан нормально переводит, а на Винде местами вопросики в ромбиках. Без фикса переводится только текст под формой, но он на всех языках лежат в конфиге и берётся оттуда без gettext.

Раз уж начали разбираться с переводами, давайте и всё остальное, чего не хватает, добавим:
Collapse all images → Свернуть все изображения
Hide Thread → Скрыть
Watch Thread → Добавить в избранное
Expand Thread → Развернуть
Un-watch → Удалить
Remove Frames → Убрайть Фреймы
Frames removed. → Фреймы убраны.
Есть ещё unique user posts в тексте под формой. Это не переведено из-за того, что будет по-разному с разными числительными? Если так, то это легко можно сделать с помощью ngettext. Только там на самом деле число не уникальных постов, а уникальныx IP. Давайте на английском поменяем на "unique users", а на русском на "уникальных пользователей".

Нормально?
No. 25831  
stickied.png - (43.37KB, 359×270)
25831
Кто-нибудь, кто разбирается в вёрстке, объясните, пожалуйста, почему иконка закреплённого треда на маленьких экранах немного сдвинута вниз. Эти иконки будет видно, если в правиле для .thrdcntnr .post-badge для маленьких экранов заменить display:none, на display:inline-block. Это строка 759 в img_global.css, но проще прямо в браузере через инструменты разработчика поменять. На больших экранах стили вроде бы все те же самые, но она ровно расположена. И у всех остальных иконок тоже такие же стили, но они немного выше.
У меня даже получилось как-то сделать, чтобы она встала ровно, но потом я моргнул правилом display:inline у спана .extrabtns, в который всё это помещено, и она опять съехала вниз! Видеозаписи не сохранилось.
No. 25832  
410_wrong_block_height.png - (78.47KB, 740×410)
25832
>>25831
>объясните, пожалуйста, почему иконка закреплённого треда на маленьких экранах немного сдвинута вниз

Это неправильное срабатывание вертикального выравнивания. Почему работает неправильно? Потому что у нас выравниваются 1 строчный элемент <span> и 3 блочных <a>.

Если сделать их все <a> или все <span> начнет выравнивать нормально. с той оговоркой, что во втором случае надо еще менять правило показа кнопки ответа, а то из-за display:inline кнопка ответа начнет выше торчать

См. пикрелейтед.

Почему это случается только на маленьких экранах? Явно как-то нехорошо наложились стили друг на друга, но где точно - надо выяснять.
No. 25833  
>>25832
Собственно на пикрелейтед вверху видно, что <span> встал по верхнему краю родительского блока зеленый фон, в то время как <a> стали по центру сработал vertical-align?
No. 25835  
>>25832
Выяснилось, что это из-за разного font-size у ашек и спанов.
>>25825
>Оно было скрыто, потому что криво работало под мобилками. Там и сейчас на скрине какие-то лишние плюсы повылазили.
Плюсы пофиксил. Других проблем не обнаружилось, поэтому сделал пул-реквест. В шапке поста на мобильных устройствах немного кривая вёрстка, но я это не буду трогать (кроме съехавшей иконки, её поправил).
No. 25836  
>>25835
>из-за разного font-size у ашек и спанов.
Ну и ну! Молодец что нашел.

>Других проблем не обнаружилось, поэтому сделал пул-реквест.
Мне кажется, проблема будет с тем чтобы надежно попадать в эти микрокнопки пальцем, но увидим в эксплуатации.
No. 25839  
Janitor.png - (27.59KB, 1120×419)
25839
Соус как-то то ли на стриме, то ли на радио упоминал, что надо бы разобраться, что в движке с модераторскими аккаунтами. Я проверил, они работают.
Есть небольшие баги.
У пользователей есть уровни доступа (доступы к отдельным доскам тоже настраиваются). В частности, для удаления сообщений/нитей - уровень 3, для прикреплённых/закрытых нитей - уровень 5. При удалении со страницы доски (а не из админки) уровень доступа не проверяется. При прикреплении/закрытии нити через модпостинг то же самое. Забанить кого-то без соответсвующего уровня доступа не выйдет, потому что для этого нужно перейти на manage_page.php, где все проверки на месте. С проверкой того, есть ли вообще у пользователя модераторские права на данной доске тоже всё в порядке (только при попытке модпостинга сообщение отправляется, но флаги не срабатывают, а лучше бы, на мой взгляд, выдавалась ошибка).
Suspend не даёт пользователю залогиниться, но, пока он залогинен, никаких проверок этого флага не выполняется, и пользователь может делать всё, на что у него хватает прав.
Кроме модераторов можно добавлять дополнительных админов, уборщиков и VIP'ов.
Уборщики имеют право удалять посты/треды и смотреть кое-какую статистику. Неудобно, что кнопка удаления поста на странице доски у них не работает. И при залогинивании админка их встречает сообщением об ошибке. Ещё для уборщика работают те же уровни доступа, и, если уровень доступа меньше трёх, то он вообще ничего не сможет сделать.
Випы не работают. Судя по коду, предполагалось, что випы смогут модпостить с пометкой ✿✿ VIP ✿✿, но при модпостинге сейчас выполняется проверка, что пользователь админ или модератор. И чтобы сервер понял, какие у пользователя права, пользователь сначала должне залогиниться, а доступа к админке у випов нет.
No. 25840  
>>25830
>Убрайть Фреймы
Убрать фреймы. Заглавная не нужна.
>Un-watch → Удалить
Убрать из списка.
>Давайте на английском поменяем на "unique users", а на русском на "уникальных пользователей".
Получается, что это не уникальные пользователи, а «сообщения N уникальных пользователей». В английском оно так и есть.

>>25839
Я как раз и говорил, что с випами надо что-то порешать.
No. 25841  
>>25840
>сообщения N уникальных пользователей
А целиком как? Там сейчас начинается с "Ныне". "Hыне на доске сообщения N уникальных пользователей"?
>Я как раз и говорил, что с випами надо что-то порешать.
А, да? Подробностей вообще не помню. А зачем с ними что-то решать? Зачем они вообще нужны? Я предлагаю дать им доступ к админке, чтобы они могли смотреть пароль для постинга, и открыть только страницу Изменение пароля. Прикреплять/закрывать нити им нужно будет запретить, возможность постить html оставить, но проверять теги/атрибуты по белому списку. Надеюсь, это реалистично будет сделать с помощью DomDocument без библиотек, ещё не пробовал парсить html на php. Я думаю, и для модераторов нужно ввести проверку при постинге html, потому что слишком опасная фича. Там сейчас можно отправлять хоть одни закрывающие теги, хоть скрипты.
No. 25842  
>>25841
>А целиком как?
Я не знаю, ололо. Поэтому оно и не переведено.
>Зачем они вообще нужны?
Опыт других сайтов показывает, что иногда приходится огораживать доступ. Тут бы они и пригодились. Можно дать им возможность логиниться и последующий постинг без капчи (у админов это уже есть), а также возможность писать с паролем в закрытые для постинга разделы. ХТМЛ им не положен вообще, разумеется.
Другой вопрос, что нужен некий контроль постинга, чтобы знать, какой именно вип что написал (вообще), дабы потом отозвать у него учётку в случае нарушений.
>для модераторов нужно ввести проверку при постинге html, потому что слишком опасная фича
Подразумевается, что в модераторы кого попало не берут. Иначе они и без этого урон нанести могут. Ну или просто убрать в уровни доступа это. Вот сделать, чтобы заморозка аккаунта сразу лишала возможностей, надо.
И кнопки удаления уборщикам сделать надо, действительно.
No. 25843  
>>/b/168697
No. 25844  
modmenu.png - (5.77KB, 315×119)
25844
>>25842
>Я не знаю, ололо. Поэтому оно и не переведено.
Ok, это оставлю непереведённым, для остального создал пул-реквест, и для задания 24 заодно. Для некоторых фраз уже был перевод в словаре, они просто не использовались. Закоммитил файл kusaba.po для русского языка, в kusaba.pot тоже добавил недостающие строки (не разобрался для чего он может использоваться). Ещё пофиксил баг в kusaba.js. Для некоторых фраз всегда выдавался русский текст, независимо от локали. Сейчас русский в этих случаях выводится по умолчанию, если нет атрибута lang. Чтобы для старых нитей, у которых нет этого атрибута, переводы не сломались.

Создал пул-реквест для задания 18 (начал его на прошлой неделе, а не после стрима, лол). Чтобы не было конфликтов в .mo файле, он включает в себя правки из предыдущего пул-реквеста.
Код предупреждений по большей части основан на коде банов. Для них нужны те же самые уровни доступа. Предупреждения тоже могут отправляться для отдельных досок. Хотел сначала сделать все предупреждения глобальными, чтобы они выводились при посте на любой доске, но потом передумал. Раз уж у модераторов права разграничены, то пускай и для предупреждений это работает. У предупреждений нет даты окончания, но на странице в админке есть кнопка для удаления всех просмотренных предупреждений (только для модераторов с доступом >= 7). Немного изменено модераторское меню в футере на странице доски/нити, надеюсь, выглядит ok. Текст предупреждений поддерживает Wakaba-mark, даже ссылки на посты с предпросмотром. Была мысль сделать кнопки Вернуться/Запостить на странице предупреждения, чтобы можно было завершить отправку без возвращения к доске/треду, но непонятно где хранить прикреплённый файл, пока пользовтелю отображается предупреждение. Это можно было бы сделать, но трудоёмко, и придётся затронуть код отправки поста.

>Опыт других сайтов показывает, что иногда приходится огораживать доступ. Тут бы они и пригодились>
По вип-аккаунтам, я так понимаю, что для огораживания их фичи с мод-постингом вообще не нужны. Может быть лучше сделать ещё один тип пользователей для этих целей? И как раздавать логины-пароли? Я предлагаю раздавать всем постерам долгоживущие печеньки и сохранять их в базе (может быть можно и без базы обойтись с использованием какого-нибудь навороченного шифрования). После включения огораживания всем у кого есть печеньки при заходе на борду можно генерировать и выводить логин/пароль, с помощью которого пользователи могли бы зайти с других устройств. Для тех, у кого нет печенек, можно сделать премод. Будет что-то вроде жалоб, которые есть сейчас. Единственная проблема - пользователи должны видеть собственные посты на премодерации, а в сгенерированном hmtl треда этих постов быть не должно. Эти посты можно было бы подгружать Аяксом. У нас уже есть код для предпросмотра поста по ссылке, можно будет его приспособить для постов на премодерации. У пользователя, который отправил пост на премодерацию, будет сохраняться специальная печенька, и такой аякс будет отправляться только если она есть, то есть пользователи, которым посты на премоде не нужны, слать лишние запросы не будут.
No. 25851  
>>25843

Я, в свою очередь, упомяну дополнительные аргументы >>/b/168702 в пользу одной из идей >>/b/168697.
No. 25852  
>>25851
Там только в настройка досок поменять Максимальный размер изображения с 5120000 на 5242880 и будет работать.
No. 25856  
А на сервере установлено расширение php-intl? Проверить можно с помощью php -m | grep intl Это чтобы выводить месяцы на русском в родительном падеже без велосипедов. Установливается с помощью sudo apt-get install php-intl
No. 25860  
>>25844
>Может быть лучше сделать ещё один тип пользователей для этих целей?
Это всё звучит как костыли на костылях. Особенно премодерация. У нас всё равно уже есть эти неиспользуемые випы, так почему бы просто не доработать их?
>И как раздавать логины-пароли?
Да хоть через предупреждения, лол.

>>25856
А зачем нам нужны месяцы в родительном падеже?
No. 25861  
>>25860
>У нас всё равно уже есть эти неиспользуемые випы, так почему бы просто не доработать их?
Випы всё равно по сути не будут использоваться, даже если через них всё делать. Модпостинг им нужно будет полностью октлючить, доступ в админку - дать. И концептуально это не то.
>Да хоть через предупреждения, лол.
С предупреждениями возникнет куча проблем. Во-первых, нужно будет добавлять функционал для массовых предупреждений, потому что IP в базе лежат зашифрованные, и вручную их селектом не достанешь, и добавлять предупреждения по одному долго, прописывать в ручную логин/пароль не реально, и ещё нужно решить за какой срок брать пользователей. Но это ещё просто новый функционал - не так страшно. Во-вторых, если огораживание будет отключено, предупреждения останутся, нужно думать, что с ними делать. В-третьих, после просмотра предупреждение пропадёт, и если пользователь не скопипастил куда-то логин/пароль, не понятно как ему их восстанавливать. В-четвёртных, самая большая проблема, как раздавать логины/пароли новым пользователям/IP. По запросу в /d/? А если /d/ тоже придётся огораживать? Премод выглядит надёжнее.
>А зачем нам нужны месяцы в родительном падеже?
Чтобы красивенько выдавать дату создания предупреждения, а не так как сейчас: "Предупреждение было создано December 8, 2021, 9:47 am". Ну да, можно поменять на "Дата создания предупреждения:", но с полным именем месяца было бы лучше, по-моему. intl это же, вроде бы, основная вещь, может быть ещё зачем-то понадобится. Оно не установлено, да?
No. 25862  
>>25860
>Особенно премодерация.
А почему премодерация - костыли? На Доброчане разве не так всё работало долгое время?
No. 25865  
12345697.png - (321.73KB, 898×641)
25865
Потестировал предупреждения.
1. При выносе предупреждения оно автоматически удаляет сообщение, хотя никто не просил этого делать. Предупреждаемые сообщения не обязательно подлежат удалению. Это лучше отдельной опцией.
2. На странице предупреждения можно было бы автоматически указывать, за какое сообщение предупредили автора. В модлоге, наверное, тоже.
3. На оной странице нет навигационного меню. Если у нас с банами такая же лабуда, то надо добавить и туда.
Потестировал локализацию.
1. Плашка скрытых нитей не переведена, было бы логично тогда доделать и её.
No. 25873  
Забавный баг - у картинки переворачивается превью: http://410chan.org/b/res/169583.html#169707
No. 25881  
Если поведение >>25873 будет признано проблемою (въ соѿвѣтствіи со вторым из изложенных в сообщении >>20450 принципов), то тогда рекомендую добавить параметр https://imagemagick.org/script/command-line-options.php#auto-orient в ту командную строку, которою ImageMagick вызывается.
No. 25901  
Мне тут подсказывают, что php-intl у нас есть.
No. 25902  
Ошибка при постинге изображений: https://pastebin.com/Z7jygjny

Чаще бывает с мобильного, но в этот раз я поймал с десктопа.
Вот изображение: https://disk.yandex.ru/i/hKCqKCDmIwLzwg
No. 25903  
>>25902
Получается, имейджмеджик сломался и не смог в thumbnail, оттого и размеры пустые?
No. 25906  
Ichigo_Mashimaro_OVA-2.png - (308.17KB, 1024×576)
25906
>>25902
У меня скачанная с яндекс.диска PNG спокойно запостилась.
У яндекса может быть предобработка изображений и для скачивания с него нужны скрипты.
Лучше https://catbox.moe для картинок пользоваться.
No. 25907  
>>25903
Получается, что ошибка возникает, если ту PNGшку запихивать с JPG расширением.
No. 25921  
Да.
No. 25923  
bell.png - (10.71KB, 400×400)
25923
У меня вопрос на милионн, зачем сайту яндекс статистика?
Кроменя бесполезной информации вроде собирания юзер агента посетителей и создавания красивых графиков постов за час/день есть какая-то функция?
Последнее кстати собирают все открытые движки что я видел, правда без красивых графиков. И иногда не видны в интерфейсе.
No. 25926  
Я смотрю, исправление ссылок при объединении нитей сломалось.
Автор ещё тут хоть?
No. 25927  
>>25926
При объединении, или при переносе?
No. 25928  
>>25927
Объединении. Причём раньше работало.
Пример: >>/b/157239, начиная с >>/b/173234
No. 25929  
>>25928
Ага, вижу, превью работает корректно, а сама ссылка при этом неправильная, со старой нитью.
No. 25930  
>>25926
>>25929
Починил и создал пулреквест.
Оказалось настолько тривиально, что даже стыдно за такое.
No. 25935  
В пулл-реквесте с предупреждениями автор добавил экранирование ХТМЛ для модлога, но не учёл, что таким образом ломаются ссылки для просмотра удалённых сообщений. Мы пока вернули эту строку, дабы ссылки работали, но настоятельно рекомендуем найти способ починки этой лабуды, ибо оно не позволяет использовать ХТМЛ в предупреждениях.
No. 26068  
>>26066
Удалить сообщение []
Пароль  
[Mod]