Пост в рамках инициативы по разработке в стиле DAO. Голосуя за этот пост вы увеличиваете "баунти" награду тому кто выполнит эту задачу.
Сделать её может как один разработчиков Голоса, так и любой желающий - код Голоса открыт и доступен всем на гитхабе. После начала выплат я переведу все собранные за этот пост золотые тому кто выполнит эту задачу. А так же он сможет создать пост о её завершении и получить награду за него. Если вы беретесь выполнить эту задачу, отметьтесь в комментариях, для того что-бы уменьшить вероятность того, что два человека будут делать её одновременно.
Ссылка на задачу #179 в гитхабе.
Описание
В случае копирования ссылок, например из википедии, к ним часто присоединяется тэг ins (подчеркивание).
При попытки записать такой пост выдается ошибка:
"Пожалуйста удалите эти HTML элементы из вашего поста: ins"
Идеальным вариантом будет если мы просто внесем этот тэг в список разрешенных, ведь он совершенно безобиден, но даст больше простора для визуального оформления постов.
Или же нужно вместо вывода сообщения, просто молча и автоматически удалить эти тэги из текста.
Новичка эта ошибка вводит в ступор, ведь вряд ли он догадается, что надо зайти в просмотр исходного кода, выявить где там появился неожиданно какой-то загадочный "HTML элемент" и удалить его там. Уверен, что часть новичков просто забивают и уходят из Голоса ругаясь на его безумно неудобный редактор.
Конечно есть шанс, что эта проблема будет решена в "новом редакторе стима" когда он появится, но мы не знаем сколько времени займет его разработка, а авторов на этом неудобстве интерфейса мы теряем уже сейчас.
Update:
Задача успешно решена (надеюсь) благодаря подсказке @michael о том, где искать это в коде и моей паре кликов мышки. =)
Тэг ins добавлен в разрешенные.
Пост о результате, дабы соблюсти формальность и отработать шаблоны, я наверно тоже сам напишу (через полчасика), если @michael не возражает. А золотые с него опять же переведу ему. =)
И нашел еще один баг =) в процессе написания, если ник написать @michael те болдом (а копи-паста часто вставляет его именно так), а @ не болдом, то как упоминание он не срабатывает (что логично с технической точки зрения так как в HTML коде это выглядит как ник прерываемый тэгом), но обычному человеку не хочется думать о таких сложностях, ему хочется что-бы все работало. Есть желающие оформить этот баг как задачу и пост?
Мотивируем @misha фиксить баги=))
По сабжу есть еще парочка тегов, после которых вылезает та же ошибка(на вскидку не помню), поэтому я и рекомендую всем юзать Markdown - там накосячить с HTML в принципе не возможно
Да Я с Вами согласна.
Остальные теги по аналогии пофиксить будет делом 5 минут, тут главное найти место где это фиксится =)
Вот тут:
https://github.com/GolosChain/tolstoy/blob/develop/app/utils/SanitizeConfig.js
@misha Я в принципе вроде даже выбрал в голове оптимальный по простоте и понятности способ обхода 5 - завтра думаю его распишу и обсудим.
@misha - да я знаю что 5 ограничено в блокчейне, но я знаю штук пять способов как это обойти на стороне клиента - вопрос только выбрать и реализовать :)
А я даже и не задумывался про это, если честно
@misha Поисковики не ругаются на неправильный ins 100% могу сказать как специалист :)) Они вообще крайне толерантны к "неправильному" использованию тэгов. :)
Но совет спросить хуже не будет конечно и да не обязательно его сразу закрывать, главное слишком не затягивать с тривитальный проблемой. Ок по наградам 75 на 25% :)
Сдедующее Баунти я оформлю на глубину 5 - безумно всех бесит :))
Это ограничение блокчейна, так прописано в конфиге.
Инфа от @litvintech
Ну ты же про него узнал =) Это как в анекдоте про ремонтника бойлера - стукнуть молоточком $1 - знать куда стукнуть $99 =)
Те перевожу все Мише?
Пока у вас было это обсуждение, я писал коммит добавляющий тэги ins и del.
Но, пока решил их не добавлять. Сначало спрошу совета у коллег из стимита, не было ли у них проблем с этими тэгами и почему они его не добавили в список разрешенных. Малоли, может поисковики ругаются на то, что html не валидный при использовании del без ins.
Кстати, вот тебе и прецедент, @dr2073, не закрывай задачи пока код не будет написан и принят в репозиторий Голоса. А то как-то не разумно получается.
И, если мне награда достанется, предлагаю отдать четверть @michael, за честность. Он прямо сказал о том, что ни строчки кода не написал, а мог бы утаить, и присвоить себе награду.
Я думаю 99% проблем решит просто разрешение тэга, а если что потом и атрибуты добавим.
Ок - добавил и закрываю задачу - баунти фактически уходит тебе - так как ты с-но сделал 99% работы.
Пост о результате, дабы соблюсти формальность я наверно тоже сам напишу, если ты не возражаешь. А золотые с него опять же переведу тебе. =)
Разумеется, я возражаю! Я же ни строчки кода не написал)) А про этот файл я от @misha узнал
Те просто добавляем его в allowedTags и сайт перестанет ругаться?
Теоретически да, но на самом деле у тега ins могут быть еще и атрибуты - их надо отдельно разрешать в том же файле)
http://htmlbook.ru/html/ins
Откуда вообще новички знают о теге ins?
В приведенном примере
тег ins используется семантически неправильно (т.к. не соседствует с тегом del, который, кстати, тоже запрещен в местном HTML-редакторе) - для простого подчеркивания лучше использовать тег u (он тоже запрещен в местном HTML-редакторе, но есть markdown-аналог).
Вообще так задолбаешься на каждый неразрешенный безобидный HTML-тег issue создавать...
Наша задача создать удобство пользователям, что-бы голова о том какие теги бывают, как их неправильно где-то используют и тп болела не у них, а у нас =)
Достаточно пофиксить этот тег и дальше исправление остальных будет рутинной задачей добавления пары строчек кода в понятное место кода =)
Новички же о нем ничего не знают, но они часто копируют ссылки, а ссылки иногда содержат этот код, например в случае википедии или фейсбука.
Лучше внести в список разрешенных.
Да я тоже поддерживаю этот вариант, но теоретически в этом могут быть какие-то подводные камни, о которых я не догадываюсь. Просто его удалять чуть-чуть более безопасное решение.
А нельзя ли к надписи ""Пожалуйста удалите эти HTML элементы из вашего поста: ins"" также в сплывающем окне сделать подсказку, как удалить: зайдите туда-то и сделайте так-то (как у тебя на картинке)
А зачем усложнять и кушать мозг авторам - им вообще надо знать о том что мол там какой-то тег лишний?
Им надо: нажал -> опубликовалось -> profit =)
Вам виднее.