diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/usr/local/www/status_logs_filter.php | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/src/usr/local/www/status_logs_filter.php b/src/usr/local/www/status_logs_filter.php index d3101f7..763d96d 100644 --- a/src/usr/local/www/status_logs_filter.php +++ b/src/usr/local/www/status_logs_filter.php @@ -236,6 +236,10 @@ if ($save_settings) { if ($logfile == 'system') { $oldnologlighttpd = isset($config['syslog']['nologlighttpd']); $config['syslog']['nologlighttpd'] = $loglighttpd ? false : true; + + if ($oldnologlighttpd !== $config['syslog']['nologlighttpd']) { + $logging_changed = $lighttpd_logging_changed = true; + } } # Firewall Specific @@ -255,17 +259,31 @@ if ($save_settings) { } else { unset($config['syslog']['filterdescriptions']); } + + if ( + ($oldnologdefaultblock !== $config['syslog']['nologdefaultblock']) || + ($oldnologdefaultpass !== $config['syslog']['nologdefaultpass']) || + ($oldnologbogons !== $config['syslog']['nologbogons']) || + ($oldnologprivatenets !== $config['syslog']['nologprivatenets'])) { + $logging_changed = $firewall_logging_changed = true; + } } - write_config($desc = "Log Display Settings Saved: " . gettext($allowed_logs[$logfile]["name"])); + // If any of the logging settings were changed then backup and sync (standard write_config). Otherwise only write config (don't backup, don't sync). + if ($logging_changed) { + write_config($desc = "Log Display Settings Saved: " . gettext($allowed_logs[$logfile]["name"]), $backup = true, $write_config_only = false); + $retval = 0; + $retval = system_syslogd_start(); + } else { + write_config($desc = "Log Display Settings Saved (no backup, no sync): " . gettext($allowed_logs[$logfile]["name"]), $backup = false, $write_config_only = true); + } - $retval = 0; - $savemsg = get_std_save_message($retval); + $savemsg = gettext("The changes have been applied successfully."); # System General (main) Specific if ($logfile == 'system') { - if ($oldnologlighttpd !== isset($config['syslog']['nologlighttpd'])) { + if ($lighttpd_logging_changed) { ob_flush(); flush(); log_error(gettext("webConfigurator configuration has changed. Restarting webConfigurator.")); @@ -276,14 +294,12 @@ if ($save_settings) { # Firewall Specific if ($logfile == 'filter') { - if (($oldnologdefaultblock !== isset($config['syslog']['nologdefaultblock'])) || - ($oldnologdefaultpass !== isset($config['syslog']['nologdefaultpass'])) || - ($oldnologbogons !== isset($config['syslog']['nologbogons'])) || - ($oldnologprivatenets !== isset($config['syslog']['nologprivatenets']))) { - + if ($firewall_logging_changed) { require_once("filter.inc"); $retval |= filter_configure(); filter_pflog_start(true); + + $savemsg = get_std_save_message($retval); } } } |