diff --git a/system/controllers/prepaid.php b/system/controllers/prepaid.php index 07820f5f..5d122d8e 100644 --- a/system/controllers/prepaid.php +++ b/system/controllers/prepaid.php @@ -40,6 +40,28 @@ EOT; require_once 'system/autoload/PEAR2/Autoload.php'; switch ($action) { + case 'sync': + set_time_limit(-1); + $plans = ORM::for_table('tbl_user_recharges')->where('status', 'on')->find_many(); + echo count($plans); + $log = ''; + $router = ''; + foreach ($plans as $plan) { + if ($router != $plan['routers']) { + $mikrotik = Mikrotik::info($plan['routers']); + $client = Mikrotik::getClient($mikrotik['ip_address'], $mikrotik['username'], $mikrotik['password']); + $router = $plan['routers']; + } + $p = ORM::for_table('tbl_plans')->findOne($plan['plan_id']); + $c = ORM::for_table('tbl_customers')->findOne($plan['customer_id']); + if ($plan['type'] == 'Hotspot') { + Mikrotik::addHotspotUser($client, $p, $c); + } else if ($plan['type'] == 'PPPOE') { + Mikrotik::addPpoeUser($client, $p, $c); + } + $log .= "DONE : $plan[username], $plan[namebp], $plan[type], $plan[routers]
"; + } + r2(U . 'prepaid/list', 's', $log); case 'list': $ui->assign('xfooter', ''); @@ -65,7 +87,7 @@ switch ($action) { $ui->assign('p', $p); $r = ORM::for_table('tbl_routers')->where('enabled', '1')->find_many(); $ui->assign('r', $r); - if(isset($routes['2']) && !empty($routes['2'])){ + if (isset($routes['2']) && !empty($routes['2'])) { $ui->assign('cust', ORM::for_table('tbl_customers')->find_one($routes['2'])); } run_hook('view_recharge'); #HOOK diff --git a/ui/ui/prepaid.tpl b/ui/ui/prepaid.tpl index 878af3dd..bd7c0298 100644 --- a/ui/ui/prepaid.tpl +++ b/ui/ui/prepaid.tpl @@ -3,7 +3,13 @@
-
{$_L['Prepaid_User']}
+
+
+ sync +
{$_L['Prepaid_User']} +
@@ -41,7 +47,7 @@ {foreach $d as $ds} - + {$ds['username']} {$ds['namebp']} {$ds['type']} @@ -53,7 +59,7 @@ {$_L['Edit']} {$_L['Delete']}