From 9e33a5740bfabdd2fad6b396812cde56d412927a Mon Sep 17 00:00:00 2001 From: Ibnu Maksum Date: Tue, 3 Oct 2023 15:03:47 +0700 Subject: [PATCH] fix add nas --- system/autoload/Radius.php | 20 ++++++++++---------- system/controllers/radius.php | 22 ++++++---------------- 2 files changed, 16 insertions(+), 26 deletions(-) diff --git a/system/autoload/Radius.php b/system/autoload/Radius.php index b7ac259f..60c81c5f 100644 --- a/system/autoload/Radius.php +++ b/system/autoload/Radius.php @@ -2,24 +2,24 @@ class Radius { - public function getTableNas(){ + public static function getTableNas(){ return ORM::for_table('nas', 'radius'); } - public function getTableCustomer(){ + public static function getTableCustomer(){ return ORM::for_table('radcheck', 'radius'); } - public function getTablePackage(){ + public static function getTablePackage(){ return ORM::for_table('radgroupreply', 'radius'); } - public function getTableUserPackage(){ + public static function getTableUserPackage(){ return ORM::for_table('radusergroup', 'radius'); } - public function addNas($name, $ip, $ports, $secret, $description = "",$type = 'other', $server= null, $community= null){ - $n = $this->getTableNas()->create(); + public static function addNas($name, $ip, $ports, $secret, $description = "",$type = 'other', $server= null, $community= null){ + $n = Radius::getTableNas()->create(); $n->nasname = $ip; $n->shortname = $name; $n->type = $type; @@ -31,8 +31,9 @@ class Radius { $n->save(); return $n->id(); } - public function updateNas($id, $name, $ip, $ports, $secret, $description = "",$type = 'other', $server= null, $community= null){ - $n = $this->getTableNas()->find_one($id); + + public static function updateNas($id, $name, $ip, $ports, $secret, $description = "",$type = 'other', $server= null, $community= null){ + $n = Radius::getTableNas()->find_one($id); if(empty($n)){ return false; } @@ -44,8 +45,7 @@ class Radius { $n->description = $description; $n->server = $server; $n->community = $community; - $n->save(); - return true; + return $n->save(); } } diff --git a/system/controllers/radius.php b/system/controllers/radius.php index 158745aa..2b10b798 100644 --- a/system/controllers/radius.php +++ b/system/controllers/radius.php @@ -55,17 +55,7 @@ switch ($action) { $msg .= 'NAS IP Exists
'; } if ($msg == '') { - $b = ORM::for_table('nas', 'radius')->create(); - $b->nasname = $nasname; - $b->shortname = $shortname; - $b->secret = $secret; - $b->ports = $ports; - $b->type = $type; - $b->server = $server; - $b->community = $community; - $b->description = $description; - $b->save(); - $id = $b->id(); + $id = Radius::addNas($shortname, $nasname, $ports, $secret, $description, $type, $server, $community); if ($id > 0) { r2(U . 'radius/nas-edit/' . $id, 's', "NAS Added"); } else { @@ -119,10 +109,6 @@ switch ($action) { if (empty($type)) { $type = null; } - $d = ORM::for_table('nas', 'radius')->find_one($id); - if (!$d) { - $msg .= 'NAS NOT Exists
'; - } if ($msg == '') { $d->nasname = $nasname; $d->shortname = $shortname; @@ -133,7 +119,11 @@ switch ($action) { $d->community = $community; $d->description = $description; $d->save(); - r2(U . 'radius/nas-edit/' . $id, 's', "NAS Saved"); + if (Radius::updateNas($id, $shortname, $nasname, $ports, $secret, $description, $type, $server, $community)) { + r2(U . 'radius/nas-edit/' . $id, 's', "NAS Saved"); + } else { + r2(U . 'radius/nas-add', 'e', 'NAS NOT Exists'); + } } else { r2(U . 'radius/nas-add', 'e', $msg); }