mirror of
https://github.com/gyurix1968/guacamole-client.git
synced 2025-09-08 14:11:21 +00:00
Ticket #268: Add pagination for users.
This commit is contained in:
@@ -55,6 +55,9 @@
|
|||||||
<div id="user-list">
|
<div id="user-list">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="user-list-buttons">
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<h3 class="require-manage-connections">Connections</h3>
|
<h3 class="require-manage-connections">Connections</h3>
|
||||||
|
@@ -27,6 +27,8 @@ var GuacAdmin = {
|
|||||||
"user_list" : document.getElementById("user-list")
|
"user_list" : document.getElementById("user-list")
|
||||||
},
|
},
|
||||||
|
|
||||||
|
"user_list_buttons" : document.getElementById("user-list-buttons"),
|
||||||
|
|
||||||
"buttons" : {
|
"buttons" : {
|
||||||
"back" : document.getElementById("back"),
|
"back" : document.getElementById("back"),
|
||||||
"logout" : document.getElementById("logout"),
|
"logout" : document.getElementById("logout"),
|
||||||
@@ -351,8 +353,16 @@ GuacAdmin.Pager = function(container) {
|
|||||||
// Add page jumps
|
// Add page jumps
|
||||||
for (i=window_start; i<=window_end; i++) {
|
for (i=window_start; i<=window_end; i++) {
|
||||||
|
|
||||||
|
// Create clickable element containing page number
|
||||||
var jump = GuacUI.createChildElement(element, "div", "set-page");
|
var jump = GuacUI.createChildElement(element, "div", "set-page");
|
||||||
jump.textContent = i+1;
|
jump.textContent = i+1;
|
||||||
|
|
||||||
|
// Mark current page
|
||||||
|
if (i == guac_pager.current_page)
|
||||||
|
GuacUI.addClass(jump, "current");
|
||||||
|
|
||||||
|
// If not current, add click event
|
||||||
|
else
|
||||||
(function(page_number) {
|
(function(page_number) {
|
||||||
jump.onclick = function() {
|
jump.onclick = function() {
|
||||||
guac_pager.setPage(page_number);
|
guac_pager.setPage(page_number);
|
||||||
@@ -478,6 +488,11 @@ GuacAdmin.formatSeconds = function(seconds) {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Currently-defined pager for users, if any.
|
||||||
|
*/
|
||||||
|
GuacAdmin.userPager = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Adds the user with the given name to the displayed user list.
|
* Adds the user with the given name to the displayed user list.
|
||||||
*/
|
*/
|
||||||
@@ -486,7 +501,7 @@ GuacAdmin.addUser = function(name) {
|
|||||||
// Create user list item
|
// Create user list item
|
||||||
var item = new GuacAdmin.ListItem("user", name);
|
var item = new GuacAdmin.ListItem("user", name);
|
||||||
var item_element = item.getElement();
|
var item_element = item.getElement();
|
||||||
GuacAdmin.lists.user_list.appendChild(item_element);
|
GuacAdmin.userPager.addElement(item_element);
|
||||||
|
|
||||||
// When clicked, build and display property form
|
// When clicked, build and display property form
|
||||||
item_element.onclick = function() {
|
item_element.onclick = function() {
|
||||||
@@ -1010,10 +1025,28 @@ GuacAdmin.reset = function() {
|
|||||||
* Add readable users.
|
* Add readable users.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
// Get previous page, if any
|
||||||
|
var user_previous_page = 0;
|
||||||
|
if (GuacAdmin.userPager)
|
||||||
|
user_previous_page = GuacAdmin.userPager.current_page;
|
||||||
|
|
||||||
|
// Add new pager
|
||||||
GuacAdmin.lists.user_list.innerHTML = "";
|
GuacAdmin.lists.user_list.innerHTML = "";
|
||||||
|
GuacAdmin.userPager = new GuacAdmin.Pager(GuacAdmin.lists.user_list);
|
||||||
|
|
||||||
|
// Add users to pager
|
||||||
for (var name in GuacAdmin.cached_permissions.read_user)
|
for (var name in GuacAdmin.cached_permissions.read_user)
|
||||||
GuacAdmin.addUser(name)
|
GuacAdmin.addUser(name)
|
||||||
|
|
||||||
|
// If more than one page, add navigation buttons
|
||||||
|
GuacAdmin.user_list_buttons.innerHTML = "";
|
||||||
|
if (GuacAdmin.userPager.last_page != 0)
|
||||||
|
GuacAdmin.user_list_buttons.appendChild(GuacAdmin.userPager.getElement());
|
||||||
|
|
||||||
|
// Set starting page
|
||||||
|
GuacAdmin.userPager.setPage(Math.min(GuacAdmin.userPager.last_page,
|
||||||
|
user_previous_page));
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Add readable connections.
|
* Add readable connections.
|
||||||
*/
|
*/
|
||||||
|
@@ -394,6 +394,12 @@ div#logout-panel {
|
|||||||
padding: 0.25em;
|
padding: 0.25em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.set-page.current {
|
||||||
|
cursor: auto;
|
||||||
|
text-decoration: none;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
.icon.first-page {
|
.icon.first-page {
|
||||||
background-image: url('../images/action-icons/guac-first-page.png');
|
background-image: url('../images/action-icons/guac-first-page.png');
|
||||||
}
|
}
|
||||||
@@ -409,3 +415,7 @@ div#logout-panel {
|
|||||||
.icon.last-page {
|
.icon.last-page {
|
||||||
background-image: url('../images/action-icons/guac-last-page.png');
|
background-image: url('../images/action-icons/guac-last-page.png');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#user-list-buttons {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user