Add Edit Admin

This commit is contained in:
Ibnu Maksum
2024-02-15 16:13:55 +07:00
parent a06d7db0b1
commit d17c434c7b
10 changed files with 353 additions and 163 deletions

View File

@ -84,7 +84,7 @@
<p>
{$_admin['fullname']}
<small>{if $_admin['user_type'] eq 'Admin'} {Lang::T('Administrator')}
<small>{if $_admin['user_type'] eq 'SuperAdmin'} {Lang::T('Administrator')}
{else}
{Lang::T('Sales')} {/if}</small>
</p>
@ -124,7 +124,7 @@
</a>
</li>
{$_MENU_AFTER_DASHBOARD}
{if $_admin['user_type'] eq 'Admin' || $_admin['user_type'] eq 'Sales'}
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
<li class="{if $_system_menu eq 'customers'}active{/if} treeview">
<a href="#">
<i class="ion ion-android-contacts"></i> <span>{Lang::T('Customer')}</span>
@ -204,7 +204,7 @@
</li>
{$_MENU_AFTER_REPORTS}
{/if}
{if $_admin['user_type'] eq 'Admin'}
{if in_array($_admin['user_type'],['SuperAdmin','Admin'])}
<li class="{if $_system_menu eq 'network'}active{/if} treeview">
<a href="#">
<i class="ion ion-network"></i> <span>{Lang::T('Network')}</span>
@ -215,10 +215,6 @@
<ul class="treeview-menu">
<li {if $_routes[0] eq 'routers' and $_routes[1] eq 'list'}class="active" {/if}><a
href="{$_url}routers/list">{Lang::T('Routers')}</a></li>
{if $_c['radius_enable']}
<li {if $_routes[0] eq 'radius' and $_routes[1] eq 'nas-list'}class="active" {/if}><a
href="{$_url}radius/nas-list">Radius NAS</a></li>
{/if}
<li {if $_routes[0] eq 'pool' and $_routes[1] eq 'list'}class="active" {/if}><a
href="{$_url}pool/list">{Lang::T('IP Pool')}</a></li>
{$_MENU_NETWORK}
@ -226,21 +222,21 @@
</li>
{$_MENU_AFTER_NETWORKS}
{if $_c['radius_enable']}
<li class="{if $_system_menu eq 'radius'}active{/if} treeview">
<a href="#">
<i class="fa fa-database"></i> <span>{Lang::T('Radius')}</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li {if $_routes[0] eq 'radius' and $_routes[1] eq 'nas-list'}class="active" {/if}><a
href="{$_url}radius/nas-list">{Lang::T('Radius NAS')}</a></li>
{$_MENU_RADIUS}
</ul>
</li>
{$_MENU_AFTER_RADIUS}
<li class="{if $_system_menu eq 'radius'}active{/if} treeview">
<a href="#">
<i class="fa fa-database"></i> <span>{Lang::T('Radius')}</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu">
<li {if $_routes[0] eq 'radius' and $_routes[1] eq 'nas-list'}class="active" {/if}><a
href="{$_url}radius/nas-list">{Lang::T('Radius NAS')}</a></li>
{$_MENU_RADIUS}
</ul>
</li>
{/if}
{$_MENU_AFTER_RADIUS}
<li class="{if $_system_menu eq 'pages'}active{/if} treeview">
<a href="#">
<i class="ion ion-document"></i> <span>{Lang::T("Static Pages")}</span>

View File

@ -1,63 +1,97 @@
{include file="sections/header.tpl"}
<!-- user-edit -->
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-primary panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Add New Administrator')}</div>
<div class="panel-body">
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/users-post">
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/users-post">
<div class="row">
<div class="col-sm-6 col-md-6">
<div class="panel panel-primary panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Profile')}</div>
<div class="panel-body">
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Username')}</label>
<div class="col-md-6">
<input type="text" class="form-control" id="username" name="username">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Full Name')}</label>
<div class="col-md-6">
<label class="col-md-3 control-label">{Lang::T('Full Name')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="fullname" name="fullname">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('User Type')}</label>
<div class="col-md-6">
<label class="col-md-3 control-label">{Lang::T('Phone')}</label>
<div class="col-md-9">
<input type="number" class="form-control" id="phone" name="phone">
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('Email')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="email" name="email">
</div>
</div>
<div class="form-group">
<div class="col-md-4">
<input type="text" class="form-control" id="city" name="city" placeholder="{Lang::T('City')}">
</div>
<div class="col-md-4">
<input type="text" class="form-control" id="subdistrict" name="subdistrict" placeholder="{Lang::T('Sub District')}">
</div>
<div class="col-md-4">
<input type="text" class="form-control" id="ward" name="ward" placeholder="{Lang::T('Ward')}">
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-6 col-md-6">
<div class="panel panel-primary panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Credentials')}</div>
<div class="panel-body">
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('User Type')}</label>
<div class="col-md-9">
<select name="user_type" id="user_type" class="form-control">
<option value="SuperAdmin">SuperAdministrator</option>
<option value="Admin">Administrator</option>
<option value="Report">Report Viewer</option>
<option value="Agent">Agent</option>
<option value="Sales">Sales</option>
{if $_admin['user_type'] eq 'Agent'}
<option value="Sales">Sales</option>
{/if}
{if $_admin['user_type'] eq 'Admin' || $_admin['user_type'] eq 'SuperAdmin'}
<option value="Report">Report Viewer</option>
<option value="Agent">Agent</option>
<option value="Sales">Sales</option>
{/if}
{if $_admin['user_type'] eq 'SuperAdmin'}
<option value="Admin">Administrator</option>
<option value="SuperAdmin">Super Administrator</option>
{/if}
</select>
<span class="help-block">{Lang::T('Choose User Type Sales to disable access to Settings')}</span>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Password')}</label>
<div class="col-md-6">
<input type="password" class="form-control" id="password" name="password">
<label class="col-md-3 control-label">{Lang::T('Username')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="username" name="username">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Confirm Password')}</label>
<div class="col-md-6">
<input type="password" class="form-control" id="cpassword" name="cpassword">
<label class="col-md-3 control-label">{Lang::T('Password')}</label>
<div class="col-md-9">
<input type="password" class="form-control" id="password" value="{rand(000000,999999)}" name="password"
onmouseleave="this.type = 'password'" onmouseenter="this.type = 'text'">
</div>
</div>
<div class="form-group">
<div class="col-lg-offset-2 col-lg-10">
<button class="btn btn-primary waves-effect waves-light"
type="submit">{Lang::T('Save Changes')}</button>
Or <a href="{$_url}settings/users">{Lang::T('Cancel')}</a>
<label class="col-md-5 control-label">{Lang::T('Send Notification')}</label>
<div class="col-md-7">
<select name="send_notif" id="send_notif" class="form-control">
<option value="-">Don't Send</option>
<option value="sms">By SMS</option>
<option value="wa">By WhatsApp</option>
</select>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<div class="form-group text-center">
<button class="btn btn-primary waves-effect waves-light" type="submit">{Lang::T('Save Changes')}</button>
Or <a href="{$_url}settings/users">{Lang::T('Cancel')}</a>
</div>
</form>
{include file="sections/footer.tpl"}

View File

@ -1,74 +1,123 @@
{include file="sections/header.tpl"}
<!-- user-edit -->
<div class="row">
<div class="col-sm-12 col-md-12">
<div class="panel panel-primary panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Edit User')}</div>
<div class="panel-body">
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/users-edit-post">
<form class="form-horizontal" method="post" role="form" action="{$_url}settings/users-edit-post">
<div class="row">
<div class="col-sm-6 col-md-6">
<div
class="panel panel-{if $d['status'] != 'Active'}danger{else}primary{/if} panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Profile')}</div>
<div class="panel-body">
<input type="hidden" name="id" value="{$d['id']}">
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Username')}</label>
<div class="col-md-6">
<label class="col-md-3 control-label">{Lang::T('Full Name')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="fullname" name="fullname"
value="{$d['fullname']}">
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('Phone')}</label>
<div class="col-md-9">
<input type="number" class="form-control" id="phone" name="phone" value="{$d['phone']}">
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('Email')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="email" name="email" value="{$d['email']}">
</div>
</div>
<div class="form-group">
<div class="col-md-4">
<input type="text" class="form-control" id="city" name="city"
placeholder="{Lang::T('City')}" value="{$d['city']}">
</div>
<div class="col-md-4">
<input type="text" class="form-control" id="subdistrict" name="subdistrict"
placeholder="{Lang::T('Sub District')}" value="{$d['subdistrict']}">
</div>
<div class="col-md-4">
<input type="text" class="form-control" id="ward" name="ward"
placeholder="{Lang::T('Ward')}" value="{$d['ward']}">
</div>
</div>
</div>
</div>
</div>
<div class="col-sm-6 col-md-6">
<div
class="panel panel-{if $d['status'] != 'Active'}danger{else}primary{/if} panel-hovered panel-stacked mb30">
<div class="panel-heading">{Lang::T('Credentials')}</div>
<div class="panel-body">
{if ($_admin['id']) neq ($d['id'])}
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('Status')}</label>
<div class="col-md-9">
<select name="status" id="status" class="form-control">
<option value="Active" {if $d['status'] eq 'Active'}selected="selected" {/if}>
Active</option>
<option value="Inactive" {if $d['status'] eq 'Inactive'}selected="selected" {/if}>
Inactive</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('User Type')}</label>
<div class="col-md-9">
<select name="user_type" id="user_type" class="form-control">
{if $_admin['user_type'] eq 'Agent'}
<option value="Sales" {if $d['user_type'] eq 'Sales'}selected="selected" {/if}>Sales
</option>
{/if}
{if $_admin['user_type'] eq 'Admin' || $_admin['user_type'] eq 'SuperAdmin'}
<option value="Report" {if $d['user_type'] eq 'Report'}selected="selected" {/if}>Report
Viewer</option>
<option value="Agent" {if $d['user_type'] eq 'Agent'}selected="selected" {/if}>Agent
</option>
<option value="Sales" {if $d['user_type'] eq 'Sales'}selected="selected" {/if}>Sales
</option>
{/if}
{if $_admin['user_type'] eq 'SuperAdmin'}
<option value="Admin" {if $d['user_type'] eq 'Admin'}selected="selected" {/if}>
Administrator</option>
<option value="SuperAdmin" {if $d['user_type'] eq 'SuperAdmin'}selected="selected"
{/if}>Super Administrator</option>
{/if}
</select>
</div>
</div>
{/if}
<div class="form-group">
<label class="col-md-3 control-label">{Lang::T('Username')}</label>
<div class="col-md-9">
<input type="text" class="form-control" id="username" name="username"
value="{$d['username']}">
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Full Name')}</label>
<div class="col-md-6">
<input type="text" class="form-control" id="fullname" name="fullname"
value="{$d['fullname']}">
</div>
</div>
{if ($_admin['id']) neq ($d['id'])}
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('User Type')}</label>
<div class="col-md-6">
<select name="user_type" id="user_type" class="form-control">
<option value="SuperAdmin" {if $d['user_type'] eq 'SuperAdmin'}selected="selected"
{/if}>SuperAdministrator</option>
<option value="Admin" {if $d['user_type'] eq 'Admin'}selected="selected" {/if}>
Administrator</option>
<option value="Report" {if $d['user_type'] eq 'Report'}selected="selected" {/if}>Report
Viewer</option>
<option value="Agent" {if $d['user_type'] eq 'Agent'}selected="selected" {/if}>Agent
</option>
<option value="Sales" {if $d['user_type'] eq 'Sales'}selected="selected" {/if}>Sales
</option>
</select>
<span class="help-block">{Lang::T('Choose User Type Sales to disable access to Settings')}</span>
</div>
</div>
{/if}
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Password')}</label>
<div class="col-md-6">
<label class="col-md-3 control-label">{Lang::T('Password')}</label>
<div class="col-md-9">
<input type="password" class="form-control" id="password" name="password">
<span class="help-block">{Lang::T('Keep Blank to do not change Password')}</span>
</div>
</div>
<div class="form-group">
<label class="col-md-2 control-label">{Lang::T('Confirm Password')}</label>
<div class="col-md-6">
<input type="password" class="form-control" id="cpassword" name="cpassword">
<label class="col-md-3 control-label">{Lang::T('Password')}</label>
<div class="col-md-9">
<input type="password" class="form-control" id="cpassword" name="cpassword"
placeholder="{Lang::T('Confirm Password')}">
<span class="help-block">{Lang::T('Keep Blank to do not change Password')}</span>
</div>
</div>
<div class="form-group">
<div class="col-lg-offset-2 col-lg-10">
<button class="btn btn-success waves-effect waves-light"
type="submit">{Lang::T('Save Changes')}</button>
Or <a href="{$_url}settings/users">{Lang::T('Cancel')}</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
<div class="form-group text-center">
<button class="btn btn-primary waves-effect waves-light" type="submit">{Lang::T('Save Changes')}</button>
Or <a href="{$_url}settings/users">{Lang::T('Cancel')}</a>
</div>
</form>
{include file="sections/footer.tpl"}

View File

@ -30,26 +30,34 @@
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>ID</th>
<th>{Lang::T('Username')}</th>
<th>{Lang::T('Full Name')}</th>
<th>{Lang::T('Phone')}</th>
<th>{Lang::T('Email')}</th>
<th>{Lang::T('Type')}</th>
<th>{Lang::T('Location')}</th>
<th>{Lang::T('Last Login')}</th>
<th>{Lang::T('Manage')}</th>
</tr>
</thead>
<tbody>
{foreach $d as $ds}
<tr>
<tr {if $ds['status'] != 'Active'}class="danger"{/if}>
<td>{$ds['id']}</td>
<td>{$ds['username']}</td>
<td>{$ds['fullname']}</td>
<td>{$ds['phone']}</td>
<td>{$ds['email']}</td>
<td>{$ds['user_type']}</td>
<td>{$ds['last_login']}</td>
<td>{$ds['city']}, {$ds['subdistrict']}, {$ds['ward']}</td>
<td>{Lang::dateTimeFormat($ds['last_login'])}</td>
<td>
<a href="{$_url}settings/users-edit/{$ds['id']}"
class="btn btn-warning btn-sm">{Lang::T('Edit')}</a>
class="btn btn-warning btn-xs">{Lang::T('Edit')}</a>
{if ($_admin['username']) neq ($ds['username'])}
<a href="{$_url}settings/users-delete/{$ds['id']}" id="{$ds['id']}"
class="btn btn-danger btn-sm" onclick="return confirm('{Lang::T('Delete')}?')">{Lang::T('Delete')}</a>
class="btn btn-danger btn-xs" onclick="return confirm('{Lang::T('Delete')}?')">{Lang::T('Delete')}</a>
{/if}
</td>
</tr>