summaryrefslogtreecommitdiffstats
path: root/modules-available/permissionmanager/templates
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/permissionmanager/templates')
-rw-r--r--modules-available/permissionmanager/templates/_page.html29
-rw-r--r--modules-available/permissionmanager/templates/header-menu.html25
-rw-r--r--modules-available/permissionmanager/templates/locationstable.html56
-rw-r--r--modules-available/permissionmanager/templates/page-permission-denied.html21
-rw-r--r--modules-available/permissionmanager/templates/role-filter-selectize.html6
-rw-r--r--modules-available/permissionmanager/templates/roleeditor.html96
-rw-r--r--modules-available/permissionmanager/templates/rolestable.html45
-rw-r--r--modules-available/permissionmanager/templates/treenode.html23
-rw-r--r--modules-available/permissionmanager/templates/treepanel.html4
-rw-r--r--modules-available/permissionmanager/templates/userstable.html40
10 files changed, 183 insertions, 162 deletions
diff --git a/modules-available/permissionmanager/templates/_page.html b/modules-available/permissionmanager/templates/_page.html
deleted file mode 100644
index 4140ce78..00000000
--- a/modules-available/permissionmanager/templates/_page.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<div class="row">
- <div class="col-md-12" style="margin-bottom: 0;">
- <div class='page-header'>
- <div class='pull-right'>
- <form id="switchForm" method="GET" action="?do=permissionmanager">
- <input type="hidden" name="do" value="permissionmanager">
-
- <div class="btn-group">
- <button class="btn btn-default {{rolesButtonClass}}" type="submit" name="show" value="roles">
- <span class="glyphicon glyphicon-education"></span>
- {{lang_roles}}
- </button>
-
- <button class="btn btn-default {{usersButtonClass}}" type="submit" name="show" value="users">
- <span class="glyphicon glyphicon-user"></span>
- {{lang_users}}
- </button>
-
- <button class="btn btn-default {{locationsButtonClass}}" type="submit" name="show" value="locations">
- <span class="glyphicon glyphicon-home"></span>
- {{lang_locations}}
- </button>
- </div>
- </form>
- </div>
- <h1>{{lang_moduleName}}</h1>
- </div>
- </div>
-</div> \ No newline at end of file
diff --git a/modules-available/permissionmanager/templates/header-menu.html b/modules-available/permissionmanager/templates/header-menu.html
new file mode 100644
index 00000000..91bfa3af
--- /dev/null
+++ b/modules-available/permissionmanager/templates/header-menu.html
@@ -0,0 +1,25 @@
+<div class='page-header'>
+ <div class='pull-right'>
+ <form method="GET">
+ <input type="hidden" name="do" value="permissionmanager">
+
+ <div class="btn-group {{groupClass}}">
+ <button class="btn btn-default {{rolesButtonClass}}" type="submit" name="show" value="roles" {{perms.roles.disabled}}>
+ <span class="glyphicon glyphicon-education"></span>
+ {{lang_roles}}
+ </button>
+
+ <button class="btn btn-default {{usersButtonClass}}" type="submit" name="show" value="users" {{perms.users.disabled}}>
+ <span class="glyphicon glyphicon-user"></span>
+ {{lang_users}}
+ </button>
+
+ <button class="btn btn-default {{locationsButtonClass}}" type="submit" name="show" value="locations" {{perms.locations.disabled}}>
+ <span class="glyphicon glyphicon-home"></span>
+ {{lang_locations}}
+ </button>
+ </div>
+ </form>
+ </div>
+ <h1>{{lang_moduleName}}</h1>
+</div> \ No newline at end of file
diff --git a/modules-available/permissionmanager/templates/locationstable.html b/modules-available/permissionmanager/templates/locationstable.html
index 153258fe..35058387 100644
--- a/modules-available/permissionmanager/templates/locationstable.html
+++ b/modules-available/permissionmanager/templates/locationstable.html
@@ -1,37 +1,21 @@
-<div class="row">
- <div class="col-md-4"></div>
- <div class="col-md-4">
- <select multiple name="roles[]" id="select-role">
- <option value>{{lang_selectizePlaceholder}}</option>
- {{#allroles}}
- <option value="{{roleid}}">{{rolename}}</option>
- {{/allroles}}
- </select>
- </div>
-</div>
+<table id="locationsTable" class="table table-condensed table-hover dataTable">
+ <thead>
+ <tr>
+ <th>{{lang_locations}}</th>
+ <th class="slx-smallcol">{{lang_roles}}</th>
+ </tr>
+ </thead>
-<div class="row">
- <div class="col-md-12">
- <table id="locationsTable" class="table table-condensed table-hover stupidtable dataTable">
- <thead>
- <tr>
- <th data-sort="string">{{lang_locations}}</th>
- <th>{{lang_roles}}</th>
- </tr>
- </thead>
-
- <tbody>
- {{#location}}
- <tr data-selectizeCount='0'>
- <td>{{locationpad}} {{locationname}}</td>
- <td>
- {{#roles}}
- <a href="?do=permissionmanager&show=roleEditor&cancel=locations&roleid={{roleid}}" class="label label-default customSpanMargin roleid-{{roleid}}">{{rolename}}</a>
- {{/roles}}
- </td>
- </tr>
- {{/location}}
- </tbody>
- </table>
- </div>
-</div> \ No newline at end of file
+ <tbody>
+ {{#location}}
+ <tr class="{{#roles}}roleid-{{roleid}} {{/roles}}">
+ <td>{{locationpad}} {{locationname}}</td>
+ <td class="slx-smallcol">
+ {{#roles}}
+ <a href="?do=permissionmanager&show=roleEditor&cancel=locations&roleid={{roleid}}" class="label label-default customSpanMargin">{{rolename}}</a>
+ {{/roles}}
+ </td>
+ </tr>
+ {{/location}}
+ </tbody>
+</table> \ No newline at end of file
diff --git a/modules-available/permissionmanager/templates/page-permission-denied.html b/modules-available/permissionmanager/templates/page-permission-denied.html
new file mode 100644
index 00000000..cc357a0b
--- /dev/null
+++ b/modules-available/permissionmanager/templates/page-permission-denied.html
@@ -0,0 +1,21 @@
+<br><br>
+<div class="jumbotron">
+ <h1>
+ <span class="text-danger">
+ <span class="glyphicon glyphicon-ban-circle"></span>
+ {{lang_permissionDeniedHeader}}
+ </span>
+ </h1>
+ <br><br>
+ <p>
+ {{lang_permissionDeniedBody}}
+ </p>
+ {{#permission}}
+ <div>
+ {{lang_permission}}: <b>{{permission}}</b>
+ </div>
+ {{/permission}}
+ <div>
+ {{lang_user}}: <b>{{name}}</b>
+ </div>
+</div>
diff --git a/modules-available/permissionmanager/templates/role-filter-selectize.html b/modules-available/permissionmanager/templates/role-filter-selectize.html
new file mode 100644
index 00000000..ceadec75
--- /dev/null
+++ b/modules-available/permissionmanager/templates/role-filter-selectize.html
@@ -0,0 +1,6 @@
+<select multiple id="select-role">
+ <option value>{{lang_selectizePlaceholder}}</option>
+ {{#allroles}}
+ <option value="{{roleid}}">{{rolename}}</option>
+ {{/allroles}}
+</select> \ No newline at end of file
diff --git a/modules-available/permissionmanager/templates/roleeditor.html b/modules-available/permissionmanager/templates/roleeditor.html
index 871fd0cc..c464c1fc 100644
--- a/modules-available/permissionmanager/templates/roleeditor.html
+++ b/modules-available/permissionmanager/templates/roleeditor.html
@@ -1,36 +1,55 @@
-<h1>{{lang_roleEditor}}</h1>
+<h2>
+ {{#roleid}}
+ {{lang_editRoleHeading}}
+ {{/roleid}}
+ {{^roleid}}
+ {{lang_addRoleHeading}}
+ {{/roleid}}
+</h2>
+
<form method="post" action="?do=permissionmanager">
<input type="hidden" name="action" value="saveRole">
<input type="hidden" name="token" value="{{token}}">
<input type="hidden" name="roleid" value="{{roleid}}">
- <div class="row">
- <div class="col-md-12" style="margin-bottom: 20px;">
- <ul class="nav nav-tabs text-center" role="tablist">
- <li role="presentation" class="active"><a href="#permissions" role="tab" data-toggle="tab">{{lang_permissions}}</a></li>
- <li role="presentation"><a href="#locations" role="tab" data-toggle="tab">{{lang_locations}}</a></li>
- <li style="float: none; display: inline-block">
- <label for="rolename">{{lang_name}}:</label>
- <input id="rolename" name="rolename" value="{{rolename}}" type="text" class="form-control">
- </li>
- <li style="float: right;">
- <span><a href="?do=permissionmanager&show={{cancelShow}}" id="cancelButton" class="btn btn-default">{{lang_cancel}}</a></span>
- <button type="submit" id="saveButton" class="btn btn-primary"><span class="glyphicon glyphicon-floppy-disk"></span> {{lang_save}}</button>
- </li>
- </ul>
- </div>
+ <div class="input-group">
+ <span class="input-group-addon slx-ga">
+ <label for="rolename">{{lang_name}}</label>
+ </span>
+ <input id="rolename" name="rolename" value="{{rolename}}" type="text" class="form-control" required>
</div>
- <div class="row" style="margin-bottom: 20px;">
- <div class="col-md-12">
- <div class="tab-content">
- <div role="tabpanel" class="tab-pane active" id="permissions">
- {{{permissionHTML}}}
- </div>
- <div role="tabpanel" class="tab-pane" id="locations">
- {{{locationHTML}}}
+ <div class="input-group">
+ <span class="input-group-addon slx-ga">
+ <label for="roledescription">{{lang_description}}</label>
+ </span>
+ <input id="roledescription" name="roledescription" value="{{roledescription}}" type="text" class="form-control">
+ </div>
+ <br>
+
+ <div class="pull-right">
+ <a href="?do=permissionmanager&amp;show={{cancelShow}}" class="btn btn-default">{{lang_cancel}}</a>
+ <button type="submit" class="btn btn-primary" {{perms.roles.edit.disabled}}>
+ <span class="glyphicon glyphicon-floppy-disk"></span>
+ {{lang_save}}
+ </button>
+ </div>
+ <ul class="nav nav-tabs text-center" role="tablist">
+ <li role="presentation" class="active"><a href="#permissions" role="tab" data-toggle="tab">{{lang_permissions}}</a></li>
+ <li role="presentation"><a href="#locations" role="tab" data-toggle="tab">{{lang_locations}}</a></li>
+ </ul>
+ <div class="tab-content">
+ <div role="tabpanel" class="tab-pane active" id="permissions">
+ {{{permissionHTML}}}
+ <div class="panel panel-default">
+ <div class="panel-body">
+ <span class="glyphicon glyphicon-home text-muted"></span>&emsp;
+ {{lang_locationAwareDesc}}
</div>
</div>
</div>
+ <div role="tabpanel" class="tab-pane" id="locations">
+ {{{locationHTML}}}
+ </div>
</div>
</form>
@@ -39,16 +58,14 @@
document.addEventListener("DOMContentLoaded", function () {
- $(".tree-panel input[type=checkbox]").change(function () {
- var checked = $(this).prop("checked");
- var parent = $(this).parent().parent();
- if (parent.hasClass("panel-heading")) parent = parent.parent();
+ $(".tree-container input[type=checkbox]").change(function () {
+ // (Un)Mark all sub-elements when changing a checkbox in the panel body
+ var $this = $(this);
+ var checked = $this.prop("checked");
+ $this.closest('li').find("input[type=checkbox]").prop("checked", checked);
- var checkboxes = parent.find("input[type=checkbox]");
- if (checked) {
- checkboxes.prop("checked", true);
- } else {
- checkboxes.prop("checked", false);
+ if (!checked) {
+ var parent = $(this).parent().parent();
while (!parent.hasClass("tree-panel")) {
parent = parent.parent().parent();
if (parent.hasClass("tree-container")) parent = parent.parent().parent();
@@ -56,14 +73,11 @@
}
}
});
-
- $('form').submit(function () {
- var input = $("#rolename");
- var name = $.trim(input.val());
- if (!name) {
- input.addClass("missingInput");
- return false;
- }
+ $("input.master-checkbox").change(function () {
+ // (Un)Mark everything within the panel when the master checkbox on top is clicked
+ var $this = $(this);
+ var checked = $this.prop("checked");
+ $this.closest('.tree-panel').find("input[type=checkbox]").prop("checked", checked);
});
$('[data-toggle="tooltip"]').tooltip({
diff --git a/modules-available/permissionmanager/templates/rolestable.html b/modules-available/permissionmanager/templates/rolestable.html
index b121a9e0..d520db33 100644
--- a/modules-available/permissionmanager/templates/rolestable.html
+++ b/modules-available/permissionmanager/templates/rolestable.html
@@ -1,15 +1,8 @@
<form method="post" action="?do=permissionmanager">
<input type="hidden" name="token" value="{{token}}">
- <div class="row">
- <div class="col-md-4">
- </div>
- <div class="col-md-4">
- <input type="text" class="form-control" id="roleNameSearchField" onkeyup="searchFieldFunction()" placeholder="{{lang_searchPlaceholder}}">
- </div>
- <div class="col-md-4 text-right">
- <a href="?do=permissionmanager&show=roleEditor" class="btn btn-success"><span class="glyphicon glyphicon-plus"></span> {{lang_newRole}}</a>
- </div>
+ <div>
+ <input type="text" class="form-control" id="roleNameSearchField" onkeyup="searchFieldFunction()" placeholder="{{lang_searchPlaceholder}}">
</div>
<div class="row">
@@ -18,8 +11,16 @@
<thead>
<tr>
<th data-sort="string">{{lang_roles}}</th>
- <th class="text-center">{{lang_edit}}</th>
- <th class="text-center">{{lang_delete}}</th>
+ <th data-sort="string">{{lang_description}}</th>
+ <th class="text-center slx-smallcol">
+ {{#perms.roles.edit.disabled}}
+ {{lang_view}}
+ {{/perms.roles.edit.disabled}}
+ {{^perms.roles.edit.disabled}}
+ {{lang_edit}}
+ {{/perms.roles.edit.disabled}}
+ </th>
+ <th class="text-center slx-smallcol">{{lang_delete}}</th>
</tr>
</thead>
@@ -27,11 +28,14 @@
{{#roles}}
<tr>
<td class="rolename">{{rolename}}</td>
+ <td class="text-muted"><table class="slx-ellipsis"><tr><td>{{roledescription}}</td></tr></table></td>
<td class="text-center">
- <a class="btn btn-xs btn-primary" href="?do=permissionmanager&show=roleEditor&roleid={{roleid}}"><span class="glyphicon glyphicon-edit"></span></a>
+ <a class="btn btn-xs btn-primary" href="?do=permissionmanager&amp;show=roleEditor&amp;roleid={{roleid}}"><span class="glyphicon glyphicon-edit"></span></a>
</td>
<td class="text-center">
- <a class="btn btn-xs btn-danger" href="#deleteModal" data-toggle="modal" data-target="#deleteModal" onclick="deleteRole('{{roleid}}')"><span class="glyphicon glyphicon-trash"></span></a>
+ <button type="button" class="btn btn-xs btn-danger" data-toggle="modal" data-target="#deleteModal" onclick="deleteRole('{{roleid}}', '{{users}}')" {{perms.roles.edit.disabled}}>
+ <span class="glyphicon glyphicon-trash"></span>
+ </button>
</td>
</tr>
{{/roles}}
@@ -40,7 +44,6 @@
</div>
</div>
-
<!-- Modals -->
<div class ="modal fade" id="deleteModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document">
@@ -50,10 +53,11 @@
<h4 class="modal-title" id="myModalLabel">{{lang_delete}}</h4>
</div>
<div class="modal-body">
- {{lang_deleteCheck}}
+ <p>{{lang_roleDeleteConfirm}}</p>
+ {{lang_numAssignedUsers}}: <span id="delete-role-users"></span>
</div>
<div class="modal-footer">
- <input type="hidden" id="deleteId" name="deleteId" value=""/>
+ <input type="hidden" id="delete-role-id" name="deleteId" value="">
<button type="button" class="btn btn-default" data-dismiss="modal">{{lang_cancel}}</button>
<button type="submit" name="action" value="deleteRole" class="btn btn-danger"><span class="glyphicon glyphicon-trash"></span> {{lang_delete}}</button>
</div>
@@ -63,9 +67,14 @@
</form>
+<div class="text-right">
+ <a href="?do=permissionmanager&amp;show=roleEditor" class="btn btn-success {{perms.roles.edit.disabled}}"><span class="glyphicon glyphicon-plus"></span> {{lang_newRole}}</a>
+</div>
+
<script>
- function deleteRole($roleid) {
- $(".modal-footer #deleteId").val($roleid);
+ function deleteRole(roleid, users) {
+ $("#delete-role-id").val(roleid);
+ $("#delete-role-users").text(users);
}
function searchFieldFunction() {
diff --git a/modules-available/permissionmanager/templates/treenode.html b/modules-available/permissionmanager/templates/treenode.html
index ced973ca..f8ee3df5 100644
--- a/modules-available/permissionmanager/templates/treenode.html
+++ b/modules-available/permissionmanager/templates/treenode.html
@@ -1,11 +1,14 @@
{{#toplevel}}<ul>{{/toplevel}}
- <li title="{{description}}" data-toggle="tooltip" data-placement="left">
- <div class='checkbox'>
- <input id="{{id}}" name="{{checkboxname}}[]" value="{{id}}" type="checkbox" class="form-control" {{#selected}}checked{{/selected}}>
- <label for="{{id}}">{{#toplevel}}<b>{{/toplevel}}{{name}}{{#toplevel}}</b>{{/toplevel}}</label>
- </div>
- <ul>
- {{{HTML}}}
- </ul>
- </li>
-{{#toplevel}}</ul>{{/toplevel}}
+<li {{#description}}title="{{description}}" data-toggle="tooltip" data-placement="left"{{/description}}>
+ <div class='checkbox'>
+ <input id="{{id}}" name="{{checkboxname}}[]" value="{{id}}" type="checkbox" {{#selected}}checked{{/selected}} {{edit_disabled}} {{perms.roles.edit.disabled}}>
+ <label for="{{id}}">
+ {{name}}
+ {{#location-aware}}<span class="glyphicon glyphicon-home text-muted"></span>{{/location-aware}}
+ </label>
+ </div>
+ <ul>
+ {{{HTML}}}
+ </ul>
+</li>
+{{#toplevel}}</ul>{{/toplevel}} \ No newline at end of file
diff --git a/modules-available/permissionmanager/templates/treepanel.html b/modules-available/permissionmanager/templates/treepanel.html
index 6f358825..eccecb58 100644
--- a/modules-available/permissionmanager/templates/treepanel.html
+++ b/modules-available/permissionmanager/templates/treepanel.html
@@ -1,12 +1,12 @@
<div class="panel panel-primary tree-panel">
<div class="panel-heading">
<div class="checkbox">
- <input id="{{id}}" name="{{checkboxname}}[]" value="{{id}}" type="checkbox" class="form-control" {{#selected}}checked{{/selected}}>
+ <input id="{{id}}" name="{{checkboxname}}[]" value="{{id}}" type="checkbox" class="master-checkbox" {{#selected}}checked{{/selected}} {{perms.roles.edit.disabled}}>
<label for="{{id}}">{{name}}</label>
</div>
</div>
<div class="panel-body">
- <div class="tree-container" style="padding-left: 20px; padding-right: 20px;">
+ <div class="tree-container">
{{{HTML}}}
</div>
</div>
diff --git a/modules-available/permissionmanager/templates/userstable.html b/modules-available/permissionmanager/templates/userstable.html
index bb0e228e..4cda2b1b 100644
--- a/modules-available/permissionmanager/templates/userstable.html
+++ b/modules-available/permissionmanager/templates/userstable.html
@@ -2,40 +2,23 @@
<input type="hidden" name="token" value="{{token}}">
<div class="row">
- <div class="col-md-4">
- </div>
- <div class="col-md-4">
- <select multiple name="roles[]" id="select-role">
- <option value>{{lang_selectizePlaceholder}}</option>
- {{#roles}}
- <option value="{{roleid}}">{{rolename}}</option>
- {{/roles}}
- </select>
- </div>
- <div class="col-md-4 text-right">
- <button class="roleButtons btn btn-success" type="button" data-toggle="modal" data-target="#addRoleToUserModal" disabled><span class="glyphicon glyphicon-share-alt"></span> {{lang_addRole}}</button>
- <button class="roleButtons btn btn-danger" type="button" data-toggle="modal" data-target="#removeRoleFromUserModal" disabled><span class="glyphicon glyphicon-remove-circle"></span> {{lang_removeRole}}</button>
- </div>
- </div>
-
- <div class="row">
<div class="col-md-12">
<table id="usersTable" class="table table-condensed table-hover stupidtable dataTable">
<thead>
<tr>
<th data-sort="string">{{lang_users}}</th>
- <th>{{lang_roles}}</th>
- <th data-sort="int" data-sort-default="desc">{{lang_selected}}</th>
+ <th class="slx-smallcol">{{lang_roles}}</th>
+ <th class="slx-smallcol" data-sort="int" data-sort-default="desc">{{lang_selected}}</th>
</tr>
</thead>
<tbody>
{{#user}}
- <tr data-selectizeCount='0'>
+ <tr class="{{#roles}}roleid-{{roleid}} {{/roles}}">
<td>{{username}}</td>
- <td>
+ <td class="slx-smallcol">
{{#roles}}
- <a href="?do=permissionmanager&show=roleEditor&cancel=users&roleid={{roleid}}" class="label label-default customSpanMargin roleid-{{roleid}}">{{rolename}}</a>
+ <a href="?do=permissionmanager&show=roleEditor&cancel=users&roleid={{roleid}}" class="label label-default customSpanMargin">{{rolename}}</a>
{{/roles}}
</td>
<td data-sort-value="0">
@@ -71,7 +54,7 @@
</thead>
<tbody>
- {{#roles}}
+ {{#allroles}}
<tr>
<td>{{rolename}}</td>
<td data-sort-value="0">
@@ -81,7 +64,7 @@
</div>
</td>
</tr>
- {{/roles}}
+ {{/allroles}}
</tbody>
</table>
</div>
@@ -114,7 +97,7 @@
</thead>
<tbody>
- {{#roles}}
+ {{#allroles}}
<tr>
<td>{{rolename}}</td>
<td data-sort-value="0">
@@ -124,7 +107,7 @@
</div>
</td>
</tr>
- {{/roles}}
+ {{/allroles}}
</tbody>
</table>
</div>
@@ -139,6 +122,11 @@
</div>
</form>
+<div class="text-right">
+ <button class="roleButtons btn btn-success" type="button" data-toggle="modal" data-target="#addRoleToUserModal" disabled><span class="glyphicon glyphicon-share-alt"></span> {{lang_addRole}}</button>
+ <button class="roleButtons btn btn-danger" type="button" data-toggle="modal" data-target="#removeRoleFromUserModal" disabled><span class="glyphicon glyphicon-remove-circle"></span> {{lang_removeRole}}</button>
+</div>
+
<script>
selectedUsersCounter = 0;
selectedAddRolesCounter = 0;