ProBG Extensions 1 - Документация
ProBG Extensions е предназначен за:
- OpenCart 3.x
- PHP версии, съвместими с използваната OpenCart инсталация
- HTTPS връзка към ProBG API
- активен PHP ZIP модул
- права за използване на OpenCart Extension Installer
Разработката е валидирана с PHP 7.2, PHP 7.4 и PHP 8.2.
Инсталация
1. Изтеглете инсталационния файл на ProBG Extensions с разширение `.ocmod.zip`.
2. Влезте в администрацията на OpenCart.
3. Отворете:
Extensions → Installer
4. Качете `.ocmod.zip` файла.
Не използвайте автоматично генерирания от GitHub „Source code (zip)“ архив. Той не представлява OpenCart инсталационен пакет.
5. След успешното качване отворете:
Extensions → Modifications и натиснете бутона за обновяване на модификациите.
6. Отворете списъка с OpenCart разширения и инсталирайте ProBG Extensions.
7. Отворете настройките на модула и го активирайте.
След инсталацията ProBG Extensions предоставя няколко основни секции.
Всички разширения
Показва целия наличен каталог на ProBG.
Препоръчаните разширения се показват с приоритет.
Разширенията са групирани според техния OpenCart тип.
Безплатни разширения
Показва всички налични безплатни ProBG разширения.
При правилно конфигурирана система те могат да бъдат инсталирани директно от администрацията на OpenCart.
Платени разширения
Показва платените разширения заедно с наличната информация за:
- цена;
- покупка;
- демо версия;
- документация;
- история на промените;
- съвместими версии.
При добавен валиден API TOKEN се показва и информация дали съответното разширение е закупено и до кои негови версии има достъп клиентът.
API TOKEN
API TOKEN се използва за удостоверяване пред ProBG API при достъп до закупени разширения.
Токенът е свързан с домейна, за който е издаден.
След записване той се съхранява локално в криптиран вид чрез AES-256-GCM и оригиналната му стойност не се показва отново в административния интерфейс.
API TOKEN се изпраща единствено чрез HTTPS заявки към ProBG API.
Безплатният каталог може да бъде използван без лиценз за платено разширение.
За изтегляне и обновяване на платените разширения е необходим валиден API TOKEN и съответното право за достъп.
Изтеглени разширения
Секцията показва разширенията, които са управлявани чрез ProBG Extensions.
За тях може да бъде показана информация за:
- инсталирана версия;
- OpenCart тип;
- състояние на пакета;
- активиране в OpenCart;
- наличие на нова версия;
- статус на модула, когато такъв може да бъде определен надеждно.
От тази секция могат да бъдат достъпни действия като:
- Активиране;
- Редакция;
- Обновяване;
- Деинсталиране.
ProBG Extensions прави разграничение между:
**Инсталиран пакет** – пакетът е успешно изтеглен и регистриран от ProBG Extensions.
**Активирано разширение** – разширението е регистрирано като OpenCart extension.
**Активно/неактивно** – когато конкретният тип модул има собствен глобален status параметър.
Тези състояния не се смесват, което предотвратява показване на неправилна информация.
Обновления
В тази секция се показват само управляваните разширения, за които каталогът предлага по-нова съвместима версия.
Преди започване на обновяването се показват текущата и новата версия, както и наличните бележки за промените.
Обновяването преминава през същата защитена процедура като първоначалната инсталация.
История
Историята позволява проследяване на извършените операции.
Могат да бъдат записвани състояния като:
- install;
- update;
- uninstall;
- installing;
- installed;
- uninstalling;
- uninstalled;
- failed;
- superseded.
Това позволява по-лесна диагностика при проблем с инсталация или обновяване.
Сигурност на пакетите
ProBG Extensions не инсталира директно произволно съдържание, получено от API.
Преди пакетът да бъде предаден към OpenCart Installer се извършват последователни проверки.
Проверяват се:
1. идентичността на разширението;
2. версията на пакета;
3. съвместимостта с OpenCart;
4. подписаният manifest;
5. RSA/SHA-256 цифровият подпис;
6. размерът на получения файл;
7. SHA-256 контролната сума;
8. структурата и съдържанието на ZIP архива.
Едва след успешното преминаване на всички проверки пакетът се предава към стандартния OpenCart Extension Installer.
Trusted Signing Key
За защитена директна инсталация и обновяване трябва да бъде конфигуриран доверен публичен ключ за проверка на подписаните пакети.
OpenCart съхранява единствено:
- ID на доверения ключ;
- RSA публичния ключ.
Частният ключ за подписване се съхранява единствено на ProBG сървъра и не се предоставя на клиентските OpenCart инсталации.
Инсталиране на разширение
За инсталиране:
1. Отворете „Всички разширения“ или съответната секция.
2. Намерете желания модул.
3. Проверете неговата съвместимост.
4. Натиснете бутона за инсталация.
5. ProBG Extensions ще обнови информацията за пакета.
6. Ще бъде получен актуален подписан manifest.
7. Пакетът ще бъде изтеглен и проверен.
8. След успешната валидация ще бъде предаден към OpenCart Installer.
9. При необходимост OCMOD модификациите ще бъдат обновени.
10. Разширението ще бъде активирано автоматично, когато неговият тип и структура позволяват това.
Обновяване на разширение
Когато е налична нова версия:
1. Отворете „Обновления“.
2. Прегледайте текущата и новата версия.
3. Прегледайте информацията за промените.
4. Стартирайте обновяването.
Новият пакет преминава през пълната процедура за проверка на подписа, контролната сума, съвместимостта и ZIP структурата.
Само при успешно приключило обновяване новата версия се отбелязва като инсталирана.
При неуспешно обновяване предишната успешна версия не се маркира като заменена.
Деинсталиране
Управляваните от ProBG Extensions пакети могат да бъдат премахнати централно.
При пълно деинсталиране системата може да:
- извика стандартния OpenCart `uninstall()` lifecycle метод;
- премахне module instances;
- премахне OpenCart extension регистрацията;
- премахне файловете, свързани с управлявания пакет;
- премахне свързаните OCMOD записи;
- обнови модификациите.
Системата позволява премахване само на файлове, които могат надеждно да бъдат свързани с инсталационен пакет, управляван от ProBG Extensions.
Ръчно инсталирани разширения, които нямат валиден локален ProBG installation record, не се приемат автоматично за управлявани от системата.