diff --git a/system/autoload/Radius.php b/system/autoload/Radius.php index 2ce44219..a7a64a23 100644 --- a/system/autoload/Radius.php +++ b/system/autoload/Radius.php @@ -43,19 +43,6 @@ class Radius return ORM::for_table('radusergroup', 'radius'); } - public static function nasList($search = null) - { - if ($search == null) { - return ORM::for_table('nas', 'radius')->find_many(); - } else { - return ORM::for_table('nas', 'radius') - ->where_like('nasname', $search) - ->where_like('shortname', $search) - ->where_like('description', $search) - ->find_many(); - } - } - public static function nasAdd($name, $ip, $ports, $secret, $description = "", $type = 'other', $server = null, $community = null) { $n = Radius::getTableNas()->create(); diff --git a/system/controllers/radius.php b/system/controllers/radius.php index 90b2e5b1..95cf12ae 100644 --- a/system/controllers/radius.php +++ b/system/controllers/radius.php @@ -131,10 +131,22 @@ switch ($action) { $ui->assign('_title', "Network Access Server"); $name = _post('name'); if (empty($name)) { - $nas = Radius::nasList(); + $paginator = Paginator::build(ORM::for_table('nas', 'radius')); + $nas = ORM::for_table('nas', 'radius')->offset($paginator['startpoint'])->limit($paginator['limit'])->find_many(); } else { - $nas = Radius::nasList($name); + $paginator = Paginator::build(ORM::for_table('nas', 'radius'), [ + 'nasname' => '%'.$search.'%', + 'shortname' => '%'.$search.'%', + 'description' => '%'.$search.'%' + ]); + $nas = ORM::for_table('nas', 'radius') + ->where_like('nasname', $search) + ->where_like('shortname', $search) + ->where_like('description', $search) + ->offset($paginator['startpoint'])->limit($paginator['limit']) + ->find_many(); } + $ui->assign('paginator', $paginator); $ui->assign('name', $name); $ui->assign('nas', $nas); $ui->display('radius-nas.tpl');