[1913] | 1 | countFiles = 1; |
---|
| 2 | |
---|
| 3 | function create_shared_accounts() |
---|
| 4 | { |
---|
[5589] | 5 | // select_owners = Element('ea_select_owners'); |
---|
[1913] | 6 | hidden_owners_acl = Element('owners_acls'); |
---|
[5589] | 7 | hidden_owners_calendar_acl = Element('owners_calendar_acls'); |
---|
| 8 | |
---|
| 9 | select_owners = Element('ea_select_owners'); |
---|
| 10 | for(var i = 0;i < select_owners.options.length; i++) |
---|
| 11 | select_owners.options[i].selected = true; |
---|
| 12 | |
---|
[3353] | 13 | hidden_owners_acl.value = admin_connector.serialize(sharemailbox.ownersAcl); |
---|
[5589] | 14 | hidden_owners_calendar_acl.value = admin_connector.serialize(sharemailbox.ownersCalendarAcl); |
---|
[1913] | 15 | cExecuteForm ("$this.shared_accounts.create", document.forms['shared_accounts_form'], handler_create_shared_accounts); |
---|
| 16 | hidden_owners_acl.value = ""; |
---|
| 17 | } |
---|
| 18 | |
---|
| 19 | function handler_create_shared_accounts(data_return) |
---|
| 20 | { |
---|
| 21 | handler_create_shared_accounts2(data_return); |
---|
| 22 | return; |
---|
| 23 | } |
---|
| 24 | |
---|
| 25 | function handler_create_shared_accounts2(data_return) |
---|
| 26 | { |
---|
[5589] | 27 | if (data_return && !data_return.status) |
---|
[1913] | 28 | { |
---|
| 29 | write_msg(data_return.msg, 'error'); |
---|
| 30 | } |
---|
| 31 | else |
---|
| 32 | { |
---|
| 33 | close_lightbox(); |
---|
| 34 | write_msg(get_lang('Shared account successful created') + '.', 'normal'); |
---|
| 35 | } |
---|
| 36 | return; |
---|
| 37 | } |
---|
| 38 | |
---|
| 39 | function empty_inbox(uid) |
---|
| 40 | { |
---|
| 41 | var action = get_lang('Cleanned user mailbox'); |
---|
| 42 | var handler_write_log = function(){} |
---|
| 43 | |
---|
| 44 | var handler_empty_inbox = function(data) |
---|
| 45 | { |
---|
| 46 | if (!data.status) |
---|
| 47 | alert(data.msg); |
---|
| 48 | else{ |
---|
| 49 | cExecute ('$this.user.write_log_from_ajax&_action='+action+'&userinfo='+uid, handler_write_log); |
---|
| 50 | alert(get_lang('Emptied') +' '+ data.inbox_size + ' ' + get_lang('MB from user inbox')); |
---|
| 51 | document.getElementById('mailquota_used').value = data.mailquota_used; |
---|
| 52 | } |
---|
| 53 | } |
---|
| 54 | cExecute ('$this.shared_accounts.empty_inbox&uid='+Element('anchor').value, handler_empty_inbox); |
---|
| 55 | } |
---|
| 56 | function set_onload() |
---|
| 57 | { |
---|
| 58 | |
---|
[5589] | 59 | if(sharemailbox.ownersAcl) |
---|
[1913] | 60 | { |
---|
[5589] | 61 | delete sharemailbox.ownersAcl; |
---|
| 62 | sharemailbox.ownersAcl = new Array(); |
---|
[1913] | 63 | } |
---|
| 64 | |
---|
[5589] | 65 | if(sharemailbox.ownersCalendarAcl) |
---|
[1913] | 66 | { |
---|
[5589] | 67 | delete sharemailbox.ownersAcl; |
---|
| 68 | sharemailbox.ownersAcl = new Array(); |
---|
[1913] | 69 | } |
---|
[5589] | 70 | |
---|
| 71 | get_associated_domain(Element('ea_combo_org').value); |
---|
[1913] | 72 | } |
---|
| 73 | |
---|
| 74 | function search_organization(key, element) |
---|
| 75 | { |
---|
| 76 | var organizations = Element(element); |
---|
| 77 | var RegExp_org = new RegExp("\\b"+key, "i"); |
---|
| 78 | |
---|
| 79 | for(i = 0; i < organizations.length; i++) |
---|
| 80 | { |
---|
| 81 | if (RegExp_org.test(organizations[i].text)) |
---|
| 82 | { |
---|
| 83 | organizations[i].selected = true; |
---|
| 84 | return; |
---|
| 85 | } |
---|
| 86 | } |
---|
| 87 | } |
---|
| 88 | |
---|
| 89 | function sinc_combos_org(context) |
---|
| 90 | { |
---|
| 91 | combo_org_available_users = Element('ea_combo_org_available_users'); |
---|
| 92 | |
---|
| 93 | for (i=0; i<combo_org_available_users.length; i++) |
---|
| 94 | { |
---|
| 95 | if (combo_org_available_users.options[i].value == context) |
---|
| 96 | { |
---|
| 97 | combo_org_available_users.options[i].selected = true; |
---|
[5589] | 98 | // get_available_users(context); |
---|
[1913] | 99 | break; |
---|
| 100 | } |
---|
| 101 | } |
---|
| 102 | } |
---|
| 103 | |
---|
[5589] | 104 | function optionFinderTimeout(obj, event) |
---|
[1913] | 105 | { |
---|
[5589] | 106 | if( event.keyCode === 13 ) |
---|
| 107 | { |
---|
| 108 | limit = 0; |
---|
| 109 | optionFinder(obj.id); |
---|
| 110 | } |
---|
[1913] | 111 | } |
---|
| 112 | function optionFinder(id) { |
---|
| 113 | |
---|
[5589] | 114 | var sentence = Element(id).value; |
---|
[1913] | 115 | |
---|
[5589] | 116 | var url = '$this.ldap_functions.get_available_users2&context=' + |
---|
| 117 | Element('ea_combo_org_available_users').value + |
---|
| 118 | ( sentence ? '&sentence=' + sentence: '' ); |
---|
[1913] | 119 | |
---|
[5589] | 120 | userFinder( sentence, 'ea_select_available_users', url, 'ea_span_searching' ); |
---|
[1913] | 121 | } |
---|
| 122 | |
---|
| 123 | function add_user() |
---|
| 124 | { |
---|
| 125 | select_available_users = Element('ea_select_available_users'); |
---|
| 126 | select_owners = Element('ea_select_owners'); |
---|
| 127 | |
---|
| 128 | var count_available_users = select_available_users.length; |
---|
| 129 | var new_options = ''; |
---|
| 130 | |
---|
| 131 | for (i = 0 ; i < count_available_users ; i++) |
---|
| 132 | { |
---|
| 133 | if (select_available_users.options[i].selected) |
---|
| 134 | { |
---|
| 135 | if(document.all) |
---|
| 136 | { |
---|
| 137 | if ( (select_owners.innerHTML.indexOf('value='+select_available_users.options[i].value)) == '-1' ) |
---|
| 138 | { |
---|
| 139 | new_options += "<option value=" |
---|
| 140 | + select_available_users.options[i].value |
---|
| 141 | + ">" |
---|
| 142 | + select_available_users.options[i].text |
---|
| 143 | + "</options>"; |
---|
| 144 | } |
---|
| 145 | } |
---|
| 146 | else |
---|
| 147 | { |
---|
| 148 | if ( (select_owners.innerHTML.indexOf('value="'+select_available_users.options[i].value+'"')) == '-1' ) |
---|
| 149 | { |
---|
| 150 | new_options += "<option value=" |
---|
| 151 | + select_available_users.options[i].value |
---|
| 152 | + ">" |
---|
| 153 | + select_available_users.options[i].text |
---|
| 154 | + "</options>"; |
---|
| 155 | } |
---|
| 156 | } |
---|
| 157 | } |
---|
| 158 | } |
---|
| 159 | |
---|
| 160 | if (new_options != '') |
---|
| 161 | { |
---|
| 162 | select_owners.innerHTML = " " + new_options + select_owners.innerHTML; |
---|
[1983] | 163 | select_owners.outerHTML = select_owners.outerHTML; |
---|
| 164 | Element('em_input_readAcl').checked = false; |
---|
[1913] | 165 | Element('em_input_deleteAcl').checked = false; |
---|
| 166 | Element('em_input_writeAcl').checked = false; |
---|
| 167 | Element('em_input_sendAcl').checked = false; |
---|
[3356] | 168 | Element('em_input_saveAcl').checked = false; |
---|
| 169 | Element('em_input_folderAcl').checked = false; |
---|
[5589] | 170 | Element('em_input_readCalendar').checked = false; |
---|
| 171 | Element('em_input_writeCalendar').checked = false; |
---|
| 172 | Element('em_input_editCalendar').checked = false; |
---|
| 173 | Element('em_input_deleteCalendar').checked = false; |
---|
| 174 | Element('em_input_restrictCalendar').checked = false; |
---|
[1983] | 175 | Element('em_input_sendAcl').disabled = true; |
---|
| 176 | select_owners = Element('ea_select_owners'); |
---|
| 177 | select_owners.options[0].selected = true; |
---|
[1913] | 178 | } |
---|
| 179 | } |
---|
| 180 | |
---|
| 181 | function remove_user() |
---|
| 182 | { |
---|
| 183 | select_owners = Element('ea_select_owners'); |
---|
| 184 | for(var i = 0;i < select_owners.options.length; i++) |
---|
| 185 | if(select_owners.options[i].selected){ |
---|
| 186 | var user = select_owners.options[i].value; |
---|
| 187 | delete sharemailbox.ownersAcl[user]; |
---|
[5589] | 188 | sharemailbox.ownersCalendarAcl[user] = ''; |
---|
[1913] | 189 | select_owners.options[i--] = null; |
---|
| 190 | } |
---|
[1983] | 191 | //Nova chamada a "Element" é Necessária devido a um bug do ie com select |
---|
| 192 | select_owners = Element('ea_select_owners'); |
---|
| 193 | if(select_owners.options.length > 0 ){ |
---|
[1913] | 194 | select_owners.options[0].selected = true; |
---|
| 195 | var user = select_owners.options[0].value; |
---|
| 196 | sharemailbox.getaclfromuser(user); |
---|
| 197 | } |
---|
| 198 | } |
---|
| 199 | |
---|
[5589] | 200 | function get_shared_accounts_timeOut(input, event) |
---|
[1913] | 201 | { |
---|
[5589] | 202 | Element('shared_accounts_content').innerHTML = '<table border="0" width="90%"><tr bgcolor="#d3dce3"><td width="30%">'+get_lang("full name")+'</td><td width="30%">'+get_lang("display name")+'</td><td width="30%">'+get_lang("mail")+'</td><td width="5%" align="center">'+get_lang("remove")+'</td></tr></table>'; |
---|
[1913] | 203 | |
---|
[5589] | 204 | if (event.keyCode === 13) |
---|
[1913] | 205 | { |
---|
[5589] | 206 | get_shared_accounts( input ); |
---|
[1913] | 207 | } |
---|
| 208 | } |
---|
| 209 | |
---|
[5589] | 210 | function get_shared_accounts(input, callback) |
---|
[1913] | 211 | { |
---|
| 212 | var handler_get_shared_accounts = function(data) |
---|
| 213 | { |
---|
| 214 | if (data.status == 'true') |
---|
| 215 | { |
---|
[5589] | 216 | var table = '<table border="0" width="90%"><tr bgcolor="#d3dce3"><td width="30%">'+get_lang("full name")+'</td><td width="30%">'+get_lang("display name")+'</td><td width="30%">'+get_lang("mail")+'</td><td width="5%" align="center">'+get_lang("remove")+'</td></tr>'+data.trs+'</table>'; |
---|
[1913] | 217 | Element('shared_accounts_content').innerHTML = table; |
---|
| 218 | } |
---|
| 219 | else |
---|
| 220 | write_msg(data.msg, 'error'); |
---|
| 221 | } |
---|
| 222 | cExecute ('$this.ldap_functions.get_shared_accounts&input='+input, handler_get_shared_accounts); |
---|
| 223 | } |
---|
| 224 | |
---|
| 225 | function edit_shared_account(uid) |
---|
| 226 | { |
---|
| 227 | var handle_edit_shared_account = function(data) |
---|
| 228 | { |
---|
| 229 | if (data.status == 'true') |
---|
| 230 | { |
---|
| 231 | modal('shared_accounts_modal','save'); |
---|
| 232 | |
---|
[5589] | 233 | Element( 'lightboxCaption' ).innerHTML = get_lang( 'Edit Shared Accounts' ); |
---|
| 234 | Element('shared_accounts_modal').value = data.mailquota; |
---|
| 235 | |
---|
| 236 | |
---|
[1913] | 237 | var combo_org = Element('ea_combo_org'); |
---|
| 238 | for (i=0; i<combo_org.length; i++) |
---|
| 239 | { |
---|
| 240 | if (combo_org.options[i].value == data.user_context) |
---|
| 241 | { |
---|
| 242 | combo_org.options[i].selected = true; |
---|
| 243 | break; |
---|
| 244 | } |
---|
| 245 | } |
---|
| 246 | |
---|
| 247 | // anchor |
---|
| 248 | Element('anchor').value = "uid=" + uid + ',' + data.user_context; |
---|
| 249 | |
---|
| 250 | if (data.accountStatus != 'active') |
---|
| 251 | Element('accountStatus').checked = false; |
---|
| 252 | |
---|
| 253 | if (data.phpgwAccountVisible == '-1') |
---|
| 254 | Element('phpgwAccountVisible').checked = true; |
---|
[5589] | 255 | Element('uidnumber').value = data.uidnumber; |
---|
[1913] | 256 | Element('cn').value = data.cn; |
---|
| 257 | Element('mail').value = data.mail; |
---|
[1983] | 258 | Element('mailquota').value = data.mailquota; |
---|
| 259 | Element('mailquota_used').value = data.mailquota_used; |
---|
| 260 | Element('quota_used_field').style.display = 'inline'; |
---|
| 261 | Element('desc').value = data.description; |
---|
| 262 | //Necessario, pois o IE6 tem um bug que não exibe as novas opções se o innerHTML estava vazio |
---|
| 263 | Element('ea_select_owners').innerHTML = ' ' + data.owners_options; |
---|
| 264 | Element('ea_select_owners').outerHTML = Element('ea_select_owners').outerHTML; |
---|
[1913] | 265 | |
---|
[1983] | 266 | Element('display_empty_inbox').style.display = data.display_empty_inbox; |
---|
| 267 | if( data.allow_edit_shared_account_acl == "0"){ |
---|
| 268 | Element('bt_add_user').disabled = true; |
---|
| 269 | Element('bt_remove_user').disabled = true; |
---|
| 270 | Element('em_input_readAcl').disabled = true; |
---|
| 271 | Element('em_input_deleteAcl').disabled = true; |
---|
| 272 | Element('em_input_writeAcl').disabled = true; |
---|
| 273 | Element('em_input_sendAcl').disabled = true; |
---|
| 274 | Element('em_input_saveAcl').disabled = true; |
---|
[3356] | 275 | Element('em_input_folderAcl').disabled = true; |
---|
[1983] | 276 | } |
---|
| 277 | |
---|
[5589] | 278 | if( data.mailalternateaddress ) |
---|
| 279 | loadAppended( 'mailalternateaddress', data.mailalternateaddress ); |
---|
| 280 | |
---|
[1913] | 281 | sinc_combos_org(data.user_context); |
---|
| 282 | sharemailbox.ownersAcl = new Array(); |
---|
[5589] | 283 | sharemailbox.ownersCalendarAcl = new Array(); |
---|
| 284 | if( data.owners && data.owners != "undefined" && data.owners_acl != "undefined" ){ |
---|
[1983] | 285 | for (i=0; i<data.owners.length; i++){ |
---|
| 286 | sharemailbox.ownersAcl[ data.owners[i] ] = data.owners_acl[i]; |
---|
[5589] | 287 | sharemailbox.ownersCalendarAcl[ data.owners[i] ] = data.owners_calendar_acl[i]; |
---|
[1983] | 288 | } |
---|
| 289 | } |
---|
[1913] | 290 | } |
---|
| 291 | else |
---|
| 292 | write_msg(data.msg, 'error'); |
---|
| 293 | } |
---|
| 294 | cExecute ('$this.shared_accounts.get_data&uid='+uid, handle_edit_shared_account); |
---|
| 295 | } |
---|
| 296 | |
---|
| 297 | function save_shared_accounts() |
---|
| 298 | { |
---|
| 299 | if (is_ie){ |
---|
| 300 | var i = 0; |
---|
| 301 | while (document.forms(i).name != "shared_accounts_form"){i++} |
---|
| 302 | form = document.forms(i); |
---|
| 303 | } |
---|
| 304 | else form = document.forms["shared_accounts_form"]; |
---|
| 305 | |
---|
[5589] | 306 | hidden_owners_calendar_acl = Element('owners_calendar_acls'); |
---|
[1913] | 307 | hidden_owners_acl = Element('owners_acls'); |
---|
| 308 | select_owners = Element('ea_select_owners'); |
---|
| 309 | for(var i = 0;i < select_owners.options.length; i++){ |
---|
| 310 | var user = select_owners.options[i].value; |
---|
| 311 | select_owners.options[i].value = user; |
---|
| 312 | } |
---|
[3353] | 313 | hidden_owners_acl.value = admin_connector.serialize(sharemailbox.ownersAcl); |
---|
[5589] | 314 | hidden_owners_calendar_acl.value = admin_connector.serialize(sharemailbox.ownersCalendarAcl); |
---|
[1913] | 315 | cExecuteForm ("$this.shared_accounts.save", form, handler_save_shared_accounts); |
---|
[5589] | 316 | get_shared_accounts(Element('ea_shared_account_search').value); |
---|
[1913] | 317 | } |
---|
| 318 | |
---|
| 319 | function handler_save_shared_accounts(data_return) |
---|
| 320 | { |
---|
| 321 | handler_save_shared_accounts2(data_return); |
---|
| 322 | return; |
---|
| 323 | } |
---|
| 324 | function handler_save_shared_accounts2(data_return) |
---|
| 325 | { |
---|
| 326 | if (!data_return.status) |
---|
| 327 | { |
---|
| 328 | write_msg(data_return.msg, 'error'); |
---|
| 329 | } |
---|
| 330 | else |
---|
| 331 | { |
---|
[5589] | 332 | |
---|
| 333 | hidden_owners_acl.value = ""; |
---|
[1913] | 334 | close_lightbox(); |
---|
| 335 | write_msg(get_lang('Shared account successful saved') + '.', 'normal'); |
---|
| 336 | } |
---|
| 337 | return; |
---|
| 338 | } |
---|
| 339 | |
---|
| 340 | function delete_shared_accounts(uid) |
---|
| 341 | { |
---|
| 342 | if (!confirm(get_lang('Are you sure that you want to delete this shared account') + "?")) |
---|
| 343 | return; |
---|
| 344 | |
---|
| 345 | var handle_delete_shared_account = function(data_return) |
---|
| 346 | { |
---|
| 347 | if (!data_return.status) |
---|
| 348 | { |
---|
| 349 | write_msg(data_return.msg, 'error'); |
---|
| 350 | } |
---|
| 351 | else |
---|
| 352 | { |
---|
| 353 | write_msg(get_lang('Shared account successful deleted') + '.', 'normal'); |
---|
| 354 | get_shared_accounts(Element('ea_shared_account_search').value); |
---|
| 355 | } |
---|
| 356 | return; |
---|
| 357 | } |
---|
| 358 | cExecute ('$this.shared_accounts.delete&uid='+uid, handle_delete_shared_account); |
---|
[5589] | 359 | }function cShareMailbox() |
---|
[1913] | 360 | { |
---|
| 361 | this.arrayWin = new Array(); |
---|
| 362 | this.el; |
---|
| 363 | this.alert = false; |
---|
| 364 | this.ownersAcl = new Array(); |
---|
[5589] | 365 | this.ownersCalendarAcl = new Array(); |
---|
[1913] | 366 | } |
---|
| 367 | |
---|
| 368 | cShareMailbox.prototype.get_available_users = function(context) |
---|
| 369 | { |
---|
| 370 | var handler_get_available_users = function(data) |
---|
| 371 | { |
---|
| 372 | select_available_users = document.getElementById('em_select_available_users'); |
---|
| 373 | |
---|
| 374 | //Limpa o select |
---|
| 375 | for(var i=0; i<select_available_users.options.length; i++) |
---|
| 376 | { |
---|
| 377 | select_available_users.options[i] = null; |
---|
| 378 | i--; |
---|
| 379 | } |
---|
| 380 | |
---|
| 381 | if ((data) && (data.length > 0)) |
---|
| 382 | { |
---|
| 383 | // Necessario, pois o IE6 tem um bug que retira o primeiro options se o innerHTML estiver vazio. |
---|
| 384 | select_available_users.innerHTML = '#' + data; |
---|
| 385 | select_available_users.outerHTML = select_available_users.outerHTML; |
---|
| 386 | |
---|
| 387 | select_available_users.disabled = false; |
---|
| 388 | select_available_users_clone = document.getElementById('em_select_available_users').cloneNode(true); |
---|
| 389 | document.getElementById('em_input_searchUser').value = ''; |
---|
| 390 | } |
---|
| 391 | } |
---|
| 392 | cExecute ("$this.ldap_functions.get_available_users2&context="+context, handler_get_available_users); |
---|
| 393 | } |
---|
| 394 | |
---|
| 395 | cShareMailbox.prototype.getaclfromuser = function(user) |
---|
| 396 | { |
---|
| 397 | |
---|
| 398 | Element('em_input_readAcl').checked = false; |
---|
| 399 | Element('em_input_deleteAcl').checked = false; |
---|
| 400 | Element('em_input_writeAcl').checked = false; |
---|
| 401 | Element('em_input_sendAcl').checked = false; |
---|
| 402 | Element('em_input_saveAcl').checked = false; |
---|
| 403 | Element('em_input_saveAcl').disabled = true; |
---|
[3356] | 404 | Element('em_input_folderAcl').checked = false; |
---|
[5589] | 405 | Element('em_input_readCalendar').checked = false; |
---|
| 406 | Element('em_input_writeCalendar').checked = false; |
---|
| 407 | Element('em_input_editCalendar').checked = false; |
---|
| 408 | Element('em_input_deleteCalendar').checked = false; |
---|
| 409 | Element('em_input_restrictCalendar').checked = false; |
---|
| 410 | |
---|
| 411 | Element('em_input_editCalendar').disabled = true; |
---|
| 412 | Element('em_input_deleteCalendar').disabled = true; |
---|
| 413 | Element('em_input_restrictCalendar').disabled = true; |
---|
[1913] | 414 | |
---|
[5589] | 415 | if(this.ownersCalendarAcl[user]) |
---|
| 416 | { |
---|
| 417 | if (this.ownersCalendarAcl[user].indexOf('1-',0) >= 0) |
---|
| 418 | { |
---|
| 419 | Element('em_input_readCalendar').checked = true; |
---|
| 420 | |
---|
| 421 | Element('em_input_editCalendar').disabled = false; |
---|
| 422 | Element('em_input_deleteCalendar').disabled = false; |
---|
| 423 | Element('em_input_restrictCalendar').disabled = false; |
---|
| 424 | } |
---|
| 425 | if (this.ownersCalendarAcl[user].indexOf('2-',0) >= 0) |
---|
| 426 | { |
---|
| 427 | Element('em_input_writeCalendar').checked = true; |
---|
| 428 | } |
---|
| 429 | if (this.ownersCalendarAcl[user].indexOf('4-',0) >= 0) |
---|
| 430 | { |
---|
| 431 | Element('em_input_editCalendar').checked = true; |
---|
| 432 | } |
---|
| 433 | if (this.ownersCalendarAcl[user].indexOf('8-',0) >= 0) |
---|
| 434 | { |
---|
| 435 | Element('em_input_deleteCalendar').checked = true; |
---|
| 436 | } |
---|
| 437 | if (this.ownersCalendarAcl[user].indexOf('16-',0) >= 0) |
---|
| 438 | { |
---|
| 439 | Element('em_input_restrictCalendar').checked = true; |
---|
| 440 | } |
---|
| 441 | } |
---|
| 442 | |
---|
| 443 | if(this.ownersAcl[user]) |
---|
| 444 | { |
---|
| 445 | if ( this.ownersAcl[user].indexOf('lrs',0) >= 0) |
---|
[1913] | 446 | { |
---|
| 447 | Element('em_input_sendAcl').disabled = false; |
---|
| 448 | Element('em_input_readAcl').checked = true; |
---|
| 449 | } |
---|
| 450 | else |
---|
| 451 | Element('em_input_sendAcl').disabled = true; |
---|
| 452 | |
---|
[5589] | 453 | if ( this.ownersAcl[user].indexOf('d',0) >= 0) |
---|
[1913] | 454 | { |
---|
| 455 | Element('em_input_deleteAcl').checked = true; |
---|
| 456 | } |
---|
[5589] | 457 | if ( this.ownersAcl[user].indexOf('wi',0) >= 0) |
---|
[1913] | 458 | { |
---|
| 459 | Element('em_input_writeAcl').checked = true; |
---|
| 460 | } |
---|
[5589] | 461 | if (this.ownersAcl[user].indexOf('a',0) >= 0) |
---|
[1913] | 462 | { |
---|
| 463 | Element('em_input_sendAcl').disabled = false; |
---|
| 464 | Element('em_input_sendAcl').checked = true; |
---|
| 465 | } |
---|
[5589] | 466 | if ( this.ownersAcl[user].indexOf('p',0) >= 0) |
---|
[1913] | 467 | { |
---|
| 468 | Element('em_input_saveAcl').disabled = false; |
---|
| 469 | Element('em_input_saveAcl').checked = true; |
---|
| 470 | } |
---|
[5589] | 471 | if ( this.ownersAcl[user].indexOf('c',0) >= 0) |
---|
[3356] | 472 | { |
---|
| 473 | Element('em_input_folderAcl').checked = true; |
---|
| 474 | } |
---|
[5589] | 475 | if( Element('em_input_writeAcl').checked && Element('em_input_sendAcl').checked ){ |
---|
[1913] | 476 | Element('em_input_saveAcl').disabled = false; |
---|
| 477 | } else Element('em_input_saveAcl').disabled = true; |
---|
| 478 | } |
---|
[5589] | 479 | } |
---|
[1913] | 480 | |
---|
| 481 | cShareMailbox.prototype.setaclfromuser = function() |
---|
| 482 | { |
---|
| 483 | var acl = ''; |
---|
| 484 | var select = Element('ea_select_owners'); |
---|
| 485 | |
---|
| 486 | if(select.selectedIndex == "-1"){ |
---|
| 487 | alert("Selecione antes um usuario!"); |
---|
| 488 | return false; |
---|
| 489 | } |
---|
[5589] | 490 | |
---|
| 491 | for(var k = 0; k < select.options.length; k ++ ) |
---|
| 492 | { |
---|
| 493 | if(select.options[k].selected !== true ) continue; |
---|
| 494 | |
---|
| 495 | |
---|
| 496 | acl = ''; |
---|
| 497 | var user = select.options[k].value; |
---|
[1913] | 498 | |
---|
| 499 | if (Element('em_input_readAcl').checked) { |
---|
| 500 | Element('em_input_sendAcl').disabled = false; |
---|
| 501 | acl = 'lrs'; |
---|
| 502 | } |
---|
| 503 | else{ |
---|
| 504 | Element('em_input_sendAcl').disabled = true; |
---|
| 505 | Element('em_input_sendAcl').checked = false; |
---|
| 506 | } |
---|
| 507 | |
---|
| 508 | if (Element('em_input_deleteAcl').checked) |
---|
| 509 | acl += 'd'; |
---|
| 510 | |
---|
| 511 | if (Element('em_input_writeAcl').checked) |
---|
| 512 | acl += 'wi'; |
---|
| 513 | |
---|
| 514 | if (Element('em_input_sendAcl').checked) |
---|
| 515 | acl += 'a'; |
---|
[3356] | 516 | |
---|
| 517 | if (Element('em_input_folderAcl').checked) |
---|
| 518 | acl += 'c'; |
---|
[1913] | 519 | |
---|
| 520 | if (Element('em_input_sendAcl').checked && Element('em_input_writeAcl').checked){ |
---|
| 521 | Element('em_input_saveAcl').disabled = false; |
---|
| 522 | } else { |
---|
| 523 | Element('em_input_saveAcl').disabled = true; |
---|
| 524 | Element('em_input_saveAcl').checked = false; |
---|
| 525 | } |
---|
| 526 | if (Element('em_input_saveAcl').checked) |
---|
| 527 | acl += 'p'; |
---|
[5589] | 528 | |
---|
[1913] | 529 | this.ownersAcl[user] = acl; |
---|
| 530 | } |
---|
[5589] | 531 | } |
---|
| 532 | |
---|
| 533 | cShareMailbox.prototype.setCalendaraclfromuser = function() |
---|
| 534 | { |
---|
| 535 | var acl = ''; |
---|
| 536 | var select = Element('ea_select_owners'); |
---|
| 537 | |
---|
| 538 | if(select.selectedIndex == "-1"){ |
---|
| 539 | alert("Selecione antes um usuario!"); |
---|
| 540 | return false; |
---|
| 541 | } |
---|
| 542 | |
---|
| 543 | for(var k = 0; k < select.options.length; k ++ ) |
---|
| 544 | { |
---|
| 545 | if(select.options[k].selected !== true ) continue; |
---|
| 546 | |
---|
| 547 | acl = ''; |
---|
| 548 | var user = select.options[k].value; |
---|
| 549 | |
---|
| 550 | if (Element('em_input_readCalendar').checked) |
---|
| 551 | { |
---|
| 552 | |
---|
| 553 | acl += '1-'; |
---|
| 554 | |
---|
| 555 | Element('em_input_editCalendar').disabled = false; |
---|
| 556 | Element('em_input_deleteCalendar').disabled = false; |
---|
| 557 | Element('em_input_restrictCalendar').disabled = false; |
---|
| 558 | |
---|
| 559 | if (Element('em_input_editCalendar').checked) |
---|
| 560 | acl += '4-'; |
---|
| 561 | |
---|
| 562 | if (Element('em_input_deleteCalendar').checked) |
---|
| 563 | acl += '8-'; |
---|
| 564 | |
---|
| 565 | if (Element('em_input_restrictCalendar').checked) |
---|
| 566 | acl += '16-'; |
---|
| 567 | } |
---|
| 568 | else |
---|
| 569 | { |
---|
| 570 | Element('em_input_editCalendar').disabled = true; |
---|
| 571 | Element('em_input_deleteCalendar').disabled = true; |
---|
| 572 | Element('em_input_restrictCalendar').disabled = true; |
---|
| 573 | Element('em_input_editCalendar').checked = false; |
---|
| 574 | Element('em_input_deleteCalendar').checked = false; |
---|
| 575 | Element('em_input_restrictCalendar').checked = false; |
---|
| 576 | } |
---|
| 577 | |
---|
| 578 | if (Element('em_input_writeCalendar').checked) |
---|
| 579 | acl += '2-'; |
---|
| 580 | |
---|
| 581 | |
---|
| 582 | this.ownersCalendarAcl[user] = acl; |
---|
| 583 | } |
---|
| 584 | } |
---|
[1913] | 585 | |
---|
| 586 | cShareMailbox.prototype.add_user = function() |
---|
| 587 | { |
---|
| 588 | var select_available_users = document.getElementById('em_select_available_users'); |
---|
| 589 | var select_users = document.getElementById('ea_select_owners'); |
---|
| 590 | |
---|
| 591 | var count_available_users = select_available_users.length; |
---|
| 592 | var count_users = select_users.options.length; |
---|
| 593 | var new_options = ''; |
---|
| 594 | |
---|
| 595 | for (i = 0 ; i < count_available_users ; i++) |
---|
| 596 | { |
---|
| 597 | if (select_available_users.options[i].selected) |
---|
| 598 | { |
---|
| 599 | if(document.all) |
---|
| 600 | { |
---|
| 601 | if ( (select_users.innerHTML.indexOf('value='+select_available_users.options[i].value)) == '-1' ) |
---|
| 602 | { |
---|
| 603 | new_options += '<option value=' |
---|
| 604 | + select_available_users.options[i].value |
---|
| 605 | + '>' |
---|
| 606 | + select_available_users.options[i].text |
---|
| 607 | + '</option>'; |
---|
| 608 | } |
---|
| 609 | } |
---|
| 610 | else |
---|
| 611 | { |
---|
| 612 | if ( (select_users.innerHTML.indexOf('value="'+select_available_users.options[i].value+'"')) == '-1' ) |
---|
| 613 | { |
---|
| 614 | new_options += '<option value=' |
---|
| 615 | + select_available_users.options[i].value |
---|
| 616 | + '>' |
---|
| 617 | + select_available_users.options[i].text |
---|
| 618 | + '</option>'; |
---|
| 619 | } |
---|
| 620 | } |
---|
| 621 | } |
---|
| 622 | } |
---|
| 623 | |
---|
| 624 | if (new_options != '') |
---|
| 625 | { |
---|
| 626 | select_users.innerHTML = '#' + new_options + select_users.innerHTML; |
---|
| 627 | select_users.outerHTML = select_users.outerHTML; |
---|
| 628 | |
---|
| 629 | } |
---|
| 630 | } |
---|
| 631 | |
---|
| 632 | cShareMailbox.prototype.remove_user = function() |
---|
| 633 | { |
---|
| 634 | select_users = document.getElementById('ea_select_owners'); |
---|
| 635 | |
---|
| 636 | for(var i = 0;i < select_users.options.length; i++) |
---|
| 637 | if(select_users.options[i].selected) |
---|
[5589] | 638 | { |
---|
| 639 | |
---|
| 640 | var user = select_users.options[i].value; |
---|
| 641 | this.ownersCalendarAcl[user] = ''; |
---|
[1913] | 642 | select_users.options[i--] = null; |
---|
| 643 | |
---|
[5589] | 644 | } |
---|
| 645 | |
---|
[3356] | 646 | Element('em_input_readAcl').checked = false; |
---|
[1913] | 647 | Element('em_input_deleteAcl').checked = false; |
---|
| 648 | Element('em_input_writeAcl').checked = false; |
---|
| 649 | Element('em_input_sendAcl').checked = false; |
---|
[1915] | 650 | Element('em_input_saveAcl').checked = false; |
---|
[3356] | 651 | Element('em_input_folderAcl').checked = false; |
---|
[5589] | 652 | Element('em_input_readCalendar').checked = false; |
---|
| 653 | Element('em_input_writeCalendar').checked = false; |
---|
| 654 | Element('em_input_editCalendar').checked = false; |
---|
| 655 | Element('em_input_deleteCalendar').checked = false; |
---|
| 656 | Element('em_input_restrictCalendar').checked = false; |
---|
[1913] | 657 | } |
---|
| 658 | |
---|
| 659 | |
---|
| 660 | /* Build the Object */ |
---|
| 661 | var sharemailbox; |
---|
| 662 | sharemailbox = new cShareMailbox(); |
---|