summaryrefslogtreecommitdiffstats
path: root/usr/local/www/widgets/widgets
diff options
context:
space:
mode:
Diffstat (limited to 'usr/local/www/widgets/widgets')
-rw-r--r--usr/local/www/widgets/widgets/captive_portal_status.widget.php19
1 files changed, 13 insertions, 6 deletions
diff --git a/usr/local/www/widgets/widgets/captive_portal_status.widget.php b/usr/local/www/widgets/widgets/captive_portal_status.widget.php
index 6c699ab..4726ba1 100644
--- a/usr/local/www/widgets/widgets/captive_portal_status.widget.php
+++ b/usr/local/www/widgets/widgets/captive_portal_status.widget.php
@@ -47,10 +47,21 @@ require_once("captiveportal.inc");
<?php
-if (($_GET['act'] == "del") && (!empty($_GET['zone']))) {
- $cpzone = $_GET['zone'];
+if (!is_array($config['captiveportal']))
+ $config['captiveportal'] = array();
+$a_cp =& $config['captiveportal'];
+
+$cpzone = $_GET['zone'];
+if (isset($_POST['zone']))
+ $cpzone = $_POST['zone'];
+
+if (isset($cpzone) && !empty($cpzone) && isset($a_cp[$cpzone]['zoneid']))
+ $cpzoneid = $a_cp[$cpzone]['zoneid'];
+
+if (($_GET['act'] == "del") && !empty($cpzone) && isset($cpzoneid)) {
captiveportal_disconnect_client($_GET['id']);
}
+unset($cpzone);
flush();
@@ -59,10 +70,6 @@ function clientcmp($a, $b) {
return strcmp($a[$order], $b[$order]);
}
-if (!is_array($config['captiveportal']))
- $config['captiveportal'] = array();
-$a_cp =& $config['captiveportal'];
-
$cpdb_all = array();
foreach ($a_cp as $cpzone => $cp) {
OpenPOWER on IntegriCloud