Компонент предназначен для автоматической и ручной генерации ключей для ваших расширений. Сделал я его в связи с переводом продажи своих расширений на автоматическую основу. Устал вручную собирать дистрибутивы.
Поскольку для продажи расширений была выбрана связка Akeeba Subscriptions - Akeeba Release System, интеграцию своего компонента я сделал именнт с Akeeba Subscriptions. При покупке подписки в случае удачного завершения оплаты на странице завершения подписки появляется сгенерированный для этого расширения ключ. В расширении в закодированном файле находится дешифратор ключа, который и определяет подходит введенный ключ к расширению, сайту на котором оно установллено или нет.
Компонент может выдать ключ, учитывающий во входных данных расширение, домен, срок действия ключа.
Так-же сделано небольшое API для интеграции со сторонними расширениями с целью автоматизации выдачи ключа, которое я использовал в плагине интеграции с подпиской.
По сути компонент представляет из себя оболочку для вашего генератора ключей, а своего генератора не имеет. Генератор вставляется в форму в админке и используется в функции генерации ключей. Сделано так неспроста - если сделать хороший (или не очень) встроенный генератор, то его рано или поздно вскроют, а если генератор будет у каждого свой, то это исключено. Данный компонент только обеспечит удобство использования и автоматизации.
Для забывчивых пользователей во фронтальной части компонента есть страничка, на которой выводятся все пароли, сгенерированные для текущего пользователя.
Компонент работает на Joomla 2.5.
Использование компонента "Генератор ключей".
Git - https://bitbucket.org/Arkadiy/com_keygen/overview
Список изменений
1.1.
- Создал возможность торговать ключами пачками. Допустим вы хотите продать разрешение на установку расширения на 10 сайтов. В таком случае в таблице компонента создается запись о продаже, а покупатель сможет создать столько ключей, сколько ему потребуется, но не больше купленного количества. Изменен как компонент так и плагин Акиба-подписки.
1.2.
- Добавлено управление правами в админке, добавление ключей пользователем с фронта вынесено в настройки.
1.3.
- Добавлено удаление ключей в административной панели компонента.
- Добавлено администрирование таблицы заказов.
- Добавлено в настройки плагина разрешения на генерацию ключа и на запись в таблицу продаж, поле для ввода пост-текста.
- Добавлен сервер обновлений для компонента.
1.4.
- Добавлена дистанционная генерация ключей по принципу клиент-сервер.
- Полностью переработан механизм администрирования плагина Akeeba Subscription.. Вывод поля для ввода сайтов теперь устанавливается в упарвлении уровнем подписки в компоненте Akeeba Subscription. Количество полей так-же может быть разным.
Комментарии
заменить на Код:$model = $controller->getModel('Key', 'KeygenModel');
$model->addTablePath(JPATH_ADMINISTRATOR . '/components/com_keygen/tables');
$table = $model->getTable();
JTable::addIncludePath(JPATH_ADMINISTRATOR . '/components/com_keygen/tables');
$table = JTable::getInstance('Keyg en', 'KeygenTable');