>> |
No.12754
Файл: Снимок.png -(136 KB, 1406x927, Снимок.png)
+ Добавил возможность определения реального IP для непрозрачных прокси (тех, которые ставят заголовки X-Forwarded-For и X-Client-IP). Правда, я таких не нашел, но тем не менее. Охуительные механизмы проверки, типа попыток подключения к клиенту по порту 8080, реализовывать не стал: бред сивой кобылы какой-то, хочет человек - пусть сидит через прокси, всегда можно IP внести в черный список.
+ Весь JS-код завернул в нэймспейс, поудалял лишние файлы, слил все в три основных (общеупотребительный, для досок/тредов и отдельный только для тредов, чтобы другие страницы не засорять).
+ Реализовал механизм "дедупликации", как его назвал один анон (хоть это и не совсем точное название). При выборе файла вычисляется его хеш, отправляется запрос на сервер с целью узнать, есть ли там уже такой файл. Если есть, input очищается, а в скрытый input добавляется хеш (работает и для нескольких файлов, само собой). На клиенте по хешу находится соответствующий файл и копируется с изменением названия. Дедупликация получается только для юзера, но лучше лишний мегабайт занимаемого места, чем переусложнение логики.
+ Исправил вставку ссылок на пост. Теперь фокус передается текстовому полю, а вставка осуществляется не в оба поля, а только в то, которое открыто. Также после ссылки добавляется пустая строка. Разумеется, если оба поля ответа закрыты, тогда уж вставляется в оба.
+ Поправил отображение кнопок на превьюхах постов (те, которые отображаются при наведении на ссылку).
+ Добавил возможность премодерации. Не пугайтесь, премодерирует тот, кто отправил пост, а не мочератор. Премодерируемый пост будет виден только тому, кто его оставил (ну и моче/админу, само собой). Включается установкой галки внизу. Для этого надо залогиниться (об этом отдельно ниже). При редактировании (кнопка справа от поста), когда юзер наконец созреет представить общественности свой высер, надо убрать галку. После того, как пост будет отредактирован со снятой галкой, больше его редактировать станет нельзя.
+ Добавил кнопку для скачивания всех картинок из треда. Нужно для этого зайти в тред, тогда кнопка справа от ОП-поста появится. Может, в дальнейшем сделаю, чтобы в тред не надо было заходить.
+ Сделал чтоб неактивная вкладка с тредом начинала мигать иконкой, если там появились новые посты (работает, очевидно, если включено автообновление треда).
+ Сделал чтоб можно было переключать стили (пока, правда, стиль один, да и тот не идеальный, но тем не менее). Заодно загнал все стили в один файл. Глупо было ради экономии 1-2 КБ раздристывать CSS на кучу файлов.
+ Добавил кнопки поиска по картинке. Как здесь.
Ну и малоинтересные технические детали:
+ Добавил возможность для админа постить голый HTML (включается галкой). Удобно для оформления прикрепленных тредов, например.
+ Для черного списка сделал возможным указывать IP при помощи Wildcard. Возможно, надо было лучше диапазоны сделать, ну да ладно, все равно не пользуюсь им.
+ Добавил список IP, запросы с которых не нужно логгировать. 192.168.0.2 (рабочий пека) и 192.168.1.* (вафля) добавил, например, и сразу стало чище.
+ Добавил возможность редактировать помимо текста поста еще и тему, мыло и имя.
Теперь по поводу залогинивания. Тут (или не тут, не помню уже) кто-то возмущался по этому поводу. Так вот. Логин - это вам не регистрация. Сервер никакой инфы при этом не хранит. Логин записывает введенное слово в виде хеша и передает на сервер при запросах как cookie. С помощью этого происходит идентификация, можно не вводить пароль для постов и можно редактировать перемодерируемое сообщение. Вот так. Никаких трипкодов и прочей мути при этом не отображается. Можно, конечно, соответствующую галку поставить, и трип появится, но никто не заставляет. Регистрация с занесением в базу тоже предусмотрена, но продавать ее или регистрировать на халяву я не буду. Это функция исключительно для идентификации админа и мочераторов, буде таковые появятся, что, к слову, сомнительно. И еще раз подчеркну, что в любом случае, пока не поставлена галка, независимо от логина, регистрации и положения звезд, ваши посты ничем не отличаются от других.
|