Upload files to "ui/ui"

Signed-off-by: nestict <icttechnest@gmail.com>
This commit is contained in:
nestict 2025-05-24 12:16:20 +02:00
parent e5db5b605f
commit 64e8157c1c
5 changed files with 451 additions and 0 deletions

74
ui/ui/invoice-print.tpl Normal file
View File

@ -0,0 +1,74 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="shortcut icon" href="https://laravel.com/img/favicon/favicon-16x16.png" type='image/x-icon'>
<title>{Lang::T('Login')} - {$_c['CompanyName']}</title>
<link rel="stylesheet" href="assets/vendor/chartist/css/chartist.min.css">
<link href="assets/vendor/bootstrap-select/dist/css/bootstrap-select.min.css" rel="stylesheet">
<link href="assets/css/style.css" rel="stylesheet">
<meta http-equiv="refresh" content="{$time}; url={$url}">
<script type="text/javascript">
function printpage() {
window.print();
}
</script>
</head>
<body topmargin="0" leftmargin="0" {if !$nuxprint} onload="printpage()" {/if}>
<div class="row">
<div class="col-md-6">
<table width="200">
<tr>
<td>
{if $content}
<pre style="border-style: none; background-color: white;">{$content}</pre>{else}
<pre style="border-style: none; background-color: white;"><b>{Lang::pad($_c['CompanyName'],' ', 2)}</b>
{Lang::pad($_c['address'],' ', 2)}
{Lang::pad($_c['phone'],' ', 2)}
{Lang::pad("", '=')}
{Lang::pads("Invoice", $in['invoice'], ' ')}
{Lang::pads(Lang::T('Date'), $date, ' ')}
{Lang::pads(Lang::T('Sales'), $_admin['fullname'], ' ')}
{Lang::pad("", '=')}
{Lang::pads(Lang::T('Type'), $in['type'], ' ')}
{Lang::pads(Lang::T('Plan Name'), $in['plan_name'], ' ')}
{Lang::pads(Lang::T('Plan Price'), Lang::moneyFormat($in['price']), ' ')}
{Lang::pad($in['method'], ' ', 2)}
{Lang::pads(Lang::T('Username'), $in['username'], ' ')}
{Lang::pads(Lang::T('Password'), '**********', ' ')}
{if $in['type'] != 'Balance'}
{Lang::pads(Lang::T('Created On'), Lang::dateAndTimeFormat($in['recharged_on'],$in['recharged_time']), ' ')}
{Lang::pads(Lang::T('Expires On'), Lang::dateAndTimeFormat($in['expiration'],$in['time']), ' ')}
{/if}
{Lang::pad("", '=')}
{Lang::pad($_c['note'],' ', 2)}</pre>
{/if}
</td>
</tr>
</table>
{if $nuxprint}
<a href="{$nuxprint}" class="btn btn-success text-black btn-sm" name="nux" value="print">
<i class="fa fa-print"></i>
Print Invoice
<!-- <i class="fa fa-phone"></i> -->
</a>
<br>
<iframe src="{$nuxprint}" style="height: 2px;"><iframe>
{/if}
</div>
</div>
<script src="ui/ui/scripts/jquery.min.js"></script>
<script src="ui/ui/scripts/bootstrap.min.js"></script>
{if isset($xfooter)}
{$xfooter}
{/if}
</body>
</html>

31
ui/ui/language-add.tpl Normal file
View File

@ -0,0 +1,31 @@
{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">{Lang::T('Translation')}</div>
<div class="card-body">
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/lang-post">
{foreach $langs as $lang}
<div class="form-group">
<div class="col-md-12">
<small>{str_replace('_',' ', $lang@key)}</small>
<input type="text" class="form-control" rows="1" name="{$lang@key}"
placeholder="{$lang@key}" value="{$lang}">
</div>
</div>
{/foreach}
<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>
Or <a href="{$_url}settings/localisation">{Lang::T('Cancel')}</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
{include file="sections/footer.tpl"}

71
ui/ui/logs-radius.tpl Normal file
View File

@ -0,0 +1,71 @@
{include file="sections/header.tpl"}
<div class="container-fluid">
<!-- pool -->
<div class="row">
<div class="col-sm-12">
<div class="card card-hovered mb20 card-primary">
<div class="card-header">
Radius
{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}logs/radius-csv"
onclick="return confirm('This will export to CSV?')"><span class="glyphicon glyphicon-download"
aria-hidden="true"></span> CSV</a>
</div>
{/if}
</div>
<div class="card-body">
<div class="text-center"">
<div class="col-md-12 mb-3">
<form id="site-search" method="post" action="{$_url}logs/radius/">
<div class="input-group">
<div class="input-group-text">
<span class="fa fa-search"></span>
</div>
<input type="text" name="q" class="form-control" value="{$q}"
placeholder="{Lang::T('Search by Name')}...">
<button class="btn btn-success input-group-btn" type="submit">{Lang::T('Search')}</button>
</div>
</form>
</div>
<div class="col-md-12">
<form class="form-inline" method="post" action="{$_url}logs/radius/">
<div class="form-group">
<div class="input-group has-error">
<span class="input-group-text">Keep Logs </span>
<input type="text" name="keep" class="form-control" placeholder="90" value="90">
<span class="input-group-text">Days</span>
<button type="submit" class="btn btn-danger btn-sm input-group-btn"
onclick="return confirm('Clear old logs?')">Clean Logs
</button>
</div>
</div>
</form>
</div>&nbsp;
</div>
<br>
<div class="table-responsive">
<table class="table table-bordered table-striped table-condensed table-hover border-primary">
<tbody>
{foreach $d as $ds}
<tr>
<td width="30px">{$ds['id']}</td>
<td width="200px">{Lang::dateTimeFormat($ds['authdate'])}</td>
<td width="100px">{$ds['username']}</td>
<td width="10px"><input type="password" value="{$ds['pass']}"
style="width:200px;height: 36px; border: 0px; text-align: right;" class="pull-right form-control"
onmouseleave="this.type = 'password'" onmouseenter="this.type = 'text'"
onclick="this.select()"></td>
<td>{$ds['reply']}</td>
</tr>
{/foreach}
</tbody>
</table>
</div>
{include file="pagination.tpl"}
</div>
</div>
</div>
</div>
</div>
{include file="sections/footer.tpl"}

66
ui/ui/logs.tpl Normal file
View File

@ -0,0 +1,66 @@
{include file="sections/header.tpl"}
<!-- pool -->
<div class="row">
<div class="col-sm-12">
<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-primary btn-xs" title="save" href="{$_url}logs/list-csv"
onclick="return confirm('This will export to CSV?')"><span class="glyphicon glyphicon-download"
aria-hidden="true"></span> CSV</a>
</div>
{/if}
Activity Log
</div>
<div class="panel-body">
<div class="text-center" style="padding: 15px">
<div class="col-md-4">
<form id="site-search" method="post" action="{$_url}logs/list/">
<div class="input-group">
<div class="input-group-addon">
<span class="fa fa-search"></span>
</div>
<input type="text" name="q" class="form-control" value="{$q}"
placeholder="{Lang::T('Search by Name')}...">
<div class="input-group-btn">
<button class="btn btn-success" type="submit">{Lang::T('Search')}</button>
</div>
</div>
</form>
</div>
<div class="col-md-8">
<form class="form-inline" method="post" action="{$_url}logs/list/">
<div class="input-group has-error">
<span class="input-group-addon">Keep Logs </span>
<input type="text" name="keep" class="form-control" placeholder="90" value="90">
<span class="input-group-addon">Days</span>
</div>
<button type="submit" class="btn btn-danger btn-sm"
onclick="return confirm('Clear old logs?')">Clean Logs</button>
</form>
</div>&nbsp;
</div>
<br>
<div class="table-responsive">
<table class="table table-bordered table-striped table-condensed">
<tbody>
{foreach $d as $ds}
<tr>
<td>{$ds['id']}</td>
<td>{Lang::dateTimeFormat($ds['date'])}</td>
<td>{$ds['type']}</td>
<td>{$ds['ip']}</td>
<td style="overflow-x: scroll;">{nl2br($ds['description'])}</td>
</tr>
{/foreach}
</tbody>
</table>
</div>
{include file="pagination.tpl"}
</div>
</div>
</div>
</div>
{include file="sections/footer.tpl"}

209
ui/ui/main.css Normal file
View File

@ -0,0 +1,209 @@
* {
margin: 0;
padding: 0;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
html {
font-size: 62.5%;
font-family: "Montserrat", sans-serif;
}
body {
min-height: 100vh;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
background-color: #ecf0f3;
color: grey;
}
h1 {
color: #000;
font-size: 3rem;
text-transform: capitalize;
}
button {
width: 16rem;
height: 4.5rem;
border-radius: 2.5rem;
font-size: 1.3rem;
font-weight: 700;
letter-spacing: 0.1rem;
text-transform: uppercase;
background-color: #ecf0f3;
color: grey;
border: none;
outline: none;
-webkit-box-shadow: 1rem 1rem 1.6rem #d1d9e6, -0.6rem -0.6rem 1.6rem #fff;
box-shadow: 1rem 1rem 1.6rem #d1d9e6, -0.6rem -0.6rem 1.6rem #fff;
cursor: pointer;
}
button:active {
-webkit-box-shadow: inset 1rem 1rem 1.6rem #d1d9e6, inset -1rem -1rem 1.6rem #fff;
box-shadow: inset 1rem 1rem 1.6rem #d1d9e6, inset -1rem -1rem 1.6rem #fff;
}
.container {
position: relative;
width: 80rem;
height: 60vh;
background-color: #ecf0f3;
-webkit-box-shadow: 1rem 1rem 1rem #d1d9e6, -0.5rem -0.5rem 1rem #fff;
box-shadow: 1rem 1rem 1rem #d1d9e6, -0.5rem -0.5rem 1rem #fff;
border-radius: 1.2rem;
overflow: hidden;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
padding: 12px;
}
.container .circle {
position: absolute;
left: 0;
width: 20rem;
height: 20rem;
border-radius: 50%;
background-color: #ecf0f3;
-webkit-box-shadow: 0.4rem 0.4rem 0.8rem #d1d9e6;
box-shadow: 0.4rem 0.4rem 0.8rem #d1d9e6;
z-index: 10;
}
.container .top-left {
top: 0;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.container .bottom-left {
bottom: 0;
-webkit-transform: translate(-70%, 70%) rotate(-80deg);
transform: translate(-70%, 70%) rotate(-80deg);
}
.container .side {
position: absolute;
top: 0;
height: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.container .left-side {
width: 40%;
text-align: center;
padding: 12px;
-webkit-box-shadow: 0.4rem 0.4rem 1rem #d1d9e6;
box-shadow: 0.4rem 0.4rem 1rem #d1d9e6;
}
.container .left-side .content p {
margin: 1rem 0 2rem 0;
font-size: 1.4rem;
}
.container .right-side {
width: 60%;
right: 0;
}
.container .right-side .content {
width: 70%;
text-align: center;
}
.container .right-side .content .icon-group {
margin: 1rem 0 3rem 0;
}
.container .right-side .content .icon-group .btn {
margin: 0 1rem;
border: none;
outline: none;
background-color: #ecf0f3;
-webkit-box-shadow: 0.3rem 0.3rem 0.6rem #d1d9e6, -0.3rem -0.3rem 0.6rem #fff;
box-shadow: 0.3rem 0.3rem 0.6rem #d1d9e6, -0.3rem -0.3rem 0.6rem #fff;
border-radius: 50%;
width: 3rem;
height: 3rem;
color: #000;
cursor: pointer;
}
.container .right-side .content .icon-group .btn:hover {
-webkit-box-shadow: inset 0.3rem 0.3rem 0.6rem #d1d9e6, inset -0.3rem -0.3rem 0.6rem #fff;
box-shadow: inset 0.3rem 0.3rem 0.6rem #d1d9e6, inset -0.3rem -0.3rem 0.6rem #fff;
}
.container .right-side .content .line {
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-pack: distribute;
justify-content: space-around;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
margin-bottom: 2rem;
}
.container .right-side .content .line hr {
width: 40%;
border: 1px solid transparent;
border-top: 1px solid #aaa;
}
.container .right-side .content .form form .form-control {
position: relative;
}
.container .right-side .content .form form .form-control i {
position: absolute;
top: 50%;
left: 4%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
}
.container .right-side .content .form form .form-control input {
width: 100%;
height: 4rem;
border: none;
outline: none;
background-color: #ecf0f3;
-webkit-box-shadow: inset 0.2rem 0.2rem 0.4rem #d1d9e6, inset -0.4rem -0.4rem 0.4rem #fff;
box-shadow: inset 0.2rem 0.2rem 0.4rem #d1d9e6, inset -0.4rem -0.4rem 0.4rem #fff;
padding-left: 2.5rem;
border-radius: 0.8rem;
color: #000;
margin: 0.5rem 0;
}
.container .right-side .content .form form .form-control input:focus {
-webkit-box-shadow: inset 0.4rem 0.4rem 0.4rem #d1d9e6, inset -0.4rem -0.4rem 0.4rem #fff;
box-shadow: inset 0.4rem 0.4rem 0.4rem #d1d9e6, inset -0.4rem -0.4rem 0.4rem #fff;
}
.container .right-side .content .form form button {
margin-top: 2rem;
}
/*# sourceMappingURL=main.css.map */