More tidying user accounts files

This commit is contained in:
John Crisp 2025-04-25 14:30:30 +02:00
parent 1a4c172969
commit dbeacddd96
5 changed files with 422 additions and 374 deletions

View File

@ -171,6 +171,7 @@
%= include 'partials/_panel_card_top' %= include 'partials/_panel_card_top'
%= include 'partials/_panel_card_header' %= include 'partials/_panel_card_header'
% } % }
%= content 'module' %= content 'module'
% if ($c->current_route ne 'login') { % if ($c->current_route ne 'login') {

View File

@ -5,9 +5,9 @@
%= form_for '/useraccounts' => (method => 'POST') => begin %= form_for '/useraccounts' => (method => 'POST') => begin
<div> <div>
<button type="submit" class="btn btn-primary"><%= $btn %> </button> <button type="submit" class="btn btn-primary"><%= $btn %> </button>
</div> </div>
% end % end
@ -16,6 +16,8 @@
<br> <br>
</p> </p>
%= dumper @$users
% my $numUsers = @$users; % my $numUsers = @$users;
% if ($numUsers == 0){ % if ($numUsers == 0){
%=l 'usr_NO_USER_ACCOUNTS' %=l 'usr_NO_USER_ACCOUNTS'
@ -157,7 +159,3 @@
</div> </div>
<div>
</div>

View File

@ -1,123 +1,228 @@
<div> % content_for 'module' => begin
<div class="container-sm">
<br>
<h2><%= l 'usr_P2_TITLE' %></h2>
<br>
<%= $c->render_to_string(inline => l ('usr_CREATE_MODIFY_DESC')) %>
<br><br>
<!-- Are we add or modify ? -->
<!-- Add -->
<!-- No trt -->
<!-- Modify -->
<!-- trt =UPD user=XX -->
% my $btn = l('ADD'); % my $btn = l('ADD');
%= form_for '/useraccountsd' => (method => 'POST') => begin <form action="/smanager/useraccountsd" method="POST">
<p> %#= form_for '/useraccountsd' => (method => 'POST') => begin
<h2>
%=l 'usr_P2_TITLE'
</h2>
<br>
%= $c->render_to_string(inline => l ('usr_CREATE_MODIFY_DESC'))
</p>
<p>
<span class="">
%=l 'usr_ACCOUNT_NAME'
</span>
<span class="">
% if ( $usr_datas->{trt} eq 'ADD' ) { % if ( $usr_datas->{trt} eq 'ADD' ) {
% param 'user' => $usr_datas->{user} unless param 'user'; % param 'user' => $usr_datas->{user} unless param 'user';
%= text_field 'user', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
</div>
<div class="col-auto">
<input type="text" id="inputUser" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{user} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
User
</span>
</div>
</div>
%#= text_field 'user'
% } else { % } else {
<!-- If not user set Button Save not Add -->
% $btn = l('SAVE'); % $btn = l('SAVE');
%= $usr_datas->{user}, class => "" <div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
</div>
<div class="col-auto">
<input disabled type="text" id="disabledTextInput" class="form-control" placeholder="<%= $usr_datas->{user} %>">
</div>
</div>
% } % }
</span>
</p>
<p> <br>
<span class="">
%=l 'usr_FIRSTNAME' <div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputFirstName" class="col-form-label"><%= l 'usr_FIRSTNAME' %></label>
</div>
<div class="col-auto">
<input type="text" name="FirstName" id="inputFirstName" class="form-control" aria-describedby="FirstName" value="<%= $usr_datas->{firstname} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
First Name
</span> </span>
<span class=""> </div>
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName'; </div>
%= text_field 'FirstName', class => "" <br>
</span>
</p>
<p>
<span class="">
%=l 'usr_LASTNAME'
</span>
<span class="">
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName'; % param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
%= text_field 'LastName', class => ""
</span>
</p>
<p> <div class="row g-3 align-items-center">
<span class=""> <div class="col-md-2">
%=l 'usr_DEPARTMENT' <label for="inputLastNAme" class="col-form-label"><%= l 'usr_LASTNAME' %></label>
</span><span class=""> </div>
<div class="col-auto">
<input type="text" name="LastName" id="inputLastName" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{lastname} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Last Name
</span>
</div>
</div>
<br>
% param 'Dept' => $usr_datas->{dept} unless param 'Dept'; % param 'Dept' => $usr_datas->{dept} unless param 'Dept';
%= text_field 'Dept', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputDepartment" class="col-form-label"><%= l 'usr_DEPARTMENT' %></label>
</div>
<div class="col-auto">
<input type="text" name="Dept" id="inputEmail" class="form-control" aria-describedby="Dept" value="<%= $usr_datas->{dept} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Department
</span> </span>
</p> </div>
<p> </div>
<span class=""> <br>
%=l 'usr_COMPANY'
</span>
<span class="">
% param 'Company' => $usr_datas->{company} unless param 'Company'; % param 'Company' => $usr_datas->{company} unless param 'Company';
%= text_field 'Company', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputCompany" class="col-form-label"><%= l 'usr_COMPANY' %></label>
</div>
<div class="col-auto">
<input type="text" name="Company" id="inputCompany" class="form-control" aria-describedby="Company" value="<%= $usr_datas->{company} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Company
</span> </span>
</p> </div>
<p> </div>
<span class=""> <br>
%=l 'usr_STREET_ADDRESS'
</span>
<span class="">
% param 'Street' => $usr_datas->{street} unless param 'Street'; % param 'Street' => $usr_datas->{street} unless param 'Street';
%= text_field 'Street', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputStreet" class="col-form-label"><%= l 'usr_STREET_ADDRESS' %></label>
</div>
<div class="col-auto">
<input type="text" name="Street" id="inputCompany" class="form-control" aria-describedby="Street" value="<%= $usr_datas->{street} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Street
</span> </span>
</p> </div>
<p> </div>
<span class=""> <br>
%=l 'usr_CITY'
</span>
<span class="">
% param 'City' => $usr_datas->{city} unless param 'City'; % param 'City' => $usr_datas->{city} unless param 'City';
%= text_field 'City', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputCity" class="col-form-label"><%= l 'usr_CITY' %></label>
</div>
<div class="col-auto">
<input type="text" name="City" id="inputCity" class="form-control" aria-describedby="City" value="<%= $usr_datas->{city} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
City
</span> </span>
</p> </div>
<p> </div>
<span class=""> <br>
%=l 'usr_PHONE_NUMBER'
</span>
<span class="">
% param 'Phone' => $usr_datas->{phone} unless param 'Phone'; % param 'Phone' => $usr_datas->{phone} unless param 'Phone';
%= text_field 'Phone', class => ""
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputPhone" class="col-form-label"><%= l 'usr_PHONE_NUMBER' %></label>
</div>
<div class="col-auto">
<input type="text" name="Phone" id="inputPhone" class="form-control" aria-describedby="City" value="<%= $usr_datas->{phone} %>" >
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Phone
</span> </span>
</p> </div>
<p> </div>
<span class=""> <br>
%=l 'usr_EMAIL_DELIVERY'
</span>
<span class="">
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward'; % param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
%= select_field 'EmailForward' => $c->emailForward_list(), class => ""
</span> <div class="row g-3 align-items-center">
</p> <div class="col-md-2">
<p> <label for="inputEmailDelivery" class="col-form-label"><%= l 'usr_EMAIL_DELIVERY' %></label>
<span class=""> </div>
%=l 'usr_FORWARDING_ADDRESS' <div class="col-auto">
</span> %= select_field 'EmailForward' => $c->emailForward_list(), class => "form-select"
<span class=""> </div>
</div>
<br>
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress'; % param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
%= text_field 'ForwardAddress', class => ""
</span>
</p>
<p> <div class="row g-3 align-items-center">
<span class=""> <div class="col-md-2">
%=l 'usr_VPN_CLIENT_ACCESS' <label for="inputEmail" class="col-form-label"><%= l 'usr_FORWARDING_ADDRESS' %></label>
</div>
<div class="col-auto">
<input type="email" name="ForwardAddresss" id="inputEmail" class="form-control" aria-describedby="Email" value=<%= $usr_datas->{forwardaddress} %>>
</div>
<div class="col-auto">
<span id="passwordHelpInline" class="form-text">
Email forwarding address
</span> </span>
<span class=""> </div>
</div>
<br>
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess'; % param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => ""
</span>
</p>
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputVPNClientAccess" class="col-form-label"><%= l 'usr_VPN_CLIENT_ACCESS' %></label>
</div>
<div class="col-auto">
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => "form-select"
</div>
</div>
<br>
<!-- fix from here -->
<!-- Begin if ipsec -->
% if ( $usr_datas->{trt} eq 'UPD' and $c->ipsec_for_acct eq 'OK' ) { % if ( $usr_datas->{trt} eq 'UPD' and $c->ipsec_for_acct eq 'OK' ) {
% my $btn2 = $c->l('DOWNLOAD'); % my $btn2 = $c->l('DOWNLOAD');
%= form_for '/useraccountso' => (method => 'POST') => begin %= form_for '/useraccountso' => (method => 'POST') => begin
@ -133,18 +238,27 @@
%= hidden_field 'user' => $usr_datas->{user} %= hidden_field 'user' => $usr_datas->{user}
%end %end
% } % }
<!-- End if ipsec -->
<!-- Groups begin -->
<div>
% my @groups = @{$c->get_groups()}; % my @groups = @{$c->get_groups()};
%#= dumper @groups
% if ( @groups ) { % if ( @groups ) {
<p>
<span class=""> <br><br>
%=l 'usr_GROUP_MEMBERSHIPS' %=l 'usr_GROUP_MEMBERSHIPS'
</span>
<span class=""> <br><br>
<table class="table table-bordered"> <table class="table table-bordered">
<thead> <thead>
<tr> <tr>
<th class=""> <th>
%=l 'usr_MEMBER' %=l 'usr_MEMBER'
</th><th class=""> </th><th class="">
%=l 'GROUP' %=l 'GROUP'
@ -165,7 +279,7 @@
% } % }
<tr> <tr>
<td> <td class="col-md-2">
% if ( $checked eq 'checked' ) { % if ( $checked eq 'checked' ) {
<!-- % = check_box 'groupMemberships', value => $groupname, checked => $checked --> <!-- % = check_box 'groupMemberships', value => $groupname, checked => $checked -->
<input type='checkbox' name='groupMemberships' checked value='<%= $groupname %>'> <input type='checkbox' name='groupMemberships' checked value='<%= $groupname %>'>
@ -180,20 +294,32 @@
% } % }
</tbody> </tbody>
</table> </table>
</span>
</p>
% }
<p> % }
<br><br> <!-- Groups End -->
%= submit_button $btn, class => "" </div>
</p>
% $btn = l('SAVE');
<div class="row g-3 align-items-center">
<div class="col-md-2">
<button type="submit" class="btn btn-primary"><%= l 'SAVE' %></button>
</div>
</div>
%= hidden_field 'trt' => $usr_datas->{trt} %= hidden_field 'trt' => $usr_datas->{trt}
trt: <%= dumper $usr_datas->{trt} %>
user: <%= dumper $usr_datas->{user} %>
% if ( $usr_datas->{trt} eq 'UPD' ) { % if ( $usr_datas->{trt} eq 'UPD' ) {
%= hidden_field 'user' => $usr_datas->{user} %= hidden_field 'user' => $usr_datas->{user}
% } % }
% end % end
</form>
</div> </div>
<!-- End of containers-sm -->

View File

@ -1,65 +1,79 @@
% content_for 'module' => begin % content_for 'module' => begin
<div class="container-sm"> <div class="container-sm">
<br> <br>
<h2><%= l 'usr_MODIFY_ADMIN_TITLE' %></h2> <h2><%= l 'usr_MODIFY_ADMIN_TITLE' %></h2>
<br><br>
<%= l 'usr_ACCOUNT_NAME' %> : <%= $usr_datas->{user} %>
<form action="/smanager/useraccountsd" method="POST">
%#= form_for '/useraccountsd' => (method => 'POST') => begin
<form>
<div class="row g-3 align-items-center">
<div class="col-md-2">
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_ACCOUNT_NAME' %></label>
</div>
<div class="col-auto">
<input disabled type="text" id="disabledTextInput" class="form-control" placeholder="<%= $usr_datas->{user} %>">
</div>
</div>
<br>
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName'; % param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName';
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto p-33"> <div class="col-md-2">
<label for="inputFirstName" class="col-form-label"><%= l 'usr_FIRSTNAME' %></label> <label for="inputFirstName" class="col-form-label"><%= l 'usr_FIRSTNAME' %></label>
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
<input type="text" id="inputFirstName" class="form-control" aria-describedby="FirstName" value=<%= $usr_datas->{firstname} %> > <input type="text" name="FirstName" id="inputFirstName" class="form-control" aria-describedby="FirstName" value="<%= $usr_datas->{firstname} %>" >
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
<span id="passwordHelpInline" class="form-text"> <span id="passwordHelpInline" class="form-text">
First Name First Name
</span> </span>
</div> </div>
</div> </div>
<br>
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName'; % param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto p-33"> <div class="col-md-2">
<label for="inputLastNAme" class="col-form-label"><%= l 'usr_LASTNAME' %></label> <label for="inputLastNAme" class="col-form-label"><%= l 'usr_LASTNAME' %></label>
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
<input type="text" id="inputLastName" class="form-control" aria-describedby="LastName" value=<%= $usr_datas->{lastname} %>> <input type="text" name="LastName" id="inputLastName" class="form-control" aria-describedby="LastName" value="<%= $usr_datas->{lastname} %>" >
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
<span id="passwordHelpInline" class="form-text"> <span id="passwordHelpInline" class="form-text">
Last Name Last Name
</span> </span>
</div> </div>
</div> </div>
<br>
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward'; % param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto p-33"> <div class="col-md-2">
<label for="inputEmailDelivery" class="col-form-label"><%= l 'usr_EMAIL_DELIVERY' %></label> <label for="inputEmailDelivery" class="col-form-label"><%= l 'usr_EMAIL_DELIVERY' %></label>
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
%= select_field 'EmailForward' => $c->emailForward_list(), class => "form-select" %= select_field 'EmailForward' => $c->emailForward_list(), class => "form-select"
</div> </div>
</div>
<br>
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress'; % param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto"> <div class="col-md-2">
<label for="inputEmail" class="col-form-label"><%= l 'usr_FORWARDING_ADDRESS' %></label> <label for="inputEmail" class="col-form-label"><%= l 'usr_FORWARDING_ADDRESS' %></label>
</div> </div>
<div class="col-auto"> <div class="col-auto">
<input type="email" id="inputEmail" class="form-control" aria-describedby="Email" value=<%= $usr_datas->{forwardaddress} %>> <input type="email" name="ForwardAddress" id="inputEmail" class="form-control" aria-describedby="Email" value="<%= $usr_datas->{forwardaddress} %>" >
</div> </div>
<div class="col-auto"> <div class="col-auto">
<span id="passwordHelpInline" class="form-text"> <span id="passwordHelpInline" class="form-text">
@ -67,27 +81,31 @@
</span> </span>
</div> </div>
</div> </div>
<br>
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess'; % param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto p-33"> <div class="col-md-2">
<label for="inputVPNClientAccess" class="col-form-label"><%= l 'usr_VPN_CLIENT_ACCESS' %></label> <label for="inputVPNClientAccess" class="col-form-label"><%= l 'usr_VPN_CLIENT_ACCESS' %></label>
</div> </div>
<div class="col-auto p-3"> <div class="col-auto">
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => "form-select" %= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => "form-select"
</div> </div>
<br>
</div>
% my $btn = l('SAVE'); % my $btn = l('SAVE');
<div class="row g-3 align-items-center"> <div class="row g-3 align-items-center">
<div class="col-auto p-33"> <div class="col-md-2">
<button type="submit" class="btn btn-primary"><%= l 'SAVE' %></button> <button type="submit" class="btn btn-primary"><%= l 'SAVE' %></button>
</div> </div>
</div> </div>
</form>
</form> trt: <%= dumper $usr_datas->{trt} %>
user: <%= dumper $usr_datas->{user} %>
%= hidden_field 'trt' => $usr_datas->{trt} %= hidden_field 'trt' => $usr_datas->{trt}
%= hidden_field 'user' => $usr_datas->{user} %= hidden_field 'user' => $usr_datas->{user}
@ -96,101 +114,3 @@
</div> </div>
<div>
% my $btn = l('SAVE');
%= form_for '/useraccountsd' => (method => 'POST') => begin
<p>
<h2>
%=l 'usr_MODIFY_ADMIN_TITLE'
</h2><br>
</p>
<p>
<span class="">
%=l 'usr_ACCOUNT_NAME'
</span>
<span class="">
% $btn = l('SAVE');
%= $usr_datas->{user}, class => ""
</span>
</p>
<p>
<span class="">
%=l 'usr_FIRSTNAME'
</span>
<span class="">
% param 'FirstName' => $usr_datas->{firstname} unless param 'FirstName';
%= text_field 'FirstName', class => ""
</span>
</p>
<p>
<span class="">
%=l 'usr_LASTNAME'
</span>
<span class="">
% param 'LastName' => $usr_datas->{lastname} unless param 'LastName';
%= text_field 'LastName', class => ""
</span>
</p>
<p>
<span class="">
%=l 'usr_EMAIL_DELIVERY'
</span>
<span class="">
% param 'EmailForward' => $usr_datas->{emailforward} unless param 'EmailForward';
%= select_field 'EmailForward' => $c->emailForward_list(), class => ""
</span>
</p>
<p>
<span class="">
%=l 'usr_FORWARDING_ADDRESS'
</span>
<span class="">
% param 'ForwardAddress' => $usr_datas->{forwardaddress} unless param 'ForwardAddress';
%= text_field 'ForwardAddress', class => ""
</span>
</p>
<p>
<span class="">
%=l 'usr_VPN_CLIENT_ACCESS'
</span>
<span class="">
% param 'VPNClientAccess' => $usr_datas->{vpnclientaccess} unless param 'VPNClientAccess';
%= select_field 'VPNClientAccess' => [[ (l 'NO') => 'no'], [ (l 'YES') => 'yes']], class => ""
</span>
</p>
% if ( $c->ipsec_for_acct eq 'OK' ) {
% my $btn2 = $c->l('DOWNLOAD');
%= form_for '/useraccountso' => (method => 'POST') => begin
<p>
<span class="">
%=l 'usr_LABEL_IPSECRW_DOWNLOAD'
</span>
<span class="">
%= submit_button $btn2, class => ""
</span>
</p>
%= hidden_field 'trt' => 'CRT'
%= hidden_field 'user' => $usr_datas->{user}
%end
% }
<p>
<br>
%= submit_button $btn, class => ""
</p>
%= hidden_field 'trt' => $usr_datas->{trt}
%= hidden_field 'user' => $usr_datas->{user}
% end
</div>

View File

@ -1,6 +1,6 @@
%define name smeserver-manager-AdminLTE %define name smeserver-manager-AdminLTE
%define version 11.0.0 %define version 11.0.0
%define release 12 %define release 13
Summary: AdminLTE is an html framework for admin consoles - this rpm adds it to smeserver manager2 Summary: AdminLTE is an html framework for admin consoles - this rpm adds it to smeserver manager2
Name: %{name} Name: %{name}
Version: %{version} Version: %{version}
@ -26,6 +26,9 @@ AdminLTE is an html framework for admin consoles
wget https://github.com/ColorlibHQ/AdminLTE/archive/master.zip wget https://github.com/ColorlibHQ/AdminLTE/archive/master.zip
%changelog %changelog
* Fri Apr 25 2025 John Crisp <jcrisp@safeandsoundit.co.uk> 11.0.0-13.sme
- Tidy some useraccounts formatting but admin page will not save
* Thu Apr 24 2025 John Crisp <jcrisp@safeandsoundit.co.uk> 11.0.0.12.sme * Thu Apr 24 2025 John Crisp <jcrisp@safeandsoundit.co.uk> 11.0.0.12.sme
- Tidy user list - Tidy user list