Licensing and updates
Medel Platforms activation, invalid-key lockout, verification, version installation, and rollback.
Activation
The installer requests a Medel Platforms key for AltisControl, product ID 1256974845. It stores the key encrypted and displays only its ending. A missing or explicitly rejected key blocks functional APIs; administrators can still sign in and reach the license activation screen. The owner or a role with license.manage can replace the key in Settings → Update.
When Medel Platforms is unavailable
If a configured key has the correct format, network or server errors temporarily admit it so the application keeps running. The check retries after five minutes. A valid response is cached for about an hour. An explicit rejection for an invalid or inactive key, incorrect product, or wrong domain does block access. Service unavailability is treated differently from a rejected license.
Check for versions
“Check again” queries the Medel Platforms update endpoint for the installed version. A valid offer must be newer and provide an HTTPS ZIP and verifiable SHA-256 hash. The panel displays the current version, last check, and published release notes when an update is available.
Install an update
- The panel downloads the ZIP over HTTPS and verifies its SHA-256 hash.
- It validates internal paths and rejects traversal or symbolic links.
- It enters maintenance mode and creates a SQL database backup plus a ZIP file backup.
- It overlays new files and folders while preserving configuration, storage, and uploads.
- It runs
update/update.sqland records the new version. - On failure, it attempts to restore the database and files; backups remain available for manual recovery.
Update backups can be downloaded and deleted separately from manual backups. Plan a maintenance window for production even though the updater creates backups automatically.
Publish a version as a developer
Increase VERSION, add an entry to CHANGELOG.md, prepare an idempotent update/update.sql even when there is no schema change, and run build.bat or php bin/build-release.php. Publish the resulting dist/ ZIP, not the full development folder. See Development.