1 | var searchTimeout; |
---|
2 | |
---|
3 | function lang(key){ |
---|
4 | return document.getElementById("txt_"+key).value; |
---|
5 | } |
---|
6 | |
---|
7 | function remove_user(id){ |
---|
8 | if(!confirm(lang("confirm"))) |
---|
9 | return true; |
---|
10 | var handler_rem_user = function(data){ |
---|
11 | if(data) { |
---|
12 | var tr = document.getElementById(id); |
---|
13 | tr.parentNode.removeChild(tr); |
---|
14 | } |
---|
15 | } |
---|
16 | cExecute ('calendar.uigroup_access.rem_user&id='+id, handler_rem_user); |
---|
17 | } |
---|
18 | function add_user(){ |
---|
19 | var select_users = document.getElementById("user"); |
---|
20 | var select_groups = document.getElementById("group"); |
---|
21 | var a_rights = new Array("L","A","E","R","P"); |
---|
22 | var rights = ''; |
---|
23 | for(var z = 0; z < a_rights.length; z++){ |
---|
24 | var check = document.getElementById("right_"+a_rights[z]); |
---|
25 | if(check.checked){ |
---|
26 | rights += check.value; |
---|
27 | } |
---|
28 | } |
---|
29 | if(!select_users.value){ |
---|
30 | alert(lang("nouser")); |
---|
31 | return; |
---|
32 | } |
---|
33 | else if(!select_groups.value){ |
---|
34 | alert(lang("nogroup")); |
---|
35 | return; |
---|
36 | } |
---|
37 | else if(!rights){ |
---|
38 | alert(lang("nopermissiontype")); |
---|
39 | return; |
---|
40 | } |
---|
41 | |
---|
42 | var str = select_users.value+";"+select_groups.value; |
---|
43 | var handler_add_user = function(data){ |
---|
44 | |
---|
45 | if(data){ |
---|
46 | var t = document.getElementById('tbody_list'); |
---|
47 | var tr = document.createElement("TR"); |
---|
48 | tr.bgColor = "#DCDCDC"; |
---|
49 | var td1 = document.createElement("TD"); |
---|
50 | var td2 = document.createElement("TD"); |
---|
51 | var td3 = document.createElement("TD"); |
---|
52 | var td4 = document.createElement("TD"); |
---|
53 | tr.id = str; |
---|
54 | td1.innerHTML = "<b> "+select_users[select_users.selectedIndex].text+"</b>"; |
---|
55 | td2.innerHTML = rights; |
---|
56 | td2.align = "center"; |
---|
57 | td3.innerHTML = " "+select_groups[select_groups.selectedIndex].text; |
---|
58 | td4.innerHTML = "<button title='remove' type='button' onClick='javascript:remove_user(\""+str+"\");'><img src='"+document.getElementById("template_set").value+"/images/delete.png' style='vertical-align: middle;'/></button>"; |
---|
59 | tr.appendChild(td1); |
---|
60 | tr.appendChild(td2); |
---|
61 | tr.appendChild(td3); |
---|
62 | tr.appendChild(td4); |
---|
63 | t.appendChild(tr); |
---|
64 | alert(lang("success")); |
---|
65 | } |
---|
66 | else{ |
---|
67 | alert(lang("exist")); |
---|
68 | } |
---|
69 | } |
---|
70 | cExecute ('calendar.uigroup_access.add_user&id='+str+"&rights="+rights, handler_add_user); |
---|
71 | return true; |
---|
72 | |
---|
73 | } |
---|
74 | function search_object(input, id_span, id_select, type, event) |
---|
75 | { |
---|
76 | // clearTimeout(searchTimeout); |
---|
77 | // var spam = document.getElementById(id_span); |
---|
78 | // if (input.value.length <= 3){ |
---|
79 | // spam.innerHTML = lang("typemoreletters").replace("X",4 - input.value.length); |
---|
80 | // }else{ |
---|
81 | // spam.innerHTML = lang("searching")+'...'; |
---|
82 | // searchTimeout = setTimeout("search_ldap('"+input.id+"','"+id_span+"','"+id_select+"','"+type+"')",750); |
---|
83 | // } |
---|
84 | if( event && event.keyCode !== 13 ) |
---|
85 | return; |
---|
86 | |
---|
87 | search_ldap(input.id, id_span, id_select, type); |
---|
88 | } |
---|
89 | |
---|
90 | function search_ldap(id_input, id_span, id_select, type) |
---|
91 | { |
---|
92 | // var search = document.getElementById(id_input).value; |
---|
93 | // |
---|
94 | // var handler_search_user = function(data) |
---|
95 | // { |
---|
96 | // var spam = document.getElementById(id_span); |
---|
97 | // select_available_users = document.getElementById(id_select); |
---|
98 | // if (data.status == 'false') |
---|
99 | // { |
---|
100 | // spam.innerHTML = data.msg; |
---|
101 | // // Necessario, pois o IE6 tem um bug que retira o primeiro options se o innerHTML estiver vazio. |
---|
102 | // select_available_users.innerHTML = '#'; |
---|
103 | // select_available_users.outerHTML = select_available_users.outerHTML; |
---|
104 | // return; |
---|
105 | // } |
---|
106 | // spam.innerHTML = ''; |
---|
107 | // // Necessario, pois o IE6 tem um bug que retira o primeiro options se o innerHTML estiver vazio. |
---|
108 | // select_available_users.innerHTML = '#' + data; |
---|
109 | // select_available_users.outerHTML = select_available_users.outerHTML; |
---|
110 | // } |
---|
111 | var search = Element( id_input ).value; |
---|
112 | |
---|
113 | var url = 'calendar.uigroup_access.search_user&search='+search+"&type="+type; |
---|
114 | |
---|
115 | var fillHandler = function( fill ){ |
---|
116 | |
---|
117 | Element( id_select ).innerHTML = fill; |
---|
118 | |
---|
119 | return( fill !== "" ); |
---|
120 | }; |
---|
121 | |
---|
122 | // cExecute ('calendar.uigroup_access.search_user&search='+search+"&type="+type, handler_search_user); |
---|
123 | |
---|
124 | userFinder( search, fillHandler, url, id_span ); |
---|
125 | } |
---|