Files
webgui/emhttp/plugins/dynamix.plugin.manager/scripts/languagecheck
ljm42 a7b1a6c12f Fix Docker notifications
and improve consistency in related files
2024-03-14 14:12:30 -07:00

56 lines
1.9 KiB
PHP
Executable File

#!/usr/bin/php -q
<?PHP
/* Copyright 2005-2024, Lime Technology
* Copyright 2012-2024, Bergware International.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2,
* as published by the Free Software Foundation.
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*/
?>
<?
$docroot ??= ($_SERVER['DOCUMENT_ROOT'] ?: '/usr/local/emhttp');
require_once "$docroot/webGui/include/Wrappers.php";
require_once "$docroot/plugins/dynamix.plugin.manager/include/PluginHelpers.php";
// this command will set the $notify array
extract(parse_plugin_cfg('dynamix', true));
// Multi-language support
$_SERVER['REQUEST_URI'] = "scripts";
$login_locale = _var($display,'locale');
require_once "$docroot/webGui/include/Translations.php";
$var = (array)@parse_ini_file('/var/local/emhttp/var.ini');
function apos($text) {
// So that "&apos;" doesn't show up in email
return str_replace("&apos;","'",$text);
}
$server = strtoupper($var['NAME']);
$output = _var($notify,'language_notify');
$script = "$docroot/webGui/scripts/notify";
$tmp = '/tmp/plugins';
$plugins = '/var/log/plugins';
language('checkall');
foreach (glob("/$tmp/lang-*.xml", GLOB_NOSORT) as $file) {
$name = basename($file);
$lang = language('LanguageLocal', $file);
$new = language('Version', $file);
$old = language('Version', "$plugins/$name");
// silently suppress bad download of XML file
if (strcmp($new, $old) > 0) {
$event = apos(_("Language")." - $lang [$new]");
$subject = apos(sprintf(_("Notice [%s] - Version update %s"),$server,$new));
$description = apos(sprintf(_("A new version of %s is available"),$lang));
exec("$script -e ".escapeshellarg($event)." -s ".escapeshellarg($subject)." -d ".escapeshellarg($description)." -i ".escapeshellarg("normal $output")." -l '/Apps' -x");
}
}
exit(0);
?>