[Hide Content] Дополнение к моду

Автор Dark Wizard, 06 декабря 2015, 15:27:27

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Dark Wizard

Мод: http://custom.simplemachines.org/mods/index.php?mod=4013 под SMF 2.0.11

На своём старом форуме я дописывал такой функционал в парсер. Перейдя на smf хотелось бы реализацию в моде. Что нужно:

1) Небольшое улучшение - возможность прятать группы для поля "Hide by group". У меня 20+ групп, но эта функция нужна только для четврёх основных. Лучше всего добавить настройки в админке (рядом с выбором отмеченных групп по-умолчанию)




2) Второе и основное улучшение - создание BB кодов (вернее тегов), базирующихся на группах (это как раз то, что я сделал в своём старом PunBB форуме).

На больших форумах бывает очень много групп (у меня больше 20), и иногда нужно добавить новые или изменить существующие. Смысл в том, чтобы хайды от нашего мода не зависели от изменений групп. Моя идея - в создании редактируемых тегов типа "Клан" или "Рейд лидер", для примера (лучше чтобы можно было создавать/редактировать эти теги), у них две настройки:

- список групп которые входят в этот тег
- список групп, которые этот тег может видеть (или лучше просто другие теги, которые этот тег может видеть)

Для примера, у нас есть 5 групп: игроки (1), клан (2), ветеран (3), офицер (4), лидер (5). Мы создаём 3 тега: "гильдия", "рейд лидер" и "мастер".

1) список тегов-групп, кто куда относится (группы не дублируются, каждая группа только к одному тегу):
гильдия: клан (2), ветеран (3)
рейд лидер: офицер (4)
мастер: лидер (5)

2) список групп, которые эти теги могут видеть:
гильдия:  игроки (1), клан (2), ветеран (3)
рейд лидер: игроки (1), клан (2), ветеран (3), офицер (4)
мастер: игроки (1), клан (2), ветеран (3), офицер (4), лидер (5)

Т.е. мастер может видеть весь скрытый текст для всех групп, рейд лидер видит текст для клана и рейд лидеров и так далее.

Такая реализация позволяет не зависеть от id групп в сообщениях (я всегда могу изменить видимость всех старых сообщений в любое время для любых групп), я всегда смогу добавить новые или удалить старые группы (сейчас код типа "[hide group=9]999[/hide]" не будет работать если я изменю группы). И я могу в свою панельку bb кодов добавить всего одну кнопку, например "Клан" (работающую по аналогии с кнопкой "жирный текст": [clan]текст[/clan]) - это намного быстрее и удобней, чем галочками отмечать группы в всплывающем окошке.

Думаю, такой функционал многим пригодится, готов проспонсировать разработку, пишите сюда или в ЛС.

Dark Wizard

Никто не возьмётся? Видно придётся искать на англоязычном форуме...

Mavn

если это платно могу перенести данную тему в другой раздел... возможно вы просто тему не в том разделе создали
бесплатно скорее всего пилить никто не будет
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

kak2z

Цитата: Dark Wizard от 07 декабря 2015, 20:26:00Никто не возьмётся? Видно придётся искать на англоязычном форуме...
теоретически я могу попробовать... но не раньше чем на следующей неделе, даже наверно к концу следующей недели.. ..
Если нужно что то исправить, обновить, переставить, настроить, сделать форум заново - пишите в ЛС)

Dark Wizard

kak2z, хорошо, я никуда не спешу.

Mavn

переношу в раздел Предложения о работе???
SimpleMachines Russian Community Team
п.1 Пройду курсы гадалок для определения исходного кода по скриншоту.

п.2 У вас нет желания читать правила раздела, у меня нет желания одобрять темы, которые не соответствуют этим правилам.

Dark Wizard

Цитата: Mavn от 07 декабря 2015, 22:37:01переношу в раздел Предложения о работе???

Да, просьба перенести в раздел предложений о работе.

Dark Wizard

По основной второй доработке, как я себе это представляю:

1) на странице настроек плагина (можно отдельную вкладку добавить) - hidetags
- поле для добавления нового хайд тега
- список существующих хайд тегов с краткой информацией и ссылкой на редактирование

2) страница создание/редактирования хайд тега:
- редактирование названия хайд тега (например: "clan")
- редактирование надписи для скрытого теста: (например: "Только для группы Клан")
- вывод списка форумных групп, галочкой отмечаем, какие группы будут относиться к этому хайд тегу
- вывод списка хайд тегов, галочкой отмечаем, какие ещё хайд теги будет видеть редактируемый хайд тег
- возможно галочка, отображать ли кнопку в панели редактирования сообщения
- кнопка сохранения изменений


Алгоритм работы:

1. Пишем сообщение, например, [clan]123[/clan] (в идеале для каждого хайд тега будет BB кнопка, при клике на которую в форму вставится, например,  [clan][/clan],  т.е. название хайд тега)

2. При просмотре, перед выводом сообщения парсим его

2.1. Получаем id группы пользователя

2.2. Получаем список хайд тегов из базы

2.3. Запускаем цикл по каждому хайд тегу

2.3.1. Если у нас присутствует этот хайд тег в сообщении, создаём массив видимости этого хайд тега

2.3.2. Добавляем группы привязанные к этому хайд тегу в массив видимости

2.3.3. Если у нас есть привязанные другие хайд теги (входящие) к этому хайд тегу, запускаем цикл по каждому

2.3.3.1. Добавляем привязанные группы к входящему хайд тегу в массив видимости

2.3.4. Получили полный массив видимости для хайд тега.

2.3.5. Если id группы пользователя входит в этот массив, то показываем этот текст. Иначе заменяем текст в текущем хайд теге ([clan]текст[/clan]) на надпись "Скрытый текст: (надпись)", например: "Скрытый текст: Только для членов Клана".

2.4. Закончили обработку, выводим обработанный текст на веб страницу.


Ничего сложного, могу блок схему нарисовать...



Dark Wizard


Dark Wizard

Digger, хочу выразить благодарность за отлично созданный мод. Долго, но совсем недорого и очень профессионально. Учли все пожелания и сделали около 20 доработок. 100% соответствие задумке. Огромное спасибо! Рекомендую!

digger®

Цитата: Dark Wizard от 04 марта 2017, 16:58:46Digger, хочу выразить благодарность за отлично созданный мод. Долго, но совсем недорого и очень профессионально. Учли все пожелания и сделали около 20 доработок. 100% соответствие задумке. Огромное спасибо! Рекомендую!
Спасибо за отзыв.

gorbi

Цитата: Dark Wizard от 04 марта 2017, 16:58:46Digger, хочу выразить благодарность за отлично созданный мод. Долго, но совсем недорого и очень профессионально. Учли все пожелания и сделали около 20 доработок. 100% соответствие задумке. Огромное спасибо! Рекомендую!
Покажите красоту!

Dark Wizard

Цитата: gorbi от 04 марта 2017, 18:49:51Покажите красоту!

https://bitbucket.org/realdigger/smf-custom-hide-tags/

выглядит так:



и удобные кнопки в редакторе, чтобы сразу прятать под хайд:



В двух словах - тот же модуль хайда, но в любой момент можно переопределить группы и сделать новые зависимости и оформление.