Download the PHP package websystems/ws-prestashop-update-package without Composer

On this page you can find all versions of the php package websystems/ws-prestashop-update-package. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package ws-prestashop-update-package

websystems/ws-prestashop-update-package

Paczka Composer do zarządzania licencjami i aktualizacjami modułów PrestaShop przez serwer UpdatePulse. Zamiast duplikować kod w każdym module, wystarczy dołączyć tę paczkę i użyć gotowego traita.


Wymagania


Instalacja

Następnie upewnij się, że autoload Composera jest ładowany w module (zwykle już jest w vendor/autoload.php).


Plik updatepulse.json

Każdy moduł musi posiadać plik updatepulse.json w swoim katalogu głównym (np. modules/ws_mymodule/updatepulse.json):

Opcjonalnie można dodać pole "Slug" w packageData — jeśli go nie ma, używana jest nazwa modułu ($module->name).


Integracja z modułem

Trait WsLicenseTrait można użyć w dwóch miejscach niezależnie lub razem:

Miejsce Do czego
Klasa modułu (Module) Globalny baner powiadomień o aktualizacji
Kontroler admina (ModuleAdminController) Pełna zakładka „Licencja i aktualizacje"

1. Globalny baner powiadomień (klasa modułu)

Dzięki temu baner o dostępnej aktualizacji pojawia się na każdej stronie admina — wewnątrz #content, tak samo jak natywne komunikaty PrestaShop — a nie tylko w zakładce konfiguracji modułu.

Wariant z hookDisplayBackOfficeHeader — automatyczne sprawdzanie w tle

Jeśli chcesz aby sprawdzanie aktualizacji odbywało się automatycznie w tle na każdej stronie admina (bez renderowania HTML), użyj wsCheckForUpdates(). Metoda odpytuje serwer max raz na 24 h — same zarządza cache w Configuration; nie musisz ręcznie porównywać timestampów ani zapisywać czasu ostatniego sprawdzenia.


2. Zakładka „Licencja i aktualizacje" (kontroler admina)


Jak działa zarządzanie licencjami

  1. Admin wpisuje klucz licencji w formularzu i klika Aktywuj licencję.
  2. Paczka wysyła żądanie do serwera UpdatePulse (updatepulse-server-license-api).
  3. Serwer weryfikuje klucz i domenę sklepu — w odpowiedzi odsyła license_signature.
  4. Klucz i sygnatura są zapisywane w Configuration PrestaShop (klucze: WS_MYMODULE_LICENSE_KEY, WS_MYMODULE_LICENSE_SIG).
  5. Dezaktywacja usuwa dane z Configuration i informuje serwer.

Jak działają aktualizacje

  1. Paczka odpytuje serwer (updatepulse-server-update-api, akcja get_metadata) max raz na 24 h (cache w Configuration).
  2. Wynik jest cache'owany — klucze WS_MYMODULE_UPDATE_INFO (JSON) i WS_MYMODULE_UPDATE_LAST_CHECK (timestamp).
  3. Baner powiadomienia (hookDisplayAdminAfterHeader) wyświetla się na każdej stronie admina gdy dostępna jest nowsza wersja; sam baner nie ma żadnego limitu czasowego.
  4. W zakładce „Licencja i aktualizacje" pojawia się przycisk Zainstaluj aktualizację oraz link do pobrania ZIP.
  5. Instalacja jest wyłącznie ręczna — tylko gdy admin kliknie przycisk. Pobiera ZIP przez cURL (wyłącznie HTTPS), rozpakowuje do _PS_MODULE_DIR_, uruchamia skrypty upgrade z katalogu upgrade/, aktualizuje wersję w ps_module.
  6. Przycisk Sprawdź teraz w zakładce wymusza natychmiastowe odpytanie serwera (pomija cache).

Klucze konfiguracyjne w bazie danych

Klucze są budowane automatycznie z przekazanego prefiksu (np. WS_MYMODULE):

Klucz Zawartość
WS_MYMODULE_LICENSE_KEY Klucz licencji
WS_MYMODULE_LICENSE_SIG Sygnatura licencji (z serwera)
WS_MYMODULE_UPDATE_INFO JSON z metadanymi ostatniej odpowiedzi serwera
WS_MYMODULE_UPDATE_LAST_CHECK Timestamp ostatniego sprawdzenia aktualizacji

Uwaga: Gdy "RequireLicense": false w updatepulse.json, sekcja licencji jest całkowicie ukryta w zakładce admina, a zapytanie o aktualizacje jest wysyłane bez parametrów licencyjnych.


Struktura paczki


Tłumaczenia

Paczka zawiera wbudowane tłumaczenia PL i EN. Język wykrywany jest automatycznie z Context::getContext()->language->iso_code. Można też użyć bezpośrednio:


Autor

Artur Ograbek — [email protected]
Web Systems — https://www.web-systems.pl/


All versions of ws-prestashop-update-package with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2
ext-curl Version *
ext-zip Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package websystems/ws-prestashop-update-package contains the following files

Loading the files please wait ...