3 var contactSelectorAction = 'acls-contacts';
5 function addUser(userName, userID) {
7 var ul = $("userList");
8 ul.appendChild(nodeForUser(userName, userID));
9 var url = window.location.href;
10 var elements = url.split("/");
11 elements[elements.length-1] = ("addUserInAcls?uid="
13 triggerAjaxRequest(elements.join("/"), addUserCallback);
17 function addUserCallback(http) {
20 function nodeForUser(userName, userId) {
21 var node = document.createElement("li");
22 node.setAttribute("id", userId);
23 node.setAttribute("class", "");
24 node.addEventListener("mousedown", listRowMouseDownHandler, true);
25 node.addEventListener("click", onRowClick, true);
27 var image = document.createElement("img");
28 image.setAttribute("src", ResourcesURL + "/abcard.gif");
30 node.appendChild(image);
31 node.appendChild(document.createTextNode(" " + userName));
37 var uidList = new Array();
38 var users = $("userList").childNodesWithTag("li");
39 for (var i = 0; i < users.length; i++)
40 uidList.push(users[i].getAttribute("id"));
41 $("userUIDS").value = uidList.join(",");
42 $("aclForm").submit();
47 function onUserAdd(event) {
48 openUserFolderSelector(null, "user");
50 event.preventDefault();
53 function onUserRemove(event) {
54 var userList = $("userList");
55 var nodes = userList.getSelectedRows();
56 for (var i = 0; i < nodes.length; i++)
57 userList.removeChild(nodes[i]);
58 event.preventDefault();
61 function subscribeToFolder(refreshCallback, refreshCallbackData) {
62 addUser(refreshCallbackData["folderName"],
63 refreshCallbackData["folder"]);
66 function openRightsForUser(button) {
67 var nodes = $("userList").getSelectedRows();
68 if (nodes.length > 0) {
69 var url = window.location.href;
70 var elements = url.split("/");
71 elements[elements.length-1] = ("userRights?uid="
72 + nodes[0].getAttribute("id"));
74 window.open(elements.join("/"), "",
75 "width=" + this.userRightsWidth
76 + ",height=" + this.userRightsHeight
77 + ",resizable=0,scrollbars=0,toolbar=0,"
78 + "location=0,directories=0,status=0,menubar=0,copyhistory=0");
84 function onOpenUserRights(event) {
86 event.preventDefault();
89 function onAclLoadHandler() {
90 var ul = $("userList");
91 var lis = ul.childNodesWithTag("li");
92 for (var i = 0; i < lis.length; i++) {
93 lis[i].addEventListener("mousedown", listRowMouseDownHandler, false);
94 lis[i].addEventListener("dblclick", onOpenUserRights, false);
95 lis[i].addEventListener("click", onRowClick, false);
98 var buttons = $("userSelectorButtons").childNodesWithTag("a");
99 buttons[0].addEventListener("click", onUserAdd, false);
100 buttons[1].addEventListener("click", onUserRemove, false);
102 this.userRightsHeight = window.opener.getUsersRightsWindowHeight();
103 this.userRightsWidth = window.opener.getUsersRightsWindowWidth();
106 window.addEventListener("load", onAclLoadHandler, false);