From e8de946cd47c4a31f86d1f6be8afdfbacc6ca5b7 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 22 Mar 2021 13:18:39 +0100 Subject: [remoteaccess] Show plugin version --- modules-available/remoteaccess/api.inc.php | 10 ++++++++++ modules-available/remoteaccess/inc/remoteaccess.inc.php | 2 ++ modules-available/remoteaccess/lang/de/template-tags.json | 2 ++ modules-available/remoteaccess/lang/en/template-tags.json | 2 ++ modules-available/remoteaccess/page.inc.php | 1 + modules-available/remoteaccess/templates/edit-settings.html | 6 ++++++ 6 files changed, 23 insertions(+) diff --git a/modules-available/remoteaccess/api.inc.php b/modules-available/remoteaccess/api.inc.php index 4ce733b3..7983bd44 100644 --- a/modules-available/remoteaccess/api.inc.php +++ b/modules-available/remoteaccess/api.inc.php @@ -29,6 +29,16 @@ if ($iplong < $range['start'] || $iplong > $range['end']) { die('Access denied'); } +$headers = getallheaders(); +$version = false; +if (!empty($headers['Bwlp-Plugin-Build-Revision'])) { + $version = $headers['Bwlp-Plugin-Build-Revision']; + if (!empty($headers['Bwlp-Plugin-Build-Timestamp'])) { + $version .= ' (' . $headers['Bwlp-Plugin-Build-Timestamp'] . ')'; + } +} +Property::set(RemoteAccess::PROP_PLUGIN_VERSION, $version, 2880); + Header('Content-Type: application/json'); $remoteLocations = RemoteAccess::getEnabledLocations(); diff --git a/modules-available/remoteaccess/inc/remoteaccess.inc.php b/modules-available/remoteaccess/inc/remoteaccess.inc.php index 3ec1695e..9b6dea6a 100644 --- a/modules-available/remoteaccess/inc/remoteaccess.inc.php +++ b/modules-available/remoteaccess/inc/remoteaccess.inc.php @@ -9,6 +9,8 @@ class RemoteAccess const PROP_VNC_PORT = 'remoteaccess.vncport'; + const PROP_PLUGIN_VERSION = 'remoteaccess.plugin-version'; + public static function getEnabledLocations($group = 0) { if ($group === 0) { diff --git a/modules-available/remoteaccess/lang/de/template-tags.json b/modules-available/remoteaccess/lang/de/template-tags.json index 724d5cf0..6703c89b 100644 --- a/modules-available/remoteaccess/lang/de/template-tags.json +++ b/modules-available/remoteaccess/lang/de/template-tags.json @@ -11,6 +11,8 @@ "lang_keepAvailableWol": "WoL#", "lang_locationSelectionText": "Ausgew\u00e4hlte Orte werden in den Remote-Modus geschaltet (beim n\u00e4chsten Boot des Clients) und sind damit im Pool f\u00fcr den Fernzugriff.", "lang_numLocs": "R\u00e4ume", + "lang_pluginVersion": "Plugin-Version", + "lang_pluginVersionOldOrUnknown": "Unbekannt oder zu alt", "lang_reallyDelete": "Wirklich l\u00f6schen?", "lang_remoteAccessSettings": "Einstellungen f\u00fcr den Fernzugriff", "lang_tryVirtualizerHandover": "Versuche, VNC-Server des Virtualisierers zu verwenden", diff --git a/modules-available/remoteaccess/lang/en/template-tags.json b/modules-available/remoteaccess/lang/en/template-tags.json index b817fc52..7b8a87a0 100644 --- a/modules-available/remoteaccess/lang/en/template-tags.json +++ b/modules-available/remoteaccess/lang/en/template-tags.json @@ -11,6 +11,8 @@ "lang_keepAvailableWol": "WoL#", "lang_locationSelectionText": "Clients in the selected locations will start the remoteaccess-mode after the next reboot.", "lang_numLocs": "Locations", + "lang_pluginVersion": "Plugin version", + "lang_pluginVersionOldOrUnknown": "Unknown or too old", "lang_reallyDelete": "Delete?", "lang_remoteAccessSettings": "Settings for remoteaccess", "lang_tryVirtualizerHandover": "Try to use VNC-server of the hypervisor", diff --git a/modules-available/remoteaccess/page.inc.php b/modules-available/remoteaccess/page.inc.php index 6ed211ec..ca0218e2 100644 --- a/modules-available/remoteaccess/page.inc.php +++ b/modules-available/remoteaccess/page.inc.php @@ -102,6 +102,7 @@ class Page_RemoteAccess extends Page 'vncport' => Property::get(RemoteAccess::PROP_VNC_PORT, 5900), 'groups' => $groups, ]; + $data['plugin_version'] = Property::get(RemoteAccess::PROP_PLUGIN_VERSION); Permission::addGlobalTags($data['perms'], null, ['group.locations', 'group.add', 'group.edit', 'set-proxy-ip']); Render::addTemplate('edit-settings', $data); } else { diff --git a/modules-available/remoteaccess/templates/edit-settings.html b/modules-available/remoteaccess/templates/edit-settings.html index 8f057232..21ce3b6e 100644 --- a/modules-available/remoteaccess/templates/edit-settings.html +++ b/modules-available/remoteaccess/templates/edit-settings.html @@ -20,6 +20,12 @@ required {{perms.set-proxy-ip.disabled}}>

{{lang_vncPortText}}

+
+ {{lang_pluginVersion}}: {{plugin_version}} + {{^plugin_version}} + {{lang_pluginVersionOldOrUnknown}} + {{/plugin_version}} +
-- cgit v1.2.3-55-g7522