pretty url stage 7, thanks regex
This commit is contained in:
parent
05aa1499ab
commit
7f785a7c4a
@ -1010,5 +1010,11 @@
|
||||
"Plan_Expiry_Date": "Plan Expiry Date",
|
||||
"Make_Payment": "Make Payment",
|
||||
"Validity_Period": "Validity Period",
|
||||
"Buy_Balance_Package": "Buy Balance Package"
|
||||
"Buy_Balance_Package": "Buy Balance Package",
|
||||
"Backup_Database": "Backup Database",
|
||||
"Choose": "Choose",
|
||||
"Dont_select_logs_if_it_failed": "Dont select logs if it failed",
|
||||
"Download_Backup": "Download Backup",
|
||||
"Restore": "Restore",
|
||||
"Restoring_database_will_clean_up_data_and_then_restore_all_the_data": "Restoring database will clean up data and then restore all the data"
|
||||
}
|
@ -6,7 +6,7 @@
|
||||
<div class="panel panel-hovered mb20 panel-primary">
|
||||
<div class="panel-heading">{Lang::T('Routers')}
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-primary btn-xs" title="save" href="{$_url}routers/maps">
|
||||
<a class="btn btn-primary btn-xs" title="save" href="{Text::url('')}routers/maps">
|
||||
<span class="glyphicon glyphicon-map-marker"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
@ -14,7 +14,7 @@
|
||||
<div class="md-whiteframe-z1 mb20 text-center" style="padding: 15px">
|
||||
<div class="col-md-8">
|
||||
|
||||
<form id="site-search" method="post" action="{$_url}routers/list/">
|
||||
<form id="site-search" method="post" action="{Text::url('')}routers/list/">
|
||||
<div class="input-group">
|
||||
<div class="input-group-addon">
|
||||
<span class="fa fa-search"></span>
|
||||
@ -28,7 +28,8 @@
|
||||
</form>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="{$_url}routers/add" class="btn btn-primary btn-block"><i class="ion ion-android-add">
|
||||
<a href="{Text::url('')}routers/add" class="btn btn-primary btn-block"><i
|
||||
class="ion ion-android-add">
|
||||
</i> {Lang::T('New Router')}</a>
|
||||
</div>
|
||||
</div>
|
||||
@ -82,9 +83,9 @@
|
||||
{/if}
|
||||
<td>{if $ds['enabled'] == 1}{Lang::T('Enabled')}{else}{Lang::T('Disabled')}{/if}</td>
|
||||
<td>
|
||||
<a href="{$_url}routers/edit/{$ds['id']}"
|
||||
<a href="{Text::url('')}routers/edit/{$ds['id']}"
|
||||
class="btn btn-info btn-xs">{Lang::T('Edit')}</a>
|
||||
<a href="{$_url}routers/delete/{$ds['id']}" id="{$ds['id']}"
|
||||
<a href="{Text::url('')}routers/delete/{$ds['id']}" id="{$ds['id']}"
|
||||
onclick="return ask(this, '{Lang::T('Delete')}?')"
|
||||
class="btn btn-danger btn-xs"><i class="glyphicon glyphicon-trash"></i></a>
|
||||
</td>
|
||||
@ -97,7 +98,9 @@
|
||||
{include file="pagination.tpl"}
|
||||
<div class="bs-callout bs-callout-info" id="callout-navbar-role">
|
||||
<h4>{Lang::T('Check if Router Online?')}</h4>
|
||||
<p>{Lang::T('To check whether the Router is online or not, please visit the following page')} <a href="{$_url}settings/miscellaneous#router_check" target="_blank" class="btn btn-link">{Lang::T('Cek Now')}</a></p>
|
||||
<p>{Lang::T('To check whether the Router is online or not, please visit the following page')} <a
|
||||
href="{Text::url('')}settings/miscellaneous#router_check" target="_blank"
|
||||
class="btn btn-link">{Lang::T('Cek Now')}</a></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -105,4 +108,4 @@
|
||||
</div>
|
||||
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -6,7 +6,8 @@
|
||||
}
|
||||
</style>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel" id="accordion" role="tablist" aria-multiselectable="true">
|
||||
<div class="panel-heading" role="tab" id="General">
|
||||
@ -138,7 +139,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="HideDashboardContent">
|
||||
@ -177,7 +179,7 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/login-page-post"
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/login-page-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel" id="accordion" role="tablist" aria-multiselectable="true">
|
||||
@ -285,7 +287,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="Registration">
|
||||
@ -426,7 +429,8 @@
|
||||
</form>
|
||||
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="Security">
|
||||
@ -502,7 +506,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="Voucher">
|
||||
@ -569,7 +574,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="FreeRadius">
|
||||
@ -603,7 +609,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="ExtendPostpaidExpiration">
|
||||
@ -650,7 +657,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="CustomerBalanceSystem">
|
||||
@ -705,7 +713,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="TelegramNotification">
|
||||
@ -748,7 +757,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="SMSNotification">
|
||||
@ -810,7 +820,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="WhatsappNotification">
|
||||
@ -847,7 +858,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="EmailNotification">
|
||||
@ -932,7 +944,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="UserNotification">
|
||||
@ -998,7 +1011,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="TawkToChatWidget">
|
||||
@ -1038,7 +1052,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="APIKey">
|
||||
@ -1068,7 +1083,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="Proxy">
|
||||
@ -1104,7 +1120,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="TaxSystem">
|
||||
@ -1178,7 +1195,8 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/app-post" enctype="multipart/form-data">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/app-post"
|
||||
enctype="multipart/form-data">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="panel">
|
||||
<div class="panel-heading" role="tab" id="GithubAuthentication">
|
||||
|
@ -1,11 +1,11 @@
|
||||
{include file="sections/header.tpl"}
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}customfield/save">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="panel panel-success panel-hovered panel-stacked mb30">
|
||||
<div class="panel-heading">{Lang::T('New Field')}</div>
|
||||
<div class="panel-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}customfield/save">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="panel panel-success panel-hovered panel-stacked mb30">
|
||||
<div class="panel-heading">{Lang::T('New Field')}</div>
|
||||
<div class="panel-body">
|
||||
<div class="form-group">
|
||||
<label class="col-md-4 control-label">Order</label>
|
||||
<div class="col-md-8">
|
||||
@ -72,18 +72,18 @@
|
||||
<span class="help-block">To delete, empty the name</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
{foreach $fields as $field}
|
||||
<div class="panel panel-primary">
|
||||
<div class="panel-body">
|
||||
<div class="col-md-6">
|
||||
{foreach $fields as $field}
|
||||
<div class="panel panel-primary">
|
||||
<div class="panel-body">
|
||||
<div class="form-group">
|
||||
<label class="col-md-4 control-label">Order</label>
|
||||
<div class="col-md-8">
|
||||
<input type="number" class="form-control" name="order[]" style="width: 100%" value="{$field['order']}"
|
||||
placeholder="99">
|
||||
<input type="number" class="form-control" name="order[]" style="width: 100%"
|
||||
value="{$field['order']}" placeholder="99">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@ -130,21 +130,21 @@
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group {if $field['required'] == 1}has-error{/if}"">
|
||||
<label class="col-md-4 control-label">Required</label>
|
||||
<div class="col-md-8">
|
||||
<select class="form-control" name="required[]" style="width: 100%">
|
||||
<option value="1" {if $field['required'] == 1}selected{/if}>Yes</option>
|
||||
<option value="0" {if $field['required'] != 1}selected{/if}>No</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group {if $field['required'] == 1}has-error{/if}"">
|
||||
<label class=" col-md-4 control-label">Required</label>
|
||||
<div class="col-md-8">
|
||||
<select class="form-control" name="required[]" style="width: 100%">
|
||||
<option value="1" {if $field['required'] == 1}selected{/if}>Yes</option>
|
||||
<option value="0" {if $field['required'] != 1}selected{/if}>No</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{/foreach}
|
||||
<button class="btn btn-success btn-sm btn-block" type="submit">{Lang::T('Save')}</button>
|
||||
{/foreach}
|
||||
<button class="btn btn-success btn-sm btn-block" type="submit">{Lang::T('Save')}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
<div class="col-sm-7">
|
||||
<div class="panel panel-primary">
|
||||
<div class="panel-heading">{Lang::T('Backup Database')}</div>
|
||||
<form method="post" action="{$_url}settings/dbbackup">
|
||||
<form method="post" action="{Text::url('')}settings/dbbackup">
|
||||
<div class="table-responsive">
|
||||
<table class="table table-bordered">
|
||||
<thead>
|
||||
@ -42,7 +42,7 @@
|
||||
<div class="col-sm-5">
|
||||
<div class="panel panel-primary">
|
||||
<div class="panel-heading">{Lang::T('Restore')} Database</div>
|
||||
<form method="post" action="{$_url}settings/dbrestore" enctype="multipart/form-data">
|
||||
<form method="post" action="{Text::url('')}settings/dbrestore" enctype="multipart/form-data">
|
||||
<div class="panel-body">
|
||||
<div class="row">
|
||||
<div class="col-md-7"><input type="file" name="json" accept="application/json"></div>
|
||||
@ -53,9 +53,10 @@
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
<div class="panel-footer">{Lang::T('Restoring database will clean up data and then restore all the data')}</div>
|
||||
<div class="panel-footer">{Lang::T('Restoring database will clean up data and then restore all the data')}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -5,7 +5,7 @@
|
||||
<div class="panel panel-primary panel-hovered panel-stacked mb30">
|
||||
<div class="panel-heading">{Lang::T('Translation')}</div>
|
||||
<div class="panel-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/lang-post">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/lang-post">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
{foreach $langs as $lang}
|
||||
<div class="form-group">
|
||||
@ -20,7 +20,7 @@
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-primary" onclick="return ask(this, '{Lang::T("Continue the process of adding Languages?")}')"
|
||||
type="submit">{Lang::T('Save Changes')}</button>
|
||||
Or <a href="{$_url}settings/localisation">{Lang::T('Cancel')}</a>
|
||||
Or <a href="{Text::url('')}settings/localisation">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -5,14 +5,15 @@
|
||||
<div class="panel panel-primary panel-hovered panel-stacked mb30">
|
||||
<div class="panel-heading">
|
||||
<div class="btn-group pull-right">
|
||||
<button class="btn btn-primary btn-xs" title="save" type="submit"><span
|
||||
class="glyphicon glyphicon-floppy-disk" aria-hidden="true"></span></button>
|
||||
<button class="btn btn-primary btn-xs" title="save" type="submit"><span
|
||||
class="glyphicon glyphicon-floppy-disk" aria-hidden="true"></span></button>
|
||||
</div>
|
||||
{Lang::T('Localisation')}
|
||||
{Lang::T('Localisation')}
|
||||
</div>
|
||||
|
||||
|
||||
<div class="panel-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/localisation-post">
|
||||
<form class="form-horizontal" method="post" role="form"
|
||||
action="{Text::url('')}settings/localisation-post">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label">{Lang::T('Timezone')}</label>
|
||||
@ -55,7 +56,8 @@
|
||||
<div class="col-md-6">
|
||||
<select class="form-control" name="lan" id="lan">
|
||||
{foreach $lani as $lanis}
|
||||
<option value="{$lanis@key}" {if $_c['language'] eq $lanis@key} selected="selected" {/if}>
|
||||
<option value="{$lanis@key}" {if $_c['language'] eq $lanis@key} selected="selected"
|
||||
{/if}>
|
||||
{$lanis@key}
|
||||
</option>
|
||||
{/foreach}
|
||||
@ -68,7 +70,7 @@
|
||||
</select>
|
||||
</div>
|
||||
<div class="col-md-4 help-block">
|
||||
<a href="{$_url}settings/language">{Lang::T('Language Editor')}</a>
|
||||
<a href="{Text::url('')}settings/language">{Lang::T('Language Editor')}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@ -139,8 +141,7 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-primary"
|
||||
type="submit">{Lang::T('Save Changes')}</button>
|
||||
<button class="btn btn-primary" type="submit">{Lang::T('Save Changes')}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@ -150,4 +151,4 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -1,6 +1,6 @@
|
||||
{include file="sections/header.tpl"}
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/notifications-post">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}settings/notifications-post">
|
||||
<input type="hidden" name="csrf_token" value="{$csrf_token}">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-12">
|
||||
@ -26,7 +26,8 @@
|
||||
<b>[[package]]</b> - {Lang::T('will be replaced with Package name')}.<br>
|
||||
<b>[[price]]</b> - {Lang::T('will be replaced with Package price')}.<br>
|
||||
<b>[[bills]]</b> - {Lang::T('additional bills for customers')}.<br>
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link" target="_blank">read documentation</a>.
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link"
|
||||
target="_blank">read documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -44,7 +45,8 @@
|
||||
<b>[[price]]</b> - {Lang::T('will be replaced with Package price')}.<br>
|
||||
<b>[[expired_date]]</b> - {Lang::T('will be replaced with Expiration date')}.<br>
|
||||
<b>[[bills]]</b> - {Lang::T('additional bills for customers')}.<br>
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link" target="_blank">read documentation</a>.
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link"
|
||||
target="_blank">read documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -62,7 +64,8 @@
|
||||
<b>[[price]]</b> - {Lang::T('will be replaced with Package price')}.<br>
|
||||
<b>[[expired_date]]</b> - {Lang::T('will be replaced with Expiration date')}.<br>
|
||||
<b>[[bills]]</b> - {Lang::T('additional bills for customers')}.<br>
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link" target="_blank">read documentation</a>.
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link"
|
||||
target="_blank">read documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -80,7 +83,8 @@
|
||||
<b>[[price]]</b> - {Lang::T('will be replaced with Package price')}.<br>
|
||||
<b>[[expired_date]]</b> - {Lang::T('will be replaced with Expiration date')}.<br>
|
||||
<b>[[bills]]</b> - {Lang::T('additional bills for customers')}.<br>
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link" target="_blank">read documentation</a>.
|
||||
<b>[[payment_link]]</b> - <a href="./docs/#Reminder%20with%20payment%20link"
|
||||
target="_blank">read documentation</a>.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
@ -197,4 +201,4 @@
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -1,13 +1,14 @@
|
||||
{include file="sections/header.tpl"}
|
||||
|
||||
<form id="formpages" method="post" role="form" action="{$_url}pages/{$PageFile}-post">
|
||||
<form id="formpages" method="post" role="form" action="{Text::url('')}pages/{$PageFile}-post">
|
||||
<div class="row">
|
||||
<div class="{if $action=='Voucher'}col-md-8{else}col-md-12{/if}">
|
||||
<div class="panel mb20 panel-primary panel-hovered">
|
||||
<div class="panel-heading">
|
||||
{if $action!='Voucher'}
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-danger btn-xs" title="Reset File" href="{$_url}pages/{$PageFile}-reset"
|
||||
<a class="btn btn-danger btn-xs" title="Reset File"
|
||||
href="{Text::url('')}pages/{$PageFile}-reset"
|
||||
onclick="return ask(this, 'Reset File?')"><span class="glyphicon glyphicon-refresh"
|
||||
aria-hidden="true"></span></a>
|
||||
</div>
|
||||
@ -80,4 +81,4 @@
|
||||
</script>
|
||||
{/literal}
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -1,13 +1,14 @@
|
||||
{include file="sections/header.tpl"}
|
||||
|
||||
{if empty($_c['github_token'])}
|
||||
<p class="help-block">{Lang::T('To download from private/paid repository')}, <a href="{$_url}settings/app#GithubAuthentication">
|
||||
<p class="help-block">{Lang::T('To download from private/paid repository')}, <a
|
||||
href="{Text::url('')}settings/app#GithubAuthentication">
|
||||
{Lang::T('Set your Github Authentication first')}</a></p>
|
||||
{/if}
|
||||
|
||||
<form method="post" enctype="multipart/form-data"
|
||||
onsubmit="return ask(this, 'Warning, installing unknown source can damage your server, continue?')"
|
||||
action="{$_url}pluginmanager/dlinstall">
|
||||
action="{Text::url('')}pluginmanager/dlinstall">
|
||||
<div class="panel panel-primary panel-hovered">
|
||||
<div class="panel-heading">
|
||||
{Lang::T('Plugin Installer')}
|
||||
@ -15,8 +16,9 @@
|
||||
<a class="btn btn-warning btn-xs" title="info"
|
||||
href="https://github.com/hotspotbilling/phpnuxbill/wiki/Installing-Plugin-or-Payment-Gateway"
|
||||
target="_blank"><span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> info</a>
|
||||
<a class="btn btn-success btn-xs" title="refresh cache" href="{$_url}pluginmanager/refresh"><span
|
||||
class="glyphicon glyphicon-refresh" aria-hidden="true"></span> refresh</a>
|
||||
<a class="btn btn-success btn-xs" title="refresh cache"
|
||||
href="{Text::url('')}pluginmanager/refresh"><span class="glyphicon glyphicon-refresh"
|
||||
aria-hidden="true"></span> refresh</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-body row">
|
||||
@ -42,9 +44,11 @@
|
||||
<ul class="nav nav-tabs" role="tablist">
|
||||
<li role="presentation" class="active"><a href="#plugin" aria-controls="plugin" role="tab"
|
||||
data-toggle="tab">{Lang::T('Plugin')}</a></li>
|
||||
<li role="presentation"><a href="#pg" aria-controls="pg" role="tab" data-toggle="tab">{Lang::T('Payment Gateway')}</a>
|
||||
<li role="presentation"><a href="#pg" aria-controls="pg" role="tab"
|
||||
data-toggle="tab">{Lang::T('Payment Gateway')}</a>
|
||||
</li>
|
||||
<li role="presentation"><a href="#device" aria-controls="device" role="tab" data-toggle="tab">{Lang::T('Devices')}</a>
|
||||
<li role="presentation"><a href="#device" aria-controls="device" role="tab"
|
||||
data-toggle="tab">{Lang::T('Devices')}</a>
|
||||
</li>
|
||||
</ul>
|
||||
<br>
|
||||
@ -73,10 +77,10 @@
|
||||
class="btn btn-info"><i class="glyphicon glyphicon-align-left"></i> Source</a>
|
||||
</div>
|
||||
<div class="btn-group btn-group-justified" role="group" aria-label="...">
|
||||
<a href="{$_url}pluginmanager/delete/plugin/{$plugin['id']}"
|
||||
<a href="{Text::url('')}pluginmanager/delete/plugin/{$plugin['id']}"
|
||||
onclick="return ask(this, '{Lang::T('Delete')}?')" class="btn btn-danger"><i
|
||||
class="glyphicon glyphicon-trash"></i> Delete</a>
|
||||
<a {if $zipExt } href="{$_url}pluginmanager/install/plugin/{$plugin['id']}"
|
||||
<a {if $zipExt } href="{Text::url('')}pluginmanager/install/plugin/{$plugin['id']}"
|
||||
onclick="return ask(this, 'Installing plugin will take some time to complete, do not close the page while it loading to install the plugin')"
|
||||
{else} href="#" onclick="alert('PHP ZIP extension is not installed')"
|
||||
{/if}
|
||||
@ -111,7 +115,7 @@
|
||||
</a>
|
||||
<a href="{$pg['github']}" target="_blank" style="color: black;" class="btn btn-info"><i
|
||||
class="glyphicon glyphicon-align-left"></i> Source</a>
|
||||
<a {if $zipExt } href="{$_url}pluginmanager/install/payment/{$pg['id']}"
|
||||
<a {if $zipExt } href="{Text::url('')}pluginmanager/install/payment/{$pg['id']}"
|
||||
onclick="return ask(this, 'Installing plugin will take some time to complete, do not close the page while it loading to install the plugin')"
|
||||
{else} href="#" onclick="alert('PHP ZIP extension is not available')"
|
||||
{/if}
|
||||
@ -146,7 +150,7 @@
|
||||
</a>
|
||||
<a href="{$dvc['github']}" target="_blank" style="color: black;" class="btn btn-info"><i
|
||||
class="glyphicon glyphicon-align-left"></i> Source</a>
|
||||
<a {if $zipExt } href="{$_url}pluginmanager/install/device/{$dvc['id']}"
|
||||
<a {if $zipExt } href="{Text::url('')}pluginmanager/install/device/{$dvc['id']}"
|
||||
onclick="return ask(this, 'Installing plugin will take some time to complete, do not close the page while it loading to install the plugin')"
|
||||
{else} href="#" onclick="alert('PHP ZIP extension is not available')"
|
||||
{/if}
|
||||
@ -162,4 +166,4 @@
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -7,7 +7,7 @@
|
||||
<div class="panel-heading">{Lang::T('Add Vouchers')}</div>
|
||||
<div class="panel-body">
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}plan/voucher-post">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}plan/voucher-post">
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label">{Lang::T('Type')}</label>
|
||||
<div class="col-md-6">
|
||||
@ -59,7 +59,8 @@
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label">{Lang::T('Voucher Prefix')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="prefix" placeholder="NUX-" value="{$_c['voucher_prefix']}">
|
||||
<input type="text" class="form-control" name="prefix" placeholder="NUX-"
|
||||
value="{$_c['voucher_prefix']}">
|
||||
</div>
|
||||
<p class="help-block col-md-4">NUX-VoUCHeRCOdE</p>
|
||||
</div>
|
||||
@ -74,14 +75,16 @@
|
||||
<label for="inputSkills" class="col-sm-2 control-label">{Lang::T('Print Now')}</label>
|
||||
|
||||
<div class="col-sm-10">
|
||||
<input type="checkbox" id="print_now" name="print_now" class="iCheck" value="yes" onclick="showVouchersPerPage()">
|
||||
<input type="checkbox" id="print_now" name="print_now" class="iCheck" value="yes"
|
||||
onclick="showVouchersPerPage()">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group" id="printers" style="display:none;">
|
||||
<label class="col-md-2 control-label">{Lang::T('Vouchers Per Page')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" id="voucher-print" class="form-control" name="voucher_per_page" value="36" placeholder="{Lang::T("Vouchers Per Page")} (default 36)">
|
||||
<input type="text" id="voucher-print" class="form-control" name="voucher_per_page"
|
||||
value="36" placeholder="{Lang::T("Vouchers Per Page")} (default 36)">
|
||||
</div>
|
||||
<p class="help-block col-md-4">
|
||||
{Lang::T('Vouchers Per Page')} (default 36)
|
||||
@ -89,7 +92,9 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-success" onclick="return ask(this, '{Lang::T("Continue the Voucher creation process?")}')" type="submit">{Lang::T('Generate')}</button>
|
||||
<button class="btn btn-success"
|
||||
onclick="return ask(this, '{Lang::T("Continue the Voucher creation process?")}')"
|
||||
type="submit">{Lang::T('Generate')}</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@ -117,4 +122,4 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -4,11 +4,11 @@
|
||||
<div class="col-lg-3 col-lg-offset-9">
|
||||
<div class="btn-group btn-group-justified" role="group">
|
||||
<div class="btn-group" role="group">
|
||||
<a href="{$_url}plan/add-voucher" class="btn btn-primary"><i class="ion ion-android-add"></i>
|
||||
<a href="{Text::url('')}plan/add-voucher" class="btn btn-primary"><i class="ion ion-android-add"></i>
|
||||
{Lang::T('Vouchers')}</a>
|
||||
</div>
|
||||
<div class="btn-group" role="group">
|
||||
<a href="{$_url}plan/print-voucher" target="print_voucher" class="btn btn-info"><i
|
||||
<a href="{Text::url('')}plan/print-voucher" target="print_voucher" class="btn btn-info"><i
|
||||
class="ion ion-android-print"></i> {Lang::T('Print')}</a>
|
||||
</div>
|
||||
</div>
|
||||
@ -17,17 +17,17 @@
|
||||
<div class="panel panel-hovered mb20 panel-primary">
|
||||
<div class="panel-heading">
|
||||
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-danger btn-xs" title="Remove used Voucher" href="{$_url}plan/remove-voucher"
|
||||
onclick="return ask(this, 'Delete all used voucher code more than 3 months?')"><span
|
||||
class="glyphicon glyphicon-trash" aria-hidden="true"></span> {Lang::T('Delete')} > {Lang::T('3
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-danger btn-xs" title="Remove used Voucher" href="{Text::url('')}plan/remove-voucher"
|
||||
onclick="return ask(this, 'Delete all used voucher code more than 3 months?')"><span
|
||||
class="glyphicon glyphicon-trash" aria-hidden="true"></span> {Lang::T('Delete')} > {Lang::T('3
|
||||
Months')}</a>
|
||||
</div>
|
||||
</div>
|
||||
{/if}
|
||||
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<form id="site-search" method="post" action="{$_url}plan/voucher/">
|
||||
<form id="site-search" method="post" action="{Text::url('')}plan/voucher/">
|
||||
<div class="row" style="padding: 5px">
|
||||
<div class="col-lg-2">
|
||||
<div class="input-group">
|
||||
@ -42,8 +42,8 @@
|
||||
<select class="form-control" id="router" name="router">
|
||||
<option value="">{Lang::T('Location')}</option>
|
||||
{foreach $routers as $r}
|
||||
<option value="{$r}" {if $router eq $r }selected{/if}>{$r}
|
||||
</option>
|
||||
<option value="{$r}" {if $router eq $r }selected{/if}>{$r}
|
||||
</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
@ -51,7 +51,7 @@
|
||||
<select class="form-control" id="plan" name="plan">
|
||||
<option value="">{Lang::T('Plan Name')}</option>
|
||||
{foreach $plans as $p}
|
||||
<option value="{$p['id']}" {if $plan eq $p['id'] }selected{/if}>{$p['name_plan']}</option>
|
||||
<option value="{$p['id']}" {if $plan eq $p['id'] }selected{/if}>{$p['name_plan']}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
@ -66,7 +66,7 @@
|
||||
<select class="form-control" id="customer" name="customer">
|
||||
<option value="">{Lang::T('Customer')}</option>
|
||||
{foreach $customers as $c}
|
||||
<option value="{$c['user']}" {if $customer eq $c['user'] }selected{/if}>{$c['user']}</option>
|
||||
<option value="{$c['user']}" {if $customer eq $c['user'] }selected{/if}>{$c['user']}</option>
|
||||
{/foreach}
|
||||
</select>
|
||||
</div>
|
||||
@ -78,7 +78,8 @@
|
||||
</div>
|
||||
<div class="btn-group" role="group">
|
||||
<a class="btn btn-warning btn-block" title="Clear Search Query"
|
||||
href="{$_url}plan/voucher/"><span class="glyphicon glyphicon-remove-circle"></span></a>
|
||||
href="{Text::url('')}plan/voucher/"><span
|
||||
class="glyphicon glyphicon-remove-circle"></span></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -106,42 +107,42 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $d as $ds}
|
||||
<tr {if $ds['status'] eq '1' }class="danger" {/if}>
|
||||
<td><input type="checkbox" name="voucher_ids[]" value="{$ds['id']}"></td>
|
||||
<td>{$ds['id']}</td>
|
||||
<td>{$ds['type']}</td>
|
||||
<td>{$ds['routers']}</td>
|
||||
<td>{$ds['name_plan']}</td>
|
||||
<td style="background-color: black; color: black;"
|
||||
onmouseleave="this.style.backgroundColor = 'black';"
|
||||
onmouseenter="this.style.backgroundColor = 'white';">
|
||||
{$ds['code']}</td>
|
||||
<td>{if $ds['status'] eq '0'} <label class="btn-tag btn-tag-success"> Not Use
|
||||
</label> {else} <label class="btn-tag btn-tag-danger">Used</label>
|
||||
{/if}</td>
|
||||
<td>{if $ds['user'] eq '0'} -
|
||||
{else}<a href="{$_url}customers/viewu/{$ds['user']}">{$ds['user']}</a>
|
||||
{/if}</td>
|
||||
<td>{if $ds['created_at']}{Lang::dateTimeFormat($ds['created_at'])}{/if}</td>
|
||||
<td>{if $ds['used_date']}{Lang::dateTimeFormat($ds['used_date'])}{/if}</td>
|
||||
<td>{if $ds['generated_by']}
|
||||
<a
|
||||
href="{$_url}settings/users-view/{$ds['generated_by']}">{$admins[$ds['generated_by']]}</a>
|
||||
{else} -
|
||||
{/if}
|
||||
</td>
|
||||
<td>
|
||||
{if $ds['status'] neq '1'}
|
||||
<a href="{$_url}plan/voucher-view/{$ds['id']}" id="{$ds['id']}" style="margin: 0px;"
|
||||
class="btn btn-success btn-xs"> {Lang::T('View')} </a>
|
||||
{/if}
|
||||
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
|
||||
<a href="{$_url}plan/voucher-delete/{$ds['id']}" id="{$ds['id']}"
|
||||
class="btn btn-danger btn-xs" onclick="return ask(this, '{Lang::T('Delete')}?')"><i
|
||||
class="glyphicon glyphicon-trash"></i></a>
|
||||
{/if}
|
||||
</td>
|
||||
</tr>
|
||||
<tr {if $ds['status'] eq '1' }class="danger" {/if}>
|
||||
<td><input type="checkbox" name="voucher_ids[]" value="{$ds['id']}"></td>
|
||||
<td>{$ds['id']}</td>
|
||||
<td>{$ds['type']}</td>
|
||||
<td>{$ds['routers']}</td>
|
||||
<td>{$ds['name_plan']}</td>
|
||||
<td style="background-color: black; color: black;"
|
||||
onmouseleave="this.style.backgroundColor = 'black';"
|
||||
onmouseenter="this.style.backgroundColor = 'white';">
|
||||
{$ds['code']}</td>
|
||||
<td>{if $ds['status'] eq '0'} <label class="btn-tag btn-tag-success"> Not Use
|
||||
</label> {else} <label class="btn-tag btn-tag-danger">Used</label>
|
||||
{/if}</td>
|
||||
<td>{if $ds['user'] eq '0'} -
|
||||
{else}<a href="{Text::url('')}customers/viewu/{$ds['user']}">{$ds['user']}</a>
|
||||
{/if}</td>
|
||||
<td>{if $ds['created_at']}{Lang::dateTimeFormat($ds['created_at'])}{/if}</td>
|
||||
<td>{if $ds['used_date']}{Lang::dateTimeFormat($ds['used_date'])}{/if}</td>
|
||||
<td>{if $ds['generated_by']}
|
||||
<a
|
||||
href="{Text::url('')}settings/users-view/{$ds['generated_by']}">{$admins[$ds['generated_by']]}</a>
|
||||
{else} -
|
||||
{/if}
|
||||
</td>
|
||||
<td>
|
||||
{if $ds['status'] neq '1'}
|
||||
<a href="{Text::url('')}plan/voucher-view/{$ds['id']}" id="{$ds['id']}" style="margin: 0px;"
|
||||
class="btn btn-success btn-xs"> {Lang::T('View')} </a>
|
||||
{/if}
|
||||
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
|
||||
<a href="{Text::url('')}plan/voucher-delete/{$ds['id']}" id="{$ds['id']}"
|
||||
class="btn btn-danger btn-xs" onclick="return ask(this, '{Lang::T('Delete')}?')"><i
|
||||
class="glyphicon glyphicon-trash"></i></a>
|
||||
{/if}
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
@ -153,7 +154,7 @@
|
||||
<div class="btn-group btn-group-justified" role="group">
|
||||
<div class="btn-group" role="group">
|
||||
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
|
||||
<button id="deleteSelectedVouchers" class="btn btn-danger">{Lang::T('Delete
|
||||
<button id="deleteSelectedVouchers" class="btn btn-danger">{Lang::T('Delete
|
||||
Selected')}</button>
|
||||
{/if}
|
||||
</div>
|
||||
@ -175,9 +176,9 @@
|
||||
}).then((result) => {
|
||||
if (result.isConfirmed) {
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open('POST', '{$_url}plan/voucher-delete-many', true);
|
||||
xhr.open('POST', '{Text::url('')}plan/voucher-delete-many', true);
|
||||
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
|
||||
xhr.onload = function () {
|
||||
xhr.onload = function() {
|
||||
if (xhr.status === 200) {
|
||||
var response = JSON.parse(xhr.responseText);
|
||||
|
||||
@ -221,9 +222,9 @@
|
||||
}
|
||||
|
||||
// Example usage for selected vouchers
|
||||
document.getElementById('deleteSelectedVouchers').addEventListener('click', function () {
|
||||
document.getElementById('deleteSelectedVouchers').addEventListener('click', function() {
|
||||
var selectedVouchers = [];
|
||||
document.querySelectorAll('input[name="voucher_ids[]"]:checked').forEach(function (checkbox) {
|
||||
document.querySelectorAll('input[name="voucher_ids[]"]:checked').forEach(function(checkbox) {
|
||||
selectedVouchers.push(checkbox.value);
|
||||
});
|
||||
|
||||
@ -239,8 +240,8 @@
|
||||
}
|
||||
});
|
||||
|
||||
document.querySelectorAll('.delete-voucher').forEach(function (button) {
|
||||
button.addEventListener('click', function () {
|
||||
document.querySelectorAll('.delete-voucher').forEach(function(button) {
|
||||
button.addEventListener('click', function() {
|
||||
var voucherId = this.getAttribute('data-id');
|
||||
deleteVouchers([voucherId]);
|
||||
});
|
||||
@ -248,7 +249,7 @@
|
||||
|
||||
|
||||
// Select or deselect all checkboxes
|
||||
document.getElementById('select-all').addEventListener('change', function () {
|
||||
document.getElementById('select-all').addEventListener('change', function() {
|
||||
var checkboxes = document.querySelectorAll('input[name="voucher_ids[]"]');
|
||||
for (var checkbox of checkboxes) {
|
||||
checkbox.checked = this.checked;
|
||||
|
@ -4,27 +4,28 @@
|
||||
<div class="col-md-6 col-sm-12 col-md-offset-3">
|
||||
<div class="panel panel-hovered panel-primary panel-stacked mb30">
|
||||
<div class="panel-body">
|
||||
<form class="form-horizontal" method="post" action="{$_url}plan/print" target="_blank">
|
||||
<form class="form-horizontal" method="post" action="{Text::url('')}plan/print" target="_blank">
|
||||
<pre id="content"></pre>
|
||||
<textarea class="hidden" id="formcontent" name="content">{$print}</textarea>
|
||||
<input type="hidden" name="id" value="{$in['id']}">
|
||||
<a href="{$_url}plan/voucher" class="btn btn-default btn-sm"><i
|
||||
<a href="{Text::url('')}plan/voucher" class="btn btn-default btn-sm"><i
|
||||
class="ion-reply-all"></i>{Lang::T('Finish')}</a>
|
||||
<a href="https://api.whatsapp.com/send/?text={$whatsapp}" target="_blank"
|
||||
class="btn btn-primary btn-sm">
|
||||
<i class="glyphicon glyphicon-share"></i> WhatsApp</a>
|
||||
<button type="submit" class="btn btn-info text-black btn-sm"><i class="glyphicon glyphicon-print"></i>
|
||||
<button type="submit" class="btn btn-info text-black btn-sm"><i
|
||||
class="glyphicon glyphicon-print"></i>
|
||||
Print</button>
|
||||
<a href="nux://print?text={urlencode($print)}"
|
||||
<a href="nux://print?text={urlencode($print)}"
|
||||
class="btn btn-success text-black btn-sm hidden-md hidden-lg">
|
||||
<i class="glyphicon glyphicon-phone"></i>
|
||||
NuxPrint
|
||||
</a>
|
||||
<a href="https://github.com/hotspotbilling/android-printer"
|
||||
<i class="glyphicon glyphicon-phone"></i>
|
||||
NuxPrint
|
||||
</a>
|
||||
<a href="https://github.com/hotspotbilling/android-printer"
|
||||
class="btn btn-success text-black btn-sm hidden-xs hidden-sm" target="_blank">
|
||||
<i class="glyphicon glyphicon-phone"></i>
|
||||
NuxPrint
|
||||
</a>
|
||||
<i class="glyphicon glyphicon-phone"></i>
|
||||
NuxPrint
|
||||
</a>
|
||||
</form>
|
||||
<javascript type="text/javascript">
|
||||
</javascript>
|
||||
|
@ -5,7 +5,7 @@
|
||||
<div class="panel panel-primary panel-hovered panel-stacked mb30">
|
||||
<div class="panel-heading">{Lang::T('Add Service Plan')}</div>
|
||||
<div class="panel-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}services/vpn-add-post">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('')}services/vpn-add-post">
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label">{Lang::T('Status')}
|
||||
<a tabindex="0" class="btn btn-link btn-xs" role="button" data-toggle="popover"
|
||||
@ -61,7 +61,7 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label"><a
|
||||
href="{$_url}bandwidth/add">{Lang::T('Bandwidth Name')}</a></label>
|
||||
href="{Text::url('')}bandwidth/add">{Lang::T('Bandwidth Name')}</a></label>
|
||||
<div class="col-md-6">
|
||||
<select id="id_bw" name="id_bw" class="form-control select2">
|
||||
<option value="">{Lang::T('Select Bandwidth')}...</option>
|
||||
@ -113,7 +113,7 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label"><a
|
||||
href="{$_url}routers/add">{Lang::T('Router Name')}</a></label>
|
||||
href="{Text::url('')}routers/add">{Lang::T('Router Name')}</a></label>
|
||||
<div class="col-md-6">
|
||||
<select id="routers" name="routers" required class="form-control select2">
|
||||
<option value=''>{Lang::T('Select Routers')}</option>
|
||||
@ -125,7 +125,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-2 control-label"><a href="{$_url}pool/add">{Lang::T('IP Pool')}</a></label>
|
||||
<label class="col-md-2 control-label"><a href="{Text::url('')}pool/add">{Lang::T('IP Pool')}</a></label>
|
||||
<div class="col-md-6">
|
||||
<select id="pool_name" name="pool_name" required class="form-control select2">
|
||||
<option value=''>{Lang::T('Select Pool')}</option>
|
||||
@ -135,7 +135,7 @@
|
||||
<div class="form-group">
|
||||
<div class="col-md-offset-2 col-md-10">
|
||||
<button class="btn btn-primary" onclick="return ask(this, '{Lang::T("Continue the VPN creation process?")}')" type="submit">{Lang::T('Save Changes')}</button>
|
||||
Or <a href="{$_url}services/pppoe">{Lang::T('Cancel')}</a>
|
||||
Or <a href="{Text::url('')}services/pppoe">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -1,6 +1,6 @@
|
||||
{include file="sections/header.tpl"}
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}services/edit-vpn-post">
|
||||
<form class="form-horizontal" method="post" role="form" action="{Text::url('services/edit-vpn-post')}">
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="panel panel-primary panel-hovered panel-stacked mb30">
|
||||
@ -14,8 +14,10 @@
|
||||
data-content="{Lang::T("Customer cannot buy disabled Package, but admin can recharge it, use it if you want only admin recharge it")}">?</a>
|
||||
</label>
|
||||
<div class="col-md-9">
|
||||
<input type="radio" name="enabled" value="1" {if $d['enabled'] == 1}checked{/if}> {Lang::T('Enable')}
|
||||
<input type="radio" name="enabled" value="0" {if $d['enabled'] == 0}checked{/if}> {Lang::T('Disable')}
|
||||
<input type="radio" name="enabled" value="1" {if $d['enabled'] == 1}checked{/if}>
|
||||
{Lang::T('Enable')}
|
||||
<input type="radio" name="enabled" value="0" {if $d['enabled'] == 0}checked{/if}>
|
||||
{Lang::T('Disable')}
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@ -81,7 +83,7 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><a
|
||||
href="{$_url}bandwidth/add">{Lang::T('Bandwidth Name')}</a></label>
|
||||
href="{Text::url('bandwidth/add')}">{Lang::T('Bandwidth Name')}</a></label>
|
||||
<div class="col-md-9">
|
||||
<select id="id_bw" name="id_bw" class="form-control select2">
|
||||
{foreach $b as $bs}
|
||||
@ -116,7 +118,9 @@
|
||||
<span class="input-group-addon">{$_c['currency_code']}</span>
|
||||
<input type="number" class="form-control" name="price_old" value="{$d['price_old']}">
|
||||
</div>
|
||||
<p class="help-block">{Lang::T('For Discount Rate, this is price before get discount, must be more expensive with real price')}</p>
|
||||
<p class="help-block">
|
||||
{Lang::T('For Discount Rate, this is price before get discount, must be more expensive with real price')}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@ -158,7 +162,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label class="col-md-3 control-label"><a href="{$_url}pool/add">{Lang::T('IP Pool')}</a></label>
|
||||
<label class="col-md-3 control-label"><a
|
||||
href="{Text::url('pool/add')}">{Lang::T('IP Pool')}</a></label>
|
||||
<div class="col-md-9">
|
||||
<select id="pool_name" name="pool_name" required class="form-control select2">
|
||||
{foreach $p as $ps}
|
||||
@ -214,8 +219,10 @@
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-success" onclick="return ask(this, '{Lang::T("Continue the VPN creation process?")}')" type="submit">{Lang::T('Save Changes')}</button>
|
||||
Or <a href="{$_url}services/vpn">{Lang::T('Cancel')}</a>
|
||||
<button class="btn btn-success"
|
||||
onclick="return ask(this, '{Lang::T("Continue the VPN creation process?")}')"
|
||||
type="submit">{Lang::T('Save Changes')}</button>
|
||||
Or <a href="{Text::url('services/vpn')}">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
@ -261,4 +268,4 @@
|
||||
});
|
||||
</script>
|
||||
|
||||
{include file="sections/footer.tpl"}
|
||||
{include file="sections/footer.tpl"}
|
@ -5,19 +5,19 @@
|
||||
<div class="panel panel-hovered mb20 panel-primary">
|
||||
<div class="panel-heading">
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-primary btn-xs" title="save" href="{$_url}services/sync/vpn"
|
||||
<a class="btn btn-primary btn-xs" title="save" href="{Text::url('services/sync/vpn')}"
|
||||
onclick="return ask(this, 'This will sync/send vpn plan to Mikrotik?')"><span
|
||||
class="glyphicon glyphicon-refresh" aria-hidden="true"></span> sync</a>
|
||||
</div>{Lang::T('VPN Package')}
|
||||
</div>
|
||||
<form id="site-search" method="post" action="{$_url}services/vpn">
|
||||
<form id="site-search" method="post" action="{Text::url('services/vpn')}">
|
||||
<div class="panel-body">
|
||||
<div class="row row-no-gutters" style="padding: 5px">
|
||||
<div class="col-lg-2">
|
||||
<div class="input-group">
|
||||
<div class="input-group-btn">
|
||||
<a class="btn btn-danger" title="Clear Search Query"
|
||||
href="{$_url}services/vpn"><span
|
||||
href="{Text::url('services/vpn')}"><span
|
||||
class="glyphicon glyphicon-remove-circle"></span></a>
|
||||
</div>
|
||||
<input type="text" name="name" class="form-control"
|
||||
@ -97,7 +97,7 @@
|
||||
class="fa fa-search"></span></button>
|
||||
</div>
|
||||
<div class="col-lg-1 col-xs-4">
|
||||
<a href="{$_url}services/vpn-add" class="btn btn-primary btn-block"
|
||||
<a href="{Text::url('services/vpn-add')}" class="btn btn-primary btn-block"
|
||||
title="{Lang::T('New Service Plan')}"><i class="ion ion-android-add"></i></a>
|
||||
</div>
|
||||
</div>
|
||||
@ -117,13 +117,13 @@
|
||||
<tr>
|
||||
<th>{Lang::T('Name')}</th>
|
||||
<th>{Lang::T('Type')}</th>
|
||||
<th><a href="{$_url}bandwidth/list">{Lang::T('Bandwidth')}</a></th>
|
||||
<th><a href="{Text::url('bandwidth/list')}">{Lang::T('Bandwidth')}</a></th>
|
||||
<th>{Lang::T('Price')}</th>
|
||||
<th>{Lang::T('Validity')}</th>
|
||||
<th><a href="{$_url}pool/list">{Lang::T('IP Pool')}</a></th>
|
||||
<th><a href="{Text::url('pool/list')}">{Lang::T('IP Pool')}</a></th>
|
||||
<th style="background-color: rgb(243, 241, 172);">{Lang::T('Internet Plan')}</th>
|
||||
<th style="background-color: rgb(243, 241, 172);">{Lang::T('Date')}</th>
|
||||
<th><a href="{$_url}routers/list">{Lang::T('Location')}</a></th>
|
||||
<th><a href="{Text::url('routers/list')}">{Lang::T('Location')}</a></th>
|
||||
<th>{Lang::T('Device')}</th>
|
||||
<th>{Lang::T('Manage')}</th>
|
||||
<th>ID</th>
|
||||
@ -138,13 +138,14 @@
|
||||
</td>
|
||||
<td>{$ds['name_bw']}</td>
|
||||
<td>{Lang::moneyFormat($ds['price'])}{if !empty($ds['price_old'])}
|
||||
<sup style="text-decoration: line-through; color: red">{Lang::moneyFormat($ds['price_old'])}</sup>
|
||||
{/if}
|
||||
<sup
|
||||
style="text-decoration: line-through; color: red">{Lang::moneyFormat($ds['price_old'])}</sup>
|
||||
{/if}
|
||||
</td>
|
||||
<td>{$ds['validity']} {$ds['validity_unit']}</td>
|
||||
<td>{$ds['pool']}</td>
|
||||
<td>{if $ds['plan_expired']}<a
|
||||
href="{$_url}services/vpn-edit/{$ds['plan_expired']}">{Lang::T('Yes')}</a>{else}{Lang::T('No')}
|
||||
href="{Text::url('services/vpn-edit/', $ds['plan_expired'])}">{Lang::T('Yes')}</a>{else}{Lang::T('No')}
|
||||
{/if}</td>
|
||||
<td>{if $ds['prepaid'] == no}{$ds['expired_date']}{/if}</td>
|
||||
<td>
|
||||
@ -152,15 +153,15 @@
|
||||
<span class="label label-primary">RADIUS</span>
|
||||
{else}
|
||||
{if $ds['routers']!=''}
|
||||
<a href="{$_url}routers/edit/0&name={$ds['routers']}">{$ds['routers']}</a>
|
||||
<a href="{Text::url('routers/edit/0&name=')}{$ds['routers']}">{$ds['routers']}</a>
|
||||
{/if}
|
||||
{/if}
|
||||
</td>
|
||||
<td>{$ds['device']}</td>
|
||||
<td>
|
||||
<a href="{$_url}services/vpn-edit/{$ds['id']}"
|
||||
<a href="{Text::url('services/vpn-edit/')}{$ds['id']}"
|
||||
class="btn btn-info btn-xs">{Lang::T('Edit')}</a>
|
||||
<a href="{$_url}services/vpn-delete/{$ds['id']}"
|
||||
<a href="{Text::url('services/vpn-delete/')}{$ds['id']}"
|
||||
onclick="return ask(this, '{Lang::T('Delete')}?')" id="{$ds['id']}"
|
||||
class="btn btn-danger btn-xs"><i class="glyphicon glyphicon-trash"></i></a>
|
||||
</td>
|
||||
|
@ -38,9 +38,9 @@
|
||||
|
||||
<div class="page page-err clearfix">
|
||||
<div class="err-container">
|
||||
<h1 class="m404 mb0">404 <a href="{$_url}home" class="ion ion-forward" title="Go to Dashboard"></a></h1>
|
||||
<h1 class="m404 mb0">404 <a href="{Text::url('home')}" class="ion ion-forward" title="Go to Dashboard"></a></h1>
|
||||
<p class="text-desc mb20">{Lang::T("Oops! The page you are looking for was not found")}.</p>
|
||||
<a href="{$_url}home" class="btn btn-primary error-btn">{Lang::T("Back to dashboard")}</a>
|
||||
<a href="{Text::url('home')}" class="btn btn-primary error-btn">{Lang::T("Back to dashboard")}</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -21,7 +21,8 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $d as $ds}
|
||||
<tr onclick="window.location.href = '{$_url}voucher/invoice/{$ds['id']}'" style="cursor: pointer;">
|
||||
<tr onclick="window.location.href = '{Text::url('voucher/invoice/')}{$ds['id']}'"
|
||||
style="cursor: pointer;">
|
||||
<td>{$ds['invoice']}</td>
|
||||
<td>{$ds['plan_name']}</td>
|
||||
<td>{Lang::moneyFormat($ds['price'])}</td>
|
||||
@ -41,4 +42,4 @@
|
||||
</div>
|
||||
|
||||
|
||||
{include file="customer/footer.tpl"}
|
||||
{include file="customer/footer.tpl"}
|
@ -16,20 +16,22 @@
|
||||
<div class="box box-primary box-solid">
|
||||
<div class="box-header">{Lang::T('Voucher Activation')}</div>
|
||||
<div class="box-body">
|
||||
<form method="post" role="form" action="{$_url}voucher/activation-post">
|
||||
<form method="post" role="form" action="{Text::url('voucher/activation-post')}">
|
||||
<div class="form-group">
|
||||
<div class="input-group">
|
||||
<input type="text" class="form-control" id="code" name="code" value="{$code}"
|
||||
placeholder="{Lang::T('Enter voucher code here')}">
|
||||
<span class="input-group-btn">
|
||||
<a class="btn btn-default" href="{APP_URL}/scan/?back={urlencode($_url)}{urlencode("voucher/activation&code=")}"><i class="glyphicon glyphicon-qrcode"></i></a>
|
||||
<a class="btn btn-default"
|
||||
href="{$app_url}/scan/?back={urlencode(Text::url('voucher/activation&code='))}"><i
|
||||
class="glyphicon glyphicon-qrcode"></i></a>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-success" type="submit">{Lang::T('Recharge')}</button>
|
||||
Or <a href="{$_url}home">{Lang::T('Cancel')}</a>
|
||||
Or <a href="{Text::url('home')}">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
Loading…
x
Reference in New Issue
Block a user