Changeset 1983 for trunk/expressoAdmin1_2
- Timestamp:
- 02/05/10 09:58:26 (14 years ago)
- Location:
- trunk/expressoAdmin1_2
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoAdmin1_2/inc/class.imap_functions.inc.php
r1913 r1983 345 345 $owners_acl_old = $this->getaclfrombox($params); 346 346 //new settings 347 $owners_acl_new = unserialize($params['owners_acl']); 347 //necessario devido a um bug do serialize do javascript do connector zera uma string 348 //serializada "N;", diferente da serializada do php "a:0:{}" 349 350 if( $params['owners_acl'] != "N;" ){ 351 $owners_acl_new = unserialize($params['owners_acl']); 352 } else { 353 $owners_acl_new = Array(); 354 } 348 355 349 356 $owners_to_remove = array_diff_assoc($owners_acl_old,$owners_acl_new); 350 357 $owners_to_add = array_diff_assoc($owners_acl_new,$owners_acl_old); 351 358 352 359 //Find modified users 353 360 $tmp_update = array_diff_assoc($owners_acl_old,$owners_to_remove); … … 363 370 if( (count($owners_to_remove) > 0 || count($owners_to_add) > 0 || count($owners_to_update) > 0) && !$this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'edit_shared_accounts_acl') ){ 364 371 $result['status'] = false; 365 $result['msg'] = $this->functions->lang('You do not have access to edit an shared account inbox acl');366 return $result;367 } 368 372 $result['msg'] = $this->functions->lang('You do not have access to edit an shared account inbox acl'); 373 return $result; 374 } 375 file_put_contents("/tmp/saida", "old ".print_r($owners_acl_old, true)."remove ".print_r($owners_to_remove, true)."add ".print_r($owners_to_add, true)."update ".print_r($owners_to_update, true)); 369 376 if( is_array($owners_acl_new)){ 370 377 foreach($owners_to_remove as $user => $acl){ 371 378 $params['user'] = $user; 372 $params['acl'] = " none";373 $user = $params['user']; 374 $result = $this->setaclfrombox($user," none",$params['uid']);379 $params['acl'] = ""; 380 $user = $params['user']; 381 $result = $this->setaclfrombox($user,"",$params['uid']); 375 382 } 376 383 //add new users -
trunk/expressoAdmin1_2/inc/class.shared_accounts.inc.php
r1913 r1983 108 108 $return['display_empty_inbox'] = $this->functions->check_acl($_SESSION['phpgw_session']['session_lid'],'empty_shared_accounts_inbox') ? 'block' : 'none'; 109 109 $return['allow_edit_shared_account_acl'] = $this->functions->check_acl($_SESSION['phpgw_session']['session_lid'],'edit_shared_accounts_acl'); 110 $return['mailquota_used'] = $quota['mailquota_used']; 111 //print_r( $owners_acl); 110 $return['mailquota_used'] = $quota['mailquota_used']; 112 111 $i = 0; 113 foreach($owners_acl as $key => $value) 114 { 115 $cn = $this->ldap_functions->uid2cn($key); 116 $return['owners_options'] .= '<option value='. $key .'>' . $cn . '</option>'; 117 $return['owners'][$i] .= $key; 118 $return['owners_acl'][$i] .= $value; 119 $i++; 120 } 112 if( is_array($owners_acl) ){ 113 foreach($owners_acl as $key => $value) 114 { 115 $cn = $this->ldap_functions->uid2cn($key); 116 $return['owners_options'] .= '<option value='. $key .'>' . $cn . '</option>'; 117 $return['owners'][$i] .= $key; 118 $return['owners_acl'][$i] .= $value; 119 $i++; 120 } 121 } else { 122 $return['owners_options'] = false; 123 $return['owners'] = false; 124 $return['owners_acl'] = false; 125 } 121 126 return $return; 122 127 } -
trunk/expressoAdmin1_2/js/jscode/shared_accounts.js
r1915 r1983 190 190 { 191 191 select_owners.innerHTML = " " + new_options + select_owners.innerHTML; 192 select_owners.outerHTML = select_owners.outerHTML; 193 select_owners.options[0].selected = true; 194 Element('em_input_readAcl').checked = false; 192 select_owners.outerHTML = select_owners.outerHTML; 193 Element('em_input_readAcl').checked = false; 195 194 Element('em_input_deleteAcl').checked = false; 196 195 Element('em_input_writeAcl').checked = false; 197 196 Element('em_input_sendAcl').checked = false; 198 Element('em_input_sendAcl').disabled = true; 197 Element('em_input_sendAcl').disabled = true; 198 select_owners = Element('ea_select_owners'); 199 select_owners.options[0].selected = true; 199 200 } 200 201 } … … 209 210 select_owners.options[i--] = null; 210 211 } 211 if(select_owners.options.length > 1 ){ 212 //Nova chamada a "Element" é Necessária devido a um bug do ie com select 213 select_owners = Element('ea_select_owners'); 214 if(select_owners.options.length > 0 ){ 212 215 select_owners.options[0].selected = true; 213 216 var user = select_owners.options[0].value; … … 275 278 Element('cn').value = data.cn; 276 279 Element('mail').value = data.mail; 277 Element('mailquota').value = data.mailquota; 278 Element('mailquota_used').value = data.mailquota_used; 279 Element('quota_used_field').style.display = 'inline'; 280 Element('description').value = data.description; 281 Element('ea_select_owners').innerHTML = data.owners_options; 282 Element('display_empty_inbox').style.display = data.display_empty_inbox; 283 if( data.allow_edit_shared_account_acl == "0"){ 284 Element('bt_add_user').disabled = true; 285 Element('bt_remove_user').disabled = true; 286 Element('em_input_readAcl').disabled = true; 287 Element('em_input_deleteAcl').disabled = true; 288 Element('em_input_writeAcl').disabled = true; 289 Element('em_input_sendAcl').disabled = true; 290 Element('em_input_saveAcl').disabled = true; 291 } 280 Element('mailquota').value = data.mailquota; 281 Element('mailquota_used').value = data.mailquota_used; 282 Element('quota_used_field').style.display = 'inline'; 283 Element('desc').value = data.description; 284 //Necessario, pois o IE6 tem um bug que não exibe as novas opções se o innerHTML estava vazio 285 Element('ea_select_owners').innerHTML = ' ' + data.owners_options; 286 Element('ea_select_owners').outerHTML = Element('ea_select_owners').outerHTML; 287 288 Element('display_empty_inbox').style.display = data.display_empty_inbox; 289 if( data.allow_edit_shared_account_acl == "0"){ 290 Element('bt_add_user').disabled = true; 291 Element('bt_remove_user').disabled = true; 292 Element('em_input_readAcl').disabled = true; 293 Element('em_input_deleteAcl').disabled = true; 294 Element('em_input_writeAcl').disabled = true; 295 Element('em_input_sendAcl').disabled = true; 296 Element('em_input_saveAcl').disabled = true; 297 } 292 298 293 299 sinc_combos_org(data.user_context); 294 300 sharemailbox.ownersAcl = new Array(); 295 for (i=0; i<data.owners.length; i++){ 296 sharemailbox.ownersAcl[ data.owners[i] ] = data.owners_acl[i]; 297 } 301 if( data.owners != "undefined" && data.owners_acl != "undefined" ){ 302 for (i=0; i<data.owners.length; i++){ 303 sharemailbox.ownersAcl[ data.owners[i] ] = data.owners_acl[i]; 304 } 305 } 298 306 } 299 307 else -
trunk/expressoAdmin1_2/templates/default/shared_accounts_modal.tpl
r1916 r1983 6 6 <input type="hidden" id="{modal_id}_save_action" value="save_shared_accounts()"> 7 7 <input type="hidden" id="{modal_id}_onload_action" value="set_onload({manager_context})"> 8 <form enctype="multipart/form-data" name="shared_accounts_form " method="post">8 <form enctype="multipart/form-data" name="shared_accounts_form_template" method="post"> 9 9 <input type="hidden" id="anchor" name="anchor"> 10 10 <input type="hidden" id="owners_acls" name="owners_acl" value=""> … … 25 25 26 26 {lang_description}: 27 <input id="desc ription" name="description" size="42" autocomplete="off"><br>27 <input id="desc" name="desc" size="42" autocomplete="off"><br> 28 28 {lang_Email_quota_in_MB}: 29 29 <input type="text" id="mailquota" name="mailquota" autocomplete="off" value="{mailquota}" {changequote_disabled} {disabled} size=16><br> 30 30 <spam id='quota_used_field' name='quota_used_field' style="display:{display_quota_used}">{lang_quota_used_in_mb}: 31 31 <input type="text" name="mailquota_used" id="mailquota_used" value="{mailquota_used}" disabled size=10><br></spam> 32 < spam id='display_empty_inbox' name='display_empty_inbox' style="display:none"><input type='button' {disabled} {disabled_empty_inbox} value='{lang_empty_inbox}' onclick="javascript:empty_inbox(anchor.value);"><br></spam>32 <div id='display_empty_inbox' name='display_empty_inbox' style="display:none"><input type='button' {disabled} {disabled_empty_inbox} value='{lang_empty_inbox}' onclick="javascript:empty_inbox(anchor.value);"><br></div> 33 33 34 34 {lang_is_account_active}: <input type="checkbox" id="accountStatus" name="accountStatus" checked><br>
Note: See TracChangeset
for help on using the changeset viewer.