New Feature Added

Allow Package Purchase Option Added.
admin can now decide if user can purchase a particular package or not.

if no option is selected the package wont display in the package list
This commit is contained in:
Focuslinkstech 2024-01-11 01:00:34 +01:00
parent dfef6807a5
commit 4ba38485a0
8 changed files with 96 additions and 14 deletions

View File

@ -37,7 +37,7 @@ switch ($action) {
} }
$ui->assign('_title', 'Top Up'); $ui->assign('_title', 'Top Up');
$ui->assign('_system_menu', 'balance'); $ui->assign('_system_menu', 'balance');
$plans_balance = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'Balance')->find_many(); $plans_balance = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'Balance')->where('allow_purchase', 'yes')->find_many();
$ui->assign('plans_balance', $plans_balance); $ui->assign('plans_balance', $plans_balance);
$ui->display('user-orderBalance.tpl'); $ui->display('user-orderBalance.tpl');
break; break;
@ -49,24 +49,24 @@ switch ($action) {
$ui->assign('_system_menu', 'package'); $ui->assign('_system_menu', 'package');
if (!empty($_SESSION['nux-router'])) { if (!empty($_SESSION['nux-router'])) {
if ($_SESSION['nux-router'] == 'radius') { if ($_SESSION['nux-router'] == 'radius') {
$radius_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'PPPOE')->find_many(); $radius_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'PPPOE')->where('allow_purchase', 'yes')->find_many();
$radius_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'Hotspot')->find_many(); $radius_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'Hotspot')->where('allow_purchase', 'yes')->find_many();
} else { } else {
$routers = ORM::for_table('tbl_routers')->where('id', $_SESSION['nux-router'])->find_many(); $routers = ORM::for_table('tbl_routers')->where('id', $_SESSION['nux-router'])->find_many();
$rs = []; $rs = [];
foreach ($routers as $r) { foreach ($routers as $r) {
$rs[] = $r['name']; $rs[] = $r['name'];
} }
$plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('is_radius', 0)->where('type', 'PPPOE')->find_many(); $plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('is_radius', 0)->where('type', 'PPPOE')->where('allow_purchase', 'yes')->find_many();
$plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('is_radius', 0)->where('type', 'Hotspot')->find_many(); $plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('is_radius', 0)->where('type', 'Hotspot')->where('allow_purchase', 'yes')->find_many();
} }
} else { } else {
$radius_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'PPPOE')->find_many(); $radius_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'PPPOE')->where('allow_purchase', 'yes')->find_many();
$radius_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'Hotspot')->find_many(); $radius_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 1)->where('type', 'Hotspot')->where('allow_purchase', 'yes')->find_many();
$routers = ORM::for_table('tbl_routers')->find_many(); $routers = ORM::for_table('tbl_routers')->find_many();
$plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 0)->where('type', 'PPPOE')->find_many(); $plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 0)->where('type', 'PPPOE')->where('allow_purchase', 'yes')->find_many();
$plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 0)->where('type', 'Hotspot')->find_many(); $plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('is_radius', 0)->where('type', 'Hotspot')->where('allow_purchase', 'yes')->find_many();
} }
$ui->assign('routers', $routers); $ui->assign('routers', $routers);
$ui->assign('radius_pppoe', $radius_pppoe); $ui->assign('radius_pppoe', $radius_pppoe);
@ -277,7 +277,7 @@ switch ($action) {
$router['id'] = 0; $router['id'] = 0;
$router['name'] = 'balance'; $router['name'] = 'balance';
} }
$plan = ORM::for_table('tbl_plans')->where('enabled', '1')->find_one($routes['3']); $plan = ORM::for_table('tbl_plans')->where('enabled', '1')->where('allow_purchase', 'yes')->find_one($routes['3']);
if (empty($router) || empty($plan)) { if (empty($router) || empty($plan)) {
r2(U . "order/package", 'e', Lang::T("Plan Not found")); r2(U . "order/package", 'e', Lang::T("Plan Not found"));
} }

View File

@ -199,6 +199,7 @@ switch ($action) {
$routers = _post('routers'); $routers = _post('routers');
$pool_expired = _post('pool_expired'); $pool_expired = _post('pool_expired');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($validity) == false) { if (Validator::UnsignedNumber($validity) == false) {
@ -264,6 +265,7 @@ switch ($action) {
$d->pool_expired = $pool_expired; $d->pool_expired = $pool_expired;
} }
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
$plan_id = $d->id(); $plan_id = $d->id();
@ -302,6 +304,7 @@ switch ($action) {
$validity_unit = _post('validity_unit'); $validity_unit = _post('validity_unit');
$pool_expired = _post('pool_expired'); $pool_expired = _post('pool_expired');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$routers = _post('routers'); $routers = _post('routers');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($validity) == false) { if (Validator::UnsignedNumber($validity) == false) {
@ -363,6 +366,7 @@ switch ($action) {
$d->shared_users = $sharedusers; $d->shared_users = $sharedusers;
$d->pool_expired = $pool_expired; $d->pool_expired = $pool_expired;
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
r2(U . 'services/hotspot', 's', $_L['Updated_Successfully']); r2(U . 'services/hotspot', 's', $_L['Updated_Successfully']);
@ -456,6 +460,8 @@ switch ($action) {
$pool = _post('pool_name'); $pool = _post('pool_name');
$pool_expired = _post('pool_expired'); $pool_expired = _post('pool_expired');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($validity) == false) { if (Validator::UnsignedNumber($validity) == false) {
@ -514,6 +520,7 @@ switch ($action) {
$d->pool_expired = $pool_expired; $d->pool_expired = $pool_expired;
} }
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
$plan_id = $d->id(); $plan_id = $d->id();
@ -545,6 +552,7 @@ switch ($action) {
$pool = _post('pool_name'); $pool = _post('pool_name');
$pool_expired = _post('pool_expired'); $pool_expired = _post('pool_expired');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($validity) == false) { if (Validator::UnsignedNumber($validity) == false) {
@ -602,6 +610,7 @@ switch ($action) {
$d->pool = $pool; $d->pool = $pool;
$d->pool_expired = $pool_expired; $d->pool_expired = $pool_expired;
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
r2(U . 'services/pppoe', 's', $_L['Updated_Successfully']); r2(U . 'services/pppoe', 's', $_L['Updated_Successfully']);
@ -653,6 +662,7 @@ switch ($action) {
$name = _post('name'); $name = _post('name');
$price = _post('price'); $price = _post('price');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($price) == false) { if (Validator::UnsignedNumber($price) == false) {
@ -672,6 +682,7 @@ switch ($action) {
$d->name_plan = $name; $d->name_plan = $name;
$d->price = $price; $d->price = $price;
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
r2(U . 'services/balance', 's', $_L['Updated_Successfully']); r2(U . 'services/balance', 's', $_L['Updated_Successfully']);
@ -683,6 +694,7 @@ switch ($action) {
$name = _post('name'); $name = _post('name');
$price = _post('price'); $price = _post('price');
$enabled = _post('enabled'); $enabled = _post('enabled');
$allow_purchase = _post('allow_purchase');
$msg = ''; $msg = '';
if (Validator::UnsignedNumber($price) == false) { if (Validator::UnsignedNumber($price) == false) {
@ -708,6 +720,7 @@ switch ($action) {
$d->routers = ''; $d->routers = '';
$d->pool = ''; $d->pool = '';
$d->enabled = $enabled; $d->enabled = $enabled;
$d->allow_purchase = $allow_purchase;
$d->save(); $d->save();
r2(U . 'services/balance', 's', $_L['Created_Successfully']); r2(U . 'services/balance', 's', $_L['Created_Successfully']);

View File

@ -17,6 +17,17 @@
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" checked name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" name="allow_purchase" value="no"> No
</label>
</div>
</div>
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">{$_L['Plan_Name']}</label> <label class="col-md-2 control-label">{$_L['Plan_Name']}</label>
<div class="col-md-6"> <div class="col-md-6">

View File

@ -17,6 +17,18 @@
<input type="radio" name="enabled" value="0"> Disable <input type="radio" name="enabled" value="0"> Disable
</label> </label>
</div> </div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" {if $d['allow_purchase'] == yes}checked{/if} name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" {if $d['allow_purchase'] == no}checked{/if} name="allow_purchase" value="no">
No
</label>
</div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">{$_L['Plan_Name']}</label> <label class="col-md-2 control-label">{$_L['Plan_Name']}</label>

View File

@ -17,6 +17,17 @@
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" checked name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" name="allow_purchase" value="no"> No
</label>
</div>
</div>
{if $_c['radius_enable']} {if $_c['radius_enable']}
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">Radius</label> <label class="col-md-2 control-label">Radius</label>

View File

@ -19,6 +19,18 @@
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" {if $d['allow_purchase'] == yes}checked{/if} name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" {if $d['allow_purchase'] == no}checked{/if} name="allow_purchase" value="no">
No
</label>
</div>
</div>
{if $_c['radius_enable'] and $d['is_radius']} {if $_c['radius_enable'] and $d['is_radius']}
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">Radius</label> <label class="col-md-2 control-label">Radius</label>

View File

@ -17,6 +17,17 @@
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" checked name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" name="allow_purchase" value="no"> No
</label>
</div>
</div>
{if $_c['radius_enable']} {if $_c['radius_enable']}
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">Radius</label> <label class="col-md-2 control-label">Radius</label>

View File

@ -19,6 +19,18 @@
</label> </label>
</div> </div>
</div> </div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Client Can Purchase')}</label>
<div class="col-md-10">
<label class="radio-inline warning">
<input type="radio" {if $d['allow_purchase'] == yes}checked{/if} name="allow_purchase" value="yes"> Yes
</label>
<label class="radio-inline">
<input type="radio" {if $d['allow_purchase'] == no}checked{/if} name="allow_purchase" value="no">
No
</label>
</div>
</div>
{if $_c['radius_enable'] and $d['is_radius']} {if $_c['radius_enable'] and $d['is_radius']}
<div class="form-group"> <div class="form-group">
<label class="col-md-2 control-label">Radius</label> <label class="col-md-2 control-label">Radius</label>