Jump to content

Featured Replies

(D) Blackline Spoiler


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

Порядок установки (всё в АЦ):

1. В строке поиска набираем Editor -> жмем на [System] Settings -> таб Advanced и добавляем класс с именем blacklineSpoiler в первом окошке (Allowed CSS classes), нажимаем Save внизу. 
2. Снова набираем Editor -> жмем [System] Editor Customization -> кнопка Add Button и загружаем файл blackline.zip. После загрузки кнопка (с черной полоской) появится внизу в неиспользуемых, перетащите ее в нужное место. Повторите на всех размерах редактора.
3. В строке поиска набираем Plugin -> жмем [System] Plugins -> жмем ссылку "manual upload" и загружаем файл Blackline spoiler 1.0.0.xml

По умолчанию цвет спойлера и текста черный. Если вам надо поменять цвета, отредактируйте CSS приложения стандартным образом. background-color: цвет спойлера, color: цвет текста, должны быть одинаковые.

В загрузке плагины для CKEditor и IPS. Работают только вместе.

Если что-то непонятно - смотрите картинки.
Актуально для версии 4.6 - 4.7, другие версии по запросу.

 

 


 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/
Share on other sites

Как в телеге не получится оформить?

 

Screenshot_20220726-102349_Telegram.jpg

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183796
Share on other sites

Небольшое предложение: захукать метод getAllowedCssClasses в классе \IPS\Text\Parser и добавить туда blacklineSpoiler, тогда можно будет избавиться от первого пункта. 🙂

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183800
Share on other sites
39 минут назад, HooLIGUN сказал:

Как в телеге не получится оформить?

Задача решалась по ТЗ :) 

3 минуты назад, WaNted сказал:

Небольшое предложение: захукать метод getAllowedCssClasses

Настройка допустимых классов в АЦ специально сделана для того, чтобы не хукать этот метод.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183801
Share on other sites

Еще момент по вашему хуку шаблона. Нежелательно переопределять целый участок кода, т.к. это делает невозможным дальнейшее изменение шаблона. Предлагаю использовать вместо replace способ add attributes и добавить там plugins.blackline в data-controller.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183802
Share on other sites

Можно вообще скрыть текст и поставить фоновое изображение, что-нить типа

.blacklineSpoiler {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background-image: url(ссылка на фон) repeat-x;
}

 

WaNted  да, можно и так, наверное.. Посмотрю вечером.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183804
Share on other sites
31 минуту назад, Desti сказал:

Задача решалась по ТЗ :) 

11 часов назад, Desti сказал:

Жалобы|пожелания - в тему поддержки

 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183805
Share on other sites

HooLIGUN Меняете css на указанный выше, находите подходящий фон без швов и будет вам как в телеге.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183806
Share on other sites

Как рацпредложение: можно было бы предусмотреть режим для тем оформления, которые имеюь переключатель светлая / тёмная. Например, Nexxe.

А для чего вообще нужно скрывать текст?

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183808
Share on other sites
32 минуты назад, Zero108 сказал:

А для чего вообще нужно скрывать текст?

Тоже не пойму зачем? Если бы по каким то критериям,а так не понятно.🤨

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183809
Share on other sites
Только что, Zero108 сказал:

А для чего вообще нужно скрывать текст?

Закрывать спойлеры сюжета в обсуждениях книг\игр\фильмов\сериалов, когда надо скрыть буквально пару слов. У меня форум на тематику видеоигр, это прямо болезненная тема. Иной раз лепят спойлеры концовки в обсуждениях технических проблем игры, а модераторы, которые вынуждены читать вообще всё, воют уже от этих сюрпризов. И тут либо наказывать пользователя каждый раз и терпеть, либо заиметь какой-то суперпростой метод сокрытия пары слов, чтобы даже совсем глупенькие пользовались.

P.S. Спойлеры-контейнеры плохо подходят для случаев, когда нужно буквально одно или два слова закрыть. Оформление у них отлично подходит для сокрытия галереи изображений. И их не особо активно используют из-за этого. А это прям идеально.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183810
Share on other sites
3 минуты назад, Jerriand сказал:

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

Почему спойлеры принято считать болезненным проявлением самовыражения? 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183811
Share on other sites
1 минуту назад, Zero108 сказал:

Почему спойлеры принято считать болезненным проявлением самовыражения? 

А выделение болдом это проявление ЧСВ?

Насчет темных тем или светлых - во первых, плагин к редактору тупой и умеет вставлять только класс. Во вторых, плагин ставит свой css во все темы, так что отредактировать его под темную не очень большая проблема. 

И вообще, кто-нить попробовал поставить? :)

 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183812
Share on other sites
13 минут назад, mamyka сказал:

Если бы по каким то критериям,а так не понятно.🤨

в данном случае, скрытие нужно не для того, чтобы у определённого круга лиц был доступ к его содержимому, а для того, чтобы это содержимое видели только те, кто сами этого хотят. 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183813
Share on other sites
Только что, Desti сказал:

Насчет темных тем или светлых - во первых, плагин к редактору тупой и умеет вставлять только класс. Во вторых, плагин ставит свой css во все темы, так что отредактировать его под темную не очень большая проблема. 

Я вообще в CSS выставил оранжевый цвет, он одинаково хорошо подходит для светлой и тёмной темы. Нужно просто цвет подобрать отличный от чёрного. Светло-серый тоже отлично подходит всем вариантам.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183814
Share on other sites
Только что, Jerriand сказал:

Я вообще в CSS выставил оранжевый цвет, он одинаково хорошо подходит для светлой и тёмной темы. Нужно просто цвет подобрать отличный от чёрного. Светло-серый тоже отлично подходит всем вариантам.

Правда, на 4.3 раскрытие по клику не работает, но сам текст замазывается и его можно увидеть, если выделить мышкой.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183815
Share on other sites
27 минут назад, Jerriand сказал:

на 4.3 раскрытие по клику не работает

зайдите в шаблоны темы, forums-front-topics-topic, найдите там 

<div data-controller='core.front.core.commentFeed...(длинная строка)

и вставьте перед 'core.front - 'plugins.blackline, '

Должно получится

<div data-controller='plugins.blackline, core.front.core.commentFeed...

Как временное решение годится для 4.3, 4.4 и т.д. 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183821
Share on other sites
42 минуты назад, Jerriand сказал:

Правда, на 4.3 раскрытие по клику не работает, но сам текст замазывается и его можно увидеть, если выделить мышкой.

Так так даже привольнее), на моб версии работает?

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183823
Share on other sites
Только что, Desti сказал:

зайдите в шаблоны темы, forums-front-topics-topic, найдите там 

<div data-controller='core.front.core.commentFeed...(длинная строка)

и вставьте перед 'core.front - 'plugins.blackline, '

Должно получится

<div data-controller='plugins.blackline, core.front.core.commentFeed...

Как временное решение годится для 4.3, 4.4 и т.д. 

Сработало! Большое спасибо.

Что любопытно, в сообщениях в темах форума работает, а в статусах нет.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183827
Share on other sites
1 минуту назад, Jerriand сказал:

в сообщениях в темах форума работает, а в статусах нет.

У статусов другой шаблон.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183828
Share on other sites
Только что, Desti сказал:

У статусов другой шаблон.

А не подскажете, как его найти и куда вставить эту строчку? Что-то у меня не получается самостоятельно это сделать, я совсем в этом плане "чайник".

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183844
Share on other sites

сделал себе, надо мб кому-то будет.

как в Discord:

Спойлер

2022-07-26_195636.png.1ea99c6a83eb11f062b6c3bb7c9fd085.png

.blacklineSpoiler {
    background-color: rgb(30, 32, 34);
    color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    cursor: pointer;
}
.blacklineSpoiler:hover {
    background-color: rgb(33, 35, 38);
    color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    cursor: pointer;
}

что-то вроде Telegram:

Спойлер

2022-07-26_201741.png.36ec88865c018248f24c19c142f82b3f.png

.blacklineSpoiler {
    color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    cursor: pointer;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAJ0lEQVQoU2P8////f0ZGRkYGPACvJEwfDRVhcyMNrcMWEgStA7kRANYNDAa7qcwWAAAAAElFTkSuQmCC) repeat;
}
.blacklineSpoiler:hover {
    color: rgba(0, 0, 0, 0);
    border-radius: 3px;
    cursor: pointer;
    background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJCAYAAADgkQYQAAAAJ0lEQVQoU2NcuHDh//j4eEYGPACvJEwfDRVhcyMNrcMWEgStA7kRAMnvCuxRgVhSAAAAAElFTkSuQmCC) repeat;
}

с размытым фоном:

Спойлер

2022-07-26_193907.png.dfcefd094fd58efe13e733e0d0f24ef6.png

.blacklineSpoiler {
    background-color: rgba(0, 0, 0, 0.69);
    color: rgb(0, 0, 0, 0);
    border-radius: 3px;
    filter: blur(3px);
    cursor: pointer;
}
.blacklineSpoiler:hover {
    background-color: rgba(0, 0, 0, 0.44);
    color: rgb(0, 0, 0, 0);
    border-radius: 3px;
    filter: blur(3px);
    cursor: pointer;
}

с размытым текстом:

Спойлер

2022-07-26_194619.png.3252459c13731bef2cecae86e1dcb05a.png

.blacklineSpoiler {
    color: rgb(255, 255, 255);
    border-radius: 3px;
    filter: blur(3px);
    cursor: pointer;
}
.blacklineSpoiler:hover {
    color: rgb(190, 190, 190);
    border-radius: 3px;
    filter: blur(3px);
    cursor: pointer;
}

 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183845
Share on other sites

core-front-profile-profileActivity - те же самые действия в строке

<div data-controller="core.front.statuses.statusFeed"

 

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183846
Share on other sites
Только что, Desti сказал:

core-front-profile-profileActivity - те же самые действия в строке

<div data-controller="core.front.statuses.statusFeed"

 

Вроде бы, всё правильно сделал, а не сработало.

<div data-controller="plugins.blackline, core.front.statuses.statusFeed">

 

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

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183848
Share on other sites
10 минут назад, Jerriand сказал:

А вот если статус выводится на главную, то там не работает.

Ну так там тоже другой шаблон.. Сейчас занят, мож кто другой поможет.

Link to comment
https://ipbmafia.ru/topic/24634-d-blackline-spoiler/?&do=findComment&comment=183855
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.


Guest
Ответить в этой теме...

Последние посетители 0

  • No registered users viewing this page.