summaryrefslogtreecommitdiffstats
path: root/usr
diff options
context:
space:
mode:
Diffstat (limited to 'usr')
-rwxr-xr-xusr/local/www/guiconfig.inc18
1 files changed, 16 insertions, 2 deletions
diff --git a/usr/local/www/guiconfig.inc b/usr/local/www/guiconfig.inc
index e76deae..32f91b2 100755
--- a/usr/local/www/guiconfig.inc
+++ b/usr/local/www/guiconfig.inc
@@ -535,10 +535,24 @@ function dump_clog($logfile, $tail, $withorig = true, $grepfor = "", $grepinvert
* new = new value
*/
function update_if_changed($varname, & $orig, $new) {
- if ($orig != $new) {
- update_changedesc("{$varname}: \"{$orig}\" -> \"{$new}\"");
+ if (is_array($orig) && is_array($new)) {
+ $a_diff = array_diff($orig, $new);
+ foreach ($a_diff as $diff) {
+ update_changedesc("removed {$varname}: \"{$diff}\"");
+ }
+ $a_diff = array_diff($new, $orig);
+ foreach ($a_diff as $diff) {
+ update_changedesc("added {$varname}: \"{$diff}\"");
+ }
$orig = $new;
return true;
+
+ } else {
+ if ($orig != $new) {
+ update_changedesc("{$varname}: \"{$orig}\" -> \"{$new}\"");
+ $orig = $new;
+ return true;
+ }
}
return false;
}
OpenPOWER on IntegriCloud