Upload files to "ui/ui"
Signed-off-by: nestict <icttechnest@gmail.com>
This commit is contained in:
parent
77bd3ded5b
commit
04693a88e5
84
ui/ui/bandwidth-add.tpl
Normal file
84
ui/ui/bandwidth-add.tpl
Normal file
@ -0,0 +1,84 @@
|
||||
{include file="sections/header.tpl"}
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-12">
|
||||
<div class="card card-primary card-hovered card-stacked mb30">
|
||||
<div class="card-header" style="display: grid; align-content: center; justify-content: center;">
|
||||
<h5 class="card-title">{Lang::T('Add New Bandwidth')}</h5></div>
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}bandwidth/add-post">
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Bandwidth Name')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" id="name" name="name">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Rate Download')}</label>
|
||||
<div class="col-md-4">
|
||||
<input type="text" class="form-control" id="rate_down" name="rate_down">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<select class="form-select" style="height: 52px; background-color: white;" id="rate_down_unit" name="rate_down_unit">
|
||||
<option value="Kbps">Kbps</option>
|
||||
<option value="Mbps">Mbps</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Rate Upload')}</label>
|
||||
<div class="col-md-4">
|
||||
<input type="text" class="form-control" id="rate_up" name="rate_up">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<select class="form-select" style="height: 52px; background-color: white;" id="rate_up_unit" name="rate_up_unit">
|
||||
<option value="Kbps">Kbps</option>
|
||||
<option value="Mbps">Mbps</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Limit</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Limit]">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Threshold</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Threshold]">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Time</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Time]">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Priority</label>
|
||||
<div class="col-md-6">
|
||||
<input type="number" class="form-control" name="burst[]" placeholder="[Priority]">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Limit At</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Limit/At]">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-primary"
|
||||
type="submit">{Lang::T('Submit')}</button>
|
||||
Or <a href="{$_url}bandwidth/list">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
97
ui/ui/bandwidth-edit.tpl
Normal file
97
ui/ui/bandwidth-edit.tpl
Normal file
@ -0,0 +1,97 @@
|
||||
{include file="sections/header.tpl"}
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-12">
|
||||
<div class="card card-primary card-hovered card-stacked mb30">
|
||||
<div class="card-heading" style="display: grid; align-content: center; justify-content: center;">
|
||||
<h5 class="card-title">{Lang::T('Edit Bandwidth')}</h5>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}bandwidth/edit-post">
|
||||
<input type="hidden" name="id" value="{$d['id']}">
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Bandwidth Name')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" id="name" name="name" value="{$d['name_bw']}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Rate Download')}</label>
|
||||
<div class="col-md-4">
|
||||
<input type="text" class="form-control" id="rate_down" name="rate_down"
|
||||
value="{$d['rate_down']}">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<select class="form-select" style="height: 52px; background-color: white;" id="rate_down_unit" name="rate_down_unit">
|
||||
<option value="Kbps" {if $d['rate_down_unit'] eq 'Kbps'}selected="selected" {/if}>Kbps
|
||||
</option>
|
||||
<option value="Mbps" {if $d['rate_down_unit'] eq 'Mbps'}selected="selected" {/if}>Mbps
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Rate Upload')}</label>
|
||||
<div class="col-md-4">
|
||||
<input type="text" class="form-control" id="rate_up" name="rate_up" value="{$d['rate_up']}">
|
||||
</div>
|
||||
<div class="col-md-2">
|
||||
<select class="form-select" style="height: 52px; background-color: white;" id="rate_up_unit" name="rate_up_unit">
|
||||
<option value="Kbps" {if $d['rate_up_unit'] eq 'Kbps'}selected="selected" {/if}>Kbps
|
||||
</option>
|
||||
<option value="Mbps" {if $d['rate_up_unit'] eq 'Mbps'}selected="selected" {/if}>Mbps
|
||||
</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Limit</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Limit]" value="{$burst[0]}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Threshold</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Threshold]" value="{$burst[1]}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Burst Time</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Burst/Time]" value="{$burst[2]}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Priority</label>
|
||||
<div class="col-md-6">
|
||||
<input type="number" class="form-control" name="burst[]" placeholder="[Priority]" value="{$burst[3]}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">Limit At</label>
|
||||
<div class="col-md-6">
|
||||
<input type="text" class="form-control" name="burst[]" placeholder="[Limit/At]" value="{$burst[4]}">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<small>{Lang::T('Editing Bandwidth will not automatically update the plan, you need to edit the plan then save again')}</small>
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-primary"
|
||||
type="submit">{Lang::T('Submit')}</button>
|
||||
Or <a href="{$_url}bandwidth/list">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
42
ui/ui/change-password.tpl
Normal file
42
ui/ui/change-password.tpl
Normal file
@ -0,0 +1,42 @@
|
||||
{include file="sections/header.tpl"}
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-12 col-md-12">
|
||||
<div class="card card-primary card-hovered card-stacked mb30">
|
||||
<div class="card-header" style="display: grid; align-content: center; justify-content: center;">
|
||||
<h5 class="card-title">{Lang::T('Change Password')}</h5></div>
|
||||
<div class="card-body">
|
||||
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/change-password-post">
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Current Password')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="password" class="form-control" id="password" name="password">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('New Password')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="password" class="form-control" id="npass" name="npass">
|
||||
</div>
|
||||
</div>
|
||||
<div class="form-group row">
|
||||
<label class="col-md-4 control-label">{Lang::T('Confirm New Password')}</label>
|
||||
<div class="col-md-6">
|
||||
<input type="password" class="form-control" id="cnpass" name="cnpass">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<div class="col-lg-offset-2 col-lg-10">
|
||||
<button class="btn btn-success" type="submit">{Lang::T('Save Changes')}</button>
|
||||
Or <a href="{$_url}dashboard">{Lang::T('Cancel')}</a>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
42
ui/ui/community.tpl
Normal file
42
ui/ui/community.tpl
Normal file
@ -0,0 +1,42 @@
|
||||
{include file="sections/header.tpl"}
|
||||
<div class="container-fluid">
|
||||
<div class="row">
|
||||
<div class="col-sm-12" id="update">
|
||||
<div class="card card-primary card-hovered mb20 activities">
|
||||
<div class="card-header">
|
||||
<h3 class="card-title">MikroPulse</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<b>MikroPulse</b> is a Billing System for Hotspot and PPPOE in Mikrotik using PHP and Mikrotik API to comunicate with router.
|
||||
<hr>
|
||||
<div id="currentVersion">Current Version: </div>
|
||||
<div id="latestVersion">Latest Version: </div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="btn-group btn-group-justified" role="group" aria-label="...">
|
||||
<a href="./update.php" class="btn btn-success btn-sm btn-block">Install Latest Version</a>
|
||||
<a href="https://github.com/hotspotbilling/phpnuxbill/archive/refs/heads/master.zip" target="_blank"
|
||||
class="btn btn-warning btn-sm btn-block">Download Latest Version</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
If you Download manual the update file, sometime update change database, after uploading, click this button to update database structure.
|
||||
<a href="./update.php?step=4" class="btn btn-default btn-sm btn-block">Update Database</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
window.addEventListener('DOMContentLoaded', function() {
|
||||
$.getJSON("./version.json?" + Math.random(), function(data) {
|
||||
$('#currentVersion').html('Current Version: ' + data.version);
|
||||
});
|
||||
$.getJSON("https://raw.githubusercontent.com/hotspotbilling/phpnuxbill/master/version.json?" + Math
|
||||
.random(),
|
||||
function(data) {
|
||||
$('#latestVersion').html('Latest Version: ' + data.version);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
97
ui/ui/customers.tpl
Normal file
97
ui/ui/customers.tpl
Normal file
@ -0,0 +1,97 @@
|
||||
{include file="sections/header.tpl"}
|
||||
<div class="container-fluid">
|
||||
<style>
|
||||
.dataTables_wrapper .dataTables_paginate .paginate_button {
|
||||
display: inline-block;
|
||||
padding: 5px 10px;
|
||||
margin-right: 5px;
|
||||
border: 1px solid #ccc;
|
||||
background-color: #fff;
|
||||
color: #333;
|
||||
cursor: pointer;
|
||||
}
|
||||
</style>
|
||||
<div class="row">
|
||||
<div class="col-sm-12">
|
||||
<div class="card card-hovered mb20 card-primary">
|
||||
<div class="card-header">
|
||||
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
|
||||
<div class="btn-group pull-right">
|
||||
<a class="btn btn-primary btn-xs" title="save" href="{$_url}customers/csv"
|
||||
onclick="return confirm('This will export to CSV?')"><span class="fa fa-download"
|
||||
aria-hidden="true"></span> CSV</a>
|
||||
</div>
|
||||
{/if}
|
||||
{Lang::T('Manage Contact')}
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="md-whiteframe-z1 mb20 text-center">
|
||||
<div class="col-md-8">
|
||||
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="{$_url}customers/add" class="btn btn-primary btn-block"><i class="fa fa-plus">
|
||||
</i> {Lang::T('Add New Client')}</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="table-responsive table_mobile">
|
||||
<table id="customerTable" class="table table-bordered table-striped table-condensed">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{Lang::T('Full Name')}</th>
|
||||
<th>{Lang::T('Username')}</th>
|
||||
<th>{Lang::T('Account')}</th>
|
||||
<th>{Lang::T('Acc Type')}</th>
|
||||
<th>{Lang::T('Area')}</th>
|
||||
<th>{Lang::T('Package')}</th>
|
||||
<th>{Lang::T('Service')}</th>
|
||||
<!--<th>{Lang::T('Created On')}</th>-->
|
||||
<th>{Lang::T('Manage')}</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{foreach $d as $ds}
|
||||
<tr {if $ds['status'] != 'on'}class="danger"{/if}>
|
||||
<td onclick="window.location.href = '{$_url}customers/view/{$ds['id']}'"
|
||||
style="cursor: pointer;">{$ds['fullname']}</td>
|
||||
<td onclick="window.location.href = '{$_url}customers/view/{$ds['id']}'"
|
||||
style="cursor:pointer;">{$ds['username']}</td>
|
||||
<td>{$ds['account']}</td>
|
||||
<td>{$ds['account_type']}</td>
|
||||
<td>{$ds['address']}</td>
|
||||
<td align="center" api-get-text="{$_url}autoload/customer_is_active/{$d['id']}">
|
||||
<span class="label label-default">•</span>
|
||||
</td>
|
||||
<td>{$ds['service_type']}</td>
|
||||
<!--<td>{Lang::dateTimeFormat($ds['created_at'])}</td>-->
|
||||
<td align="center">
|
||||
<a href="{$_url}customers/view/{$ds['id']}" id="{$ds['id']}"
|
||||
style="margin: 0px; color:black"
|
||||
class="btn btn-success btn-xs"> {Lang::T('View')} </a>
|
||||
<a href="{$_url}customers/edit/{$ds['id']}" id="{$ds['id']}"
|
||||
style="margin: 0px; color:black"
|
||||
class="btn btn-info btn-xs"> {Lang::T('Edit')} </a>
|
||||
<a href="{$_url}plan/recharge/{$ds['id']}" id="{$ds['id']}" style="margin: 0px;color:black;"
|
||||
class="btn btn-warning btn-xs">{Lang::T('Recharge')}</a>
|
||||
</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||
<script src="https://cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
|
||||
<script>
|
||||
var $j = jQuery.noConflict();
|
||||
$j(document).ready(function () {
|
||||
$j('#customerTable').DataTable({
|
||||
"pagingType": "full_numbers"
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</div>
|
||||
{include file="sections/footer.tpl"}
|
Loading…
x
Reference in New Issue
Block a user