summaryrefslogtreecommitdiff
path: root/prefs.js
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2005-11-18 10:00:18 +0100
committerAndrew Dolgov <[email protected]>2005-11-18 10:00:18 +0100
commite6cb77a07ad5ff4b7d43aa00fdf1fc810bfebf69 (patch)
tree9b02156c3d1debc5530b1ec6b671ce54f700e53b /prefs.js
parentcd42edf18dac1955a4046cc68a790aaf77cd6536 (diff)
user manager
Diffstat (limited to 'prefs.js')
-rw-r--r--prefs.js213
1 files changed, 213 insertions, 0 deletions
diff --git a/prefs.js b/prefs.js
index df49f85be..c18e5100f 100644
--- a/prefs.js
+++ b/prefs.js
@@ -8,6 +8,7 @@ var xmlhttp = false;
var active_feed = false;
var active_filter = false;
var active_label = false;
+var active_user = false;
var active_tab = false;
@@ -95,6 +96,28 @@ function labellist_callback() {
}
}
+function userlist_callback() {
+ var container = document.getElementById('prefContent');
+ if (xmlhttp.readyState == 4) {
+ container.innerHTML=xmlhttp.responseText;
+
+/* if (active_filter) {
+ var row = document.getElementById("ULRR-" + active_label);
+ if (row) {
+ if (!row.className.match("Selected")) {
+ row.className = row.className + "Selected";
+ }
+ }
+ var checkbox = document.getElementById("LICHK-" + active_label);
+
+ if (checkbox) {
+ checkbox.checked = true;
+ }
+ } */
+ p_notify("");
+ }
+}
+
function prefslist_callback() {
var container = document.getElementById('prefContent');
if (xmlhttp.readyState == 4) {
@@ -141,6 +164,23 @@ function updateFeedList() {
}
+function updateUsersList() {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+// document.getElementById("prefContent").innerHTML = "Loading feeds, please wait...";
+
+ p_notify("Loading, please wait...");
+
+ xmlhttp.open("GET", "backend.php?op=pref-users", true);
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+}
+
function toggleSelectRow(sender) {
var parent_row = sender.parentNode.parentNode;
@@ -233,6 +273,31 @@ function addFeed() {
}
+function addUser() {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ var sqlexp = document.getElementById("uadd_box");
+
+ if (sqlexp.value.length == 0) {
+ notify("Missing user login.");
+ } else {
+ notify("Adding user...");
+
+ xmlhttp.open("GET", "backend.php?op=pref-users&subop=add&login=" +
+ param_escape(sqlexp.value), true);
+
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+ sqlexp.value = "";
+ }
+
+}
+
function editLabel(id) {
if (!xmlhttp_ready(xmlhttp)) {
@@ -249,6 +314,22 @@ function editLabel(id) {
}
+function editUser(id) {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ active_user = id;
+
+ xmlhttp.open("GET", "backend.php?op=pref-users&subop=edit&id=" +
+ param_escape(id), true);
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+}
+
function editFilter(id) {
if (!xmlhttp_ready(xmlhttp)) {
@@ -299,6 +380,22 @@ function getSelectedLabels() {
return sel_rows;
}
+function getSelectedUsers() {
+
+ var content = document.getElementById("prefUserList");
+
+ var sel_rows = new Array();
+
+ for (i = 0; i < content.rows.length; i++) {
+ if (content.rows[i].className.match("Selected")) {
+ var row_id = content.rows[i].id.replace("UMRR-", "");
+ sel_rows.push(row_id);
+ }
+ }
+
+ return sel_rows;
+}
+
function getSelectedFilters() {
@@ -405,6 +502,29 @@ function removeSelectedLabels() {
}
}
+function removeSelectedUsers() {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ var sel_rows = getSelectedUsers();
+
+ if (sel_rows.length > 0) {
+
+ notify("Removing selected users...");
+
+ xmlhttp.open("GET", "backend.php?op=pref-users&subop=remove&ids="+
+ param_escape(sel_rows.toString()), true);
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+ } else {
+ notify("Please select some labels first.");
+ }
+}
+
function removeSelectedFilters() {
if (!xmlhttp_ready(xmlhttp)) {
@@ -535,6 +655,22 @@ function labelEditCancel() {
}
+function userEditCancel() {
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ active_user = false;
+
+ notify("Operation cancelled.");
+
+ xmlhttp.open("GET", "backend.php?op=pref-users", true);
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+}
function filterEditCancel() {
@@ -588,6 +724,40 @@ function labelEditSave() {
}
+function userEditSave() {
+
+ var user = active_user;
+
+ if (!xmlhttp_ready(xmlhttp)) {
+ printLockingError();
+ return
+ }
+
+ var login = document.getElementById("iedit_ulogin").value;
+ var level = document.getElementById("iedit_ulevel").value;
+
+ if (login.length == 0) {
+ notify("Login cannot be blank.");
+ return;
+ }
+
+ if (level.length == 0) {
+ notify("User level cannot be blank.");
+ return;
+ }
+
+ active_user = false;
+
+ xmlhttp.open("GET", "backend.php?op=pref-users&subop=editSave&id=" +
+ user + "&l=" + param_escape(login) + "&al=" + param_escape(level),
+ true);
+
+ xmlhttp.onreadystatechange=labellist_callback;
+ xmlhttp.send(null);
+
+}
+
+
function filterEditSave() {
var filter = active_filter;
@@ -638,6 +808,47 @@ function editSelectedLabel() {
}
+function editSelectedUser() {
+ var rows = getSelectedUsers();
+
+ if (rows.length == 0) {
+ notify("No users are selected.");
+ return;
+ }
+
+ if (rows.length > 1) {
+ notify("Please select one user.");
+ return;
+ }
+
+ editUser(rows[0]);
+}
+
+function resetSelectedUserPass() {
+ var rows = getSelectedUsers();
+
+ if (rows.length == 0) {
+ notify("No users are selected.");
+ return;
+ }
+
+ if (rows.length > 1) {
+ notify("Please select one user.");
+ return;
+ }
+
+ notify("Resetting password for selected user...");
+
+ var id = rows[0];
+
+ xmlhttp.open("GET", "backend.php?op=pref-users&subop=resetPass&id=" +
+ param_escape(id), true);
+ xmlhttp.onreadystatechange=userlist_callback;
+ xmlhttp.send(null);
+
+}
+
+
function editSelectedFilter() {
var rows = getSelectedFilters();
@@ -755,6 +966,8 @@ function selectTab(id) {
updateLabelList();
} else if (id == "genConfig") {
updatePrefsList();
+ } else if (id == "userConfig") {
+ updateUsersList();
}
var tab = document.getElementById(active_tab + "Tab");