- Баллы
- 173
Плагин LimboAuth можно улучшить, сделав возможность вводить пароль без ввода команды /login | /log | /l. Это UX и он должен всегда иметься в виду. Таким образом, в Title по центру экрана можно будет куда понятнее написать "Введите пароль" - и останется просто его ввести
Кому нужна связка с DLE и эта юзабилити/UX опция ^,
вот сам плагин [скачать] и сам мой форк на GitHub (чтобы можно было собрать самому или просто перенести код к себе)
Используемая версия 1.1.14 - коммит 5379470:
Какие имена полей БД в нём прописаны:

Имя таблицы: dle_users
Для работы с полем email, который обязан быть для каждого пользователя уникальным, презаполняю его такой созданной у себя в MySQL функцией generateRandomEmail:
Код:
CREATE DEFINER=`root`@`127.0.0.1` FUNCTION `generateRandomEmail`(`username_param` VARCHAR(40)) RETURNS varchar(81) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci
BEGIN
DECLARE username VARCHAR(40);
IF username_param IS NOT NULL THEN
SET username = username_param;
ELSE
SET username = SUBSTRING(MD5(RAND()) FROM 1 FOR 16);
END IF;
RETURN CONCAT(username, '@localhost');
END
И данные триггеры (для email и name_lower):
Код:
delimiter ;;
CREATE TRIGGER `nameLower` BEFORE INSERT ON `dle_users` FOR EACH ROW BEGIN
IF NEW.name_lower IS NULL OR NEW.name_lower='' THEN
SET NEW.name_lower = LOWER(NEW.name);
END IF;
END
;;
delimiter ;
delimiter ;;
CREATE TRIGGER `randomEmail` BEFORE INSERT ON `dle_users` FOR EACH ROW BEGIN
IF NEW.email IS NULL OR NEW.email='' THEN
SET NEW.email = generateRandomEmail(LOWER(NEW.name));
SET NEW.allow_mail = 0;
END IF;
END
;;
delimiter ;
Для тех, кто хочет

Но отвечаю - это на первый взгляд простой путь. Лучше запуллить сырцы, сделать правки и собрать граблями.
И вот так у меня подписан плагин, чтобы помнить про то, что перед его обновлением надо не забыть сначала пропатчить поля БД, а не запускать сервер с дырой в авторизации и типа
:
Изображение - это скрин выше с "маппингом" полей в InJarTranslator.
Ну а так, лучше конечно всего править через сырцы (код) и собирать через прилагаемый Gradle (таск build)
Вложения:
Последнее редактирование:
