Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Сделаем сервис лучше » Проект нововведений: темы стилей, Php-хуки и не только.


Проект нововведений: темы стилей, Php-хуки и не только.

Сообщений 1 страница 17 из 17

1

Когда-то давно я создал тему Неглобальные доработки движка MyBB (с предложениями по PHP реализации), и весь функционал оттуда уже либо был реализован, либо мы решили его не делать, часть их которых делал лично я...

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

Отдельно упомяну: это проект. Это значит, что всё, что здесь приведено — это предмет для обсуждения, которые могут быть изменены перед конечной реализации (и, скорее всего, будут). Вы можете оставлять свои предложения и отзывы!

Ну, поехали!

Добавлено спустя 1 день 9 часов 8 минут 24 секунды: Для отслеживания изменений в этом тексте, я сделал репозиторий kozhilya/mybb-ru-updates. В нём будет всё то, что есть здесь, просто можно будет смотреть по изменениям основной ветки, какие изменения были в этим текстом :D

1. Стили (статус: обсуждение)

Эти изменения будут полезны, в первую очередь, для форумов, использующие свой стиль с несколькими темами. Огромное количество ролевых форумов используют эту идею, и все реализации в той или иной степени костыльные и не без проблем.

Демонстрация проблемы, которую предлагается решить

1.1. Настройки (Администрирование - Свой стиль)

  • Использовать свой стиль: да/нет (существует сейчас как поле "Свой стиль").

  • Использовать стандартный extra.css: да/нет (существует сейчас как опция в "Свой стиль").

  • API-настройка темы стиля (Новое): короткое поле ввода, допустимы только символы латинского алфавита, дефис и подчёркивание (регулярка [a-zA-Z\-_]+). Настройка отключается, если поле пустое.

  • Структура style.css (без изменений)

  • Структура style_cs.css (без изменений)


1.2. Темы форума

Идея в том, что администратор форума может выделить одно из полей API-настроек пользователя так, что бы оно включалось как дата-атрибут тега <body> (возможно сделать к <html>?).

Пример

Пусть админ введёт в поле "API-настройка темы стиля" это значение как forum-style, после чего, используя один из распространённых скриптов переключения стиля, устанавливает API-настройку пользователя запросом:

/api.php?method=storage.set&token=***&key=forum-style&value=example_theme

Тогда для этого пользователя форум будет генерировать для страниц форума код

<body data-forum-style="example_theme">...</body>

И администратор может стилизовать эту тему, используя префиксом селектор атрибута

[data-forum-style="example_theme"] .post-content { ... }

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


1.3. Дополнительные расширения на обсуждение

  • Список допустимых значений — сам по себе мало полезен

  • Встроенный в движок скрипт переключения стилей — список допустимых значений теперь поможет сформировать список значений сюда.

  • Отдельные таблицы стилей для разных тем — требует сильного изменения бек-енда формирования стилей, я лично не думаю, что это стоит реализовывать.
    Речь идёт про использование таблицы style.css для общих элементов стиля, style_example_theme.css для темы "example_theme", style_another_theme.css для темы "another_theme" и т.д. Потребует список допустимых значений.

  • Возможность включить ротацию темы по времени — слишком нишево, потребует использование crontab на бек-енде.

2. PHP-хуки (статус: обсуждение)

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

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

Идея в том, что бы сделать систему, аналогичную Discord или Github... Я ещё подумаю над тем, что бы сделать систему хуков полностью совместимую с этими сервисами, честно, я не задумывался об этом, когда писал черновик :D


2.1. Манифест

JSON на внешнем сервисе, сообщающий о создателе, его контактах, ссылки для техподдержки и том, какие изменения проверяются внешним сервисом.

Структура:

  • name — строка, отображаемое в админке название;

  • description — строка, описание хука;

  • link — строка, ссылка на полное описание;

  • version — строка, информация о версии;

  • author — строка, имя создателя;

  • receiver — строка, полный URL скрипта на внешнем сервисе, который будет обрабатывать входящие хуки;

  • hooks — массив строк, содержащий список всех.


2.2. Работа хука

Хуки бывают 2 видов: перед событием (before) и после него (after). Скорее всего, я пока не планирую хуки перед событием, так как они нужны, что бы заранее изменить входящие данные, и я не вижу, как и зачем это нужно: это можно делать через JS перед отправкой формы

Хук совершает curl-запрос по адресу, указанном в манифесте в поле reciever. Данные передаются методом POST, таймаут запроса 10 секунд.

Данные всегда имеют эти поля, в дополнение к указанным в п. 2.3:

  • forum_id — число, id форума, посылающего хук;

  • event — строка, событие, из-за которого создан хук;

  • data — объект, данные о конкретном хуке.


2.3. Хуки

2.3.1. Создание хука (hook.register)

Создаётся после того, как хук был зарегистрирован или обновлён в системе

Данные хука:

  • url — строка, URL форума (основной домен);

  • title — строка, Название форума.

2.3.2. Регистрация пользователя (user.create)

После регистрации пользователя

Данные хука:

  • user_id — число, id нового пользователя.

2.3.3. Изменение пользователя (user.edit)

После изменения профиля пользователя

Данные хука:

  • user_id — число, id изменённого пользователя.

2.3.4. Создание сообщения (message.post)

После создания нового сообщения

  • post_id — число, id нового сообщения;

  • author_id — число, id автора сообщения;

  • topic_id — число, id темы, в котором было создано сообщение;

  • forum_id — число, id форума, в котором было создано сообщение.

2.3.5. Редактирование сообщения (message.edit)

После изменения сообщения (втч перемещения)

Данные хука:

  • post_id — число, id изменённого сообщения;

  • author_id — число, id автора исходного сообщения;

  • editor_id — число, id пользоватлея, редактирующего сообщение;

  • topic_id — число, id темы, в котором было создано сообщение;

  • forum_id — число, id форума, в котором было создано сообщение.

2.3.6. Удаление сообщения (message.delete)

После создания нового сообщения

Данные хука:

  • post_id — число, id удалённого сообщения.

2.3.7. Оценка сообщения (message.rate)

После создания нового сообщения

Данные хука:

  • post_id — число, id оценённого сообщения;

  • author_id — число, id пользователя, чьё сообщение было оценено;

  • sender_id — число, id пользователя, кто оценил сообщение$

  • change — число, значение оценки (+1 или -1).

3. BB-теги (статус: обсуждение)

3.1. Исправление: дефис в атрибутах

kolobdur74 написал(а):

kozhilya, кстати во время разработки вкладок вв-кодом столкнулся с тем, что не хватает возможности добавления предустановленных атрибутов. Хотел реализовать вкладки через input и label, но пришлось отказаться. Но это так, а вот, то что в классах нельзя использовать дефис или подчеркивание - это неудобно, то есть так работать не будет: acont[div.window.active-vkladka/data-content]:im, а вот так работает: acont[div.window.activevkladka/data-content]:im. В принципе тоже не критично))

3.2. Исправление: пустые параграфы в заголовках спойлеров

Проблема возникает в заголовках спойлеров, которые имеют тег [align]. Это баг из предыдущего изменения, который никто не решился исправить. Что ж, я его породил, мне его и удалять :D

Пример

Пусть имеется исходный bb-код

[spoiler="[align=center]Пример[/align]"] ... [/spoiler]

Парсер его модифицирует как:

<div onclick="$(this).toggleClass('visible'); $(this).next().toggleClass('visible');">
</p>
<p style="text-align:center;">Пример</p>
<p>
</div>

3.3. Тег [kbd]

Для того, что бы вставлять bb-код в строке.

3.3.1. Пример

Исходный код:

Код:
Используй тег [kbd][b]имя[/b][/kbd], что бы выделить имя жирным.

HTML-код:

Код:
<p>Используй тег <kbd>[b]имя[/b]</kbd>, что бы выделить имя жирным.

Вообще, конечно, <code> был бы корректнее... Но [code] уже занят просто капитально xD

3.3.2. Добавление в форму ответа

https://i.imgur.com/3r53cCE.png

3.4. Обновление страницы /help.php

Произвести обновление страницы /help.php

3.4.1. Добавить основную вёрстку форума
... Потому что сейчас её нет. И на кастомных дизайнах это выглядит... Странно.

3.4.2. Обновить со всеми новыми тегами
Я сам полезу

3.4.3. Возможно

  • Окно для описания кастомных bb-кодов

  • Дополнительные страницы и навигация между ними

4. Изображение темы (статус: обсуждение)

Добавить изображение для темы, которое будет добавляться в meta-теги темы, которая позволит сделать отображение ссылки на тему в социальных сетях и месcенджерах красивее.

Из самой большой проблемы, которую я вижу сейчас: потребуется изменение структуры БД, правда, незначительное: новый столбец в таблице тем, типа "VARCHAR(255)", значение по умолчанию — пустая строка.


4.1. Форма ответа

При изменении темы, если доступно изменение темы (в частности, есть поле "Название темы") перед формой ответа добавляется дополнительное текстовое поле "Изображение темы".


4.2. Список тем

Код:
<td class="tcl tcl-image">
  <div class="intd">
    <div class="icon"><!-- --></div>
    
    <!-- Новое -->
    <div class="image">
      <img src="https://placehold.co/600x400" alt="Название темы">
    </div>
    <!-- Конец нового -->
    
    <div class="tclcon">
      <span class="acchide">1</span>
      <a href="https://forum.mybb/viewtopic.php?id=123">Название темы</a> 
      <span class="byuser"> kozhilya</span>
    </div>
  </div>
</td>

tcl-image — класс для обозначения, что у темы есть изображение.


4.3. Мета-теги

Код:
<meta property="og:title" content="Название темы">
<meta property="og:url" content="https://forum.mybb/viewtopic.php?id=123">
<!-- Новое -->
<meta property="og:image" content="https://placehold.co/600x400">
<meta property="og:description" content="Тут будут первые 100 символов сообщения, из которого удалены все html-теги, используя php-метод strip_tags">
<meta property="og:type" content="article">
<!-- Конец нового -->

4.4. Основное изображение

Дополнительное поле в "Администрирование - Настройки" - "Основные".

  • Баннер форума — Изображение, которое будет добавляться в карточки в мессенджерах, когда вы добавляете ссылку на форум.

Это изображение будет добавляться в <meta property="og:image"> на всех страницах, если на странице нет другого релевантного изображения ()

5. Скрипты (статус: обсуждение)

Идеи по включению популярных скриптов в "Администрирование - Скрипты"


5.1. Стрелочки прокрутки

Популярный скрипт, который используется на многих форумах.

Опции:

  • Показывать стрелку "В конец страницы" — да/нет;

  • Всегда показывать стрелки — да/нет, если "нет", то стрелка "вверх" будет скрываться, если страница прокручена в начало (как на этом форуме).


5.2. Переключение стилей

В дополнение к обновлению в п. 1.

Опции:

  • Список вариантов — многострочный список, возможно, брать список из "Список допустимых значений" (см. п. 1.3).


5.3. Быстрый вход

Используется на многих форумах как "PR-вход". Добавляет пункт в pun-navlinks.

Опции:

  • id пользователя — id-пользователя, быстрый вход в которого будет происходить.

Потребует дополнения в PHP, который позволит вход без ввода пароля... Ну либо добавить опцию "пароль" :D

6. API (статус: обсуждение)

Набор изменений, предлагаемых в системе API

6.1. Метод boart.setSettings

Использовать для передачи настроек в JavaScript-переменную, которая будет установлена в <head>.

Параметры:

  • token — Значение необходимо брать из JavaScript переменной ForumAPITicket. Обязательный параметр.

  • data — JSON настроек.

Главная проблема, которую я тут вижу: вопрос безопасности. Какие аккаунты должны иметь право на установку этого значения?

Отредактировано kozhilya (Вс, 9 Июл 2023 13:17:17)

+5

2

Забыл добавить п. 5

0

3

kozhilya написал(а):

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

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

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

Про длину строки под объект в ява скрипт переменных форума:(для теста наличия новых уведо)
По идее сейчас в яваскрипт переменных те же доп. поля могут быть длиной до 1 кб... а их типично используют до 5 штук... (По ранним прикидкам ещзё с Alex_63 два с половиной кб отведённых под такой объект в ява скрипт переменных (устанавливаемых пользовательских скриптом, который сейчас пока только  заполняет инфу в новостном(ключе) API) - было б отличным решением

0

4

Deff написал(а):

Ну ващет, если про скрипт уведомлений ,то как раз инфа о новых сообщениях не сканирует так часто, а использует отправку формы ответа, временной цикл используется для теста наличия инфы о новых в API и передачи пользователям

Опять-таки, костыль :D

Deff написал(а):

Избежать сканирования можно было б если была бы возможность установки скриптом о новостях некого объекта в ява-скрипт переменных форума, тогда в объект помещается инфа, что в новостном API произошли изменения, и скрипт не сканирует а запоминает и тестирует обновился ли объект в ява-скрипт переменных иль нет...

По идее сейчас в яваскрипт переменных те же дом поля могут быть длиной до 1 кб... а их типично используют до 5 штук... (По ранним прикидкам ещзё с Alex_63 два с половиной кб отведённых под такой объект в ява скрипт переменных (устанавливаемых пользовательских скриптом, который сейчас и заполняет инфу в новостном API) - было б отличным решением

М... Ну, я предлагаю примерно тоже самое, только что бы Mybb сам отправлял инфу о том, что что-то изменилось, так что сканирования по расписанию как раз и не будет.

Я не помню где, но я писал, что я категорически не согласен с тем, что вы храните инфу об уведах в API-настройках гостей. Но, это дело ваше, и это не входит в мои идеи и предложения (по крайней мере, пока что).

+1

5

kozhilya
Ну думай сам, но вот вариант объект в ява скрипт переменных устанавливаемый через метод в API весьма нужная вещь не только для уведо ( вообщем просили сделать ещё Макса в 2015, паровоз стоит до сих пор, kernel тож обещал больше года назад,( хотя без конкретных сроков)

0

6

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

+1

7

kozhilya написал(а):

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

Ну к примеру реализовать новый метод в API - setobj(), который устанавливает в ява скрипт переменных объект передаваемый в методе,
сервер тестит что это строковый объект -  JSON.stringify(obj)  и длина его не превышает 2.5-3 кб  и ставит в яваскрипт переменных форума

+1

8

kozhilya написал(а):

Демонстрация проблемы, которую предлагается решить

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

+1

9

4. Изображение темы
опа, какая интересная фича.

есть несколько идей.

1. если уж делаем функционал добавки картинки, то мб сделать также добавку кастомной иконки?
ибо на других движкае есть расширения, позволяющие менять иконку для конкретного топика. на майбб это вот такими скриптами пытались делать: Дополнительные иконки для тем и сообщений
предлагаю с этим морочиться только, если это можно сделать по аналогии, без того, чтобы сильно пыхтеть.
и в таких топиках на странице списка тем нужен будет доп.класс, например, <tr class="altstyle isticky custom"> - чтобы можно было на свой вкус заменять стандартную иконку на кастомную или как-то выделять ее в зависимости от типа топика.

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

3. полезная штука - возможность установить картинку по умолчанию, если не загружена кастомная.

4. было б круто сделать опцию для админов - позволять/не позволять пользователями добавку своих картинок (а то мало ли чего понавставляют)
причем желательно - по группам. или хотя бы опция "все пользователи" или "только админы и модеры".

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

0

10

про Хуки - ничего не могу сказать, это на эльфийском. :)

#p185945,kozhilya написал(а):

3.3. Тег [kbd]

т.к. форма ответа не резиновая неплохо было бы вкорячить его вставку туда же, где и многострочный код.
как-то так:
https://i.imgur.com/3r53cCE.png
не вкорячивать - на мой взгляд, не вариант. у нас и так уже много "неанонсированных" бб-тегов, про которые знают тока те, кто на ЕФП тусуются.

kozhilya написал(а):

5.1. Стрелочки прокрутки

я бы предложила опциональную вставку своего контента в блок стрелочки в формате HTML
кто-то может изи картинку запихнуть (для новичков это преимущество, им сложно вставлять их через стиль)
а кто-то может вставить надпись или кастомные иконки типа Font Awesome

kozhilya написал(а):

5.3. Быстрый вход

если уж встраивать популярные скрипты, то предлагаю
1. добавление нескольких пользователей (у многих есть аккаунт "читателя")
2. на многих форумах стоят скрипты, который запрещает такому юзеру менять профиль и использовать ЛС - почему бы не навернуть туда же и это. тока, конечно, опционально.

вроде, везде, где смогла, влезла :)
остальное - круть крутецкая. замечаний/предложений нет, просто пускаю слюни. :)

0

11

Герда написал(а):

страница переадресации. на ней никакие скрипты из хтмл-форм не работают, хоть ты тресни.

А зачем она вообще нужна ? Лишь замедляет общение ? Какие у тьву есть обоснования её наличия ?

Страница переадресации была введена на начальном этапе сервиса для снижения нагрузки на сервер, когда серваков было мало и оне были медленные, задержка отправки форм за счет страницы  позволяла снизить кол-во запросов в минуту, к 2012 она уже представляла собой атавизм типо аппендицита у челов

-1

12

Deff написал(а):
Герда написал(а):

страница переадресации. на ней никакие скрипты из хтмл-форм не работают, хоть ты тресни.

А зачем она вообще нужна ? Лишь замедляет общение ? Какие у тьву есть обоснования её наличия ?

Страница переадресации была введена на начальном этапе сервиса для снижения нагрузки на сервер, когда серваков было мало и оне были медленные, задержка отправки форм за счет страницы  позволяла снизить кол-во запросов в минуту, к 2012 она уже представляла собой атавизм типо аппендицита у челов

Если человеку аппендицит не нужен, то это не значит, что с ним вообще ничего не надо делать всю жизнь.

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

+1

13

Герда написал(а):

1. если уж делаем функционал добавки картинки, то мб сделать также добавку кастомной иконки?
ибо на других движкае есть расширения, позволяющие менять иконку для конкретного топика. на майбб это вот такими скриптами пытались делать: Дополнительные иконки для тем и сообщений
предлагаю с этим морочиться только, если это можно сделать по аналогии, без того, чтобы сильно пыхтеть.
и в таких топиках на странице списка тем нужен будет доп.класс, например, <tr class="altstyle isticky custom"> - чтобы можно было на свой вкус заменять стандартную иконку на кастомную или как-то выделять ее в зависимости от типа топика.

А эмодзи первым символом в названии темы не сработает?
https://i.imgur.com/mVUrknt.png
Хм... Не полностью, впрочем...

Герда написал(а):

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

Согласен, включу в черновик

Герда написал(а):

3. полезная штука - возможность установить картинку по умолчанию, если не загружена кастомная.

Согласен, причём, скорее, как изображение по умолчанию вообще для всех страниц форума, например, главной... Потому что они тоже сейчас без картинок.

Герда написал(а):

4. было б круто сделать опцию для админов - позволять/не позволять пользователями добавку своих картинок (а то мало ли чего понавставляют)
причем желательно - по группам. или хотя бы опция "все пользователи" или "только админы и модеры".

Я пока не думаю, что эта фича стоит того... Потому что лично я не представляю, как часто эта настройка будет отличаться от тех, кто может создавать/редактировать тему...

Герда написал(а):

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

Ну, учитывая, что всё это будет в форме-ответа, а вставлять надо будет ссылку...

Герда написал(а):
kozhilya написал(а):

3.3. Тег [kbd]

т.к. форма ответа не резиновая неплохо было бы вкорячить его вставку туда же, где и многострочный код.
как-то так:
https://i.imgur.com/3r53cCE.png
не вкорячивать - на мой взгляд, не вариант. у нас и так уже много "неанонсированных" бб-тегов, про которые знают тока те, кто на ЕФП тусуются.

Да, вкорячивать 100% надо. Такой вариант мне, в целом, нравится.

Герда написал(а):
kozhilya написал(а):

5.1. Стрелочки прокрутки

я бы предложила опциональную вставку своего контента в блок стрелочки в формате HTML
кто-то может изи картинку запихнуть (для новичков это преимущество, им сложно вставлять их через стиль)
а кто-то может вставить надпись или кастомные иконки типа Font Awesome

Ну, эти 3 варианта делаются и через CSS: {width;height;background} для картинок; :before{content} для текста и :before{font;content} для Font Awesome... Надо подумать.

Герда написал(а):
kozhilya написал(а):

5.3. Быстрый вход

если уж встраивать популярные скрипты, то предлагаю
1. добавление нескольких пользователей (у многих есть аккаунт "читателя")
2. на многих форумах стоят скрипты, который запрещает такому юзеру менять профиль и использовать ЛС - почему бы не навернуть туда же и это. тока, конечно, опционально.

1. уф... я без идей, как-то разумно вписать в этот скрипт :D
2. Согласен

0

14

Обновил первое сообщение!

Список изменений

+1

15

Герда написал(а):

не вкорячивать - на мой взгляд, не вариант. у нас и так уже много "неанонсированных" бб-тегов, про которые знают тока те, кто на ЕФП тусуются.

мне видится правильным решением встраивание на сервисе wysiwyg bbcode редактора (опционально естественно) WysiBB или SCEditor

+1

16

Romych
Опустим то, что WysiBB не обновлялся 6 лет...

Как человек, который долго пытался прикрутить это к Mybb... Главная проблема с визуальным редактором в том, что HTML-структура наших блочных кодов - это жуть, которая ломает редактор.

Если у кого-то есть время и силы адаптировать всё так, что бы вёрстка внутри редактора соответствовала вёрстке форума, что бы работали все кастомные стили - be my guest, но я точно пас, ибо работы там реально дофига.

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

+2

17

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

Удобным вариант был бы новый метод в API - setobj(), который устанавливает в ява скрипт переменных объект передаваемый в методе,
сервер тестит что это строковый объект -  JSON.stringify(obj)  и длина его не превышает 2.5-3 кб  и ставит в яваскрипт переменных форума

Пример(показан нижний кусок ява скрипт переменных форума в <head> с новой вставкой):

...
var objforAutorscript = '{"объявление":"всем сдать мочу на анализ!","forUserId_20":"Вам можно не сдавать(по блату)"}';
var RequestTime = 1692567827;
var StaticURL = 'https://forumstatic.ru';
var AvatarsURL = 'https://forumavatars.ru';
var FilesURL = 'https://forumstatic.ru';
var ScriptsURL = 'https://forumscripts.ru';
var UploadsURL = 'https://forumupload.ru';
</script>

+1


Вы здесь » Единый форум поддержки » Сделаем сервис лучше » Проект нововведений: темы стилей, Php-хуки и не только.