[WT] [Архив]  [Поиск] Главная Управление
[Совместно с Ычаном]
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]
Ответ в нить
Имя
Animapcha image [@] [?]
Тема   ( ответ в 17371)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаются файлы типов 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, OGG, PDF, PNG, PSD, RAR, SVG, SWF, TXT, XCF, ZIP размером до 10000 кБ.
  • Ныне 2974 unique user posts. Посмотреть каталог
  • Максимальное количество бампов нити: 500
150682259759.jpg-(84.21KB, 960×720, 1258163340905.jpg)
17371
No. 17371 watch    
Давайте попробуем, что ли.

JS у нас по-прежнему ковырять некому, но хотелось бы доработать местную функцию разворота картинок. Сейчас она просто разворачивает изображение целиком без учёта размера окна браузера. Соответственно, требуется доработать её так, чтобы ширина окна учитывалась.
Скрипт лежит в http://410chan.org/lib/javascript/kusaba.js

Да, я в курсе, что все привыкли к тому, что для разворота надо нажимать на картинку, а не ссылку над ней (как у нас сейчас). Если скрипт научится учитывать ширину окна, это можно будет переделать.
Развернуть все изображения
No. 17373    
Если что, то искомая функция называется function expandimg(I, H, F, C, G, E, A)

>>17371
Одним из самых простых вариантов будет просто добавить аттрибут maxWidth, используя один из существующих элементов для референса. Например, в своём предложении для ычана, я брал текущую ширину первого поста, и работал от неё:


function iithumbresolvemaxwidth() {
  //Это будет первый пост, и на бордах он обычно по полной доступной ширине
  var referenceelement = document.getElementsByTagName('blockquote')[0];
  //Если мы первый пост нашли, то забираем его ширину
  //Ноль возвращается, чтобы можно было определить, удачно мы разрезолвили ширину, или нет.
  var resolvedmaxwidth = referenceelement ? referenceelement.clientWidth : 0;
  return resolvedmaxwidth;
}

Если подобное решение подходит, могу встроить его в наши текущие скрипты.

Хотя, конечно, у нас сейчас движок все параметры большой картинки забивает железно на этапе генерации страницы (именно поэтому у функции такая сигнатура) и поверх этого maxWidth еще делать это кайнда война скриптов.
No. 17374    
>>17371
Впрочем, если мы хотим открывать картинку по нажатию на тумбнейл, то мы вообще можем просто применить к себе скрипт-победитель для ычана, т.к. там они почти полностю автономные, а на нажатие на картинку у нас сейчас ничего не висит.
No. 17375    
15068881657.zip-(666.57KB, 410chan_expand_images.zip)
17375
>>17371
Адаптировал вам скрипт с ычана хоть мне и не очень нравится как он сделан, и добавил пример на базе текущего /dev/. Разворот делается по нажатию на картинку, события онклик со ссылок убрал. Скрипт соответствует всем тем же требованиям, что и для ычана, внутри полная и минифицированная версии см. папку extras

Оригинал скрипта для ычана был тут: https://github.com/WagonOfDoubt/iichan-extensions/blob/master/dist/iichan-expand-images.js
No. 17376    
150688942849.jpg-(276.46KB, 500×752, 7200283.jpg)
17376
>>17375
А вы учли, что есть ещё кнопка «Развернуть все изображения», которая появляется в нитях, где много картинок?
No. 17377    
>>17376
Честно говоря, я как-то не замечал её. Сейчас посмотрю как там всё устроено.
No. 17379    
150696121437.zip-(1.36MB, 410chan_expand_images_expand_all_min.zip)
17379
>>17371
>>17376

Вот версия с поддержкой кнопки «Развернуть все изображения», которая разворачивает / сворачивает их. Чтобы кнопка работала, ей нужно дать аттрибут id, соответствующий указанному в константе в скрипте. И убрать у неё её стандартный аттрибут onclick

В примере нить Caturday в /b/
В архиве обычная и минифицированная версии
Предыдушие проблемы с минификацией были связаны с тем, что я дурак и не заметил, что изначальный скрипт - часть проекта в котором уже все таски уже настроены, включая минификацию и эскейпинг
No. 17381    
Что-то по-моему местная разворачивалка идеальная.
А вот в ычанской разворачивалке баг, иногда картинка налезает на текст.
No. 17382    
>>17381
>Сейчас она просто разворачивает изображение целиком без учёта размера окна браузера. Соответственно, требуется доработать её так, чтобы ширина окна учитывалась.

Там основная проблема в том что ширина и высота будущей картинки проставляются с сервера.

Впрочем, можно действительно просто сделать то что просит Соус - добавить в старую функцию выставление максимальных размеров картинке. Наверное, добавлю сюда еще и такой вариант.

Алсо, если можешь воспроизвести баг разворачивалки с ычана, то напиши как это делать, т.е. на какой картинке в какой ситуации оно налезет на текст
No. 17383    
15070629558.png-(1.08MB, 1726×782, Screenshot_2017-10-03_23-31-47.png)
17383
>>17382
Похоже, только в хроме лисоюзеры, молчать.

1. Открываем хром(оперу|иум).
2. Задаем размер окна 868 x 531 (W x H)
3. Заходим в /a/ и нажимаем превьюху.
4. Налезает.

Заметил на мобильнике первый раз.
Может быть там float: left надо?
No. 17384    
>>17383
Возможно, что это еще и только в линуксе. Вижу, что тема уходит под изображение, а не наплывает сверху на него

Если просто раскрыть картинку и уменьшать окно, проблема себя проявит?
No. 17389    
150715120333.zip-(2.04MB, 410chan_expand_images_old.zip)
17389
>>17371
>>17382
Как и обещал, сделал дополнительно версию на базе текущей функции, с использованием трюка из >>17373 Это Ctrl+C Ctrl+V решение. Мне не хотелось устраивать войну скриптов, когда один скрипт проставляет ширину-высоту, а второй удаляет, поэтому я дополнительно раcчитываю макс высоту с учетом аспекта, и вроде все живы

В архиве пример на базе темы Persona 5 в /b/
No. 17393    
Может, такой вопрос лучше в /д, но здесь могут мимодевы объяснить или подтвердить проблему. У меня стабильно какая-то лабуда с посещением автобуса на ведре. Хожу по сайту, захожу в треды, всё ок. Через пару переходов загрузка страниц останавливается, и автобус намертво перестаёт грузиться без сообщений об ошибке. Надо ждать какое-то время. Примерно не скажу сколько, но долго, не несколько минут. Это опера на ведре. Такая проблема только с автобусом замечена. По той же сети на пеке всё хорошо.
No. 17398    
>>17393
Сжатие трафика (прокся) включена? С зарубежных ип замечал тоже такое, отваливается.
No. 17399    
>>17398
Интересная версия, но экономия трафика выключена. Посмотрю ещё из другого браузера и с другой сети.
No. 17405    
>>17398
На лисе на ведре попробовал, когда снова возникли проблемы на опере. То же самое. С временем мог преувеличить, за несколько минут все же проходит.
Проверяю на другой сети, вроде нет проблем.
No. 17407    
Сделал не копипасту с Ычана, но принцип тот же. Технологически и визуально отличий нет.
https://gist.github.com/WagonOfDoubt/84b3bb2182525e083359359170dfb0b6/revisions
См. дифф второй ревизии. В img_global.css добавлен класс .image-fullsize, в kusaba.js переписана только expandimg.
Никаких let, const, и прочей esNext-лабуды нет, оно конечно хорошо, но уж если перепиливать, так вообще все, сейчас хоть смотрится аутентично. Эх, запилить бы свою котобу с маджонгом и булочками.
Должно нормально работать начиная с Chrome 26, Firefox 16, Internet Explorer 10, Opera ?, Safari 7.
Фича не раскрывать на маленьких экранах убрана, так как работает по прежнему через onclick, и return false там перманентный. Какой бы ни было дикостью вешать onclick, этот способ требует наименьших изменений.
Для владельцев черно-белых нокий и прочих утюгов, можно обернуть тело функции expandimg в try...catch, впрочем все равно непонятно как у них остальные функции тогда не падают.
Вариант >>17373 меня не устраивает подходом. Масштабировать картинку по размеру страницы это прямая задача браузера, и проблема эта должна решаться и нормально сейчас решается средствами css, в то время как javascript отвечает за пользовательское взаимодействие, а не рассчитывает по формулам положение каждого элемента на странице. Раньше иного выхода не было, и приходилось делать именно так, но даже поддержка более старых браузеров для меня не перевешивает. К тому же, при таком варианте уже развернутые картинки не масштабируются при изменении размеров окна, в отличие от варианта как на Ычане.
No. 17408    
Кстати,
> <meta name="twitter:card" content="summary">
I see what you did there.
Мета должна быть в <head>, Твиттер все равно это парсит?
И да, разворот картинок нужно обязательно перенести на картинку, на ссылку пальцем попасть невозможно.
Еще есть один фичереквест, требующий мааленького изменения шаблона.
Если в ссылку на картинку
<a href="{$file_path}/src/{$post.file}.{$post.file_type}" onclick="javascript:expandimg('{$post.id}', '{$file_path}/src/{$post.file}.{$post.file_type}', '{$file_path}/thumb/{$post.file}s.{$post.file_type}', '{$post.image_w}', '{$post.image_h}', '{$post.thumb_w}', '{$post.thumb_h}');return false;">

Добавить
{if $post.file_original neq '' && $post.file_original neq $post.file}download="{$post.file_original}.{$post.file_type}"{/if}

Чтобы получилось
<a href="{$file_path}/src/{$post.file}.{$post.file_type}" onclick="javascript:expandimg('{$post.id}', '{$file_path}/src/{$post.file}.{$post.file_type}', '{$file_path}/thumb/{$post.file}s.{$post.file_type}', '{$post.image_w}', '{$post.image_h}', '{$post.thumb_w}', '{$post.thumb_h}');return false;" {if $post.file_original neq '' && $post.file_original neq $post.file}download="{$post.file_original}.{$post.file_type}"{/if}>

То картинки будут скачиваться на компьютер под тем же именем, под которым они заливались, и можно иметь buločka.jpg вместо 123456789.jpg
Более того, я бы отказался от отображения нумерованных имен файлов за ненадобностью, и заменил бы чуть дальше строку
{$post.file}.{$post.file_type}</a>

на
{if $post.file_original neq '' && $post.file_original neq $post.file}{$post.file_original}.{$post.file_type}{else}{$post.file}.{$post.file_type}{/if}</a>

Только эти ссылки скопипасщенны в нескольких местах, как винимум в img_thread.tpl и в img_board_page.tpl
No. 17409    
И в css не помешало бы добавить
.inline-pp, .prettyprint {

    white-space: pre-wrap;
}

No. 17410    
Понапридумывають хѣрню и головы ломають.
.thumb{max-width:100%;height:auto;box-sizing:border-box;margin:0;padding:2px 20px}

No. 17411    
Еще реквест: на странице треда есть группа ссылок
[Назад] [Вся нить] [Первые 100 сообщений] [Последние 50 сообщений]
, их не помешало бы обернуть в div, иначе стилями с ними ничего не сделаешь.
No. 17412    
150746210020.png-(599.22KB, 1158×645, 12345681.png)
17412
>>17408
>Мета должна быть в <head>, Твиттер все равно это парсит?
Я просто сунул туда, куда можно сунуть штатными средствами. «Твиттеру» всё равно. В принципе, надо будет это вообще убрать, оно в таком виде бесполезно.
>То картинки будут скачиваться на компьютер под тем же именем, под которым они заливались
Не нужно.
>как винимум в img_thread.tpl и в img_board_page.tpl
Которых у нас вообще в движке нет.

>>17409
Да, добавлю, когда буду ковырять CSS в следующий раз.
No. 17413    
150747249385.png-(189.01KB, 1349×631, nazad.png)
17413
>>17412
> Не нужно.
А жаль. Это хоть >>17411 можно сделать, а то некрасиво в body текст держать.
No. 17414    
150748862150.png-(8.22KB, 362×180, Untitled.png)
17414
Заодно поделайте что-нибудь со ссылкой «Назад» на форме треда, чтобы та на границу не наезжала.

Можно, например, в шаблоне вместо span с float сделать div с правым text-align.
No. 17415    
А ещё сделайте так, чтобы при наведении курсора на ссылку на пост был какой-то таймаут закрытия разворачивающегося по ссылке поста вместо моментального закрытия при выходе курсора за область ссылки на пост. Чтобы можно было просмотреть цепочку постов.
No. 17416    
Вот, кстати, более насущный фичреквест по поводу шаблонов страницы, болезнь всех ванильных бордодвижков: перенеси прикреплённые кортинки в ОП-постах под лейбл с именем, темой и прочей лабудой, как в обычных постах. Тогда и раскрытие оных будет более правильно выглядеть.
No. 17426    
150784341346.png-(586.80KB, 898×641, 12345697.png)
17426
По скриптам сроков у меня, разумеется, нет.

>>17409 добавил.
>>17414 ждёт своего часа в репозитории.
>>17411 про это я давно знаю, да. Когда-нибудь.
No. 17428    
>>17426
Видели эти версии скриптов?

Ычан-стайл >>17379
410-стайл >>17389
No. 17429    
>>17428
Вот это >>17410 решение самое простое. Никаких скриптов и работает отлично, нечего тут голову ломать.
No. 17434    
150792261956.jpg-(87.55KB, 422×600, c4d7c0338fa92352c6f9eef098fc8867e69df5fc.jpg)
17434
>>17428
Никто пока ничего не смотрел.

>>17429
И в чём его суть, если оно только вёрстку портит и больше ничего не даёт? По крайней мере, при вписывании в CSS всё именно так, возможно, я что-то не так делаю вдруг.
No. 17436    
>>17434
Не знаю, что оно портит, но у меня работает как и требовалось: картинки больше не вылезают за края постов. Результат тот же, что и в >>17407, но не требует правки скриптов. Остается только в шаблонах
onclick
перевесить со ссылки на картинку.
No. 17437    
>>17434
Отвечу ак автор: добавь в конце глобальной цссины или замени маргин на паддинг и добавь остальное. И ещё оно работает только там, где есть цсс3 (кроме Осла, вроде как, потому что они слоупоки и не принимают до конца стандарт). Суть в том, что бокс-сайзинг приказыает параметру ширины учитывать паддинг как часть самого элемента при подсчёте максимальной ширины, из-за чего 100% считается как максимальная ширина кортинки с отступом до полного ухода края поста к краю экрана, опять же с учётом отступов, а параметр высоты уже подстраивает высоту под оригинальные пропорции, чтоб искажений не было. “Сломать” оно могло только на браузерах без поддержки бокс-сайзинга “вываливанием” кортинки за границу поста на сорок пиксолей, которые берутся от отступов (по двадцать с каждой стороны), т.е. если в нормальных браузерах, допустим, 1000 пикселей — ширина кортинки+отступов, то в Осле и древних браузерах — только кортинки.
No. 17477    
Мнѣніе >>17437 вѣрно передаётъ смыслъ правила
box-sizing: border-box
и необходимость его.
No. 17518    
150860023842.jpg-(262.98KB, 563×800, 509b751a4e790f2d07bfc204876f3806e5a980f9.jpg)
17518
>>17414 сделано.

>>17437
Ок, гляну ещё раз, когда будем глядеть.
No. 17524    
По виду реплики >>17477 с неудовольствием вижу, что текст в обратных апострофах не только обёртывается в тег pre, но и попадает на отдельную строку.

Не надо так.
No. 17701    
>>17437

> И ещё оно работает только там, где есть цсс3 (кроме Осла, вроде как, потому что они слоупоки и не принимают до конца стандарт).

По-моему, нѣтъ.

Статья https://developer.mozilla.org/en-US/docs/Web/CSS/box-sizing в настоящее время гласит, что Осёл (ведь имелся в виду Internet Explorer, не правда ли?) понимает «box-sizing: border-box», начиная от версии IE8.

В таком случае в Internet Explorer, как сказано там дальше в MDN, фигово работает вычисление высоты функцией «window.getComputedStyle()»; но так как 410chan её вроде как и не использует вообще нигде, то и не пофигу ли?
No. 17702    
Имею пожелание о доработке интерфейса 410чана, и выскажу.

Сейчас в реплике >>17698 звукопроигрыватель выводится вот каким кодом:

<span style="float: left;">

<embed type="application/x-shockwave-flash" src="/player.swf?playerID=17698&amp;soundFile=/dev/src/151085654446.mp3" width="80" height="15" /></embed></span>


Во-первых, этот код внутренне противоречив, потому что при наличии закрывающего тега «embed» в конце открывающего тега «embed» не нужна косая черта. Кромѣ того, онъ противорѣчитъ и стандарту, въ которомъ¹ сказано, что у тега «embed» нѣтъ закрывающаго тега.

Во-вторых, всѣ современные браузеры достаточно давно (начиная от версий Chrome 3, Firefox 3.5, IE9, Opera 10.5, Safari 3.1, а также во всѣхъ версіяхъ Edge)² понимают тег HTML5 «audio» и отображают на его месте звукопроигрыватель, который внешне более красив, а в употреблении более удобен и функционально развит, чем флэшёвый звукопроигрыватель на 410чанѣ.

В то же время поддержка Flash на всѣхъ сколько-нибудь новых мобильных устройствах отсутствует на протяжении шести лет, будучи отозвана производителем Flash (компанией Adobe) по адресу http://blogs.adobe.com/conversations/2011/11/flash-focus.html 9 ноября 2011 года. Что же касается немобильных устройств, то у их пользователей Flash блокируется и некоторыми блокировщиками рекламы, и даже некоторыми браузерами, да притом ещё и глючит да тормозит.

Принимая вышеизложенное во внимание, прошу администрацию 410чана найти в исходном коде сайта 410чана генератор вышеизложенного кода и переменить его таким образом, чтобы вместо него создавался код звукопроигрывателя HTML5:

<audio style="float: left; margin: 0 1em 1em 0;" src="/dev/src/151085654446.mp3" controls preload="metadata"></audio>


(Единственная переменная часть этого кода — значение атрибута «src»: туда вписывается относительный URL конкретного звукового файла.)

Этакий-то звукопроигрыватель будет куда лучше нынешнего, в том я совершенно уверен и администрацию 410чана спешу заверить — по крайней мере, в случае файлов MP3.

Звукопроигрыватели HTML5 в настоящее время более всего способны воспроизводить MP3. Некоторые другие форматы звуковых файлов имеют³ с этим изрядные проблемы: Ogg Vorbis не слышно в IE и Edge и в Safari (и вообще на iOS), FLAC опережает Ogg Vorbis только в Edge, AAC не слышно в Firefox (если не внутри контейнера MP4, а это изврат), Opus не слышно в IE и во встроенном браузере системы Android.

Будущее принадлежит Opus по мере погибели IE и обновления встроенного браузера в системе Android.

__________

¹ См. https://www.w3.org/TR/html5/embedded-content-0.html#the-embed-element

² Свѣдѣнія о браузерной поддержкѣ audio взяты со страницы https://developer.mozilla.org/en-US/docs/Web/HTML/Element/audio#Browser_compatibility въ MDN.

³ Списокъ проблемъ взятъ на страницѣ https://caniuse.com/#search=audio
No. 17704    
>>17702
Тут история с
alert(req.statusText);
длилась годами: просили закомментировать одну единственную строчку, так она до сих пор там.
No. 17713    
15108878131.png-(804.52KB, 1280×720, 1419959214456.png)
17713
>>17702
Это одна из тех вещей, которая есть, пока не отвалится окончательно.
Никаких планов развивать эту функцию нет. Сама загрузка этих форматов разрешена только в /dev/ в силу специфики раздела, а не для удобного прослушивания музла.

>>17704
Я не лезу в те части движка, принцип работы которых не понимаю. А кроме меня сейчас некому.

>>17410 сунуто в репозиторий.
No. 17727    
151093155630.png-(10.85KB, 120×120, face-palm_1f926.png)
17727
>>17713
No. 17728    
151093267738.jpg-(244.46KB, 700×808, 1359818223014.jpg)
17728
>>17727
Я вот, например, реализацию с тегом вместо флэшь-плеера сунул в репозиторий шесть часов назад, а вы мне жёлтые рожи постите.
Постыдились бы.
No. 17729    
151093362778.png-(10.45KB, 120×120, clapping-hands-sign_emoji-modifier-fitzpatrick-typ.png)
17729
>>17728
No. 17730    
>>17728
Ну вот и молодец. А теперь по случаю сования >>17410 в репозиторий, можно и разворачивание картинки перенести со ссылки с названием на превью. Говорю об этом, если что:
onclick="javascript:expandimg('17662', '/dev/src/151072352512.jpg', '/dev/thumb/151072352512s.jpg', '2369', '2000', '200', '168');return false;"

Не так уж и сложно. Достаточно пройтись поиском "expandimg" по файлам шаблонов и переместить это дело из одного <a> в другой.
No. 17732    
Прямо сейчас в коде этой страницы есть строка «onclick="javacript: request_faptcha('dev');"».

Оттуда надо бы слово «javacript» с последующим двоеточием и пробелом убрать, потому что в атрибутах onчто-то_там URLы не пишут, а сразу код JavaScript нафигачивают.

Строка «onclick="javascript:» (с лишним «javascript:» без опечатки) повторяется сейчас на странице 111 раз.

Оттуда надо бы слово «javascript» с последующим двоеточием убрать.
No. 17733    
>>17732
А еще лучше этот onclick вообще убрать, да куда там...
No. 17744    
151102172495.jpg-(53.75KB, 400×533, f465557e3d0d0d1c58f7b6aa136c0227041fc3b1.jpg)
17744
Отправил >>17410 на тест.
Использование свойства box-sizing приводит к тому, что стандартные превью (200 пикселей) показываются раза в полтора меньше реального размера (но разворачиваются с учётом ширины, да), а картинки меньшего размера (32×32, например) не показываются вообще (и не разворачиваются при нажатии на).
Либо объясняете почему, либо идёте к чертям с этой реализацией, к сожалению.
No. 17745    
>>17744
Абисняю.
Дело в том, что ширина, задоваемая Кусабой, с
box-sizing
будет считаться с отступами от
paddng
. То есть у твоей превьюхи 150 пиксолей, допустим, потому ширина уменьшится на 40 оных из-за отступов по двум бокам в 20 пиксолей, после чего высота автоматически подгоняется под полученную ширину. Собсна, от этого не видно превьюх меньше сорока пиксолей.
Моя вина, звиняйти-с.
По-хорошему, нужно развёрнутой кортинке отдельный класс вешать, но можно и сейчас проблему решить, всего лишь добавив условие, что в ссылка на кортинку, у которой класс
.thumb
, идёт в директорию /src/, то есть на оригинал; превьюхи же будут использовать ванильные маргины без бокс-сайзингов.
.thumb[src*="/src/"]{max-width:100%;height:auto;box-sizing:border-box;margin:0;padding:2px 20px}

No. 17746    
А ещё можно добавить
.inline-pp{display:inline-block;margin:0}
. А то вроде инлайн указан, а он вовсе не инлайн. И вообще в Кусабе вроде как есть отдельно инлайновый код и блочный. Странно, что тут всё инлайновым пишется.

Короче, ещё погляжу, что можно подправить.
No. 17747    
>>17744
Я просто добавил данное решение через stylish, и более месяца пользуясь, ничего подобного не наблюдал. Проблема в приоритетах: данный код устанавливает margin в 0 и добавляет padding, далее css кусабы возвращает свой margin обратно, таким образом оба отступа сохраняются. Нужно либо убрать существующий margin из css, либо добавить этот код в самый конец файла, а не в начало, либо повысить приоритет селектора, написав не 《.thumb》, а《img.thumb》, либо 《body .thumb》, 《a .thumb》и тому подобное. Очевидные вещи, вроде бы.
No. 17748    
151102975081.png-(267B, 16×16, 410.png)
17748
>>17747
Ащета должен был наблюдать. Попробуй потыкать туда-сюда переключатель этого стиля и посмотри на тумбинашки.

Алсо тест.
No. 17749    
151103004130.png-(1.49KB, 32×32, flower-power.png)
17749
>>17745
>.thumb[src*="/src/"]
Это решает проблему превью, но не решает проблему разворота. При развороте они по-прежнему исчезают или уменьшаются.

>>17747
Какой маргин откель оно берёт, если единственный маргин там 0? Туда был внесён класс .thumb ровно такой, какой указан >>17410. Старый .thumb убран. Я понять не могу, что вы пишете вообще.

Вот на этой картинке я тестирую это всё сейчас.
No. 17750    
>>17749
Всё, нашёл правильное решение:
.thumb[src*="/src/"]{max-width:100%;height:auto;width:auto;box-sizing:border-box;margin:0!important;padding:2px 20px}

No. 17751    
>>17750
Ой, точнее, даже так:
.thumb{max-width:100%;height:auto;width:auto;box-sizing:border-box;margin:0!important;padding:2px 20px}

No. 17752    
>>17751
> margin: 0 !important;
Таки значит откуда-то margin таки берется.
Лучше все же не использовать important, а как говорилось, переделать селектор.
No. 17755    
>>17752
Импортант тама для убирания другого маргина.
Правильнее всего было бы, конечно, в img_global.css c 30-й строки поменять
.thumb {border: none;float: left;margin: 2px 20px;}

на
.thumb {border: none;float: left;box-sizing: border-box;max-width: 100%;height: auto;width: auto;padding: 2px 20px;}

No. 17756    
151103189646.jpg-(3.81MB, 2893×4089, 8757161.jpg)
17756
>>17751
Похоже, что это оно.
Когда-нибудь оно дойдёт досюда.
No. 17761    
151103887133.jpg-(62.63KB, 578×767, высадка инопланетного деса.jpg)
17761
>>17728

> Я вот, например, реализацию с тегом вместо флэшь-плеера сунул в репозиторий шесть часов назад, а вы мне жёлтые рожи постите.

> Постыдились бы.

Не постыжусь вовек, потому что вовсе не знал об этом и оттого отреагировал на предшествующее; а предшествующее объективно выглядело как бесперспективняк.

>>17733

> А ещё лучше этот onclick вообще убрать, да куда там...

Исходный код Flower Bus Engine закрыт, но исходный код джаваскрипта его всё же невозбранно виден во браузере, так что теоретически ничто не мешает отпилить http://410chan.org/lib/javascript/kusaba.js и напилить вместо этого такой новый JavaScript с улучшенным управлением событиями, который сам будет обработчики событий навешивать на элементы, так что атрибуты onclick в HTML-коде не понадобятся, и оттого выглядеть он станет, право же, куда чище.

Проект такого переустройства должен будет, разумеется, сопровождаться, окромя джаваскриптовой части, также и инструктивною частью, содержащей указания наподобие «устранить создание атрибута onlick, вызывающего функцию expandimg(), в том месте Flower Bus Engine, которое аналогично строке https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/board-post.class.php#L1086 в Кусабе,¹ и заменить на создание четырёх data-атрибутов таким-то кодом PHP» или «отпилить http://410chan.org/lib/javascript/protoaculous-compressed.js с заменой на такую-то версию jQuery».

На том пути прозреваю два преткновения:

1) Кроме исходного кода джаваскрипта, невозбранно видного во браузере, есть ведь (или теоретически может быть) не видный, который обеспечивает администрирование. Надо так действовать, чтобы и его не порюхать; но нѣтъ увѣренности въ томъ, что возможно дѣйствовать такъ.

2) Точно ли Flower Bus Engine основан на той именно Кусабе, исходники которой по адресу https://github.com/tslocum/kusaba/ лежат? — если он основан на какой-нибудь другой версии Кусабе (быть может, отчасти допиленной, как вот http://kusabax.cultnet.net/ например), то ценность инструктивной части может стремительно падать, так как в коде Flower Bus Engine не отыщется прямого аналога того куска Кусабы, который будет указан со словами «править надо вот тут и вот так».

____________

¹ Отдельно отмечу, что оплошность >>17732 (употребление «javascript:» внутри атрибута onclick) встречается непосредственно в исходном коде у Кусабы, чего я никак не ждал, по умолчанию относя её появление на счёт создателей Flower Bus Engine.
No. 17775    
А зачем в превью постов мусор из заголовка страницы?
No. 17776    
>>17775
Щта.
No. 17783    
>>17776
https://pastebin.com/NUGpK4Fi
No. 17785    
151111003392.jpg-(312.36KB, 532×720, 9901633.jpg)
17785
>>17783
Если оно и так, то я не знаю, почему.
No. 17786    
>>17775
Видимо причина кроется в следующем:
У кусабы/автобуса есть подобие api, позволяющее получить пост по доске, треду, и его номеру. При наведении на >>ссылку запрашивается url вида http://410chan.org/read.php?b=dev&t=17371&p=17776&single
Вот только во время ковыряния шаблонов случилась так, что шаблон, применяемый в read.php, который вообще не должен содержать <head>, <body> и прочее, а выдавать текстом простой div, стал наследоваться от дефолтного шаблона для всех страниц, с метрикой и прочим.
Надо бы пофиксить.
No. 17788    
>>17786
Агась.
От этого, кстати, перестанут ломаться границы между тредами и прочее при появления попапа с превью, так как недобраузеры всё же загружают стили (в частности img_global.css) не из head и получается так, что значения из этого самого глобал.цсс перебивают каштомные от стиля, выбранного в менющке сверху.
No. 17789    
151111143956.jpg-(111.44KB, 600×338, 00000029.jpg)
17789
>>17786
Оно и в самой что ни на есть исходной «Кусабе» 1.0.4 это всё дёргает.
Попробуйте для неё исправление сделать, возможно оно нам подойдёт.
No. 17807    
151112014541.gif-(38.35KB, 553×579, anti-anime.gif)
17807
В дополнение к реплике >>17789 сообщаю, что в репозитории https://github.com/tslocum/kusaba лежит, по-видимому, именно Кусаба версии 1.0.4, что в строчке https://github.com/tslocum/kusaba/blob/master/trunk/config.php#L203 прописано.
No. 17839    
Кстате, как вы смотрите на унификацию стилей, чтоб только цвета перекрашивало?
No. 17841    
151120529174.jpg-(495.82KB, 595×841, 9157815.jpg)
17841
>>17839
На самом деле, я уже начал это готовить потихоньку.
Всякие отступы со временем точно в глобальный стиль переползут.
No. 17865    
151132392835.jpg-(1.08MB, 3508×2480, Вселённые люди.jpg)
17865
Также ещё на 410чане надо отпилить атрибут «type="text/javascript"» ото всех HTML-тегов «script», потому что и без него по умолчанию так, так что он зря только мѣсто занимает в исходном коде.
No. 17869    
151135053190.jpg-(399.05KB, 1024×1024, __uiharu_kazari_to_aru_kagaku_no_railgun_and_to_ar.jpg)
17869
>>17865
Дайте мне ссылку на стандарт, где так сказано.
No. 17871    
>>17869
https://www.w3.org/TR/html5/scripting-1.html#attr-script-type
> The type attribute gives the language of the script or format of the data. If the attribute is present, its value must be a valid MIME type. The charset parameter must not be specified. The default, which is used if the attribute is absent, is "text/javascript".
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script
https://www.w3schools.com/Tags/tag_script.asp
No. 17872    
151135179118.jpg-(470.43KB, 1024×1024, __uiharu_kazari_to_aru_kagaku_no_railgun_and_to_ar.jpg)
17872
>>17870
Ага, если HTML5.
А у нас тут 4.01 пока.
No. 17873    
>>17872
Даже на Netscape 2 это поддерживается.
No. 17874    
>>17872
Тут кстати и HTML 4.01 не валидный.
http://validator.w3.org/check?uri=http://410chan.org/dev/&charset=(detect automatically)&doctype=Inline&group=0
No. 17875    
151135362220.jpg-(572.72KB, 800×800, 54217868_p3.jpg)
17875
>>17874
Спасибо, Капитан.
Хотя вот почему он не видит <head>, я не понять не могу.
No. 17876    
151135394695.jpg-(45.21KB, 400×400, автобусу пиздец.jpg)
17876
>>17872

Этот кусок стандарта HTML5 просто документирует то поведение по умолчанию, которое и до HTML5 было во всѣхъ браузерах во всѣ времена.
No. 17877    
>>17875
Из-за Яндекс.Метрики. Подразумевалось, что этот код надо копипастить в самый конец <body>, а не в начало <head>, о чем свидетельствует даже кусок кода
<noscript><div><img src="https://mc.yandex.ru/watch/38099020" style="position:absolute; left:-9999px;" alt="" /></div></noscript>

Ну а валидатор в первой ошибке сообщает, что это "/>" в конце img по его соображениям закрывает <head>.
No. 17879    
151136738210.png-(2.57MB, 1920×1080, Suzumiya Haruhi no Yuuutsu - a celestial.png)
17879
>>17877

На самомъ дѣлѣ нѣтъ.

Просто тэги «div» и «img» в стандарте прописаны как недолжные для внутренностей «head», поэтому при их появлении валидатор (да и почти каждый браузер, наверное) начинает мысленно подразумевать закрывающий «/head» и открывающий «body» перед ними.
No. 17880    
151136794827.jpg-(128.42KB, 1280×720, anime frame.jpg)
17880
>>17877

Ну а валидатор в первой ошибке сообщает только то, что желающим выпендриваться с XML-подобными «самозакрывающимися» тэгами (с косой чертою на заднице) следует наперёд переключить весь документ в режим XHTML или хотя бы HTML5.

If you expect <FOO /> to be interpreted as an XML-compatible "self-closing" tag, then you need to use XHTML or HTML5.

No. 17903    
Хотел победить горизонтальные скроллбары от кода, но хѣр там.
Нужно отдельный блочный код с максимальной шириной 480px и инлайновый в спане, чтоб не ставило неразрывные пробелы. Или обернуть посты в контейнер-блок, но тогда не будет обтекания постов вокруг кортинки в ОП-посте.
No. 17904    
Взглянул детальнее на глобал_имг.цсс и… о госпадя.
Корочи, если унифицировать, то ориентироваться на Умночан?
Как руки дойдут — скину сразу все стили.
No. 17905    
Подход >>17903 выглядит сложноватым, дорогуша.

Рекомендую для начала попробовать придание свойству https://developer.mozilla.org/en-US/docs/Web/CSS/white-space значения «pre-wrap». Может быть, хватит одного этого.
No. 17910    
>>17905
Ничего сложного. Можно ще <br> добавить между постами и пользовать display:inline-block без опаски, що друг на друга посты полезуть.
Не достаточно. Оно там ужо стоит. А ты почетай про таблицы и как они расширяются в зависимости от ширины содержимого шире ширины экрана. И про перенос неразрывных пробелов, которые используются в <pre> тута.
No. 17918    
151172247015.png-(248.24KB, 500×500, 1356681797821.png)
17918
Новая расширялка картинок поставлена. Онклик пока не перемещался.
И ещё некоторые мелочи.

>>17904
Не бегите впереди паровоза автобуса, это делается и так.
No. 17919    
>>17918
Можно ли .threadlinksbottom вынести за пределы div'а треда?
И обернуть в div верхнюю кнопку "[Назад]"
No. 17920    
>>17919
То же касается кнопки "[Mod]". Она не обернута.
No. 17925    
>>17918
Поздна.
Ещё тебе свг-иконки зделою наконец.
No. 17926    
151174991272.jpg-(2.59KB, 108×50, 2017-11-27 05_29_25.jpg)
17926
>>17925
Пока только ворованные.
Или ну его? Или заморочеца и перерисовать Умночяновские, шоб можно было перекрашивать в любой цвет?
No. 17931    
151179805590.gif-(537.81KB, 500×598, 1456460504951.gif)
17931
>>17925
Вы-то можете делать что угодно, просто это потом окажется никому не нужным.
Исходники у (некоторых) значков и так в SVG, так что опять же рисовать их заново не нужно.
No. 17932    
>>17931
Ууу~ глупая банка!
Не кажи гоп. От зделою — тогда посмотрим.
Так понимаю, речь про те, которые в админбаре и умночановский пнг? Чому тогда других цветов не нарендерил?
No. 17933    
151189152344.png-(116.28KB, 1024×1024, tex_chara_l_567.png)
17933
>>17919
>Можно ли .threadlinksbottom вынести за пределы div'а треда?
Вряд ли.
>И обернуть в div верхнюю кнопку "[Назад]"
Найдите её в оригинальной «Кусабе» 1.0.4 и покажите мне, что там оборачивать. Так быстрее будет.
No. 17935    
>>17933
Предположительно, где-то в конце:
https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/func/pages.php
No. 17936    
151198010329.png-(158.60KB, 1024×1024, tex_chara_l_568.png)
17936
>>17935
>Предположительно
Наверное, не стоит умничать, если вы разбираетесь в этом даже меньше меня (хотя куда уж меньше меня-то, лол?).
В этом файле содержится само формирование ссылок, которое нам не нужно. Перед нами не стоит цель изменить их содержание или концепцию.
Формирование внешнего вида доски содержится в файле /inc/classes/board-post.class.php. Именно там надо смотреть, куда впихнуть условный <div class="threadlinkstop">. Мне это надо знать точно, потому что с нижними ссылками было проще, ибо они уже были обёрнуты в <span>, который и был мной переделан на <div>.
Верхние не обёрнуты ни во что, и именно эту проблему мы хотим устранить.
No. 17937    
>>17936
Ага, нашёл.
https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/board-post.class.php
640 строка
'<div class="threadlinkstop">' .

threadLinks('return', $thread_op_id, $this->board_dir, $this->board_type, $modifier_last50, $modifier_first100) .

'</div>' .

No. 17938    
>>17937
Меня, как мимокрокодила, волнует строка 1170 того же файла.
No. 17939    
151198459736.png-(554.95KB, 1016×683, 12345703.png)
17939
В общем, непонятно.
С одной стороны, кажется, что именно pages.php отвечает за эту часть страницы. С другой, тогда непонятно, как это потом повлияет на нижние ссылки в board-post.class.php.
Поэтому я туда и не полезу.
No. 17941    
>>17938
Это для тредов на странице доски, рядом с кнопками скрытия и прочего.
Можно так:
$info_post .= ' &nbsp; ' . <span class="threadlinkspage">' .  threadLinks('page', $post['op_id'], $this->board_dir, $this->board_type, $modifier_last50, $modifier_first100) . '</span>';


>>17939
Да понел уже. Хотя можно было бы добавлять спан-контейнер ко всем тредлинкам в pages.php, а в board-post.class.php добавлять уже ойди или класс с положением.
Вообще, думал чому-то, что всё построение страниц именно в темплейтах хранится у Кусабы. Теперь понел, чому все с неё плюются и говорят, что проще новый движок написать, чем сношаться с этим трупом.
No. 17942    
>>17941
>Это для тредов на странице доски, рядом с кнопками скрытия и прочего.
Но это https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/read.php#L78 !
No. 17943    
>>17942
>&nbsp; [<a href="/dev/res/17662.html">Ответ</a>] [<a href="/dev/res/17662-100.html">Первые 100 сообщений</a>] [<a href="/dev/res/17662+50.html">Последние 50 сообщений</a>]
>$info_post .= ' &nbsp; ' . threadLinks('page', $post['op_id'], $this->board_dir, $this->board_type, $modifier_last50, $modifier_first100);
Ну чё ты, чё ты?
No. 17948    
>>17943
Тогда для чего код по ссылке?
No. 17949    
>>17948
Насколько помню, чтение.пехопе вытягивает посты в попапы и всякое такое.
No. 17951    
151200785287.png-(3.46MB, 1920×1080, Kobayashi-san Chi no Maid Dragon - deathma.png)
17951
audio { padding-right: 20px; padding-bottom: 2px; }
No. 17962    
Файл
удалён
キタ━━━(゚∀゚)━━━!!
No. 17963    
>>17962
Совас, пошто .нотумб выпелил, ирод?
No. 17965    
Основная часть зделона.
Осталася мобильная вёрстка и цветовые схемы.
No. 17993    
На заметку: под новым Лисом стало довольно удобно ковырять вёрстку.
No. 17994    
Мобильный дизигн зделон. Даже каталог человечий вид обрёл. Фæрфокс всё ще говно, не умеющее в перенос по целым словам.
Остались цвета.
No. 18003    
151243906144.jpg-(37.44KB, 320×480, 1.jpg)
18003
Аж самому понраилась простота и элегантность.
No. 18004    
151246705250.jpg-(204.61KB, 500×720, 6559493.jpg)
18004
В общем, если вы хотите, чтобы я передвинул раскрывалку картинок со ссылки на сам файл, то объясните, как это сделать на примере исходного файла https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/board-post.class.php#L1085
Там ифы всякие, так что я не уверен, как это двигать.

Покажите мне диффы.
No. 18006    
151247459323.jpg-(127.91KB, 1280×720, 1453296149702.jpg)
18006
>>18005
Вы это тестировали хоть? И вы учитываете, что там проверка, действительно ли там картинка (которую надо разворачивать) или файл другого формата, которому это не надо?
Я просто для уверенности спрашиваю, один хѣръ потом откатить можно будет, если оно не заработает.
No. 18007    
>>18004
https://www.diffchecker.com/TIscY7lj
Сделано с небольшим заделом на будущее, чтобы потом убрать onclick и переписать частично kusaba.js по-человечески.
>>18003
Ссылки вверху очень мелкие, пальцем невозможно попасть.
No. 18008    
>>18006
>>18007
Пофикшено.
По коду, другие типы файлов затронуть не должно, там тупо перенос onclick из ссылки на картинку, при всех других равных условиях.
Может потом накачу эту кусабу на локалхост, чтобы поправить другие баги.
No. 18010    
>>18007
>>18008
Тоже думаю кусабу развернуть для правок. Токмо потом придётся ак-то синхронизироваться.
По поводу верхних ссылок: хочу в .навбар добавить скрытый список досок в виде селекта и обернуть обычный список в спан, шоб для десктопов показывать обычный, а для мабилачек селектовый. Ну и размер шрифта ещё будет подгоняться точнее. По задумке должен быть примерно ак в мобильных клиентах с мелким шрифтом.

>>18004
Совас, скажи лучше. От у тебя в Умночане есть .постернейм и .комментпостернейм. Первый, емнип, для оп-постов, второй — для обычных постов, и они у тебя разных цветов. Но есть одно “но” — у тебя в постах обычный .комментпостернейм. Вопрос: кокой цвет считать за Ъ — зелёный из .комментпостернейм (ящитат больше идёт) али красноватый из .постернейм, который сейчас?
No. 18011    
151247724854.jpg-(89.09KB, 563×800, b638140e73efe29cbed043f1b6f6102e13c478f3.jpg)
18011
>>18010
>>18008
Вы только учитывайте, что «Кусаба» неактуальна, и до открытия репозитория FBE толку от ковыряния её как таковой мало.

>>18010
Во-первых, я повторяю, что никакие правки CSS приниматься не будут, так что вы занимаетесь ерундой. Версия CSS на сервере новее той, что была две недели назад, но уже протухла относительно актуальной, например. Я тут хожу ещё и сразу вёрстку правлю, а не только стили.
Во-вторых, самоочевидно: то, что действительно используется, то и работает, а что не используется, то какие-то ошмётки из древних времён, которые не были вычищены. Эта зелёная штука и имя класса, например, из ычановской futaba.css, так её надо убрать к чертям.
No. 18012    
>>18011
Может FBE и не стоит публиковать. С нуля написать движок с тем же функционалом действительно проще.
No. 18013    
>>18011
Открытие вообще планируется? Да и яж не очевидно модифицированные вещи ковырять буду, а базовые, яке тут явно используются.

Говоришь так, словно за две недели ты тут на Ноду какую всё переписал и от изначальной вёрстки ничего не осталось. Выложу потом то, що имеется, хотя бы взглянешь, как аще можно облегчить стили.
Акей, понел.

>>18012
Чиочую, кусаба редкостная дырявая дрянь с индусской архитектурой. Можно даже не изобретать велосипед, а посмотреть, что сегодня среди движков имеется и выбрать самый простой и легкорасширяемый.
No. 18016    
Кстати, Совас, почему ты не убрал букмарки? Они же на куках и сервере, насколько помню, самая очевидная дыра, ими ещё одну бывшую печально известную крупноборду дудосили.
No. 18017    
151249062070.png-(356.59KB, 377×598, 1505713114833.png)
18017
>>18016
Ну так перепишите их и скрытие нитей мне под localstorage, хулѣ.
No. 18018    
15124935836.png-(84.39KB, 455×445, akinator_1_defi.png)
18018
>>18017
Будет сделано.
No. 18019    
>>18016
> и сервере
А что, так можно было?? Риальне, закрыл браузер, всё почистилось, открыл браузер, список остался! А если айпи динамический, то существует вероятность, что я попаду на список избранного другого пассажира?
No. 18020    
>>18019
Куки там используются.
No. 18021    
>>18020
> закрыл браузер, всё почистилось
No. 18022    
>>18021
> куки
No. 18024    
151250098956.png-(16.00KB, 726×232)
18024
>>18022
No. 18028    
151251524922.png-(221.54KB, 300×449, DO WANT.png)
18028
>>18013

> за две недели ты тут на Ноду какую всё переписал
No. 18030    
151252939488.png-(3.33MB, 1920×1080, Kore wa Zombie Desu ka of the Dead - crepe.png)
18030
Если бы кто-нибудь отпилил http://410chan.org/lib/javascript/protoaculous-compressed.js и напилил бы вместо того jQuery (соответственно переменив и вызовы библиотечных функций), то также было бы чему порадоваться.
No. 18031    
151257402066.jpg-(1.09MB, 1367×1988, Kobayashi&#039;s map.jpg)
18031
В имени файла апостроф отображается не как апостроф (по-видимому, подвергается двойному HTML-кодированию в Кусабе?).

Пример прилагаю.
No. 18056    
151282742256.jpg-(141.95KB, 600×338, 00000159.jpg)
18056
При попытке приделать >>18007 выявлены следующие проблемы:
— Добавление ненужной хѣрни. Как было сказано в >>17412 использование атрибута download нам нахѣръ не нужно. При этом оно дополнительно портило интерфейс тем, что вместо открытия изображения в новой вкладке выдавало диалог загрузки файла. Двойная порча пользовательского опыта.
— Что касается непосредственной (и единственной) цели всех этих манипуляций, то картинки не разворачивались при нажатии. Судя по поведению, почему-то при срабатывании выводилось то же превью, а не полная версия.
Цель не выполнена, правка не принята. Я не знаю, как это допиливать.
Тестируйте ваши правки хотя бы на живой «Кусабе».

>>17963
Добавлено.
No. 18057    
>>18056
Атлична.
Т.е. сейчас на Автобусе самая актуальная версия цсс?
Алсо добавь тогда ще .анхайд для сокрытого.
No. 18060    
>>18056
А эти версии таки никому не нужны?
http://410chan.org/dev/res/17371.html#17428
No. 18061    
151290986049.png-(122.87KB, 416×591, 6823359.png)
18061
>>18060
Сейчас реализация через CSS без замены старых скриптов, очевидно же.

>>18057
Самая актуальная, как обычно, на тесте или в репозитории.
No. 18065    
>>18061
В любом случае, как и думал, ничого особо не поменял. А то, что поменял, я уже тоже.
Короче, держи глобальный цсс и Умночанъ для примера, хотя бы глянешь, чокак.
https://pastebin.com/5AQtg4CG
https://pastebin.com/mH8FigbQ
No. 18069    
>>18056
Посыпаю голову пеплом. Мало того, что допустил пару синтаксических ошибок, так еще и код вставил вообще не туда.
Установил Кусабу 1.04 на локалхост (оказалось тот еще квест), протестировал свои изменения. В этот раз все работает.
https://pastebin.com/N4zjWwtA
Атрибут "download" убран. В диффе есть так же изменения в kusaba.js - работать будет и со старым kusaba.js, но не применять этот патч причин нет. Без него, как сейчас, картинка исчезает, пока не загрузится полностью, теперь она будет просто разворачиваться в полный размер.
No. 18071    
>>17789
Исправление для read.php оказалось довольно простым. https://pastebin.com/98TFUwkG
Изменения кода затрагивают только превью, все то, для чего оно еще нужно, затронуть не должно. Протестировано.
No. 18072    
>>18069
Еще незначительная правка https://pastebin.com/q2U3KeHX
В принципе этот KU_NEWWINDOW все равно отключен, так что на результат это бы не повлияло.
No. 18075    
Фикс для этого >>17919
https://pastebin.com/ub1B330J
Что делает:
— .threalinksbottom теперь находится за пределами .thrdcntnr - это изменения в board-post.class.php
— Та же группа кнопок сверху теперь тоже в div с классом .threadlinks, а значит для них так же можно применять css, как для нижних, например выровнять по правому краю.
— Кнопки [Mod], что находится в тердах снизу, в кусабе с гитхаба нет. Нужно в репозитории Чиочана пройтись поиском по всем файлам по запросу "toggleMod", найти эту кнопку и добавить до и после "<div>" и "</div>". Ничего сложного.
No. 18076    
По поводу "добавления ненужной хѣрни".
Есть другое решение - сделать реальное имя файла в скобках ссылкой для скачивания файла с тем же именем. По-моему, это логично. Видим "151265665175.jpg-(38.88KB, 592×562, Narutakruta.jpg)", жмем "151265665175.jpg" - открываем картинку на новой вкладке, жмем "Narutakruta.jpg" - появляется диалог сохранения файла "Narutakruta.jpg".
Решается добавлением 3 строчек: https://pastebin.com/7yv0PbsW
Впрочем, никто не заставляет.
No. 18077    
>>18076
Аще, эти «цыфоры.расширение» не несут никакой функциональности. Можно сократить до «расширение».
No. 18090    
Есть мысль добавить количество новых постов на досках в меню. Для этого нужно будет добавить небольшой php-скрипт и дополнить kusaba.js. Код, разумеется, с меня. Профит в виде оживления тематики.
Ну как, писать?
No. 18091    
151303756588.png-(406.92KB, 463×617, 1512057457836.png)
18091
>>18090
Это для фрейма, который вообще не нужен как технология?
Не буду это приделывать.
В перспективе надо делать нормальную главную без фреймов по умолчанию (но сам фрейм оставить для тех, кто им пользуется).

>>18077
Я планирую сделать как на «4чане», но без дурацкой надписи «Файл», которую я у нас отпилил не так давно.
No. 18092    
>>18091
Это не для фрейма, а для админбара сверху.
No. 18094    
151306160162.png-(2.38KB, 404×53, 151304664355.png)
18094
>>18092
Вот так это выглядит.
В корень сайта (где kusaba.php, board.php и все остальное) добавляется скрипт с названием "stats.php": https://pastebin.com/68FAyDda
В kusaba.js в конец window.onload добавляется следующий код: https://pastebin.com/z0Tex7bS
Работает как положено: смотрит самый большой id поста на всех бордах и сравнивает с сохраненными в localStoreage цифрами. При заходе в тред или на доску значение для текущей доски обновляется, и счетчик обнуляется. Отрицательных и нулевых значений не видно. При первом заходе после чистки хранилища браузера ничего не отображается. Цифры в спанах с соответствующим классом и их можно стилизовать в css, а при желании легко убрать через display: none.
No. 18099    
151309264844.png-(1.06MB, 1280×720, OP2-Uiharu.png)
18099
>>18094
Очень сомнительное дизайнерское решение.
И нужно ли вообще показывать точное количество написанных сообщений?

Алсо, у нас уже есть RSS.
No. 18104    
>>18099
RSS умер как стандарт и никому не нужен как те же фреймы это раз. Точное количество можно и не указывать это два. Достаточно поменять одну строчку в скрипте или через CSS скрыть текст и заменить значком. Хотя кому это может помешать непонятно. Почему-то над иконкой почты пишется количество новых сообщений, а не флажок "новые письма", и это считается нормой. Даже адблок пишет сколько скриптов заблокировано, хотя казалось бы, это совсем бесполезная информация. Или же это так важно скрыть наличие удаленных постов.
Психологически этот плюсик создает незавершенное действие, у пользователя не возникнет ощущение, что "вот, я проскроллил весь Автобус", пока все плюсы не будут убраны. Следовательно, на тематические доски будут заходить по мере появления на них новых сообщений, а не когда пользователь вспомнит об их существовании и без особой надежды начнет прокликивать все подряд. У постящего в тематике так же будет уверенность, что его пост прочитают тогда, когда кто-то зайдет на 410чан неважно в какой раздел, а не тогда, когда кто-то промахнется мышкой мимо /b/. Как следствие, на тематических досках будут охотнее создавать треды.
No. 18105    
151310943190.png-(323.49KB, 1120×698, 8675849.png)
18105
Кстати, напомните мне, что там надо было убрать, чтобы куклоподелие не ругалось?

>>18104
Потому-то это и плохое десигнерское решение, что циферки хорошо работают в сочетании со значками, а не ссылками.
No. 18106    
151312326915.jpg-(3.60KB, 295×33, 2017-12-13 02_56_50.jpg)
18106
>>18105
Чому? Всякие социалки вполне с текстом сочетают. Прямоугольные скобки как выделение элемента больше колхозом отдають, например.
другой дизигнер
No. 18107    
151312542460.jpg-(36.78KB, 947×720, 1266689205881.jpg)
18107
>>18106
>Чому?
Потому что вы ничего не понимаете в десигне.
Если бы вы хоть что-то понимали в десигне, вы бы осознавали, что соцсети сознательно проектируют свои меню под такие штуки. Вы же предлагаете вырвиглазное нечто, которое в типичной ситуации произвольно меняет ширину меню (это уже плохо), а при больших количествах досок и непрочитанных сообщений превращается в полный трэшак.
Про квадратные скобки я даже комментировать не хочу. Займитесь лучше лепкой супов.
No. 18108    
151312904447.jpg-(106.56KB, 1366×694, 2017-12-13 04_29_48.jpg)
18108
>>18107
А мог бы вже псевдофрейм нормальный зделоть. Может лучше всякого велосипеда был бы, добрее стал бы. И можно ж ограничить максимальное количество отображаемое в счётчике (9000, например, после чего показывать >9000).
А аще, сверху нужен не тупые ссылки на доски, а нящный списочек.
Про скобачки всё же скажи. Вот где они сейчас используются окромя какашек времён палеолита и отдельных интерфейсов для текстовых бровзеров? Я конечно люблю поскроллить инторнеты через Links какой, но всё же.
No. 18109    
151313133510.png-(335.71KB, 1152×632, 12345691.png)
18109
>>18108
Десигн не про то, чтобы наклепать всякой хѣрни. Десигн про то, чтобы получить результат, исходя из доступных ресурсов и ограничений.
Хотите верстать соцсети, идите и верстайте соцсети. При чём тут я? Я тут ни при чём.
У нас есть очень консервативная публика и очень консервативные интерфейсы. В том числе с этими ненужными квадратными скобочками на всех чанах. Уже больше десяти лет. У людей даже от мелочей зловещая долина каждый раз.
Я вынужден исходить из этой ситуации. Нетрудно заметить, что меня интересует в первую очередь доработка существующих функций, а не добавление новых. Я ценю инициативу >>18094-куна, но пока я это прикручивать не готов.
No. 18110    
>>18109
Я-то ни в чём и не упрекаю, лол. Почему так сурьёзно относисшься к тыканьям палочкой? Бу-бу-бу~
Ежели сурьёзно говорить про функционал уведомления о новых репликах, то достаточно скрыть цыфоры и заменить на махонькой плюсик в кружочке справа над ссылкою в доску, главное не делать ёго сильно выделяющимся цветом, щоб не цеплялся нарошно за взгляд пользователя при елощеньи глазами по экрану и не напрягал пассажира, вынуждая зайти на доску, дабы лишь бы избавиться от этого надоедливого плюсика, али же просто сделать функционал визуально отключаемым. Цыфоры же могут пригодиться ля мобильных приложеньев, а то и мобильной вёрстки. Можно, конечно, облегчить на корню функционал, проверяя только факт изменения крайнего номера сообщенья на доске, однако сё же ящитаю лучше дать возможность воспользоваться функционалом тем пользователям, которым он может действительно понадобиться.
No. 18111    
>>18105
Нужно закомментировать строчку alert(req.statusText);, что находится внутри функции handle() в скрипте в <head>.
Еще неплохо бы перенести строку <!-- Yandex.Metrika counter --> из <head> в самый конец <body>, после {$page} в шаблоне.
No. 18112    
151314454020.png-(10.47KB, 1349×33, Screenshot-2017-12-13 Разработка.png)
18112
>>18106
Вот еще пример десигна. Та же верстка, другой css.
No. 18113    
>>18112
Об этом и говорил. Хотя метку лучше сделать, например, #F9E0A8, шоб не аттрактила на себя внимание постоянно и не довила на мосх.
No. 18115    
.thrdcntnr label input {

    display: none;
}

.thrdcntnr label input:checked + span::before {
    content: '✕';
    color: red;
    font-size: 12px;
    padding: 0 2px;
}

No. 18120    
>>18115
У меня более нящьные фловербоксы:
input[type="checkbox"] {width: 0;margin: 3px 17px 0 3px}

label > input[type="checkbox"][name="delete[]"] {margin: 3px 13px 0 3px}

input[type="checkbox"]:after {content: "❀";display: inline-block;font-size: 16px;line-height: 16px}

input[type="checkbox"]:checked:after {content: "✿"}

No. 18121    
>>18120
Не работает в Firefox. Компромиссный вариант:
.thrdcntnr label input {

  display: none;
}

.thrdcntnr label input + span::before {
  content: "❀";
  display: inline-block;
  font-size: 16px;
  line-height: 16px;
  padding: 0 2px;
  color:#800080;
  font-weight: normal;
}

.thrdcntnr label input:checked + span::before {
  content: "✿"
}

No. 18126    
151322746567.jpg-(143.77KB, 1280×753, Re Zero NTR.jpg)
18126
Когда в теме http://410chan.org/d/res/1433.html я навожусь в первой реплике на красную гиперссылку, ведущую к обсуждению в /b/, то она в Файерфоксе начинает то отпрыгивать от курсора мыши, то напрыгивать обратно под него.

По-видимому, всё дело тут в том только, что в этот момент функция «addreflinkpreview» (записанная в файле http://410chan.org/lib/javascript/kusaba.js со строки 507) начинает вставлять (строкою 523) перед гиперссылкою блочный элемент «previewdiv», созданный ею ранее (в строке 510) с классом «reflinkpreview», и тем самым создаёт перевод строки перед гиперссылкою — та отпрыгивает на следующую строку, но затем функция «delreflinkpreview» (записанная со строки 537) убирает блочный элемент и начинает всё с начала.

Выглядит это неприятно и оттого не может быть терпимо.

Предлагаю напилить в файле http://410chan.org/css/txt_global.css такой аналогичный имеющемуся в файле http://410chan.org/css/img_global.css стиль для класса «reflinkpreview», который бы позиционировал этот блок абсолютным позиционированием (чтобы блок не создавал переноса строки в существующем течении прозы):
.reflinkpreview { position: absolute; padding: 5px; background-color: #F0E0D6; border: 1px dotted #000000; }

No. 18136    
151325727940.png-(148.07KB, 1294×558, щщщ.png)
18136
А зачем эта полупрозрачная обводка содержимого поста, который разворачивается по ссылке? Не знаю, всегда ли так было, только сейчас обратил внимание.
No. 18137    
15132573465.png-(108.94KB, 1144×654, 2221.png)
18137
Полистал другие дефолтные стили, такая обводка только в умночане. Зато в блюмуне ещё лучше, там края поста солидной толщины становятся цвета умночна при тех же действия.
No. 18138    
>>18136
Енто от .пост остатки. В >>18065 исправлено. Токмо в адблок внеси 410chan.org/css/img_global.css и 410chan.org/css/umnochan.css.
No. 18146    
Занимаясь полным перепиливанием kusaba.js, возник вопрос: а нужны ли горячие клавиши? Кто-нибудь знал, что такая функция вообще есть? Может просто удалить этот код.
No. 18148    
151330668250.jpg-(46.54KB, 750×655, 1259535322602.jpg)
18148
>>18146
Зачем выпиливать? Это же концептуально. Был бы манул по ним, я бы их в FAQ внёс.

>>18136
>>18137
Всё время забываю исправить.
No. 18157    
>>18148
Ненужно. Там из функций переход по страницам и скролл по тредам на странице. Первое есть в самих браузерах через Ctrl+стрелки влево/вправо, а прокрутка и через PageUp/PageDown сойдет.
No. 18158    
151336215955.png-(2.53MB, 1920×1080, Sakurasou no Pet na Kanojo - Rita breakdown.png)
18158
>>18157

> Первое есть в самих браузерах через Ctrl+стрелки влево/вправо

Какъ это?

Въ Файерфоксѣ, насколько я понимаю, нѣтъ этого.
No. 18162    
>>18158
>Въ Файерфоксѣ
Так говорят же: в браузерах.
No. 18165    
>>18162
Огласите весь список, пожалуйста.
хромог
No. 18167    
>>18158
Opera до 12 умела из коробки переходить на следующую страницу по нажатию пробела в конце страницы. В Firefox то же делает дополнение https://addons.mozilla.org/ru/firefox/addon/find-next-page/
No. 18169    
https://pastebin.com/PPNRLimQ
Вот патч для исправления кнопок перехода по страницам. Сейчас там какая-то ересь через формы, будет же нормальные семантичные ссылки, говорящие браузеру, есть ли следующая/предыдущая страница для перехода или нет.
Хоткеи в текущей кусабе следующие:
alt+], alt+' - скролл тредам выше и ниже соответственно.
alt+[, alt+; - переход по страницам предыдущая/следущая
alt+p - скролл до формы ввода сообщения
Все это работает только в английской раскладке, переключение страниц имеет баг, из-за которого можно выйти на 404, так как он тупо инкрементирует номер страницы и не смотрит, есть она или нет.
Данный патч позволит избежать такой ситуации с новой kusaba.js
Так как input'ы заменены на ссылки, нужно будет в css подправить их стили и довести до прежнего вида.
kusaba.js переписана на JQuery, скрытые треды и избранные нити теперь хранятся в localStorage. Для избранных нитей будет требоваться вместо threadwatch.php закинуть другой скрипт, а threadwatch.php желательно удалить, так как дыра. Хотя все почти готово, я повременю с публикацией, пока текущие правки в этом треде не будут выкачены в продакшн.
No. 18170    
>>18169
Кстате, чтоб велосипеды лишний раз не изобретать, можешь взглянуть на Инстант, который умудрился какой-то хороший человек спасти от удаления оригинальной репы, да позаимствовать оттуда чего. Там многое с пыха на жс было перенесено.
https://github.com/devarped/instant-0chan
No. 18171    
151344230668.jpg-(94.56KB, 800×594, DO WANT.jpg)
18171
>>18169

> kusaba.js переписана на jQuery
No. 18172    
151344301374.png-(385.72KB, 1066×592, 12345684.png)
18172
>>18169
>JQuery
И сразу же отказ. Если переделывать, то все внешние библиотеки надо наоборот слать к чертям, а не разводить bloatware тут мне.

>>18075
Стало быть, отредактировал я сначала просто pages.php. Этот самый <div class="threadlinks"> в итоге образовался как у верхних, так и нижних ссылок. Нижние, соответственно, оказались сунуты в два <div>, что уже довольно сомнительное решение. Но это, видимо, ожидалось.
Но главное, что оно каким-то образом уничтожило закрывающий </div> у thrdcntnr, хотя я вообще не трогал board-post.class.php.
Надо заметить, что thrdcntnr в «Кусабе» нет, и предложенные правки board-post.class.php вообще смутно соотносятся с актуальной версией.

>>18071
Сделано.
No. 18175    
151345167543.png-(1.97MB, 1920×1080, Suzumiya Haruhi no Yuuutsu - a celestial.png)
18175
>>18172

> jQuery

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

А если не переделывать, то продолжать использовать http://410chan.org/lib/javascript/protoaculous-compressed.js (148 270 байтов) вместо https://code.jquery.com/jquery-3.2.1.min.js (86 659 байтов)? Эта альтернатива выглядит как-то неуютно.

Как мнѣ кажется, скрипт-кун принёс нам избавленье от 42% объёма имеющегося bloatware, этому надо только порадоваться, а не отмахиваться дубиной с надписью «всё или ничего».

Более того, есть ведь ещё и следующий возможный шаг — возможность понадеяться (и небезосновательно) на наличие jQuery в кэше конечного пользователя (ввиду популярности jQuery), а от возможной опасности злонамеренного вмешательства внешнего сервера (CDN) в код jQuery надёжно оборониться через разъяснённый по адресу https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity атрибут контроля целостности:

<script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>

No. 18178    
>>18172
jQuery подразумевается пихать локально на место на место protoaculous.js, а не качать с cdn.
И если jQuery bloatware, то почему Яндекс.Метрика это ок?
No. 18180    
15134582966.png-(2.56MB, 1920×1080, Kore wa Zombie Desu ka of the Dead - crepe.png)
18180
>>18178

Если качать с CDN, то вместо 84,63 килобайта достаточно скачать 34,3 килобайта, потому что на CDN code.jquery.com работает сжатие gzip (а на 410чанѣ — нѣтъ).
No. 18182    
151346326334.jpg-(92.92KB, 1280×720, 1375982666710.jpg)
18182
>>18178
>почему Яндекс.Метрика это ок?
Потому что это не часть движка, а конкретный внешний инструмент, используемый администрацией. Он может исчезнуть в любой момент без особенных проблем.
И людям её никто блокировать самостоятельно не мешает.

Движок содержит минимум функций, которые бы требовали некие скрипты. Поэтому нет никакого смысла ради полутора функций совать большие внешние библиотеки с кучей ненужной хѣрни вместо того, чтобы оставить только нужное. Это классический пример bloatware в веб-разработке. Работа должна идти именно в направлении оптимизации, когда скрипты делают ровно то, что они должны делать.
Следует уважать пользователей, а не спихивать всю неоправданную нагрузку на них. Если не мы (классические имиджборды, сохраняющие минимализм в интерфейсах), то кот, в конце концов?

Никакие CDN мы вообще не рассматриваем, это должно быть самоочевидно любому вменяемому человеку.
No. 18183    
Совас, сделай уже .thrdcntnr на скрытых тхредах.
No. 18184    
151346841990.png-(4.69MB, 1920×1080, Boku wa Tomodachi ga Sukunai NEXT - awesome smile.png)
18184
>>18182

> Никакие CDN мы вообще не рассматриваем, это должно быть самоочевидно любому вменяемому человеку.

Предположим, что я невменяемый или вообще не человек. Какими аргументами, кроме ad hominem, может быть подкреплён в этом случае категорический отказ от CDN? Какой из этих аргументов может считаться непреоборимо весомым?
No. 18185    
151346911942.png-(2.43MB, 1920×1080, Kono Subarashii Sekai ni Shukufuku wo! - Aqua spel.png)
18185
>>18182

> Работа должна идти именно в направлении оптимизации, когда скрипты делают ровно то, что они должны делать.

Работа идёт в направлении оптимизации так хорошо, что объём скриптов, делающих не ровно то, что они должны делать, успел сократиться на 42% относительно простым способом (заменою protoaculous на jQuery).
No. 18186    
>>18184
>Какой из этих аргументов может считаться непреоборимо весомым?
Такой, что администрация не будет это прикручивать.
No. 18187    
>>18182
Это пример предрассудков, навязанных расхожими анекдотами, но не подкрепленных фактами. Сразу включается клиповое мышление "ангуляр реакт плагины для скроллбаров гроб гроб кладбище", как у людей, для которых убрали слово "ядерное" из магнитно-резонансной томографии.
В вашей "классической" кусабе не постеснялись впихнуть мутный protoaculous, а использование проверенного инструмента, являющегося стандартом де-факто внезапно абсолютный харам.
> jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers.
Почему-то тут не видно слов "большая внешняя библиотека с кучей ненужной хѣрни и неоправданной нагрузкой на процессор". Поддержка браузеров достаточно нужная херня, как по мне.
No. 18188    
151347151344.png-(62.55KB, 571×464, xkcd - is it worth the time.png)
18188
>>18182

> Следует уважать пользователей, а не спихивать всю неоправданную нагрузку на них.

Скачивание gzip-упакованного скрипта https://code.jquery.com/jquery-3.2.1.min.js (объёмом 34,3 килобайта) занимает примерно 349 миллисекунд на среднем ростелекомовском канале в российской провинции, после чего скрипт попадает в кэш.

Внимание, вопрос (комиксом https://xkcd.com/1205/ вдохновлённый): сколько новых пользователей (ещё не имеющих jQuery в кэше) должно зайти на 410чан, чтобы совокупная неоправданная нагрузка на пользователей превзошла хотя бы пятую долю неоправданных расходов времени веборазработчика, вынужденного действовать посредством громоздких конструкций наподобие «document.getElementsByTagName("td")» (реальный пример из нынешней версии файла http://410chan.org/lib/javascript/kusaba.js на строке 145) вместо экономичных jQuerийных конструкций наподобие «$("td")» (полный аналог вышеизложенного примера)? За какое время (согласно имеющимся у администрации данным Яндекс.Метрики) такое количество новых пользователей заходит на 410чан?

В ответе рекомендую учесть следующие обстоятельства:

1) Некоторые (не многие) новые пользователи имеют jQuery в кэше со времени посещения других сайтов, пользующихся тем же CDN.

2) Некоторые (не многие) прежние пользователи не имеют jQuery в кэше, потому что почистили кэш.

3) Расходы времени программиста включают в себя, разумеется, не только необходимость набирать длинные конструкции (например, «document.getElementsByTagName» вместо «$») в коде, но и необходимость вникать в эту запись всякий раз при чтении кода. И готовых конструкций таких в коде http://410chan.org/lib/javascript/kusaba.js изрядно много: семь «getElementsByTagName», сорок два «getElementById», четырнадцать «getAttribute», двадцать четыре «innerHTML».
No. 18189    
Я ще добавлю со своей колокольни, що Кусаба де-факто жырное добро.
No. 18190    
>>18188
jQuery не столько синтаксический сахар в виде $(), сколько слой совместимости со старыми браузерами. Своими силами невозможно впилить и протестировать столько функций в стольких версиях браузеров и учесть все их баги. В kusaba.js это видно из комментариев // IE needs to die и // now Opera safe, то есть автор изрядно заколебался, и даже в таком виде эти костыли мало что покрывают.
И претензии были не столько в весе кода, а в нагрузке на процессор, впрочем так же притянутые за уши.
No. 18191    
151347331273.png-(1.78MB, 1280×720, Shichimiya koisuru otome.png)
18191
>>18189

С жирностию кода всея Кусабы станем разбираться только после открытия кода Flower Bus Engine, в настоящее время закрытого.

Пока разбираемся с жирностию джаваскриптов ея.
No. 18192    
151347365679.jpg-(106.06KB, 956×720, 1257111249605.jpg)
18192
>>18187
>Почему-то тут не видно слов "большая внешняя библиотека с кучей ненужной хѣрни и неоправданной нагрузкой на процессор".
Я тоже могу всякой лабуды понаписать о том, какой я великий и какие мои поделки крутые, но разве это аргумент?
У меня в движке десяток функций, за каким хѣром нужна библиотека на сотни нахѣръ не нужных мне тут функций? А потом ещё как-то контролировать, чтобы там левые баги и уязвимости в этой ненужной мне хѣрне не затронули нужную хѣрню. Кто поддержкой будет заниматься? Уж точно не вы и не автор флудных простыней по соседству.
>В вашей "классической" кусабе не постеснялись впихнуть мутный protoaculous
Я не разрабатывал эту «Кусабу» и ничего в неё не совал. Я не считаю её идеальным движком. Эта нить буквально о доработке движка. С кем и о чём вы ведёте полемику, мне непонятно. Прежде чем умничать за клиповое мышление, следует избавиться от него самому.
Я вполне поддерживаю выпил «protoaculous» из движка, но не в пользу концептуально аналогичной хѣрни, но просто более модной.
Вот на Ычане смогли сделать нормальные скрипты только с нужной для работы Ычана функциональностью, а мне зачем-то суют какую-то левую дрянь. Вы там совсем код разучились писать под конкретную задачу?
No. 18193    
Карочи, суньте жикюьрь внутрь Кусаба.жс и банка угомонится. В идеале оставить токмо используемые в коде из жикьюри функции.
No. 18194    
>>18192
> Я тоже могу всякой лабуды понаписать о том, какой я великий и какие мои поделки крутые, но разве это аргумент?
Аргумент это "я хорошо знаком сабжем и могу объективно оценить правдивость данного утверждения". "jQuery херня, я так сказал" настолько же аргумент, насколько "какой я великий".
> за каким хѣром нужна библиотека на сотни нахѣръ не нужных мне тут функций?
Огласите весь список, пожалуйста.
> Вот на Ычане смогли сделать нормальные скрипты только с нужной для работы Ычана функциональностью
Ни в какое сравнение не идет. Тут куча ajax-запросов и редактирование html на лету. Там ради простоты пожертвовали поддержкой всех браузеров старее 2016.
No. 18195    
151347500756.png-(2.45MB, 1920×1080, Re Creators.png)
18195
>>18190

> jQuery не столько синтаксический сахар в виде $(), сколько слой совместимости со старыми браузерами.

Моё мнение диаметрально противоположно: движок jQuery более полезен синтаксическим сахаром, нежели слоем совместимости со старыми браузерами.

Польза синтаксического сахара — экономия времени разработчика, вполне измеримая тем способом, который я предложил в реплике >>18188 (считаем количество методов, запись которых упрощается или вообще схлопывается в «$», затем прикидываем, сколько разработчик тратит на каждый, затем перемножаем).

Совместимость со старыми браузерами в современных версиях jQuery (в версии 3.0, которую блогозапись http://blog.jquery.com/2016/06/09/jquery-3-0-final-released/ называет вышедшею 9 июня 2016 г., и во всех более новых версиях), согласно приведённому по адресу https://jquery.com/upgrade-guide/3.0/#browser-support списку, исчерпывается следующими версиями:

  • Internet Explorer 9 и новее,
  • Chrome, Edge, Firefox, Safari нынешней и предшествующей версии,
  • Opera нынешней версии,
  • Safari Mobile iOS 7 и новее,
  • Браузер Android 4.0 и новее.
С одной стороны, это очень верно и правильно: Chrome и Edge и Firefox и Safari обновляются, Opera основана на Chromium, а пользователя Internet Explorer версии 8 и более ранних ждут в Интернете проблемы более мрачные, чем неработоспособность некоторых сайтов.

С другой стороны, это означает, что слой совместимости в нынешних версиях jQuery не надо оценивать слишком значительно. Сразу несколько «костылей» в коде http://410chan.org/lib/javascript/kusaba.js не годятся в качестве предмета для сравнения с jQuery и как аргумент в пользу якобы значительной толщины слоя совместимости в jQuery, потому что в действительности свидетельствуют о противоположном: они подпирают проблемы тех браузеров, на которых создатели jQuery с середины прошлого года решили положить (и правильно сделали, но сейчас я не о том).

В частности, первый же в коде http://410chan.org/lib/javascript/kusaba.js «костыль» подпирает, как нетрудно видеть, случай отсутствия метода «indexOf» в объектной модели массива; однако по адресу https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf#Browser_compatibility пишут, что этой бедой в основном страдал только Internet Explorer версии 8 и более ранних (Firefox от неё быстро излечился: на десктопах — к версии 1.5, а в Android — к версии 4).
No. 18196    
15134762906.png-(557.69KB, 1091×631, 12345680.png)
18196
>>18194
Я где-то говорил, что мне нужна поддержка протухших браузеров?
От протухших браузеров нужно только одно: чтобы постинг работал. Никто не пользуется протухшими браузерами всё равно.
No. 18197    
151347667420.png-(3.01MB, 1920×1080, Boku wa Tomodachi ga Sukunai NEXT - awesome smile.png)
18197
>>18192

> У меня в движке десяток функций

Ну вот уж не десяток, а без малого сороковник.

Открываем http://410chan.org/lib/javascript/kusaba.js и начинаем подсчёт:

1) Utf8.encode

2) Utf8.decode

3) replaceAll

4) insert

5) quote

6) checkhighlight

7) highlight

8) get_password

9) togglePassword

10) toggleMod

11) toggleOptions

12) getCookie

13) set_cookie

14) set_stylesheet

15) set_preferred_stylesheet

16) get_active_stylesheet

17) get_preferred_stylesheet

18) togglethread

19) toggleblotter

20) expandthread

21) quickreply

22) getwatchedthreads

23) addtowatchedthreads

24) removefromwatchedthreads

25) hidewatchedthreads

26) showwatchedthreads

27) checkcaptcha

28) expandimg

29) postpreview

30) set_inputs

31) set_delpass

32) addreflinkpreview

33) delreflinkpreview

34) addpreviewevents

35) keypress

36) resizeMaster

Для сравнения сразу скажу, что https://iichan.hk/wakaba3.js насчитывает десятка полтора, притом несколько более простых (ни один не пользуется AJAX, например). Это реплика к аргументу «на Ычане смогли».
No. 18198    
151347869032.jpg-(0.96MB, 1920×1080, Amagami SS - nani ga byo.jpg)
18198
>>18192

> А потом ещё как-то контролировать, чтобы там левые баги и уязвимости в этой ненужной мне хѣрне не затронули нужную хѣрню. Кто поддержкой будет заниматься? Уж точно не вы и не автор флудных простыней по соседству.

Это должно быть самоочевидно любому вменяемому человеку: вот в этой нити на 410чанѣ будет время от времени появляться веборазработчик со словами: вышла новая версия jQuery http://blog.jquery.com/2017/03/20/jquery-3-2-1-now-available/ с исправлением хѣрни https://github.com/jquery/jquery/issues/3571 (допустим, нужной) и поэтому надо обновиться.

Или: после последнего обновления перестала работать такая-то нужная хѣрня, а в прошлой версии — работала; надо откатиться.

И будет сие до тех пор, пока /dev/ не оскудеет веборазработчиками.

Уязвимостей же в jQuery никаких нет, сотни глаз https://github.com/jquery/jquery/graphs/contributors вглядываются в код ея пристально.
No. 18200    
151347947457.jpg-(4.70MB, 3800×2480, Kono Subarashii Sekai ni Shukufuku wo! - Yunyun.jpg)
18200
Прибавлю, что следование стандарту https://semver.org/ вообще-то гарантирует обратную совместимость в том смысле, что код, сочинённый поверх нынешней третьей версии jQuery, должен работать во всех третьих, то есть до появления четвёртой версии (это в норме, то есть если случайно что-нибудь не сломают — а если сломают, то поправить непременно соберутся).
No. 18201    
151348937276.png-(3.96MB, 1920×1080, Boku wa Tomodachi ga Sukunai NEXT - сочувст.png)
18201
>>18190

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

У меня такое впечатление, что я пропустил ту реплику, в которой была впервые высказана претензия к нагрузке на процессор.

Каков её номер?
No. 18202    
151348980935.png-(401.02KB, 640×480, School Rumble.png)
18202
При пристальном вглядывании я заметил, что в реплике >>18200 высказался не вполне однозначно.

Чтобы не было разночтений, поясняю: следование стандарту Semantic Versioning — это обещание, которое было дано в одной из блогозаписей у разработчиков jQuery, и дано оно было по отношению к тому, как будут нумероваться следующие версии jQuery. В известной мере по нему можно догадываться и о том, как будут вообще развиваться следующие версии (ну, например, новые возможности будут появляться чаще, а несовместимые изменения — реже).

Авторов же джаваскрипта 410чана это обещание никак не связывает, а просто позволяет с большей уверенностью смотреть в будущее jQuery.
No. 18231    
151388507282.png-(2.81MB, 1920×1080, Boku wa Tomodachi ga Sukunai NEXT - сочувст.png)
18231
Пристальное вглядывание в страницы https://developer.mozilla.org/en-US/docs/Web/CSS/resize#Browser_compatibility и https://caniuse.com/#feat=css-resize может и должно открыть вниманию читателя то обстоятельство, что во всех сколько-нибудь современных браузерах (окромя Edge, и Internet Explorer, и Safari на iOS) поддерживается свойство «resize» языка CSS.

Предлагаю поэтому именно его (это свойство) накатить на тот элемент «textarea», в котором я сейчас набираю вот эти слова, а изощрённый костыль (содержащийся под именем «resizeMaster» в файле http://410chan.org/lib/javascript/kusaba.js в последней сотне строк) отпилить: и выбросить из джаваскрипта, и в основном коде страницы (на строках, сейчас предшествующих двухсотой) не городить вызов его, потому что два слова «resize: both» необыкновенно проще.

(Следующий же шаг к удобству может состоять в том, чтобы вообще не возлагать на автора реплик имиджборды обязанность по изменению размера поля ввода, а обеспечить это изменение автоматически, то есть http://jacklmoore.com/autosize напилить вместо «resize: both».)
No. 18232    
15138878992.png-(1.33MB, 798×1199, Братья Карамазовы.png)
18232
Если открыть «Русскій Вѣстникъ» за январь 1879 года (≈139 лет назад) на странице 173, то откроется роман «Братья Карамазовы» Достоевского, а в нём — именно то мѣсто изъ разсужденій Ивана Карамазова, в котором говорится о том, как трудно по нѣкоторому вопросу вѣроисповѣданія противопоставить себя церкви и сказать себе: «Всѣ ошибаются, всѣ уклонились, всѣ ложная церковь — я одинъ справедливая христіанская церковь», и что «это вѣдь очень трудно себѣ сказать, требуетъ условій огромных, обстоятельствъ не часто бывающихъ».

Это аргумент к вопросу об использовании jQuery: такое использование авторы подсчёта https://trends.builtwith.com/javascript/jQuery обнаруживают на 70% (699998 из 1000000) наиболее посещаемых сайтов в Интернете — конечно, 70% ещё не «всѣ», но всё же это явное большинство и даже «парламентское» (2/3) большинство таковых сайтов; вдругорядь предлагаю брать пример с них, тем более что пользу такого шага в реплике >>18188 я предложил уж счесть (и даже арифметическим подсчётом счесть) превосходящею создаваемую нагрузку.
No. 18233    
>>18232
Более того, его легко можно собрать, используя только нужные модули, и аргумент "на кой мне тысячи лишних функций" отпадет сам собой. Лишних было и так с десяток, теперь ни одной. Далее только поступать как Степан в Кукле и писать самописные заменители, делающие то же самое.
No. 18241    
151399976779.jpg-(6.08MB, 5472×3648, Madoka and Homura dolls.jpg)
18241
Замечание >>18233 совершенно справедливо, но и по отношению к этому предложению я должен повторить изложенный по адресу >>18188 аргумент на новый лад, и повторю.

Да, можно прочесть в README про jQuery подраздел https://github.com/jquery/jquery/blob/master/README.md#modules с перечислением двадцати модулей и над каждым подумать, нужен он или не нужен, а затем прочесть и соседствующие подразделы README и разобраться в том, как поставить grunt и запустить сборку собственной версии jQuery.

Но сколько времени это отнимет и для чего это?

Для того, чтобы не было лишних функций и оттого лишнего объёма у файла с джаваскриптом?

А велик ли выигрыш по объёму? — и какой же суммарный выигрыш по времени у посетителей 410чана это повлечёт?

Надо считать (и надо располагать для того статистикою посещений 410чана, которой я не располагаю) — но, может быть, даже за год или за два посетители 410чана не выиграют по времени столько, чтобы оправдать затраты времени на разбирательство в вопросе о сборке собственной версии jQuery. Не сложатся их миллисекунды в десятки минут. Тем более что миллисекунды-то тратятся при первом посещении только лишь, а дальше библиотека берётся во мгновение ока из кэша.

То-то и получается, что делается такая сборка как бы в режиме неискупимого жертвования собою (даже и с надрывом) перед идеалом (или, если угодно, перед идолом) отсутствия лишних функций в исходном коде, и сборщик руководим не рациональными (рассудочными), а психологическими (душевными) причинами и побуждениями, всё равно как некоторые (и даже изрядно многие) персонажи у Достоевского, ищущие и находящие для себя тяготу и алтарь для жертвы.

А не надо так.
No. 18246    
151422068962.jpg-(207.39KB, 700×700, 957c0cfee1543472d3c10bcaf5f1886e0402f4cb.jpg)
18246
Ну, вы, конечно, можете клепать свою реализацию с «jQuery», просто я не гарантирую, что мы её приделаем.
Но никаких ЦДН. И чем меньше у вас лишнего хлама будет, тем лучше.
No. 18248    
151426916149.png-(2.14MB, 1920×1080, Denpa Teki na Kanojo.png)
18248
>>18246

Если даже оставить в стороне прелюбопытный вопрос о jQuery, то не могу ли я получить какой-нибудь отклик по поводу совершенно перпендикулярных этому вопросу реплик >>18231 и >>18126 и >>18031 и >>17951?
No. 18253    
15143054029.gif-(19.32KB, 300×100, 125671748917.gif)
18253
>>18248
По поводу реплики >>18231
Это обсудили в том же ключе еще в 2009 году, и цветочек этот является не столько функциональным элементом, сколько изюминкой сайта.
Ему посвящен не один баннер.
https://410chan.org/misc/src/125707374218.png
https://410chan.org/misc/src/12571842635.png
No. 18384    
151491526060.png-(1.78MB, 1920×1200, Человек и закон.png)
18384
>>18253

Ну дыкъ въ декоративныхъ цѣляхъ цвѣточекъ оставить, а джаваскриптъ всё же отпилить притомъ можно.
No. 18386    
>>18253
>https://410chan.org/misc/src/125707374218.png
Хром говорит что у сертификата не доверенный корневой центр сертификации.
No. 18388    
151492212621.png-(1.20MB, 1280×720, Inou Battle wa Nichijou-kei no Naka de.png)
18388
По адресу http://410chan.org/d/res/886.html я упоминал, что проблему >>18386 можно устранить при помощи ZeroSSL в течение пары-тройки-другой минут, не более.
No. 18391    
151494676371.png-(132.80KB, 458×428, 12345694.png)
18391
>>18136 — сделано.
>>18183 — добавлен <div> с классом unhidethread.
>>18075 — [Mod] сунут в <div>.
Аудио сунуто в <span> сто лет назад.

Для цветочка можно разве что предложить какую-нибудь другую функциональность, иначе никто на это время тратить не будет.
No. 18544    
151565672237.png-(146.28KB, 2530×872, 1.png)
18544
Я уже не первый раз совершенно случайно в мод-панель. Воспроизвести последовательность действий не могу, что-то случайно нажимаю не то на клавиатуре при написании сообщения.
No. 18546    
151566124775.png-(17.60KB, 604×348, ss (2018-01-11 at 12_00_38).png)
18546
>>18544
Alt+Shift+X. Думаю, так и задумано.
No. 18547    
Кстати, зачем отправка сообщения по Alt+Shift+Z? Постоянно задеваю, и сообщение раньше отправляется.
No. 18548    
>>18544
>>18546
А ещё по скрытой ссылке в подписи блока файла можно открыть.

>>18547
Не сталкивался, но лучше по Alt+Ctrl+Enter.
No. 18549    
>>18547
В скриптах ничего такого нет.
t. читал kusaba.js
No. 18551    
>>18549
А ты попробуй, у тебя не работает?
No. 18648    
Тут кто-то знает на вскидку, вносили в наш интерфейс уже фикс, который препятствует "просвечиванию" ссылки через спойлер, или нет?
No. 18652    
151595024159.jpg-(792.43KB, 1290×1224, 3537237.jpg)
18652
Разворачивалка картинок перемещена.

>>18094
Мы можем вернуться к этой идее, если вы сделаете эту штуку настраиваемой (можно включать и выключать).

>>18648
Это не требует исправления, потому что люди должны видеть, что под спойлером ссылка, чтобы случайно на неё не нажать. Особенно критично для устройств с пальцевым управлением.
No. 18654    
>>18652
Вот стиль для разворачивания картинок, учитывающий обсужденные выше грабли. Страница не прыгает при загрузке, картинки разворачиваются мгновенно. Заменить все селекторы .thumb в _img_global.css, как тот, что выше, так и для мобильной верстки.
https://pastebin.com/srBGf4iu
No. 18655    
>>18654
У нас разве наблюдаются эти проблемы?
No. 18656    
>>18655
Да, так как на превьюшках и width и height установлены в auto.
No. 18657    
>>18654
Да, и смартфоны >>/b/124522 тут тоже исправлены.
No. 18658    
>>18654
Meh. А с >>18517 щито не так?
No. 18659    
>>18658
Я другую не смотрел, но ваша с мобильной версией не очень дружит, кажется.
No. 18660    
>>18658
Действительно. Только селектор с тильдой автобусу не нужен, да и на ычане класс .imglink добавили.
https://pastebin.com/0sxzf4kQ
То же самое. Нужно убрать все .thumb и вставить это.
No. 18661    
>>18660
Убрал все лишнее https://pastebin.com/ixVmjuk0 работает так же.
No. 18662    
151598095191.jpg-(284.38KB, 1024×683, що.jpg)
18662
>>18652

> Разворачивалка картинок перемещена.

И это очень хорошо, потому что https://ru.wikipedia.org/wiki/Закон_Фиттса
No. 18671    
151604394775.jpg-(63.47KB, 500×812, 19880680.jpg)
18671
>>18660
>>18661
Я тоже приделаю класс .imglink к ссылке. Предлагайте ваши правки с учётом этого.
No. 18673    
>>18671
Здесь эта ссылка никаким селектором не используется. Разве что «span[id^="thumb"]» заменить на «.imglink span», но это шило на мыло.
No. 18674    
>>18671 >>18673
Можно же так:
.imglink {float: left; margin: 2px 20px;} .thumb[src*="/src/"] {max-width: 100%; max-height: unset;height: auto;} @media only screen and (max-width: 480px) {.imglink {margin: 2px 4px;}}

No. 18705    
Кстати, давайте обсудим проблему подобного поведения картинок: http://410chan.org/b/src/151630726169.png
То есть, когда изображение игнорирует нижнюю границу дива .thrdcntnr и выползает за неё. Это проявляется и с уменьшенными картинками (для чего там и костыль min-height:210px;).
На Ычане этому препятствуют <hr>, которых у нас нет.
No. 18706    
>>18705
.thrdcntnr::after {
content: ' ';
clear: both;
display: block;
}
No. 18707    
>>18706 >>18705
Ну или границу перенести снизу вверх у тредов (раскрытых и скрытых), по :last-of-type повесить нижнюю границу на последний, у формы убрать нижнюю границу, подкрутить отступы у превьюшок и тредов и повесить убирание обтекаемости на сами треды.
No. 18796    
151699032114.png-(28.54KB, 462×318, xkcd-moron.png)
18796
В интересах иллюстрирования реплик /a/ предлагаю обсудить (здесь, согласно высказанному в реплике >>18704 пожеланию), трудновато ли будет снабдить 410чанъ поддержкою WebM и MP4.

На мой взгляд, вовсе и не трудновато, то есть напиливать там остаётся всего ничего: в функцию «createThumbnail» в файле /inc/func/posts.php воткнуть наперёд ещё одно условное выражение, которое для видеофайлов будет создавать миниатюру способом, функционально аналогичным приведённой в архиве http://yakuji.moe/wakaba/diffs.zip в файле wakaba.diff строчке 189 — вот только не на Перле, разумеется, а на PHP.

Есть ли противоположные мысли?
No. 18797    
151701648013.jpg-(21.71KB, 350×351, 1149375613051.jpg)
18797
>>18796
Можно-то можно, но вот вдруг местное управление также не желает звук? Тогда всё становится нетривиальнее. "Без нормального ТЗ..."
No. 18805    
151707776028.jpg-(135.64KB, 1280×720, Uiharu_Kazari_full_502998.jpg)
18805
Разворачивалка картинок не работает в ИЕ/«Эдже».

>>18094 и >>18169 живы там ещё?

>>18797
Ну щта там, для картинок используется gd.
Нужно придумать, как решить настройки для звука и, возможно, длительности видосов, ибо админика позволяет просто виды разрешённых файлов добавлять, а настройки доски позволяют выбрать размер. Это нетривиальная десигнерская задача, не говоря о технической.
Сделаете, рассмотрим, хотя оно, конечно, нахѣръ никому не упало.
No. 18810    
>>18805
> Это нетривиальная десигнерская задача, не говоря о технической.
Это высасывание проблемы из пальца. Ограничение длительности видео достигается за счет ограничения размера файла, а без звука оно действительно нахѣръ никому не упало.
No. 18813    
15171375035.jpg-(713.43KB, 1680×1050, 8b36967c7f437900635ee6adbdcf388b.jpg)
18813
>>18810
Мне в движке нужно предусмотреть все типичные сценарии использования видео на имиджбордах. Флудите вашим особо ценным мнением по звуку где-нибудь в другом месте.
No. 18814    
>>18813
> Мне в движке нужно предусмотреть все типичные сценарии использования видео на имиджбордах.
Зачем, если не секрет?
No. 18815    
151714620779.gif-(2.23KB, 72×112, 1153229454411.gif)
18815
>>18805
И сразу два вопроса вам и один залу. Вам:
1. Я как-то не так читаю, или разрешённые файлы не в настройках доски, а в настройках всего сайта? Тогда почему в /dev/ список не тот, что в /b/?
2. gd это замечательно, но мне скорее всего (т.е. чтобы без костылей) потребуется ffmpeg. ПХП-либы не обязательно. Я не буду просить exiftool... наверное, и попробую обойтись вместо этого ffmpeg -i. Вы согласны рассматривать реализации с ffmpeg?

И вопрос залу: я ведь правильно помню, что в длительность файла можно записать всякий мусор, не совпадающий с фактической длиной? Если просто поделить размер файла на битрейт, то фактическую длину же получить можно?
No. 18819    
151714813392.jpg-(267.50KB, 1200×675, 1516515602976.jpg)
18819
>>18815
Можно ffmpeg.

В меню настроек есть страница для глобального добавления типов файлов, которые в принципе могут быть разрешены. Первые три там по умолчанию сразу есть (GIF, JPG, PNG), далее можно добавлять свои и задать им картинку-заглушку.
Потом вы идёте на страницу настроек конкретной доски и ставите галочки для нужных вам на доске форматов, которые вы задали на той странице типов файлов.
Я бы сказал, что зависимые от доски настройки для видосов нужно как-то совать именно на страницу настроек доски. В принципе, там всё равно показаны все подряд настройки, даже те, которые заведомо не применимы для конкретного типа доски; так что можно и пункты для видосов сделать, которые просто можно не заполнять, если видосы не разрешены.

Вы бы просто поставили «Кусабу» вместо лишних вопросов.

С заглушкой вместо картинки я хоть сейчас могу видосы разрешить, лол.
No. 18820    
>>18815
Погрешность. У тебя мусора больше может быть в метадате, которая при простом делении даст погрешность. Причём мусор может быть не только в предназначенных для него тегах, но и в самом видео. Шанс того, что кто-то нагадит в конкретные теги меньше, чем то, что кто-то будет использовать кривой софт и криво соберёт видео. Не стоит сильно упарываться тем, что кто-то как-то заабузит метаинформацию. Ффмпег позволяет чистить её даже из самого видео, но это очень затратно по ресурсам.
No. 18821    
>>18819
Ставить-то я буду, но скорее всего не сегодня. А удивление у меня сегодня, плюс про ффмпег вам всё равно отвечать. Уж не обессудьте.

>>18820
Если заказ такой, что надо чётко ограничить длину, то в моих обязанностях сделать всё, чтобы чётко ограничить длину.
>You may need to completely decode the input if you find the container or stream duration to be missing or inaccurate (possibly due to a damaged or truncated file).
С другой стороны, это уже не выглядит хорошей идеей. Но всё равно лучше написать, чем не написать, а потом спрятать в условие флага настроек или при обнаружении явно битых метаданных.
No. 18822    
>>18821
Могу пару битых мп4 для теста скинуть, которые уже кидал на Иичане.
No. 18823    
15171545851.png-(19.09KB, 448×448, 1168641467500.png)
18823
>>18822
Давай что ли, заодно может у себя что починю, если додумаюсь, как.
No. 18824    
>>18823
На свой страх и риск. Одно из них может повесить машину, если плеер не дропнет сразу.
https://files.catbox.moe/7o4xyh.mp4
https://files.catbox.moe/a96733.mp4
https://files.catbox.moe/j8n6qg.mp4
No. 18825    
>>18823>>18824
А, да: самые спецэффекты начинаются когда до конца таймлайна доходит само, так что таймлайн в плеере может ничего не значить, дождись конца или промотай к концу минуты и посмотри на поведение плеера.
No. 18831    
151717684317.png-(17.29KB, 451×493, 1152198388466.png)
18831
>>18825
У меня так:
1. На первый файл ругается ffprobe, ffmpeg отказывается открывать, в плеере, соответственно, не открывалось. Тем более, что на мою имплементацию Вакабы файл просто не постится, ссылаясь на неподдерживаемый формат файла.
2. В конце второго файла идёт открутка назад. ffprobe не выдаёт ничего, ffmpeg считает 6 минут видео. В плеере до достижения конца начинается отмотка в начало файла, затем снова вперёд.
3. В конце третьего файла ничего не идёт несколько секунд. ffprobe ничего не находит, ffmpeg выводит варнинги.
Второе видео обрабатывается ffmpeg несколько секунд. Я не уверен, что это допустимо для сервера. Но в таком случае, если не прогонять через ffmpeg, я без понятия, как отсеять 2 и 3, и надо ли.
No. 18832    
>>18831
>в плеере, соответственно, не открывалось
Мною, не плеером.
>В плеере до достижения конца начинается отмотка в начало файла, затем снова вперёд.
После нескольких итераций файл всё-таки закончился.
No. 18841    
151736211949.jpg-(25.60KB, 590×442, отключён JavaScript.jpg)
18841
Так как команда «ffmpeg -i», в реплике >>18815 рассматривавшаяся, выводит мне длительность «00:00:59.94» для каждого из этих трёх битых файлов, то этот способ для выяснения настоящей длительности не годится.

Более сложные методы выяснения, насколько я реплику >>18831 понял, выглядят как затратные по времени (хотя, по-видимому, и не так затратны, как попытка перегнать принятый файл в другой формат и затем считать длительность полученного таким способом нового видеофайла — эта попытка заняла бы не несколько секунд, а дольше).

Может быть, это повод склониться ко мнению >>18810 о том, что достаточно ограничения на объём файла в байтах, а длительность его в секундах пренебрежима?
No. 18842    
>битые файлы
Чем решение "никогда не прогонять файлы через программы на стороне сервера" (ну, можно взять первый кадр для превьюхи, ок) - не решение? Пусть у юзера голова болит.
>взломщикихакиры
Господа, пожалуйста. Супермаркет вроде как не предоставлял гарантий безопасности в своей политике. Сервер, просто хранящий и отдающий файлы - наиболее безопасное решение для сервера, к тому же.
No. 18846    
15174290687.jpg-(410.18KB, 750×592, LorieLipton.jpg)
18846
>>18805

> Разворачивалка картинок не работает в ИЕ/«Эдже».

Нынешняя разворачивалка или предложенная авторами переделки?
No. 18847    
>>18846
Нынешняя.
No. 18855    
151754912243.jpg-(353.08KB, 656×800, Innsmouth breed.jpg)
18855
>>18842

> Пусть у юзера голова болит.

Ответственность в данном случае не на него перекладывается (да он и не мог бы понести её), а на разработчиков браузеров.

Может ли браузер нормально показать битый файл в теге <video> или в отдельной вкладке? — вот каков должен быть главный вопрос.
No. 18856    
>>18855
Возможно, он (браузер) и может, но он точно не должен. Битый файл - все, кроме его аплоадера, должны умыть руки. Вот мое мнение.
No. 18857    
151757651028.png-(333.00KB, 600×450, Firefox manga-style.png)
18857
>>18856

Смотря что такое «умыть руки». Если видеозапись «может повесить машину», как автор реплики >>18824 пишет, то появление таких видеозаписей на некоторой имиджборде может сказаться вредненько на её атмосфере.

К счастью, лично у меня во браузере Mozilla Firefox на Windows 7 шестидесятичетырёхбитной ничего в этом роде не произошло даже отдалённо: файл https://files.catbox.moe/7o4xyh.mp4 он отказался воспроизводить как некорректный, а файлы https://files.catbox.moe/a96733.mp4 и https://files.catbox.moe/j8n6qg.mp4 не вызвали у браузера никаких трудностей при воспроизведении (разве что https://files.catbox.moe/j8n6qg.mp4 во браузере под конец не перематывался с огромной скоростью туда-сюда так, как в видеопроигрывателе).
No. 18862    
>>18857
>Если видеозапись «может повесить машину»
Если дело такое, то подобный браузер таки мусор и никто не должен его использовать для означенных целей (просмотр веб-видео). Максимум должна вкладка повисать.
Но в целом, если твой браузер повис при включенном JS, хоть это и редкий вариант, это не должно никого смущать - через JS можно запускать довольно мерзкие DDoS-атаки на клиента. Вернее, это уже не "DDoS", а "DDoC", или что-то в этом роде.
>Смотря что такое «умыть руки».
Это значит, максимум, что они могут сделать, например, это снести проблемное видео, поскольку оно все равно бесполезно. Это достаточно просто.
>атмосфере
Это Интернет, детка. Честно говоря, я не знаю, насколько безопасно открывать картинки даже. Когда-то через них можно было ломать винду, лол.
No. 18868    
151769668275.jpg-(428.14KB, 550×767, Brezhnev-is-dead.jpg)
18868
>>18847

function expandThisImg(linkEl){

   if( !linkEl ) return false;

   var imgEl = linkEl.querySelector('img');
   if( !imgEl ) return false;

   var fullSrc;
   var thumbSrc;
   var fullWidth;
   var fullHeight;
   var thumbWidth = linkEl.getAttribute('data-thumb-width');
   var thumbHeight = linkEl.getAttribute('data-thumb-height');
   var currWidth = imgEl.getAttribute('width');
   var currHeight = imgEl.getAttribute('height');

   if( currWidth == thumbWidth && currHeight == thumbHeight ){
      // thumb → full:
      fullSrc = linkEl.getAttribute('data-full-src');
      fullWidth = linkEl.getAttribute('data-full-width');
      fullHeight = linkEl.getAttribute('data-full-height');
      imgEl.setAttribute('width', fullWidth);
      imgEl.getAttribute('height', fullHeight);
      imgEl.src = fullSrc;
   } else {
      // full → thumb:
      thumbSrc = linkEl.getAttribute('data-thumb-src');
      imgEl.setAttribute('width', thumbWidth);
      imgEl.getAttribute('height', thumbHeight);
      imgEl.src = thumbSrc;
   }

   return false;
}


И вызывать вместо «onclick="expandimg('17371', '/dev/src/150682259759.jpg', '/dev/thumb/150682259759s.jpg', '960', '720', '200', '150');return false;"» просто «onclick="return expandThisImg(this);"».

И функция с именем «expandimg()» пусть остаётся для «Развернуть все изображения».
No. 18869    
151769706611.png-(246.08KB, 922×282, romaji.png)
18869
В свою очередь, на основе >>18868 можно переписать и «expandimg» следующим образом:

function expandimg(thumbID){

   var spanEl = document.getElementById("thumb" + thumbID);
   if( !spanEl ) return;
   expandThisImg(spanEl.parentNode);
}

No. 18870    
151769746079.jpg-(1.35MB, 1920×1200, shana.jpg)
18870
Переписывание >>18869 позволит вызывать и эту функцию с одним параметром вместо семи.
No. 18871    
151769953333.jpg-(6.66KB, 147×153, staredad.jpg)
18871
К моему неудовольствию, в код >>18868 вкралась двойная опечатка («.getAttribute('height'» вместо «.setAttribute('height'» в двух местах), поэтому я переписываю его в следующей форме, вообще «setAttribute» не использующей (чтобы отсутствие такой опечатки было очевидно):

function expandThis(linkEl){

   if( !linkEl ) return false;

   var imgEl = linkEl.querySelector('img');
   if( !imgEl ) return false;

   var fullSrc;
   var thumbSrc;
   var fullWidth;
   var fullHeight;
   var thumbWidth = linkEl.getAttribute('data-thumb-width');
   var thumbHeight = linkEl.getAttribute('data-thumb-height');
   var currWidth = imgEl.getAttribute('width');
   var currHeight = imgEl.getAttribute('height');

   if( currWidth == thumbWidth && currHeight == thumbHeight ){
      // thumb → full:
      fullSrc = linkEl.getAttribute('data-full-src');
      fullWidth = linkEl.getAttribute('data-full-width');
      fullHeight = linkEl.getAttribute('data-full-height');
      imgEl.width = fullWidth;
      imgEl.height = fullHeight;
      imgEl.src = fullSrc;
   } else {
      // full → thumb:
      thumbSrc = linkEl.getAttribute('data-thumb-src');
      imgEl.width = thumbWidth;
      imgEl.height = thumbHeight;
      imgEl.src = thumbSrc;
   }

   return false;
}


Соответственно, вызывать вместо «onclick="expandimg('17371', '/dev/src/150682259759.jpg', '/dev/thumb/150682259759s.jpg', '960', '720', '200', '150');return false;"» (или другого аналогичного кода) надо просто «onclick="return expandThis(this);"».
No. 18872    
151770060865.jpg-(92.65KB, 1024×576, motoko.jpg)
18872
Пристальное вглядывание в >>18871 приводит меня к мысли о том, что проверка на миниатюру может быть и ещё проще, что позволит не совершать ненужных обращений к методу «getAttribute» вообще никогда.

Вот новый код:

if( !String.prototype.includes ){

   String.prototype.includes = function(search, start){
      'use strict';
      if( typeof start !== 'number' ) start = 0;

      if( start + search.length > this.length ) return false;
      return this.indexOf(search, start) !== -1;
   };
}

function expandThis(linkEl){
   if( !linkEl ) return false;

   var imgEl = linkEl.querySelector('img');
   if( !imgEl ) return false;

   var fullSrc;
   var thumbSrc;
   var fullWidth;
   var fullHeight;
   var thumbWidth;
   var thumbHeight;

   if( imgEl.src.includes('/thumb/') ){
      // thumb → full:
      fullSrc = linkEl.getAttribute('data-full-src');
      fullWidth = linkEl.getAttribute('data-full-width');
      fullHeight = linkEl.getAttribute('data-full-height');
      imgEl.width = fullWidth;
      imgEl.height = fullHeight;
      imgEl.src = fullSrc;
   } else {
      // full → thumb:
      thumbSrc = linkEl.getAttribute('data-thumb-src');
      thumbWidth = linkEl.getAttribute('data-thumb-width');
      thumbHeight = linkEl.getAttribute('data-thumb-height');
      imgEl.width = thumbWidth;
      imgEl.height = thumbHeight;
      imgEl.src = thumbSrc;
   }

   return false;
}


Первые девять строк этого кода содержат полифилл https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Polyfill для метода «includes», потому что этот метод у строк появился только в 2015 году, а всѣ предшествующие браузеры этот костыль подопрёт.

Вызывать, как и в предшествующем случае, вместо «onclick="expandimg('17371', '/dev/src/150682259759.jpg', '/dev/thumb/150682259759s.jpg', '960', '720', '200', '150');return false;"» (или другого аналогичного кода) предлагается просто «onclick="return expandThis(this);"».
No. 18874    
>>18872
Чем вызвано использование «linkEl.getAttribute('data-full-src')» вместо «linkEl.dataset.fullSrc»?
No. 18876    
151773886187.jpg-(69.76KB, 621×413, Я хочу фырфырфыр.jpg)
18876
>>18874

Пристальное вглядывание в страницы https://caniuse.com/#search=dataset и затем https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/dataset#Browser_compatibility убедило меня в том, что свойство «dataset» поддерживается во браузере Internet Explorer не ранее одиннадцатой версии.

Использование же «getAttribute» позволяет поддерживать более ранние версии его.
No. 18877    
151773961743.gif-(5.65KB, 320×200, bad-street-brawler-chestbump.gif)
18877
(В общем-то убеждение >>18876 аналогично убеждению >>17759 прошлого года, только там ещё и свойства хранились в «левых» атрибутах, стандарту «data-что-то» не соответствующих, потому что не было планов употребления jQuery; а тут есть.)
No. 18892    
151779658135.jpg-(92.62KB, 1024×576, hFU8rRkh.jpg)
18892
Я ещё раз спрашиваю: человек, который хотел переписать скрипты под «jQuery», ещё жив?
Мы готовы рассмотреть его реализацию в том случае, если она будет сразу сделана целиком.
Мне не улыбается по сто раз одни и те же скрипты ковырять, чтобы потом их выкинуть во имя ковыряния новых.
No. 18904    
151784806252.jpg-(99.67KB, 502×626, Venus de Milo.jpg)
18904
В реплике >>18892 слово «целиком» означает только «весь файл, по адресу http://410chan.org/lib/javascript/kusaba.js располагающийся», или там что-то более обширное?
No. 18917    
>>18904
Это означает, что он сделает и покажет свою реализацию целиком, а не частично.
No. 18966    
151798660472.svg-(365.72KB, suika.svg)
18966
Помимо уже выявленного бага с неработоспособностью скрипта разворачивания картинок в ИЕ/«Эдже» обнаружен более общий баг.
После перемещения ссылки с онкликом для разворчивания из верхней ссылки на превью, оно теперь делает эту ссылку не только для превью, но и для заглушек (чего быть не должно).
Для примера прикладываю СВГ. Но оно точно так же работает для архивов и прочей лабуды, пытаясь развернуть их как картинку. Должно же открывать в новом окне.

Это серьёзный повод откатить всё в исходное состояние.
No. 18971    
>>18966
В исходном состоянии нажатие на верхнюю ссылку приводило ровно к тому же результату.
No. 18973    
151799007966.jpg-(746.28KB, 1192×1500, 62407699_p0.jpg)
18973
>>18971
Это было не так критично с точки зрения пользовательского опыта. На эти ссылки вообще никто не нажимал, кажется.
В любом случае, опять надо как-то чинить эту дрянь.
No. 19002    
>>18892
Жив. И реализация есть для всего, кроме избранных тредов.
Но теперь ждите, раньше нужно было соглашаться, а сейчас времени нет.
No. 19023    
15182306448.7z-(1.24KB, expand_images_410.7z)
19023
>>18966

> Это серьёзный повод откатить всё в исходное состояние.

Нѣтъ.

Подход «всё или ничего» должен остаться в прошлом: если явствует легко устранимый недостаток, то надо устранить его, а не рубить сплеча всю систему.

>>18973

> В любом случае, опять надо как-то чинить эту дрянь.

Ввиду реплики >>19002 (и в предположении, что её сочинил именно первоначальный собеседник наш насчёт jQuery) предлагаю временное решение на основе >>18872 и >>18869, но с прибавлением аналогичной https://github.com/WagonOfDoubt/iichan-extensions/blob/3d8fd78dc0747a9fea744622f00283d01ffbbf46/src/expand-images/expand-images.main.js#L30 проверки.

Джаваскрипт прилагаю в архиве, а не то он слишком значителен по размеру для того, чтобы вставлять его. (Без малого три килобайта, около сотни строк кода.) Он содержит замену определения функции «expandimg» на новое, которое учитывает возможность появления не-картинок и притом должно работать в IE и в Edge невозбранно.

Первые девять строк содержат аналогичный коду https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Polyfill полифилл для метода «includes» у строк, потому что этот метод у строк появился только в 2015 году, а всѣ предшествующие браузеры этот костыль подопрёт.

Затем ещё полсотни строк содержат аналогичный коду https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes#Polyfill полифилл для метода «includes», но на сей раз для массивов, у которых этот метод появился только в 2016 году, а всѣ предшествующие браузеры опять же надобно подпереть костылём.

Вызывать на миниатюрах вместо «onclick="expandimg('17371', '/dev/src/150682259759.jpg', '/dev/thumb/150682259759s.jpg', '960', '720', '200', '150');return false;"» (или другого аналогичного кода) предлагается просто «onclick="return expandThis(this);"» (остальные параметры берутся из data-атрибутов). Функция «expandThis» спроектирована таким образом, что возвращает «false» для иллюстраций (которые раскрывает) и «true» в противоположном случае (чтобы не подавлять переход по гиперссылке).

Функция «expandimg» сохраняется для обслуживания гиперссылки «Развернуть все изображения», в коде у которой вызовов ея дохѣрищща.
No. 19024    
15182310429.jpg-(74.91KB, 419×480, Осторожно с вилами.jpg)
19024
Прежнее же определение функции «expandimg» должно быть из /lib/javascript/kusaba.js стёрто и заменено на приложенный к реплике >>19023 джаваскрипт.
No. 19025    
151823218231.7z-(1.27KB, expand_images_410.7z)
19025
Подумал немного и код >>19023 переменил.

Новая версия реализует полифилл https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes#Polyfill ещё ближе к версии Фонда Мозиллы.

В отличие от предшествующей версии, не будет работать в IE8.

Ну да и хѣръ съ нимъ.

Зато не нарушает работу цикла for...in появлением перечислимого свойства «includes» в прототипе у каждого массива.
No. 19026    
151823395052.jpg-(248.18KB, 750×562, sheeple.jpg)
19026
Для большей же ясности уточняю ещё, что упомянутое в реплике >>19023 изменение атрибута onclick на значение «return expandThis(this);» надлежит совершить в том месте, которое аналогично строчке номер 1086 в исходном коде https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/board-post.class.php#L1086 у голой Кусабы.
No. 19039    
151831239882.png-(7.08KB, 448×448, 1179606131633.png)
19039
Потратив на это три вечера выходных, я с чистой совестью заявляю, что потрачу ещё столько же минимум только на установку, если мне где-нибудь не дадут kusaba_freshinstall.sql последней версии. Выдранный с гитхаба несовместим сам с собой и с остальной частью кусабы, в частности, отсутствием дефолтных значений некоторых полей. Или же присутствием этих полей. Я от этого до сих пор доску добавить не могу.

Ах да, других незадачливых исследователей глубин плохого кода предупреждаю, что нужен PHP5, ибо даже обновив бибилиотеки и сменив драйвер БД на mysqli, на PHP7 не работало вообще ничего.
No. 19057    
151838275787.png-(18.92KB, 429×217, Screenshot-2018-2-11 Разработка.png)
19057
>>19002
Ну, я ещё 25 декабря это писал.
Алсо, по избранным нитям есть мысль несколько переработать поведение этой фитюльки, привязав всё к кнопке (см. иллюстрацию).
Список появляется и сворачивается по нажатию на неё (а не болтается произвольно на странице, как сейчас).
На кнопке также появляются обновления в виде точки, если меню свёрнуто.
Осилите такое?

>>19026
Как я уже сказал, мы сначала ждём полной ревизии скриптов от упомянутого автора.

>>19039
Кто-то выше, вроде, ставил успешно. У нас-то вообще установочных скриптов как таковых нет, так что оттудова я оный файл позаимствовать не могу.
No. 19069    
1. Там в файле иконок осталась оригинальная картинка в формате png:
<image xmlns="http://www.w3.org/2000/svg"; y="835.57642" x="-239.10715" id="image4146" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAACACAY...
Она скрыта, а вес файла увеличивает. Удали.
2. Установи везде в стилях fill: currentcolor, чтобы кнопки можно было красить внешним css (свойством color, они будут того же цвета, что и текст)
3. Остальные стили имеют старые кнопки.
No. 19075    
151839441096.jpg-(60.49KB, 422×600, 6598550.jpg)
19075
>>19069
>Иконки
В церкви. У нас значки.
>Установи везде в стилях fill: currentcolor, чтобы кнопки можно было красить внешним css (свойством color, они будут того же цвета, что и текст)
Я так понял, что вся эта покраска применима только для встраиваемого напрямую SVG, так что для нас она бессмысленна.
Значки других цветов будут потом.
No. 19076    
>>19057>>19039
Что же, тогда отбой. Забил всё дефолтами, доски создаются, посты постятся, даже сделал отображать юникод. До встречи на следующих выходных.
No. 19084    
>>19076

> даже сделал отображать юникод

На символах типа https://emojipedia.org/japanese-symbol-for-beginner/ проверял?

410чан не отображает его, например (знаком вопроса подменяет).
No. 19096    
>>19084
Проверил. Работает. А у Автобуса, может, БД надо пересобрать просто, как на Ычане делали.
No. 19168    
151888575816.png-(208.12KB, 1459×657, сотона.png)
19168
Это проверка исправленности Unicode в /dev/ 410чана, по адресу http://410chan.org/read.php?b=d&t=701&p=55 объявленной.

Если символ «🈺» нормально виден в кавычках, то работает.
No. 19197    
151900762729.png-(77.17KB, 249×323, Gokukoku-no-Brynhildr.png)
19197
>>19076

> До встречи на следующих выходных.

Какъ дѣлá?
No. 19198    
151900945373.png-(56.66KB, 448×448, 1188017503013.png)
19198
Ну, я думаю, готово будет на этой неделе, авось даже до выходных. Сейчас постится, но надобно сделать аккуратный обход того, что расширение файла != расширение превью во всех возможных местах.

Значится, что же до настроек в модерке. Наверное, логичней всего было бы добавить в Edit filetypes галочку "этот тип файла является видеотипом", впихнуть настройки длительности/звука в настройки доски, и в общий config.php значения по умолчанию. Но тогда надо делать ALTER TABLE filetypes ADD COLUMN video int(1) NOT NULL DEFAULT '0';. То есть, так-то можно и не лезть ручками в БД и делать всё в конфиге, но это явно не то, что просят, и например добавлять новые типы видеофайлов придётся через конфиг.

А, и да, я может и попытаюсь натянуть ычановский жс на то что получится, но скорее всего раскрытия на странице в том, что будет по первости выложено, можно не ждать.
No. 19204    
151906066434.7z-(1.74KB, expand_media_410.7z)
19204
>>19198

> А, и да, я может и попытаюсь натянуть ычановский жс на то что получится, но скорее всего раскрытия на странице в том, что будет по первости выложено, можно не ждать.

Предлагаю в получившийся серверный код добавить, помимо основы (сырой Кусабы), также предложенные в реплике >>18069 изменения https://pastebin.com/N4zjWwtA (то есть появление data-атрибутов у гиперссылок миниатюр), которые были приняты на 410чане (то есть всѣ эти data-атрибуты у миниатюр на 410чане сейчас есть). Или, если и не всѣ добавить, то хотя бы четыре атрибута размера («data-full-width», «data-full-height», «data-thumb-width», «data-thumb-height») и два атрибута адреса («data-full-src», «data-thumb-src»).

Так как по адресу https://github.com/WagonOfDoubt/iichan-extensions/blame/master/src/video-player/video-player.main.js сейчас видно, что автором основной части ычановского джаваскрипта видеопроигрывателей был я, то я могу невозбранно напилить ту же видеологику внутрь предлагавшегося в реплике >>19025 кода, исправляющего замеченные по адресу >>18847 и >>18966 проблемы и опирающегося на вышеозначенные data-атрибуты.

Готовый джаваскрипт прилагаю в архиве.

Во имя единообразия этот джаваскрипт обеспечивает одинаковое развёртывание (из миниатюры в проигрыватель) не только видеофайлов, но также и аудиофайлов, нынешнее же серверное генерирование звукопроигрывателей предлагаю отпилить. Если это почему-либо не удобно, то можно серверное генерирование звукопроигрывателей оставить, а в моём коде заменить «['mp3', 'flac', 'ogg']» на «[]» или закомментировать:

[ /* 'mp3', 'flac', 'ogg' */ ]


Первые девять строк моего джаваскрипта содержат аналогичный коду https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/includes#Polyfill полифилл для метода «includes» у строк, потому что этот метод у строк появился только в 2015 году, а всѣ предшествующие браузеры этот костыль подопрёт.

Затем ещё полсотни строк содержат аналогичный коду https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/includes#Polyfill полифилл опять же для метода «includes», но на сей раз для массивов, у которых этот метод появился только в 2016 году, а всѣ предшествующие браузеры опять же надобно подпереть костылём.

Вызывать на миниатюрах вместо «onclick="expandimg('17371', '/dev/src/150682259759.jpg', '/dev/thumb/150682259759s.jpg', '960', '720', '200', '150');return false;"» (или другого аналогичного кода) надо просто «onclick="return expandThis(this);"» (остальные параметры берутся из data-атрибутов). Функция «expandThis» спроектирована таким образом, что возвращает «false» для иллюстраций и видео и звуков (которые раскрывает) и «true» в противоположном случае (чтобы не подавлять переход по гиперссылке).

Упомянутое в предшествующем абзаце изменение значения атрибута onclick на значение «return expandThis(this);» надлежит совершить в том месте, которое аналогично строчке номер 1086 в исходном коде https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/board-post.class.php#L1086 у сырой Кусабы.

Функция «expandimg» сохраняется для обслуживания гиперссылки «Развернуть все изображения», в коде у которой вызовов ея дохѣрищща. Прежнее же определение функции «expandimg» должно быть из файла /lib/javascript/kusaba.js стёрто и заменено на приложенный к моей реплике джаваскрипт.

Однако, так как теперь развёртываются не только изображения, гиперссылку «Развернуть все изображения» полезно переименовать в «Развернуть всё». Если это почему-либо не удобно, то можно название оставить, зато изменить генератор этой гиперссылки таким образом, чтобы он сочинял вызовы функции «expandimg» только для изображений (но подробности такого изменения я оставляю на усмотрение читателя).

Помимо приложенного джаваскрипта сделается безусловно необходимою и определённая CSS-обёртка для видеопроигрывателей (класс «videoplayer410»), звукопроигрывателей (класс «audioplayer410») и гиперссылок свёртывания (классы «hidevideo» и «hideaudio»). Для этой цели достаточен код https://github.com/WagonOfDoubt/iichan-extensions/blob/master/src/video-player/video-player.css с минимальными изменениями, сводящимися к подстановке перечисления 410чановских пар имён классов (каждая пара — через запятую) и ещё, может быть, других величин отступов («padding») и полей («margin») по вкусу.
No. 19212    
151908151687.jpg-(59.10KB, 480×334, Остерегайся удара зюзьгой.jpg)
19212
Чтобы реплика >>19204 не выглядела попыткою невежливо проигнорировать намерение >>19057 вообще не трогать скрипт /lib/javascript/kusaba.js до тех пор, пока не явится результат его переписывания на jQuery, я скажу несколько слов и о нём: когда и если такой результат явится, то и на него, вероятнее всего, не так уж и трудно будет развёртывание видеопроигрывателей навесить — но до тех пор поневоле приходится работать с тем, что имеем. Надо же с чего-то начинать. http://traditio.wiki/Ибу_ибуди_—_хуйдао_муди
No. 19290    
151934146024.jpg-(552.58KB, 1228×1724, 0IkonaChudoGeorgiyaOZmie.jpg)
19290
Строка №205 в коде https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/func/stringformatting.php#L205 у Кусабы создаёт (в том числе на 410чане) фразу «Сообщение слишком длинное» с такою гиперссылкою «Полный текст», которая ведёт к нити обсуждения, но не к конкретной реплике в ней, отчего у длинной нити показывается только начало, а до конкретной реплики приходится пролистывать самому читателю.

Есть ли какой-нибудь относительно простой способ на стороне сервера достигнуть более точного адреса автоматически (чтобы страница сама промоталася докуда надо), или этого уместнее достигнуть джаваскриптом на стороне читателя?
No. 19295    
151937920467.jpg-(586.85KB, 1248×1753, 1ccbfb7409f249fdfad97ad42485eca2.jpg)
19295
>высоту постов ограничить средствами css.
Эта конкретная идея, конечно же, полный идиотизм. Как и намеренная порча разметки.
Но починить данную функцию действительно надо. Чем желающие вполне могут заняться. Заодно можно добавить туда #якорь на сообщение как в «Вакабе», что решит проблему >>19290.
No. 19296    
>>19295
> Эта конкретная идея, конечно же, полный идиотизм
А, ну ок https://pastebin.com/xV6QCny5
> Чем желающие вполне могут заняться
Желаю удачи, лол.
No. 19297    
>>19296
Логичнее сделать JS-костыль для закрытия незакрытых тегов, пока кто-то не починит существующую функцию обрезания незакрытых тегов в stringformatting.php.
No. 19304    
151942832181.jpg-(87.07KB, 600×423, Occultic;Nine.jpg)
19304
>>19297

Очень сложно починить то, что не сломано.

Почти такъ же непросто починить существующую функцію обрѣзанія незакрытыхъ теговъ въ stringformatting.php до тѣхъ поръ, пока кто-нибудь не подскажетъ, что же обрѣзаетъ она не такъ, какъ слѣдуетъ.
No. 19305    
151943495227.jpg-(279.36KB, 690×850, Nourin.jpg)
19305
Зачем на трёхсотой строке в «img_global.css» правило «font-size: 10px»? Нифига ж не разглядеть при таком размере шрифта.
No. 19307    
151945498680.jpg-(324.22KB, 1337×880, 10.jpg)
19307
Соус, тебе надо запилить вот такую очень важную функцию, позволяющую один за другим открывать посты в цепочке дискуссий. Пикрелейтед.

Разумеется, для этого надо сначала запилить вставку ответов на пост в конец поста.

Ну и одна картинка на пост в 2к18 - это ниочень.

Остальное не нужно.
No. 19310    
151946464432.jpg-(201.85KB, 1134×755, 0BruniF_MednyyZmiyGRM.jpg)
19310
>>19307

> Остальное не нужно.

Это заблуждение.

Например, макаба создаёт всѣ эти всплывающие штуки посредством jQuery, так что для начала придётся последовать изложенному в реплике >>19002 предложению дожидаться.
No. 19316    
>>19310

Да, конечно, это проще сделать с помощью JS, чем хранить в БД все ответы на каждый пост и вставлять ссылки на этапе формирования страницы.
No. 19318    
15195041053.png-(1.56MB, 1280×720, Фонтан.png)
19318
>>19316

Так как «ссылки на этапе формирования страницы» ≠ «всѣ эти всплывающие штуки», то против хранения в БД всѣхъ отвѣтовъ и создания ссылок на ответы на стороне сервера я не высказывался.
No. 19322    
Файл
удалён
>>19307

Ещё несколько слов вот об этом:

> Остальное не нужно.

Этот тезис не бесспорен.

Во-первых, нельзя сравнивать.

Во-вторых, если всё же сравнивать, то тогда получится, что цепочки ответов — это очень хорошо и полезно, но всё же это не единственное нужное и даже не важнейшее: сейчас 410чан сильнее и необходнее нуждается в другом — в появлении поддержки WebM.

Насколько сильнее и необходнее?

Без цепочек ответов найти ответ труднее в несколько раз (надо сканировать всю тему в поисках упоминания номера родительской реплики), но это всё же возможно.

Без WebM обсуждение аниме может сопровождаться видеоцитатами в формате GIF, но даже десятимегабайтовый GIF вмещает всего лишь 5½ секунд в хорошем качестве в 720p (пример прилагаю), тогда как WebM даже четырёхмегабайтовый (как сейчас в подразделе /a/ на Ычане) вмещает на порядок больше (минуту и более), причём без WebM видеоцитата такой длины никак не возможна в GIF (оказалась бы примерно стомегабайтовою).
No. 19323    
Файл
удалён
Появление в реплике >>19309 знака вопроса перед расширением файла я считаю неприятным признаком того, что обрѣзаніе имени файла в движке сочинено таким способом, который не учитывает существование многобайтовых кодировок Unicode, а просто отсекает всѣ байты после указанного номера.
No. 19325    
Имею в распоряжении наши старые CSSки и JSки, ну и утилитарные картинки образца февраля и октября 2017го года, из сохраненных нитей. Они как-то могут помочь вам вернуть работоспособность архивных страниц? в принципе, можно даже научить вебсервер смотреть на реферер, и если запрос идёт из arch, то отдавать старые файлы, можно даже на основе номера нити
No. 19326    
>>19325
>Имею в распоряжении наши старые CSSки и JSки
Да они и в истории правок репозитория и так должны быть.
И наиболее сломанные страницы сломаны из-за HTTPS (в коде прописан HTTP), а не CSS/JS. От нового CSS только картинки съехали.
No. 19327    
>>19326
>И наиболее сломанные страницы сломаны из-за HTTPS (в коде прописан HTTP)
Это тоже поправимо c помощью mod_rewrite, можно сделать редирект для нужных урлей с http на https.
No. 19328    
>>19198
Загрузка работает, уменьшенные копии работают, удаление вроде работает, архивация должна работать. Настроек пока нет, так что и выкладывать нечего.
No. 19329    
Файл
удалён
Если файл превосходит установленный в /dev/ предел размера, то появляется сообщение «Убедитесь, что ваш файл весит меньше, чем 10240000B».

Призываю переменить это сообщение таким образом, чтобы вместо буквы «B» (о которой русскому человеку надо ещё наперёд некоторое время догадываться, латинская «бэ» это или «вэ» кириллицы, а не только какую единицу измерения означает она, не вольты ли) там стояло более однозначное русское слово «байтов» в косвенном падеже.

Ещё призываю отменить предел 10×1024×1000 как нелогичный в пользу 10×1024×1024 (и те же изменения по необходимости проделать в других подразделах 410чана), тем более что встроенный в движок измерения объёмов файлов (который пишет килобайты и мегабайты над миниатюрами) всегда оперирует двоичными (на 1024 основанными, а не на 1000) величинами.
No. 19330    
151965726527.jpg-(91.73KB, 1024×576, 5I0CpZlh.jpg)
19330
>>19329
В очередной раз злоупотребляющие хостингом любители изучать системные сообщения о лимитах файлов в дальнейшем обнаружат себя изучающими сообщения о бане.

>>19327
У нас пока нет официальной поддержки HTTPS. В любом случае, мы не будем ковырять архив пока не порешаем более актуальные проблемы.
Если ковыряться с костылями, то почему бы не накостылить скрипт на чём-либо, который локально сконвертирует старые HTML под более актуальную вёрстку, например?

>>19307
Отказ.
No. 19335    
Что значитъ ремесло!
У всѣхъ какъ постингъ постингъ —
А у меня во зло
Употреблённый хостингъ.
No. 19336    
Недавние эксперименты с публикацией GIF-анимаций приводят меня к убеждению в том, что Кусаба генерирует миниатюры GIF во много менее чем достаточно хорошем качестве.

Концептуально эта проблема покоится на нескольких основаниях, о которых я сейчас расскажу на примере гитхабовского кода Кусабы, для которого в настоящее время (и последние 2½ года) коммит 79479456141fe2ce937e94b5f5939d838071387b является последним, так что именно его я буду использовать при записи URLов.

Во-первых, по умолчанию в файле «config.php» в строке 139 настройка «$cf['KU_THUMBMETHOD']» имеет, как это по адресу https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/config.php#L139 можно видеть, значение «'gd'», то есть при генерации миниатюр движок полагается на библиотеку GD (встроенную в PHP), а не пытается вызвать https://www.imagemagick.org/ как внешнюю программу (которая, возможно, отъела бы больше оперативной памяти во время работы, но лучше справилася бы). Кроме того, вариантами «'gd'» и «'imagemagick'» эта настройка исчерпывается, то есть подключение других утилит (ну вот http://www.graphicsmagick.org/ хотя бы, которая обещает быть меньше по размерам и меньше жрать ресурсы сервера, чем ImageMagick) в движке Кусабы вообще не предусмотрено. (А какова настройка «$cf['KU_THUMBMETHOD']» на 410чане?)

Во-вторых, как именно библиотека GD используется? — об этом нетрудно осведомиться в файле https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/func/posts.php и видеть там в функции «fastImageCopyResampled» (на строке 133 и далее), что точность миниатюризации приносится в жертву скорости: сперва очень быстрым и самым грубым алгоритмом «ближайший сосед» иллюстрация переносится на холст, превосходящий миниатюру в считанное количество раз (по умолчанию — в три раза, «$quality = 3»), и только затем Кусаба делает на его основе миниатюру алгоритмом, функциею «imagecopyresampled» применяемым (а этот алгоритм, как в комментарии http://php.net/manual/en/function.imagecopyresampled.php#54448 отмечается, даже не назван по имени в документации, но результаты мутнее даже бикубического преобразования, так что это может быть и не оно, а что-то другое худшее). Нечего и надеяться на https://ru.wikipedia.org/wiki/Фильтр_Ланцоша или нечто другое в этом же духе. (А какова настройка «$quality» на 410чане?)

В-третьих, пристальное вглядывание в код https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/classes/upload.class.php в районе строки 135 и строки 150 позволяет нам убедиться в намерении Кусабы сохранять миниатюру GIF-файла также в виде GIF, а намерение это открывает прямо-таки ящик Пандоры со всевозможными несчастьями.

Для начала, ограниченность палитры (проявляющаяся как чрезмерная резкость цветовых переходов между отдельными оттенками и чрезмерная грубость контуров) гораздо явственнее у миниатюрных изображений ввиду того, что в них пикселов меньше, так что, может быть, следовало бы для GIF создавать полноцветные миниатюры в JPEG или в truecolor PNG.

Но даже если не делать этого, то и тогда остаётся вопрос о том, каким способом результат уменьшения первоначального изображения (уменьшения, производящегося в полном цветовом пространстве) затем переводится в ограниченную палитру. Производится ли https://en.wikipedia.org/wiki/Ordered_dithering или https://en.wikipedia.org/wiki/Error_diffusion (или хоть в какой-то форме https://en.wikipedia.org/wiki/Dithering вообще) для сглаживания недостатков цветности, или каждый пиксел тупо переводится в тот цвет палитры, который наиболее близок его цвету? Как подбирается палитра, https://en.wikipedia.org/wiki/Palette_(computing)#Adaptive_palette ли это или что-то другое?

В том случае, когда настройка «$cf['KU_THUMBMETHOD']» имеет значение «'gd'», исходный код https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/func/posts.php даёт на эти вопросы мрачный ответ: в его строке 112 применяется тупо «imagegif», а документация http://php.net/manual/en/function.imagegif.php ничего хорошего насчёт dithering не обещает.
No. 19337    
В том же коде в районе строки 53 (и дальше) можно увидать, что когда настройка «$cf['KU_THUMBMETHOD']» имеет значение «'imagemagick'», вызов внешнего конвертера имеет простенький вид «convert исходник.gif -resize ШИРИНАxВЫСОТА -quality 90 миниатюра.gif», и единственная поблажка для GIFов — повышение качества (quality) от значения 70 к значению 90 на строке 62.

Я готов откровенно сознаться, что смысл её от меня ускользает, так как по адресу https://www.imagemagick.org/script/command-line-options.php#quality формат GIF вообще-то не упоминается среди тех, на сохранение которых влияет эта настройка.

Хорошо ещё хоть, что http://www.imagemagick.org/script/command-line-options.php#dither обещает dithering (причём по умолчанию: сказано «automagically when saving to specific formats», и можно надеяться на наличие GIF среди таковых форматов, хотя я предпочёл бы вместо надежд опираться на конкретный исчерпывающий список форматов), но вовсе не упомянут тот алгоритм, который применяется по умолчанию (Riemersma ли это или всё же Floyd-Steinberg?).

Во как, етить-колотить.
No. 19338    
151978400599.7z-(1.08KB, MithgolGIF.7z)
19338
Естественно, обзор http://www.imagemagick.org/Usage/bugs/ordered-dither/ как бы говорит нам, что ситуацию есть куда улучшить.

Предлагаемый патч прилагаю.
No. 19339    
Сразу скажу ещё, что предложение >>19338 имеет смысл только в том случае, если на сервере у 410чана ImageMagick установлен, причём не старше, чем обзор http://www.imagemagick.org/Usage/bugs/ordered-dither/ (то есть не старше конца сентября 2006 г.).
No. 19340    
>>19336
>А какова настройка «$cf['KU_THUMBMETHOD']» на 410чане?
Читайте тред, блджад.
>Ну щта там, для картинок используется gd.
No. 19341    
15198561187.gif-(2.62MB, 1920×1080, Carnival Phantasm - within my calculations.gif)
19341
>>19340

Это более чем месячной давности упоминание ускользнуло из моей памяти, но вообще-то примерно это по качеству миниатюр GIF (явно демонстрирующих отсутствующий dithering) я и ожидал.
No. 19342    
151985787055.gif-(14.69KB, 199×112, thumbFloydSteinberg.gif)
19342
Теперь с примером миниатюры >>19341 сравните результат выполнения команды «magick convert "Carnival Phantasm - within my calculations.gif"[0] -resize 200x112 -quality 100 -dither Floyd-Steinberg thumbFloydSteinberg.gif».
No. 19343    
151985975650.7z-(909B, Floyd-Steinberg.7z)
19343
Результат >>19342 убеждает меня в том, что на небольших изображениях ImageMagick, действуя с параметром «-dither Floyd-Steinberg», получает гораздо более качественные результаты в GIF, нежели PHP-функция «imagegif» — и даже более качественные, чем тот же ImageMagick, но действующий с параметром «-ordered-dither o8x8» (по-видимому, способность ImageMagick подбирать нормальную человеческую палитру и одновременно предпринимать https://en.wikipedia.org/wiki/Ordered_dithering по алгоритму Байера настолько хуже, чем способности FFmpeg, что результат получается всё ещё много вырвиглазнее, нежели https://en.wikipedia.org/wiki/Error_diffusion по Флойду-Штейнбергу; но так вроде бы не должно быть, поэтому либо я нашёл баг, либо сильно недопонял что-то очень важное).

Кроме того, предпринятый мною эксперимент показал, что предложенный на строке 56 в исходном коде https://github.com/tslocum/kusaba/blob/79479456141fe2ce937e94b5f5939d838071387b/trunk/inc/func/posts.php#L56 у Кусабы способ вызова ImageMagick с параметром «-coalesce» вовсе не отключает анимацию у получающейся миниатюры (как на это, по всей видимости, надеялся автор этого кода Кусабы), а вместо того уместнее прибегнуть к рецепту https://stackoverflow.com/a/23468694 и указать «[0]» после имени исходного файла GIF для получения первого кадра его. Либо ImageMagick новейшей версии (7.0.7-24 Q16 x64 2018-02-25) как-то иначе реагирует на параметр «-coalesce» по сравнению с теми временами, когда сочинялася Кусаба, либо автор Кусабы с самого начала что-то понял не так.

Выводы из двух предыдущих абзацев я также прилагаю в форме патча, который предлагаю налагать после >>19338 дополнительно.
No. 19344    
151986026385.7z-(938B, combinedPatch.7z)
19344
Для простоты накладывания прилагаю также суммарный патч, >>19338 и >>19343 объединяющий собою.
No. 19430    
152124824471.gif-(27.24KB, 500×400, 1150262581200.gif)
19430
http://kusaba.yakuji.moe/kusabadiff
http://kusaba.yakuji.moe/webm/
Как-то так. Скрин админки если потребуется - по запросу. Дифф правился ручками, так что я бы опасался его пихать в автоматику даже на тестовой доске.

А теперь самое весёлое: в чистой кусабе с гитхаба, например, нет поддержки аудиофайлов. Как моя имплементация будет работать с Flower Bus... скорее всего не будет из коробки, и придётся их как-то совмещать. Также, просто накатить правки из >>19204 не вышло, поэтому никакого раскрытия видео нет. На доске пока настроено только webm из видеофайлов.
Требует ffmpeg (ffprobe в PATH). Требует изменений БД:
Эти для новых опций доски:
ALTER TABLE boards ADD 
maxvideolength
 int(5) NOT NULL DEFAULT '0';

ALTER TABLE boards ADD 
enablesoundinvideo
 tinyint(1) NOT NULL DEFAULT '0';

Это для того, чтобы разделять типы файлов в добавлении типов: картинки, видео, или другое. Добавлять по вкусу.
ALTER TABLE filetypes ADD 
mediatype
 varchar(10);


Алсо, переводов новых сообщений об ошибке и пунктов меню никот не добавлял.
No. 19431    
>>19430
Иии разметка съела всё что можно. В общем, название колонок в обратных кавычках. Я не знаю, насколько это обязательно, правда, я просто копировал freshinstall.
No. 19432    
152124947881.png-(645.15KB, 1008×707, 12345698.png)
19432
>>19430
В общем, я сейчас понятия не имею, когда мы сможем это ковырять/тестировать. Скорей всего, придётся долго ждать.
Захотите что-то там допилить, можете пока допиливать, только сообщайте об этом и сюда.
No. 19442    
Файл
удалён
>>19430

> просто накатить правки из >>19204 не вышло

В чём была основная трудность этого?
No. 19443    
>>19442
В том, что оно вообще не раскрывало даже картинки, пихало
onclick="expandimg(\'
и прочая плейнтекстом туда, где должны идти размер и имя файла, и я без понятия, куда пихать этот css.
No. 19446    
Здесь дорабатывают движок этой борды? Я щитаю, в интерфейсе недостает возможности встраивать видео в пост.
Думаете, куклоскрипта достаточно? Он может далеко не все. Например если дать ссылку на редтьюб, то не отобразит на странице. А вот на одной борде (типа возрожденный нульчан) я видел что интерфейс может парсить ссылки не только на ютуб, но на редтуб, хамстер и другие подобные сайты. Хорошо сделали, удобно - не надо идти туда где куча баннеров, сразу кликнул и смотри видео.
No. 19447    
>>19446
А если сделаете чтобы как на доброчане, можно было приложить к посту архив с файлами, вообще шикарно будет, а то пока файлы возможно передавать лишь в рарджпегах.
No. 19451    
152130348799.jpg-(34.21KB, 448×448, 1191904168555.jpg)
19451
>>19446>>19447
>Я щитаю, в интерфейсе недостает возможности встраивать видео в пост.
>можно было приложить к посту архив с файлами
Это и так есть в кусабе, так що вопросы не по адресу.
No. 19454    
152130640268.jpg-(254.13KB, 1264×1440, I hold my cookie in the milk until the bubbles sto.jpg)
19454
>>19443

Ну что же, тогда почему бы мне не попробовать самому заняться этим.

Предлагаю положить на GitHub ту репу, которая http://kusaba.yakuji.moe/webm/ обслуживает (то есть правки http://kusaba.yakuji.moe/kusabadiff содержит), после чего сообщить мне её адрес на Гитхабе.

В этом случае я постараюсь самостоятельно¹ сочинить такой pull request, который наложит на репу всѣ необходимые правки в коде PHP и CSS и JavaScript.

____________

¹ Слово «самостоятельно» в данном случае означает, что я надеюсь обойтись в этом деле своими силами, но всё же намерен опереться на ту помощь, которая в этом обсуждении ранее была оказана. Например, при сочинении PHP-кода я намерен руководствоваться предложенными в реплике >>18069 изменениями https://pastebin.com/N4zjWwtA
No. 19499    
Файл
удалён
Болѣе недѣли прошло.

Предложение >>19454 можно считать отклонённым.

Щикатаганай.
No. 19504    
152198574267.png-(2.83KB, 90×50, faptcha_rust.png)
19504
Предлагаю обновить фаптчу в /dev/
rust|раст
No. 19505    
152198601170.png-(4.14KB, 90×50, faptcha_rust_2.png)
19505
>>19504
No. 19506    
152198654013.png-(3.21KB, 90×50, faptcha_swift.png)
19506
swift|свифт
No. 19507    
152198655017.png-(2.21KB, 90×50, faptcha_swift_2.png)
19507
>>19506
No. 19508    
15219866111.png-(2.97KB, 90×50, faptcha_nodejs.png)
19508
node|nodejs|node.js|нодежс|ноджс|нод|нода
No. 19509    
152198675256.png-(2.10KB, 90×50, faptcha_erlang.png)
19509
erlang|эрланг|ерланг
No. 19510    
152198697782.png-(2.23KB, 90×50, faptcha_angular.png)
19510
angular|angular.js|angularjs|ангуляр|ангуляржс|ангулар|ангуларжс
No. 19511    
152198712234.png-(1.93KB, 90×50, faptcha_vue.png)
19511
vue|vuejs|vue.js|вью|вьюжс|вью.жс|вуе|вуежс
No. 19512    
>>19508>>19510
Вариант написания через “джс” добавь.
No. 19513    
>>19511
А тут ещё через “вюе”.
No. 19514    
152198734881.png-(4.24KB, 90×50, faptcha_react.png)
19514
react|react.js|reactjs|реакт|реакт.жс|реакт.джс|реактжс|реактджс
У меня пока все.
No. 19515    
152198759128.png-(2.47KB, 90×50, faptcha_mongodb.png)
19515
mongo|mongodb|монго|монгодб
No. 19516    
152198798770.png-(3.41KB, 90×50, faptcha_qt.png)
19516
qt|кут|кьют|кьюти|куте|кути
No. 19517    
152198811761.png-(7.33KB, 90×50, faptcha_newgame.png)
19517
キタ━━━(゚∀゚)━━━!!
No. 19580    
152299532128.jpg-(65.70KB, 400×477, 1149377865935.jpg)
19580
>>19432
Новая версия. При помощи инструкций из >>19204 и немного смекалки добавлено раскрытие webm в постах.

Выявлен баг текущей имплементации: при пересборке страниц из мод-панели, миниатюры не отображаются. Вообще нигде. Если это критично, то мне потребуется ещё некоторое время на фикс.

>>19454
Я не вижу причин вообще как-либо на меня полагаться в этом вопросе, или поднимать гитхаб для одной фичи. Темпы разработки таже намекают, что мне просто противно смотреть на этот код слишком часто.
No. 19581    
>>19580
Ах да, ссылка та же: http://kusaba.yakuji.moe/kusabadiff
No. 19582    
>>19580>>19581
Поправлено там же.
No. 19596    
Господа криворукие, вы сломали якорные ссылки на посты при нажатии на ссылку "Полный текст." у поста на доске.
No. 19597    
>>19596
Их здесь не было никогда.
No. 19599    
>>19580

> При помощи инструкций из >>19204 и немного смекалки добавлено раскрытие webm в постах.

Пристальное вглядывание в файл http://kusaba.yakuji.moe/kusabadiff в настоящее время открывает в нём ближе к концу вот такой фрагмент кода, которого в 7z-архиве >>19204 не было:

function expandimg(postId, fullSrc, thumbSrc, fullWidth, fullHeight, thumbWidth, thumbHeight) {

   var el = document.querySelector('#thumb' + postId + ' .thumb');
   if (el.getAttribute('src') === fullSrc) {
      el.setAttribute('src', thumbSrc);
      el.setAttribute('width', thumbWidth);
      el.setAttribute('height', thumbHeight);
   } else {
      el.setAttribute('src', fullSrc);
      el.setAttribute('width', fullWidth);
      el.setAttribute('height', fullHeight);
   }
}


Предлагаю уничтожить его физически.

Его наличие в настоящее время вообще ничему не мешает, так как код из 7z-архива >>19204 всё равно переопределяет функцию «expandimg» (на той строке, которая в настоящее время в файле http://kusaba.yakuji.moe/kusabadiff является тысяча пятьсот шестьдесят шестой) именно так, как задумано мною. Но в дальнейшем эти двенадцать строк кода могут кого-нибудь сбить с толку и побудить к сомнениям и тягостным раздумьям об их подлинном смысле, их долге и их предназначении. А это лишнее.
No. 19605    
>>19599>>19580
В самом деле. Поправлено там же.
No. 19610    
>>19605

Очень хорошо.

Руководствуясь соображениями, по адресу https://github.com/WagonOfDoubt/iichan-extensions/pull/11 изложенными, предлагаю отпилить строку «player.muted = true;».
No. 19611    
>>19610>>19580
Принято. Поправки внесены в надежде на то, что требования в ближайшее время не изменятся, и что откат изменений к предыдущей версии очевиден, если использовать >>19204.
Удалить сообщение []
Пароль  
[Mod]