L2CMS — безопасный, быстрый, современный и качественный движок для вашего Lineage 2 проекта

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

Либо может что то вроде виджета или еще вариант с админки добавлять музыку, но так чтобы делилась на фрагменты и нельзя было так просто скачать напрямую через отладку страницы. 👀
 

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

Если у вас есть идеи по улучшению, то милости прошу.

Главная страница:

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

Нужна помощь?
Задайте вопрос или сообщите о проблемах. Наша команда поддержки свяжется с вами в кратчайшие сроки.

с переходом на страницу с тикетами.

Выпадающее меню пользователя по клику на аватар:

user_dropdown.png

Нужен ли вам вообще FAQ? Не вижу спроса.

Страницы с настройками аккаунта:


Я вот думаю, нужен ли вообще аватар? Или немного переделать верстку, убрать из навигации и дело с концом 🤔
И думаю перенести иконку смены темы в правую сторону, где аватар и смена языка. И оставить только дропдаун со сменой сервера.

Спасибо за ваши идеи!
 
Последнее редактирование:
Я вот думаю, нужен ли вообще аватар? Или немного переделать верстку, убрать из навигации и дело с концом
Я думаю самым лучшим конечно же бы было, сделать этот момент конфигурируемым.

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

Нужен ли вам вообще FAQ? Не вижу спроса.
А это разве не просто отдельная статик страница? Полагаю, что все такие меню в отдельных компонентах и кому она реально будет нужна - сами себе её вставят
 
А это разве не просто отдельная статик страница? Полагаю, что все такие меню в отдельных компонентах и кому она реально будет нужна - сами себе её вставят
Так суть в том, чтобы редактировать FAQ в админке.

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

Если у вас есть идеи по улучшению, то милости прошу.

Главная страница:

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

Нужна помощь?
Задайте вопрос или сообщите о проблемах. Наша команда поддержки свяжется с вами в кратчайшие сроки.

с переходом на страницу с тикетами.

Выпадающее меню пользователя по клику на аватар:

Посмотреть вложение 75700

Нужен ли вам вообще FAQ? Не вижу спроса.

Страницы с настройками аккаунта:


Я вот думаю, нужен ли вообще аватар? Или немного переделать верстку, убрать из навигации и дело с концом 🤔
И думаю перенести иконку смены темы в правую сторону, где аватар и смена языка. И оставить только дропдаун со сменой сервера.

Спасибо за ваши идеи!
Лично мое мнение, что личный кабинет для ИГРОКА нужен, только для 2х действий: Создать аккаунт и закинуть донат. Все остальное, не нужная трата времени.
 
Что по поводу вывода стримеров ? Какие сервисы поддерживает ?
 
Лично мое мнение, что личный кабинет для ИГРОКА нужен, только для 2х действий: Создать аккаунт и закинуть донат. Все остальное, не нужная трата времени.
Посмотреть подрочить на статистику еще)
 
Скоро Andragor конкуренты закажут, что-то слишком ахуенно и быстро развивается данная тема.
 
Новый список изменений:
  • Добавлено логирование последнего IP-адреса пользователя
  • Добавлена возможность загружать аватар
  • Теперь, когда открыта страница со статистикой, например, PvP, благодаря новому компоненту <x-dashboard.nav-dropdown>
    дропдаун остаётся раскрытым
  • Добавлен Recharge, который позволит в админ-панели указывать время в минутах для перезарядки телепорта в личном кабинете.
  • Добавлены координаты для телепорта персонажа в глобальные опции.
  • Убран FAQ
Приближаюсь к 200 коммитам 🥳

commits_count.png

P.S. Присылайте в ЛС базы данных ваших "сборок" или же "сорсов", чтобы я добавил их в L2CMS, и они были доступны из коробки.
 
Последнее редактирование:
Что по поводу инфографики для администрации? Есть ли графики , доната , онлайн,регистрации и тд?
 
1722239790269.png Прошу прощения а вы случаем не ошиблись в написание текста?)
 
Та я ебу [А по щам?], шото залагало. Попрошу удалить =)
 
Что по поводу инфографики для администрации? Есть ли графики , доната , онлайн,регистрации и тд?
Да, как раз уже почти дошёл до этого в своём списке задач. Осталось подобрать график, который бы мне был по душе внешне. Вот несколько вариантов ниже:

 
Более информативным выглядит график с кривой . И сразу все понятно.
 
Новый список изменений:
  • Ужесточена валидация загрузки аватара: максимальный размер — 100 кб, не больше 100x100. Разрешены только JPG и PNG.
  • Ужесточена валидация создания игровых учётных записей.
  • Добавлен скоуп successful для более лаконичного получения списка успешных пожертвований. Понадобится для фичи со статистикой пожертвований, которая скоро будет реализована, и для соблюдения принципа DRY.
  • Реализован график с отображением информации о том, сколько мастер-аккаунтов было зарегистрировано за определённый промежуток времени, с возможностью фильтрации.
 
Rate Limiting
Rate limiting — это механизм контроля частоты запросов к L2CMS для предотвращения злоупотреблений, таких как DDoS-атаки и спам.
Очень хочется сделать важное замечание по поводу Rate Limiting на PHP.
PHP обработчики тратят гораздо больше времени и ресурсов на обработку запросов (даже самых простых), по сравнению с Nginx, для тех, у кого ресурсов не сильно много - не советую биться от дудосов встроенными в обвязку средствами.
 
Очень хочется сделать важное замечание по поводу Rate Limiting на PHP.
PHP обработчики тратят гораздо больше времени и ресурсов на обработку запросов (даже самых простых), по сравнению с Nginx, для тех, у кого ресурсов не сильно много - не советую биться от дудосов встроенными в обвязку средствами.
Я рекомендую использовать комбинированный подход: базовый rate limiting на уровне веб-сервера для блокировки большинства недобросовестных запросов и дополнительный контроль на уровне приложения для более детальной и гибкой защиты.

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

В моём любимом форумном движке XenForo, с которым я познакомился в 2016 году, совсем недавно появилась поддержка Passkey, и я подумал: почему бы не добавить то же самое в L2CMS? Не уверен, что это будет в релизной версии, как и не уверен, что это будет в базовой, но данный функционал реализован.

Что это?
Ключи доступа (Passkeys) – это современное средство аутентификации, которое сочетает в себе удобство использования и высокий уровень безопасности. Они представляют собой альтернативу традиционным паролям, устраняя многие их недостатки.


Сразу скажу о том, что для их работы обязательно наличие SSL-сертификата, в противном случае вы увидите следующую надпись:

does_not_support.png

Да-да, simplewebauthn в случае отсутствия SSL-сертификата не говорит об этом прямо, а пишет о том, что браузер просто не поддерживает, хотя он поддерживает.

Пришлось генерировать SSL на винде...

Вот небольшие сниппеты кода из L2CMS

snippet_code.png

Само собой это требует и clientside работы. Использую чистый JavaScript + simplewebauthn. Простой код:
JavaScript:
if (!SimpleWebAuthnBrowser.browserSupportsWebAuthn()) {
                    displayError('Browser does not support WebAuthn', nameErrorDiv);
                    return;
                }

                try {
                    const response = await fetch(`/api/passkeys/register?name=${encodeURIComponent(emailInput.value)}`, {
                        method: 'GET',
                        headers: {
                            'Content-Type': 'application/json',
                            'X-CSRF-TOKEN': document.querySelector('input[name="_token"]').value
                        }
                    });

                    if (!response.ok) {
                        if (response.status === 422) {
                            const data = await response.json();
                            displayErrors(data.errors);
                        } else {
                            throw new Error('Ошибка при получении опций регистрации');
                        }
                        return;
                    }

                 // ну и дальше

Если у вас есть какие-то идеи и мысли на этот счёт, то милости прошу!
 
Последнее редактирование:
Я рекомендую использовать комбинированный подход: базовый rate limiting на уровне веб-сервера для блокировки большинства недобросовестных запросов и дополнительный контроль на уровне приложения для более детальной и гибкой защиты.

Да и в любом случае, люди, покупая даже базовый тариф, смогут со мной созвониться и обсудить различные моменты, как и поддержку/помощь и подсказки. Поэтому многое из этого проговаривается само собой.
Это не задача php (бекенда) вообще... бесполезная фича
если дойдёт до кода, он ляжет так или иначе, выше верно сказали, nginx -> os -> сетевое оборудование, другого не дано

А так успехов в реализации продукта и хороших продаж
 
Назад
Сверху Снизу