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

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

Предыдущая нить: >>20450
255 сообщений пропущено. Показаны 50 последних сообщений
No. 27613  
error.webp - (443.73KB, 1735×1112)
27613
キタ━━━(゚∀゚)━━━!!
No. 27615  
>>27611
Как-то плашка посреди формы не очень смотрится, особенно когда большая. И моноширинный шрифт не нужен.
Наверное, лучше действительно исчезающую фитюльку где-нибудь сбоку показывать.

>>27612
При отправке можно просто заменять текст кнопки «Отправить» на «Отправка…», мне кажется. Или обработка, проверка и т.п.
No. 27616  
115718427.jpg - (909.27KB, 849×1200)
27616
Просто пришел сюда написать, что новый счетчик это офигительно удобно, оказывается, в наших медленнореалиях, сразу видно когда написали на не очень активную доску, сразу видно если где-то внезапный движ. Круто!
No. 27619  
>>27604

> kusaba.js вообще не работает на браузерах старше где-то 2017-ого

Ну вот так как к нам ожидаемо заходят нѣкоторые господа даже с браузерами, в которых WebP ещё не открывается (>>27607), то слѣдовало замѣсто fetch использовать https://api.jquery.com/jQuery.ajax/ и тѣмъ тотчас же избавить себя заодно и от необходимости употребления как асинхронных функций, так и высокоуровневого ожидания (top-level await).

>>27606

> Соус говорит не заморачиваться

Господин Соусов в сообщении >>27599 высказался в том смысле, что если отвалится один только показ счётчиков, то тогда и пёс с ним, потому что счётчики — это украшательство, без которого можно прожить. Но я не думаю, что он приуготовил себя заодно и к отпадению работоспособности всего джаваскрипта на всём сайте за счёт того, что какой-нибудь старый браузер увидит непонятное ему словечко «async» или «await» и начнёт сходить с ума.

>>27604

> на что менять mutex?

Сейчас этот мьютэкс предотвращает каждой второй-третьей вкладке сайта (открытой параллельно с первою) возможность дѣлать чтó? — если одну только возможность пополлить JSON (как это вроде бы предполагает сообщение >>27588), то тогда, я думаю, мы можем просто-напросто понадѣяться на то, что сёрвер невозбранно переживёт кратный рост траффика во всѣхъ случаях отсутствия объекта «navigator.locks» на стороне клиента.
No. 27620  
>>27619
В случае отсутствия объекта navigator.locks не будет за-scedule’н и очередной polling json’а. Таким образом, там, где такого объекта нет, обновление счётчиков наступит только по обновлению вкладки или по появлению у неё visibility. Наверное, стоит попробовать запилить-таки polling в отдельном файле-скрипте, который регистрировать как ServiceWorker, и который для всех вкладок вроде будет общий, тогда и необходимость изолировать polling до одной вкладки отпадёт.

> даже с браузерами, в которых WebP ещё не открывается
Ну, в Firefox’е async/await появился раньше поддержки WebP, а fetch появился на 4 года её раньше. Чтобы пользоваться fetch-ем, async/await не обязателен, но с async/await удобнее писать, а жалоб на сломавшееся что-то не было пока. Но объявился, похоже, пользователь Firefox 88. Попробую как-нибудь сделать polling в ServiceWorker-е, наверное.
No. 27621  
>>27615
> Как-то плашка посреди формы не очень смотрится, особенно когда большая.
Вот что-то такое есть. В текущем примере, по крайней мере. Только, если делать фитюльку где-то с боку, как она должна выглядеть и где с боку её показывать? Я вот не очень представляю пока, хочу увидеть пример.

> При отправке можно просто заменять текст кнопки «Отправить» на «Отправка…»
Пожалуй.
No. 27622  
changed.zip - (31.87KB)
27622
Запилено:
  • Promise chaining вместо async/await;
  • Polling через SharedWorker там, где оно поддерживается: где не поддерживается — например, на мобильном Хроме — поведение polling-а, как сейчас на сайте;
  • Счётчики больше не увеличиваются по отправке собственного поста;
  • Если открыто несколько окон, содержимое счётчиков у них будет меняться одновременно.
>>27588-пост тогда игнорировать.
No. 27623  
changes.txt - (10.03KB)
27623
Изменения от текущего public-а.
No. 27626  
>>27592

> Also, SauceNAO поддерживает WebP. Но не AVIF. Если кто-то решит найти источник запощенного с потерями, ему придётся искать, чем это дело перешакалить. Именно перешакалить, потому что lossless AVIF практически бесполезен. С другой стороны, обычно по имени файла и так понятно, откуда оно есть. Но Google-поиск тоже AVIF не понимает. Ну и ни на одну неFBEшную борду без перешакаливания AVIF с 410 не запостишь, наверное.

С одной стороны, здѣсь проблема в духе курицы и яйцá: кому-то нужно же сдѣлаться первыми, а не то эдак и разработчики https://saucenao.com/ могут сидѣть прямо сейчас и думать «ну зачѣмъ мы будем запускать поиск по AVIF, если поддержки этого формата ещё нѣтъ ни на одной имиджборде — поглядите, даже 410чан ею не обзавёлся». Такого рода рассуждения могут вѣчно ходить по одному и тому же порочному кругу. А чтобы разорвать его, ну почему бы и не нам сдѣлаться первыми.

С другой стороны, ну почему непремѣнно «перешакалить» придётся? — можно же декодировать из AVIF в PNG без внесения дополнительных потерь в изображение, а затѣмъ этот PNG скормить поисковой системе.

С третьей стороны, ну да, перепостить AVIF на другую борду — это проблема. Но и просто ≈пятимегабайтовый файл JPEG (напримѣръ, >>/b/207992) иногда никак нельзя перепостить на другую борду, причём даже если она позволяет постить файлы в формате JPEG — скажем, на борду https://iichan.hk/b/ не получится оттого, что она принимает до трёх мегабайтов. Но мы не закрыли лицо руками в непреоборимом отчаянии — и не отказалися от пятимегабайтовости. И это правильно. Так что и невозможность перепостить AVIF мы переживём.

С четвёртой стороны, ну да, гуглопоиск не принимает AVIF. Ну дык гуглоперевод даже и WebP не принимает (скриншот прилагаю). Но мы не закрыли лицо руками в непреоборимом отчаянии — и не отказалися от поддержки WebP. И это правильно. Так что и невозможность гуглообработки AVIF мы переживём.

Кто будет прикладывать AVIF к своему сообщению, тот ужé должен продѣлывать это с полным сознанием того, что картинка не будет видною в старых браузерах. По сравнению с этим дополнительные трудности перепощивания и визуальнаго поиска не так уж значительны.

>>27607

Пожалуйста, сообщите название браузера и номер его версии.

>>27620

> Ну, в Firefox’е async/await появился раньше поддержки WebP, а fetch появился на 4 года её раньше. Чтобы пользоваться fetch-ем, async/await не обязателен, но с async/await удобнее писать, а жалоб на сломавшееся что-то не было пока.

Да, это правда! — причём не только в Файерфоксе, но также и в Safari (трудностями в котором прежде оправдывалася задержка с внедрением того же WebP) мы видим асинхронные функции появившимися в 2017 году, а возможность fetch раньше них. Къ нынѣшнему времени браузеры должны быть новѣе тогдашних.

Я наивно думал, что проблемы могут возникать ещё и у таких пользователей, которые по техническим причинам (от непреоборимой привязанности къ нѣкоторому расширению Файерфокса) прекратили обновлять браузер опосля появления движка Firefox Quantum (произошедшаго в ноябре 2017 г., то есть как бы къ столѣтію россійской революціи), а вмѣсто того пересѣли на Pale Moon или ещё куда. К несчастью, такие пользователи ещё есть среди наших читателей и не раз с гордостью заявляли о себѣ в качестве способных год за годом обходиться без новинок браузера Mozilla Firefox. (Напримѣръ, https://410chan.org/b/arch/res/158687.html#159005 в 2021 году.)

Но теперь я возобновил в памяти информацию со страницы https://en.wikipedia.org/wiki/Firefox_version_history#Firefox_52_through_59 и ясно вижу, что за прошедшие годы я слегка подзабыл (как страшный сон), что Firefox Quantum — это версия 57, так что предшествующая версия (послѣдняя доквантумная) — это версия 56, а предшествующая ESR-версия (для поклонников обновлений безопасности) — это версия 52. Слѣдовательно, даже появление поддержки асинхронных функций в Firefox 52 не прошло мимо таких пользователей (хотя и едва-едва успѣло состояться одновременно с выходом очередной ESR-версии!), а уж тѣмъ болѣе появление нормального fetch в Firefox 40 мимо них не прошло.

Признавая свою неправоту, снимаю и прежние возражения против использования async и await и fetch. Дополнительно в явном виде выражаю сожаление насчёт того, что принудил резолвить промисы.
No. 27630  
top0.webp - (439.38KB, 1735×1094)
27630
Появились ли какие-нибудь идеи по дизайну плашки?

Как вариант, можно в div, где сейчас topmenu писать.
No. 27631  
top1.webp - (470.93KB, 1738×1117)
27631
キタ━━━(゚∀゚)━━━!!
No. 27632  
postform.webp - (441.50KB, 1718×1103)
27632
Или в div над постформой, затирая replymode или нет.
No. 27633  
postform1.png - (528.23KB, 1736×1111)
27633
>>27632
С формой быстрого ответа можно сделать что-то похожее, но тогда надо придумать, как ограничить ширину tr-а, если сообщение об ошибке длинное.
No. 27634  
min-width.webp - (331.09KB, 1701×779)
27634
> ограничить ширину tr-а, если сообщение об ошибке длинное
А, через width:min-content.
No. 27635  
12345681.png - (544.36KB, 1158×645)
27635
>>27630
Так там какие-то проблемы есть с тем, чтобы просто прямоугольная фитюлька в углу (например, верхнем правом) выплывала, а потом уплывала обратно через несколько секунд? >>27631 бы тоже покатило, но мы в теории можем когда-нибудь сделать настраиваемую прилипчивость верхнего меню, а эта штука всегда должна быть видна.

В целом, можно не торопиться: работа, видимо, опять встала. Она шла бы быстрее, если бы вы осилили зарегистрироваться в репозитории, лол.
No. 27636  
err.webp - (438.82KB, 1632×1133)
27636
>>27635
Технически нет. Но хочется увидеть пример, чтобы понять внешний вид и её оптимальные размеры относительно остальных элементов.

Мои проблемы с фитюлькой в правом верхнем углу:
  1. Ассоциация с please accept cookies, пусть такое обычно в левый нижний угол пихают. Topmenu-вариант больше похож на статусную строку, хотя статус обычно снизу;
  2. Сообщение релевантное содержимому формы постинга может далековато от неё оказаться. Может понадобиться переводить взгляд с левого нижнего угла экрана, где форма быстрого ответа, на противоположный. Более проблематично на большом мониторе. У topmenu-решения та же проблема, но оно во всю ширь экрана/браузера, сразу не заметить сложнее;
  3. У нас сейчас документ идёт строка за строкой, кроме когда пользователь решает перетащить форму постинга, и кроме div-а с избранными нитями (Которым кто-то пользуется?). Теряется alignment.
> но мы в теории можем когда-нибудь сделать настраиваемую прилипчивость верхнего меню, а эта штука всегда должна быть видна
Проблем нет совместить, если потом когда-нибудь делать.

BTW, вариант для быстрого ответа, как на картинке, точно совсем не подходит?
No. 27674  
>>27636
Уведомления в интерфейсах обычно вылазят поверх содержимого, а не встраиваются в него, меняя размеры объектов. Тем более, что внутри нитей содержимое форм дублируется, и нет никакого смысла к конкретной форме что-то прилеплять.
>Ассоциация с please accept cookies, пусть такое обычно в левый нижний угол пихают.
Эти штуки и во всю ширину бывают. В любом случае, с ними пользователь должен взаимодействовать, а наше уведомление должно само появляться и пропадать через некоторое время (впрочем, кнопку закрытия можно и приделать).
No. 27677  
120860927_p0.jpg - (96.12KB, 1024×1024)
27677
>>27674
Раз >>27631-версия подходит, сделаю её тогда. Скорее всего, patch будет где-то в конце августа.

> внутри нитей содержимое форм дублируется
Кажется, там дублируется только содержимое input-ов и textarea.
> кнопку закрытия можно и приделать
OK.
No. 27697  
changed.zip - (72.11KB)
27697
Запилено >>27631 в ≈>>27593 виде. Можно тестировать. Стилеспецифичный CSS statusbar'а только для Умночана написан.
No. 27698  
patch.txt - (16.49KB)
27698
キタ━━━(゚∀゚)━━━!!
No. 27699  
screenshot.webp - (142.79KB, 1280×1080)
27699
>>27592

> Но Google-поиск тоже AVIF не понимает.

С прошлой пятницы (30 августа) начал понимать: https://developers.google.com/search/blog/2024/08/happy-avifriday

(Скриншот прилагаю.)
No. 27731  
kusaba_js.txt - (93.26KB)
27731
В lib/javascript/kusaba.js на 573-ей заменить
fetch('/board.php?' + board + "&fetch-call=1", {

На
fetch('/board.php?' + e.target.form.elements.board.value + "&fetch-call=1", {


Sorry.
No. 27732  
>>27731
К чему это хоть?
No. 27733  
>>27732
К >>27697.
No. 27746  
>>27569

> даже пулреквеста в репозитории нет, чтобы по-быстрому можно было накатить.

Теперь есть: https://codeberg.org/FBE410/fbe-410/pulls/38
No. 27749  
Дополнительно предупреждаю ещё, что перед накатыванием пуллреквеста >>27746 неплохо бы провѣрить ещё разок, была ли собрана новая версия PHP (по умолчанию) таким образом, чтобы у ней в GD работали функции imagecreatefromavif и imageavif.

А не то, мало ли, вдруг окажется, что как раз на поддержке AVIF и сэкономили. И тогда упсъ.
No. 27750  
Документация по адресу https://www.php.net/manual/en/image.installation.php говорит нам, что для того потребным оказывается параметр «--with-avif» при конфигурировании сборки PHP.

Словосочетание «по умолчанию» в сообщении >>27749 означало, что я считаю (предположительно) версию PHP на сёрвере поставленною из такого готового пакета, при сборке которого параметр поддержки AVIF был уж включённым, если сборщики пакета знали своё дѣло.
No. 27753  
Что ж, давайте вернёмся к отказу от фрейма по умолчанию, и подумаем, что можно засунуть на главную кроме новостей (кстати, с ними связана задача https://codeberg.org/FBE410/fbe-410/issues/14 ) и списка досок.
Какие-то избранные картинки по типу соседнего сайта у нас, как мне кажется, не покатят по очевидным причинам. Что там ещё может быть? Наша скорбная статистика активности?
No. 27754  
64208125.jpg - (850.66KB, 1200×732)
27754
>>27753
Избранные посты, например, свежее из Онгоинг-треда? Рекомендованные нити, как-то недавнее Тестирование микрофона, Витрина Супермаркета, Унтара-кантара или нити Общих вопросов? "Этот день в чаносфере" со ссылкой на Нубтайп-вики? Цитаты?
No. 27755  
Наверное не стоит забывать и про кнопку "Оплатить проезд"
No. 27756  
8b36967c7f437900635ee6adbdcf388b.jpg - (713.43KB, 1680×1050)
27756
>>27754
Это та же лабуда, что и избранные картинки. У нас на сайте не так много контента и активности, чтобы такое делать.
Была ещё старая идея мутить что-то ко дням рождения анимешных персонажей, которую можно было бы использовать тут, но тоже как-то сомнительно.
No. 27757  
123113844.jpg - (568.75KB, 1200×736)
27757
>>27756
>У нас на сайте не так много контента и активности, чтобы такое делать.
Вот кстати, у нас может быть не очень много контента и активности сейчас, но достаточно контента в архиве. Может было бы интересно в доступной форме, без необходимости вручную ходить по файлам, показывать что-то из архивных нитей? Технически очень даже реализуемо.

И еще, а насколько фантастично разместить на главной что-нибудь интерактивное, например какую-нибудь не очень сложную, но вовлекающую в сообщество коллективную игру для пассажиров?

Что-нибудь относительно простое, хтмлное, но веселое и главное в близкой тематике? Можно даже какой-то отложенный мультиплеер, где один ход делает любой пассажир, а один ход - кто-то из Супермаркета. Слишком круто для нас?
No. 27758  
Возможно даже что-то во что можно играть через постинг в специальную нить, и на главной отображать собственно состояние игрового поля, относительно результатов парсинга этой нити
No. 27759  
Соусу по поводу https://codeberg.org/FBE410/fbe-410/issues/33#issuecomment-2370914: будет, но чуть позже. Жив, но сейчас неотложные дела, не имеют даже возможности войти в аккаунт на codeberg.

И этот issue не про документацию, а про переписывание всего движка на использование escape_sql и другие задачи. О таком issue просил Якуй (подробности и ссылки см. в тексте issue).
No. 27760  
>>27757
Я вообще хотел бы что-то простое и автоматическое. Поэтому и предложил статистику. Главная — не то, чтобы сильно нужная страница на чане, на неё мало кто ходит из завсегдатаев, и удерживать на ней новых людей тоже смысла нет, чтобы там интерактивы мутить какие-то.

>>27759
Ок. Удачи с делами. Документация нужна для того, чтобы другие разработчики понимали, что происходит.
No. 27761  
>>27760
Так а как тогда насчет ОП-поста случайной нити из архива на главной, с указанием даты и ссылкой на архив? Слишком скучно?

Это мне кажется, и автоматизируется, и не должно быть слишком тяжело, хотя конечно придется HTML кусать на стороне сервера.
No. 27762  
DmW4txiVAAAWFXp.jpg - (91.58KB, 700×1084)
27762
>>27761
Во-первых, действительно надо ХТМЛ дёргать, что не очень. Во-вторых, а зачем? В архивах всякое от балды лежит, а не избранная коллекция, лол.
No. 27763  
114316446.jpg - (656.78KB, 847×1200)
27763
>>27756
>Была ещё старая идея мутить что-то ко дням рождения анимешных персонажей, которую можно было бы использовать тут, но тоже как-то сомнительно.

А что если сделать это с небольшим твистом?
1. Добавляем массив персонажей с их днями рождения
2. Пишем скрипт, который от текущей даты находит ближайший день рождения
3. Выводим где-нибудь на главной обратный отсчет "До Дня Рождения Юи Хирасавы 2 дня 11 часов 59 минут 10 секунд", с портретом
4. В день рождения выводим короткое поздравление и приглашаем пассажиров отпраздновать в /a/ или /ts/, в зависимости
5. Если дни рождения совпадают, или через день, можно даже устраивать мультименины

Вроде бы и просто, и не совсем пресно.
No. 27764  
>>27763
Я думал просто нарисовать картинки и вывешивать где-нибудь на день.
Но во-первых, я сделаю подборку на своих предпочтениях, и кто-то будет недоволен, что его любимых персонажей не поставили, лол. Хотя даже по своей подборке я не вполне уверен, какие лучше критерии использовать.
Во-вторых, какие-то отсчёты и нарочитый интерактив в этой затее не нужны, мне кажется. Даты могут подряд идти, а отмечать не факт, что кто-то будет (как на соседнем сайте всем плевать на смену имён).
No. 27765  
Pixiv 2043993 12232836.jpg - (70.02KB, 480×800)
27765
>>27764
Моя имха, по собственному экспириенсу. У меня вот, что на Ычан, что на Автобус, что на некоторых других форумах, стоят закладки и они ведут не на главную, а сразу в часто посещаемый и любимый раздел. Что там на главной, я годами не вижу. А вот новые посетители, скорее всего, зайдут на главную, если не из поиска в гугле по конкретной теме. Потому, мне кажется, там должна быть ещё инфа актуальная и полезная для новичков.
No. 27766  
>>27765
Информация там есть уже. Даже ссылка на вики, лол.
No. 27767  
111687480.jpg - (1.05MB, 853×1200)
27767
>>27764
>кто-то будет недоволен, что его любимых персонажей не поставили
>я не вполне уверен, какие лучше критерии использовать
А если открыть реквесты на пиксиве, и вдобавок к своим картинкам, за пожертвования в Супермаркет рисовать картинки с любимыми персонажами пассажиров?

Ну и раз уж зашел разговор про пожертвования, может попробовать устанавливать какую-то прогрессирующую цель сбора (уровень 1 - продление доменов, уровень 2 - хостинг, уровень 3 - связь, уровень 4 - файлы 10 Мб), и затем на главной показывать прогрессбар?

Или это все не в нашем духе?
No. 27769  
>>27767
>и вдобавок к своим картинкам, за пожертвования в Супермаркет рисовать картинки с любимыми персонажами пассажиров
Это уже коммерческие заказы какие-то, я не готов таким заниматься.
>может попробовать устанавливать какую-то прогрессирующую цель сбора
Я думал сделать полоску с максимальной на данный момент суммой (за 2018 год, кажется), но когда я изучал этот вопрос, там по-простому нельзя было сделать, и я пока забил.
Но это для Соус.нета всё, зачем оно тут? Тут ссылки бы хватило.
No. 27771  
>>27769
Кажется, пока идеи у меня закончились ._.
No. 27773  
https://sushigirl.us/
Как тебе сушичановская главная, Соус?
No. 27774  
>>27773
Просто список досок, из которого вообще непонятно, что за сайт? Не очень, если честно.
No. 27776  
>>27774
>вообще непонятно, что за сайт
Ну почему вообще, сразу понятно что виабу!
No. 27777  
119490826_p0.jpg - (814.43KB, 756×1007)
27777
По поводу главной, кроме уже сказанного, пока ничего предложить не могу, но есть пара предложений по улучшению механизма отправки.

  1. Вместо Отправка... выводить Отправка... 34%, то бишь выводить прогресс;
  2. Сделать предварительную проверку на клиенте длины поста и прочего, что не требует пересылки всего сообщения. Проверяем пост на соответствие сохранённому в local storage boards.json или boardname/settings.json. Если соответствует, отправляем на сервер. Если не соответствует, на всякий случай скачиваем свежий boards.json, проверяем, и если и свежему boards.json пост не соответствует, выводим ошибку. Если соответствует, отправляем на сервер.

No. 27778  
123291878.jpg - (1.49MB, 1200×1200)
27778
Соус, а как тебе идея на главную ретранслировать свой твиттер, чтобы люди без аккаунта были в курсе происходящих вещей без регистрации и смс?
No. 27779  
>>27778
Чтобы люди были в курсе всех Fgsfds’ов, надо устроить бложик админа на главной, лол.
Удалить сообщение []
Пароль  
[Mod]