Material Admin

[v1.1.5.4] Material Admin - рефорк SB++ 1.5.4.7

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,501
Вроде не закрывали ни разу пока. Лишь скрывали от глаз на некоторое время.
 

EZZY

Участник
Сообщения
377
Реакции
74
Привет) как через МА правильно забанить группу? Добавляю бан, обновляет и далее не чего не происходит.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,503
Этот функционал не трогался вообще. Нужно смотреть, что там не так.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,504
Переход на "версию для разработчиков" со стабильной
Тем временем, пока "версия для разработчиков" получает небольшие плюшки и фиксы тех или иных ошибок, стабильная остаётся без изменений, поскольку некоторые внедрённые фичи либо не оттестированы тщательно, либо могут вызывать проблемы с работоспособностью веб-панели.
Если Вы читаете этот пост до сих пор, значит Вы действительно настроены на обновление на "версию для разработчиков", и Вы готовы репортить по любой возникшей проблеме на GitHub.
Переход на 1.1.6-dev займёт не много времени.

Для начала, убедитесь, что у Вас версия PHP 5.5 и выше.
  1. Сделайте бэкап базы данных и всех файлов. Не забудьте проверить бэкап на локалке или в отдельной папке на веб-сервере (с отдельной БД), поскольку непроверенный бэкап является "бэкапом Шрёдингера": он вроде и есть, но чёрт знает, работает ли.
  2. Удалите все файлы и папки с удалённого сервера, кроме следующего перечня файлов и папок:
    • [F] /config.php
    • [D] /demos/ (только если имеются любые демо-записи)
    • [D] /themes/new_box/ (только если редактировался шаблон)
  3. Загрузите все файлы из архива на удалённый сервер, кроме файла data/db.php и папки /install.
Самое сложное - позади.
В dev-версии слегка изменилось местоположение некоторых файлов и папок. Так что производим нужные изменения.
  • /config.php переехал в папку /data/, название не изменил.
  • От папки /themes/ решено было избавиться. Теперь весь шаблон лежит по пути /theme/ (без /new_box/ в пути!)
  • /themes_c/ переехала в /data/theme_c/, но эту папку Вам сохранять не надо было.
  • Папка с демками так же переехала. /data/demos
Закончили перемещать файлы/папки? Отлично.

Самое время запускать апдейтер.
Поскольку в 1.1.6 был внедрён новый механизм для работы с БД, и, соответственно, новый конфиг, апдейтер при старте попытается его создать. Если создание новой конфигурации пройдёт успешно, Вы увидите белый экран, а сама страница обновится через ~5 секунд. В противном случае, будет выведено сообщение о необходимости вручную создать файл, и содержимое, которое нужно поместить в него.
Иногда страница сама не обновляется. Ничего страшного. Можете сами нажать F5.

После создания конфигурации, апдейтер выполнит обновление версии БД. Как только это будет сделано - можете удалять апдейтер с удалённого сервера.

Всё. Теперь Вы используете dev-версию системы.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,505
Потихоньку начали делать API для серверов. Была сделана отдельная ветка с изменениями в этом плане, поскольку используются сторонние пакеты, которые не загружаются на Гит, а посему установка dev-версии для использования API усложняется.
Самый базис там уже реализован, но если вкратце:
  1. Плагинам больше не нужен будет Server ID и данные от БД. Вместо всего этого, пользователю будет предлагаться указать в настройках плагина адрес к веб-панели (будет сделан именно отдельный параметр, т.к. "адрес сайта" для вывода в сообщении о бане обычно указывается другой) и токен.
    Токен, если проводить аналогию со старой системой, тот же Server ID, только без него, или с неправильным токеном, API будет отклонять любые запросы.
    1569742977962.png
    Токен передаётся веб-панели через заголовок X-ServerToken.
    1569743147863.png
  2. В связи с этим, будет миграция БД на кодировку utf8mb4. Это означает, что СБ, наконец-то, будет поддерживать специальные символы в никнеймах, вроде эмодзи.
    Изначально, сделать это мешало отсутствие поддержки этой кодировки в текущем стабильном SM (в 1.10 уже есть).
  3. Полноценный дроп поддержки PHP 5.4. API - та самая отправная точка, с которой PHP 5.4 и ниже уже совсем никак не поддерживаются. Самое время планировать миграцию. И в идеале - на PHP 7.x.
    Если кто очень хочет попробовать завести на 5.4 - вперёд. Замените содержимое файла /api.php на это:
    /api.php:
    <?php
    
    $dir = __DIR__;
    require($dir . '/src/Framework.php');
    
    \Framework::start($dir);
    \Framework::runApp('SB\\Api\\App');
Постепенно, и веб-панель будет переведена на ту же основу, на которой сейчас API и работает. Текущая основа предполагает возможность работать и в обычном режиме (формировать странички).

Для установки (кому уже не терпится, хотя тыкать там пока нечего), нужен Composer. Инструкции по его установке найдёте в Сети.
Заходите через командный интерпретатор в папку /src, и запускаете composer install. Начнётся установка всех зависимых пакетов.
46817
 

DarkEssence

Участник
Сообщения
206
Реакции
3
Переход на "версию для разработчиков" со стабильной
Тем временем, пока "версия для разработчиков" получает небольшие плюшки и фиксы тех или иных ошибок, стабильная остаётся без изменений, поскольку некоторые внедрённые фичи либо не оттестированы тщательно, либо могут вызывать проблемы с работоспособностью веб-панели.
Если Вы читаете этот пост до сих пор, значит Вы действительно настроены на обновление на "версию для разработчиков", и Вы готовы репортить по любой возникшей проблеме на GitHub.
Переход на 1.1.6-dev займёт не много времени.

Для начала, убедитесь, что у Вас версия PHP 5.5 и выше.
  1. Сделайте бэкап базы данных и всех файлов. Не забудьте проверить бэкап на локалке или в отдельной папке на веб-сервере (с отдельной БД), поскольку непроверенный бэкап является "бэкапом Шрёдингера": он вроде и есть, но чёрт знает, работает ли.
  2. Удалите все файлы и папкис удалённого сервера, кроме следующего перечня файлов и папок:
    • [F] /config.php
    • [D] /demos/ (только если имеются любые демо-записи)
    • [D] /themes/new_box/ (только если редактировался шаблон)
  3. Загрузите все файлы из архива на удалённый сервер, кроме файла data/db.php и папки /install.
Самое сложное - позади.
В dev-версии слегка изменилось местоположение некоторых файлов и папок. Так что производим нужные изменения.
  • /config.php переехал в папку /data/, название не изменил.
  • От папки /themes/ решено было избавиться. Теперь весь шаблон лежит по пути /theme/ (без /new_box/ в пути!)
  • /themes_c/ переехала в /data/theme_c/, но эту папку Вам сохранять не надо было.
  • Папка с демками так же переехала. /data/demos
Закончили перемещать файлы/папки? Отлично.

Самое время запускать апдейтер.
Поскольку в 1.1.6 был внедрён новый механизм для работы с БД, и, соответственно, новый конфиг, апдейтер при старте попытается его создать. Если создание новой конфигурации пройдёт успешно, Вы увидите белый экран, а сама страница обновится через ~5 секунд. В противном случае, будет выведено сообщение о необходимости вручную создать файл, и содержимое, которое нужно поместить в него.
Иногда страница сама не обновляется. Ничего страшного. Можете сами нажать F5.

После создания конфигурации, апдейтер выполнит обновление версии БД. Как только это будет сделано - можете удалять апдейтер с удалённого сервера.

Всё. Теперь Вы используете dev-версию системы.
сделал , спасибо!

P.S. Была небольшая проблема с переходом по моей невнимательности , поэтому выше был вопрос, который позже изменил - удалять комментарии не имею возможности
 
Последнее редактирование:

Emptyc

Участник
Сообщения
509
Реакции
96
@Kruzya решил добавить новый сервер в GameCMS на сайте, и что-то он отнюдь не хочет добавлять его из-за МА. В чем проблема?
46910
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,508
Вроде, по русски же написано, что сервер надо сначала добавить в базу SB/MA.
 

Emptyc

Участник
Сообщения
509
Реакции
96
Я понимаю, но я обшарил базу MA/SB, и не нашел таблиц с предпосылкой на servers
Сообщения автоматически склеены:

Решено. Сделал через одно место.
Кому нужно будет: Поставил на домен веб МА, и через админку добавил сервера.
 
Последнее редактирование:

Emptyc

Участник
Сообщения
509
Реакции
96
Пора терять веру в человечество.
Таблица прямо так и называется: префикс_servers
Посмотреть вложение 46912
Мистика, эта таблица появилась только после дампа от Веба MA. Но ее не было, и бывшие сервера на GameCMS спокойно фурычили.
По-этому я и не смог ее найти.
46913
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,512
Дата создания таблицы обновляется при любом взаимодействии со структурой.

И работать всё идеально у Вас никак не могло, потому что без этой таблицы, плагины SB вообще работать не могут, ибо все запросы на добавление банов/мутов так или иначе используют эту таблицу, и при её отсутствии должны падать.
 

SnC_P

Главный создатель говнокода
Сообщения
165
Реакции
43
Exception reported: Invalid database Handle 0 (error: 4)
Blaming: materialadmin.smx
Call stack trace:
[0] Database.Format
[1] Line 665, materialadmin/database.sp::CreateDB
[2] Line 535, materialadmin/database.sp::DoCreateDB
[3] Line 556, materialadmin/function.sp::GetClientToBd
[4] Line 863, materialadmin/menu.sp::OnlineClientSet
[5] Line 94, materialadmin/commands.sp::OnClientSayCommand
Сообщения автоматически склеены:

Exception reported: Invalid database Handle 0 (error: 4)
Blaming: materialadmin.smx
Call stack trace:
[0] Database.Format
[1] Line 665, materialadmin/database.sp::CreateDB
[2] Line 535, materialadmin/database.sp::DoCreateDB
[3] Line 556, materialadmin/function.sp::GetClientToBd
[4] Line 863, materialadmin/menu.sp::OnlineClientSet
[5] Line 94, materialadmin/commands.sp::OnClientSayCommand
 

sBorislav

Взломал GameCMS 3.411 - 27.02.18
Сообщения
196
Реакции
177
Потихоньку начали делать API для серверов. Была сделана отдельная ветка с изменениями в этом плане, поскольку используются сторонние пакеты, которые не загружаются на Гит, а посему установка dev-версии для использования API усложняется.
Самый базис там уже реализован, но если вкратце:
  1. Плагинам больше не нужен будет Server ID и данные от БД. Вместо всего этого, пользователю будет предлагаться указать в настройках плагина адрес к веб-панели (будет сделан именно отдельный параметр, т.к. "адрес сайта" для вывода в сообщении о бане обычно указывается другой) и токен.
    Токен, если проводить аналогию со старой системой, тот же Server ID, только без него, или с неправильным токеном, API будет отклонять любые запросы.
    Посмотреть вложение 46815
    Токен передаётся веб-панели через заголовок X-ServerToken.
    Посмотреть вложение 46816
  2. В связи с этим, будет миграция БД на кодировку utf8mb4. Это означает, что СБ, наконец-то, будет поддерживать специальные символы в никнеймах, вроде эмодзи.
    Изначально, сделать это мешало отсутствие поддержки этой кодировки в текущем стабильном SM (в 1.10 уже есть).
  3. Полноценный дроп поддержки PHP 5.4. API - та самая отправная точка, с которой PHP 5.4 и ниже уже совсем никак не поддерживаются. Самое время планировать миграцию. И в идеале - на PHP 7.x.
    Если кто очень хочет попробовать завести на 5.4 - вперёд. Замените содержимое файла /api.php на это:
    /api.php:
    <?php
    
    $dir = __DIR__;
    require($dir . '/src/Framework.php');
    
    \Framework::start($dir);
    \Framework::runApp('SB\\Api\\App');
Постепенно, и веб-панель будет переведена на ту же основу, на которой сейчас API и работает. Текущая основа предполагает возможность работать и в обычном режиме (формировать странички).

Для установки (кому уже не терпится, хотя тыкать там пока нечего), нужен Composer. Инструкции по его установке найдёте в Сети.
Заходите через командный интерпретатор в папку /src, и запускаете composer install. Начнётся установка всех зависимых пакетов.
Посмотреть вложение 46817

Привет, как на счет использовать папку public и убрать все скрипты из корневого каталога?
Я конечно понимаю, что организовать такую систему на обычном хостинге типа MyArena будет затруднительно, но если идет переход на composer, то подразумевается наличие дотупа к консоли, а следовательно и возможности создание ссылок.
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,515
@sBorislav, привет, такие планы есть. Но пока хотя бы от 40% кода СБ не избавлюсь, вряд ли буду заниматься этим вопросом.
 

Akame

Генералиссимус
Сообщения
156
Реакции
12
@sBorislav, привет, такие планы есть. Но пока хотя бы от 40% кода СБ не избавлюсь, вряд ли буду заниматься этим вопросом.
Приветствую, столкнулся с такой ошибкой,
AJAX Call Failed!
Error: the XML response that was returned from the server is invalid. Received:

В чем может быть проблема и как ее исправить?
 

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,517
Версия?
Вообще, эта ошибка - вечная болячка сб. Связана со спец-символами, вроде смайликов и т.д..
 

Akame

Генералиссимус
Сообщения
156
Реакции
12
Версия?
Вообще, эта ошибка - вечная болячка сб. Связана со спец-символами, вроде смайликов и т.д..
Последняя на сколько я знаю, можно как то исправить, отключить смайлы или что то вроде?
Сообщения автоматически склеены:

Версия?
Вообще, эта ошибка - вечная болячка сб. Связана со спец-символами, вроде смайликов и т.д..
Вот сообщение от поддержки хостинга майарена,
И это помогло, зашел в хром и ошибки нет.
46959
 
Последнее редактирование:

Kruzya

Участник
Сообщения
12,970
Реакции
10,914
  • Команда форума
  • Автор ресурса
  • #4,519
Если я им покажу эту ошибку с Хрома, они перестанут умничать? 🤣
Это проблема не в MIME-типе, а в том, что сб юзает XML для сериализации данных, а тот, когда сериализуется незаконченный символ (а он может быть незаконченным, если в лимит размера пакета не уложиться), то он сериализует всю строку в другой кодировке. А в заголовках то прилетает UTF8.
Вот браузер и реагирует ошибкой при десериализации.

Их доводы просто смешны...
 

mika

Участник
Сообщения
1,069
Реакции
641
Если я им покажу эту ошибку с Хрома, они перестанут умничать? 🤣
Это проблема не в MIME-типе, а в том, что сб юзает XML для сериализации данных, а тот, когда сериализуется незаконченный символ (а он может быть незаконченным, если в лимит размера пакета не уложиться), то он сериализует всю строку в другой кодировке. А в заголовках то прилетает UTF8.
Вот браузер и реагирует ошибкой при десериализации.

Их доводы просто смешны...
Есть хоть что-то, чего вы не знаете?)
 
Сверху Снизу