* -----------------------------------------------------------------------------------------
* MODULE VERSION HISTORY
* -----------------------------------------------------------------------------------------
* based on the AddonMonitor-Module from Stefek, new version by jacobi22, dbs
* -----------------------------------------------------------------------------------------
* Version 2.1.1 - 2026/04/07
* -----------------------------------------------------------------------------------------
* + Fix: mod_addon_monitor_settings.setting_value changed from varchar(255) to TEXT
* to allow longer repo_sources JSON with multiple custom repos
* + Fix: Upgrade now alters existing mod_addon_monitor_settings.setting_value to TEXT
* + Change: Invalid or offline repo URLs no longer block saving settings; repo state
* is shown via per-repo status in the settings dialog instead
* + Fix: Official repo fallback URL in Settings.inc.php corrected to
* https://addon.websitebaker.org/media/versionlist.json
* + Fix: Missing language keys REPO_MULTIPLE and REPO_MULTIPLE_AVAIL added for DE/EN
* and template fallback texts added for incomplete language files
* + New: Settings dialog now shows a small multilingual per-repo status hint
* (OK / HTTP error / invalid JSON / offline)
* + Fix: Settings save now blocks duplicate repo names and duplicate repo URLs
* with dedicated error messages in DE/EN
* + Fix: Settings modal widened and repo source table extended with a dedicated
* status column; official repo URLs are kept on one line for better readability
* -----------------------------------------------------------------------------------------
* Version 2.1.0 - 2026/04/06
* -----------------------------------------------------------------------------------------
* + New: Multiple repo sources configurable in settings modal (name + URL per source)
* Official WB repo always first, not deletable, labeled "Official" (multilingual)
* + New: Each repo source has its own cache file (md5 of URL as filename)
* + New: fetchUrl() extracted as reusable static method in Monitor.php
* + New: getRepoVersionList() collects entries from all configured sources and keeps
* repo/source metadata so multiple matching repos can be shown per addon
* + Fix: Repo matching now supports install_directory from repo JSON and keeps
* foreign repos with dl_url / dl_detail usable for version display and install
* + New: clearRepoCache() and getRepoCacheInfo() updated for multiple cache files
* + New: repo_sources stored as JSON in mod_addon_monitor_settings table
* + New: json_decode Twig filter added for repo_sources rendering in settings modal
* + New: Language keys OFFICIAL, SETTINGS_REPO_SOURCES, SETTINGS_REPO_NAME,
* SETTINGS_REPO_URL, SETTINGS_REPO_ADD, SETTINGS_REPO_DELETE in all 23 languages
* + Fix: PAGE_MODULES label shortened to 'Page' in all languages (was 'Page-Module')
* -----------------------------------------------------------------------------------------
* Version 2.0.3 - 2026/03/03
* -----------------------------------------------------------------------------------------
* + Development from version 1.0.0 to 2.0.3 includes repository update checks,
* direct download/install of addons, improved UI and search features,
* full internationalization, security enhancements and numerous fixes.
