add option for check is customer online

This commit is contained in:
iBNu Maksum 2024-10-11 11:37:45 +07:00
parent 155b2959b5
commit d5cba4b3c1
No known key found for this signature in database
GPG Key ID: 7FC82848810579E5
3 changed files with 50 additions and 27 deletions

View File

@ -85,20 +85,22 @@ switch ($action) {
$ui->display('autoload.tpl');
break;
case 'customer_is_active':
$c = ORM::for_table('tbl_customers')->where('username', $routes['2'])->find_one();
$p = ORM::for_table('tbl_plans')->find_one($routes['3']);
$dvc = Package::getDevice($p);
if ($_app_stage != 'demo') {
if (file_exists($dvc)) {
require_once $dvc;
try {
//don't wait more than 5 seconds for response from device, otherwise we get timeout error.
ini_set('default_socket_timeout', 5);
if ((new $p['device'])->online_customer($c, $p['routers'])) {
echo '<span class="label label-success" title="online">&nbsp;</span>';
if ($config['check_customer_online'] == 'yes') {
$c = ORM::for_table('tbl_customers')->where('username', $routes['2'])->find_one();
$p = ORM::for_table('tbl_plans')->find_one($routes['3']);
$dvc = Package::getDevice($p);
if ($_app_stage != 'demo') {
if (file_exists($dvc)) {
require_once $dvc;
try {
//don't wait more than 5 seconds for response from device, otherwise we get timeout error.
ini_set('default_socket_timeout', 5);
if ((new $p['device'])->online_customer($c, $p['routers'])) {
echo '<span class="label label-success" title="online">&nbsp;</span>';
}
} catch (Exception $e) {
echo '<span class="label label-danger" title="error">&nbsp;</span>';
}
} catch (Exception $e) {
echo '<span class="label label-danger" title="error">&nbsp;</span>';
}
}
}
@ -110,20 +112,22 @@ switch ($action) {
$c = ORM::for_table('tbl_customers')->find_one($routes['2']);
foreach ($ds as $d) {
if ($d['status'] == 'on') {
$p = ORM::for_table('tbl_plans')->find_one($d['plan_id']);
$dvc = Package::getDevice($p);
$status = "";
if ($_app_stage != 'demo') {
if (file_exists($dvc)) {
require_once $dvc;
try {
//don't wait more than 5 seconds for response from device, otherwise we get timeout error.
ini_set('default_socket_timeout', 5);
if ((new $p['device'])->online_customer($c, $p['routers'])) {
$status = '<span class="label label-success" title="online">&nbsp;</span>';
if ($config['check_customer_online'] == 'yes') {
$p = ORM::for_table('tbl_plans')->find_one($d['plan_id']);
$dvc = Package::getDevice($p);
$status = "";
if ($_app_stage != 'demo') {
if (file_exists($dvc)) {
require_once $dvc;
try {
//don't wait more than 5 seconds for response from device, otherwise we get timeout error.
ini_set('default_socket_timeout', 5);
if ((new $p['device'])->online_customer($c, $p['routers'])) {
$status = '<span class="label label-success" title="online">&nbsp;</span>';
}
} catch (Exception $e) {
$status = '<span class="label label-danger" title="error">&nbsp;</span>';
}
} catch (Exception $e) {
$status = '<span class="label label-danger" title="error">&nbsp;</span>';
}
}
}

View File

@ -693,5 +693,8 @@
"This_will_allow_you_to_download_plugin_from_private_paid_repository": "Ini akan memungkinkan Anda mengunduh plugin dari repositori pribadi\/berbayar",
"Expired_Cronjob_Every_5_Minutes": "Cronjob Kedaluwarsa Setiap 5 Menit",
"Expired_Cronjob_Every_1_Hour": "Cronjob Kedaluwarsa Setiap 1 Jam",
"Reminder_Cronjob_Every_7_AM": "Pengingat Cronjob Setiap Jam 7 Pagi"
"Reminder_Cronjob_Every_7_AM": "Pengingat Cronjob Setiap Jam 7 Pagi",
"Check_if_Customer_Online": "Periksa apakah Pelanggan Online",
"Active_Customers": "Pelanggan Aktif",
"This_will_show_is_Customer_currently_is_online_or_not": "Ini akan menunjukkan apakah Pelanggan sedang online atau tidak"
}

View File

@ -740,6 +740,22 @@
phpnuxbill-login-hotspot</a>
</p>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Check if Customer Online')}</label>
<div class="col-md-6">
<select name="check_customer_online" id="check_customer_online" class="form-control">
<option value="no">
{Lang::T('No')}
</option>
<option value="yes" {if $_c['check_customer_online']=='yes' }selected="selected" {/if}>
{Lang::T('Yes')}
</option>
</select>
</div>
<p class="help-block col-md-4">
{Lang::T('This will show is Customer currently is online or not')}
</p>
</div>
</div>
<div class="panel-heading">