From 161032f05e1819550a32735d60c7b71994b1d9ef Mon Sep 17 00:00:00 2001 From: BBcan177 Date: Thu, 18 Dec 2014 17:40:43 -0500 Subject: Mods to inc file - remove redundant $row['format'] variable - When "Keep" Settings is enabled and a full uninstall is performed, the widget doesn't uninstall cleanly. These changes fix this issue. --- config/pfblockerng/pfblockerng.inc | 40 +++++++++++++++++++++----------------- 1 file changed, 22 insertions(+), 18 deletions(-) (limited to 'config/pfblockerng/pfblockerng.inc') diff --git a/config/pfblockerng/pfblockerng.inc b/config/pfblockerng/pfblockerng.inc index 9f35397a..69baceeb 100644 --- a/config/pfblockerng/pfblockerng.inc +++ b/config/pfblockerng/pfblockerng.inc @@ -1109,8 +1109,7 @@ function sync_package_pfblockerng($cron = "") { if (file_exists($pfbfolder . '/' . $header_url . '.txt') && $pfb['reuse'] == "") { if ($row['state'] == "Hold") { - $log = "\n[ {$header_url} ] {$log_tab} Static Hold [ NOW ]\n"; - $row['format'] = "Hold"; + $log = "\n[ {$header_url} ] {$log_tab} Static Hold [ NOW ]\n"; } else { $log = "\n[ {$header_url} ] {$log_tab} exists, Reloading File [ NOW ]\n"; } @@ -2257,12 +2256,17 @@ function pfblockerng_php_install_command() { # Add Widget to Dashboard update_output_window(gettext("Adding pfBlockerNG Widget to Dashboard.")); - $widgets = $config['widgets']['sequence']; - if (!preg_match("/pfblockerng-container/", $widgets)) { - if (empty($widgets)) { - $config['widgets']['sequence'] = "pfblockerng-container:col2:show"; - } else { - $config['widgets']['sequence'] .= ",pfblockerng-container:col2:show"; + if ($pfb['keep'] == "on" && !empty($pfb['widgets'])) { + // Restore previous Widget setting if "Keep" is enabled. + $config['widgets']['sequence'] = $pfb['widgets']; + } else { + $widgets = $config['widgets']['sequence']; + if (!preg_match("/pfblockerng-container/", $widgets)) { + if (empty($widgets)) { + $config['widgets']['sequence'] = "pfblockerng-container:col2:show"; + } else { + $config['widgets']['sequence'] .= ",pfblockerng-container:col2:show"; + } } } } @@ -2325,19 +2329,19 @@ function pfblockerng_php_deinstall_command() { unlink_if_exists("{$pfb_file}.txt"); } } + } - # Remove Widget (code from Snort deinstall) - $widgets = $config['widgets']['sequence']; - if (!empty($widgets)) { - $widgetlist = explode(",", $widgets); - foreach ($widgetlist as $key => $widget) { - if (strstr($widget, "pfblockerng-container")) { - unset($widgetlist[$key]); - break; - } + # Remove Widget (code from Snort deinstall) + $pfb['widgets'] = $config['widgets']['sequence']; + if (!empty($pfb['widgets'])) { + $widgetlist = explode(",", $pfb['widgets']); + foreach ($widgetlist as $key => $widget) { + if (strstr($widget, "pfblockerng-container")) { + unset($widgetlist[$key]); + break; } - $config['widgets']['sequence'] = implode(",", $widgetlist); } + $config['widgets']['sequence'] = implode(",", $widgetlist); } update_output_window(gettext("pfBlockerNG has been Uninstalled")); } -- cgit v1.2.3