diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/GroupController.php b/src/opnsense/mvc/app/controllers/OPNsense/Auth/GroupController.php index 525862916..6adcb7b0a 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/GroupController.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/GroupController.php @@ -33,6 +33,7 @@ class GroupController extends \OPNsense\Base\IndexController public function indexAction() { $this->view->formDialogEditGroup = $this->getForm("dialogGroup"); + $this->view->formGridGroup = $this->getFormGrid("dialogGroup"); $this->view->pick('OPNsense/Auth/group'); } } diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/PrivController.php b/src/opnsense/mvc/app/controllers/OPNsense/Auth/PrivController.php index 296892492..af37a4bf1 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/PrivController.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/PrivController.php @@ -33,6 +33,7 @@ class PrivController extends \OPNsense\Base\IndexController public function indexAction() { $this->view->formDialogEditPriv = $this->getForm("dialogPriv"); + $this->view->formGridPriv = $this->getFormGrid("dialogPriv"); $this->view->pick('OPNsense/Auth/priv'); } } diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/UserController.php b/src/opnsense/mvc/app/controllers/OPNsense/Auth/UserController.php index 70e0cbb4b..4b0f25541 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/UserController.php +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/UserController.php @@ -51,6 +51,7 @@ class UserController extends \OPNsense\Base\IndexController public function indexAction() { $this->view->formDialogEditUser = $this->getForm("dialogUser"); + $this->view->formGridUser = $this->getFormGrid("dialogUser"); $this->view->pick('OPNsense/Auth/user'); } } diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogGroup.xml b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogGroup.xml index 29ff20796..06288db79 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogGroup.xml +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogGroup.xml @@ -3,32 +3,50 @@ group.scope info + + false + group.gid info + + false + group.name text + + 10 + group.description text You may enter a description here for your reference (not parsed). + + 40 + group.priv select_multiple + + 20 + group.member select_multiple List of users that are a member of this group + + 30 + diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogPriv.xml b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogPriv.xml index b63a99a7c..a0663eac0 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogPriv.xml +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogPriv.xml @@ -4,14 +4,33 @@ info + + priv.name + + ignore + + lines + + + + priv.match + + ignore + priv.users select_multiple + + count + priv.groups select_multiple + + count + diff --git a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogUser.xml b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogUser.xml index decd259a7..b02de8d1f 100644 --- a/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogUser.xml +++ b/src/opnsense/mvc/app/controllers/OPNsense/Auth/forms/dialogUser.xml @@ -3,93 +3,149 @@ user.scope info + + false + user.uid info + + false + user.disabled checkbox Deny authentication, only applicable for local users + + false + boolean + boolean + user.name text + + username + 10 + user.password password + + true + user.scrambled_password checkbox Generate a scrambled password to prevent local database logins for this user. + + false + boolean + boolean + user.descr text User's full name, for your own information only + + 30 + user.email text User's e-mail address, for your own information only + + false + user.comment textbox User comment, for your own information only + + false + user.landing_page text Preferred landing page after login or authentication failure + + false + user.language dropdown + + false + user.shell dropdown + + false + user.expires text + + false + user.group_memberships select_multiple + + 20 + user.priv select_multiple + + false + user.otp_seed text + + true + user.authorizedkeys textbox + + true + diff --git a/src/opnsense/mvc/app/views/OPNsense/Auth/group.volt b/src/opnsense/mvc/app/views/OPNsense/Auth/group.volt index c820a1e87..f1c2ddd77 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Auth/group.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Auth/group.volt @@ -28,7 +28,7 @@ 'use strict'; $( document ).ready(function () { - let grid_group = $("#grid-group").UIBootgrid({ + let grid_group = $("#{{formGridGroup['table_id']}}").UIBootgrid({ search:'/api/auth/group/search/', get:'/api/auth/group/get/', add:'/api/auth/group/add/', @@ -56,32 +56,8 @@ -
-
- - - - - - - - - - - - - - - - - - -
{{ lang._('ID') }}{{ lang._('Name') }}{{ lang._('Member Count') }}{{ lang._('Description') }}{{ lang._('Commands') }}
- - -
-
+ {{ partial('layout_partials/base_bootgrid_table', formGridGroup + {'command_width': '10em'})}}
-{{ partial("layout_partials/base_dialog",['fields':formDialogEditGroup,'id':'DialogGroup','label':lang._('Edit Group')])}} +{{ partial("layout_partials/base_dialog",['fields':formDialogEditGroup,'id':formGridGroup['edit_dialog_id'],'label':lang._('Edit Group')])}} diff --git a/src/opnsense/mvc/app/views/OPNsense/Auth/priv.volt b/src/opnsense/mvc/app/views/OPNsense/Auth/priv.volt index f472ea801..b7864b4bc 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Auth/priv.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Auth/priv.volt @@ -28,7 +28,7 @@ 'use strict'; $( document ).ready(function () { - let grid_group = $("#grid-group").UIBootgrid({ + let grid_priv = $("#{{formGridPriv['table_id']}}").UIBootgrid({ search:'/api/auth/priv/search/', get:'/api/auth/priv/get_item/', set:'/api/auth/priv/set_item/', @@ -58,27 +58,15 @@ } }); + $('button[data-action="add"]').hide(); + $('button[data-action="deleteSelected"]').hide(); + });
-
- - - - - - - - - - - - - -
{{ lang._('ID') }}{{ lang._('Name') }}{{ lang._('Match') }}{{ lang._('Users') }}{{ lang._('Groups') }}{{ lang._('Commands') }}
-
+ {{ partial('layout_partials/base_bootgrid_table', formGridPriv)}}
-{{ partial("layout_partials/base_dialog",['fields':formDialogEditPriv,'id':'DialogPriv','label':lang._('Edit Privilege')])}} +{{ partial("layout_partials/base_dialog",['fields':formDialogEditPriv,'id':formGridPriv['edit_dialog_id'],'label':lang._('Edit Privilege')])}} diff --git a/src/opnsense/mvc/app/views/OPNsense/Auth/user.volt b/src/opnsense/mvc/app/views/OPNsense/Auth/user.volt index 815b017b2..e560be8b7 100644 --- a/src/opnsense/mvc/app/views/OPNsense/Auth/user.volt +++ b/src/opnsense/mvc/app/views/OPNsense/Auth/user.volt @@ -28,7 +28,7 @@ 'use strict'; $( document ).ready(function () { - let grid_user = $("#grid-user").UIBootgrid({ + let grid_user = $("#{{formGridUser['table_id']}}").UIBootgrid({ search:'/api/auth/user/search/', get:'/api/auth/user/get/', add:'/api/auth/user/add/', @@ -171,6 +171,8 @@ $('.datepicker').datepicker({format: 'mm/dd/yyyy'}); /* format authorizedkeys */ $("#user\\.authorizedkeys").css('max-width', 'inherit').prop('wrap', 'off'); + + $("#grid-user-buttons").children().insertAfter($("#{{ formGridUser['table_id'] }} tfoot [data-action='deleteSelected']")); }); @@ -182,49 +184,32 @@ .tooltip-inner { max-width: 1000px !important; } + .btn-user-action { + margin-left: 3px; + } + + +
- - - - - - - - - - - - - - - - - - - - - -
{{ lang._('ID') }}{{ lang._('Name') }}{{ lang._('Email') }}{{ lang._('Comments') }}{{ lang._('Language') }}{{ lang._('Groups') }}{{ lang._('Description') }}{{ lang._('Commands') }}
- - - - -
+ {{ partial('layout_partials/base_bootgrid_table', formGridUser + {'command_width': '9em'})}}
@@ -250,4 +235,4 @@ -{{ partial("layout_partials/base_dialog",['fields':formDialogEditUser,'id':'DialogUser','label':lang._('Edit User')])}} +{{ partial("layout_partials/base_dialog",['fields':formDialogEditUser,'id':formGridUser['edit_dialog_id'],'label':lang._('Edit User')])}}