Changeset 107
- Timestamp:
- 11/12/07 07:15:17 (16 years ago)
- Location:
- trunk/expressoAdmin1_2/inc
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/expressoAdmin1_2/inc/class.functions.inc.php
r89 r107 46 46 $array_acl = $this->make_array_acl($acl['acl']); 47 47 48 switch($access) 49 { 50 case list_users: 51 if ($array_acl[acl_add_users] || $array_acl[acl_edit_users] || $array_acl[acl_delete_users] || $array_acl[acl_change_users_password] || $array_acl[acl_change_users_quote] || $array_acl[acl_edit_sambausers_attributes] || $array_acl[acl_view_users] || $array_acl[acl_manipulate_corporative_information]) 52 return true; 53 break; 54 case list_groups: 55 if ($array_acl[acl_add_groups] || $array_acl[acl_edit_groups] || $array_acl[acl_delete_groups]) 56 return true; 57 break; 58 case list_maillists: 59 if ($array_acl[acl_add_maillists] || $array_acl[acl_edit_maillists] || $array_acl[acl_delete_maillists]) 60 return true; 61 break; 62 case list_sectors: 63 if ($array_acl[acl_create_sectors] || $array_acl[acl_edit_sectors] || $array_acl[acl_delete_sectors]) 64 return true; 65 break; 66 case list_computers: 67 if ($array_acl[acl_create_computers] || $array_acl[acl_edit_computers] || $array_acl[acl_delete_computers]) 68 return true; 69 break; 70 71 case display_groups: 72 if ( $array_acl[acl_edit_users] || $array_acl[acl_view_users] || ($array_acl[acl_edit_sambausers_attributes] && ($this->current_config['expressoAdmin_samba_support'] == 'true')) ) 73 return true; 74 break; 75 case display_emailconfig: 76 if ($array_acl[acl_edit_users] || $array_acl[acl_view_users]) 77 return true; 78 break; 79 case display_applications: 80 if ($array_acl[acl_edit_users] || $array_acl[acl_view_users]) 81 return true; 82 break; 83 case display_emaillists: 84 if ($array_acl[acl_edit_users] || $array_acl[acl_view_users]) 85 return true; 86 break; 87 88 default: 89 return $array_acl["acl_$access"]; 90 } 91 return false; 92 } 93 94 /* OLD FUNCTION 95 function check_acl($account_lid, $access) 96 { 97 $acl = $this->read_acl($account_lid); 98 $array_acl = $this->make_array_acl($acl['acl']); 99 48 100 //What access ?? In the IF, verify if have access. 49 101 switch($access) … … 73 125 return true; 74 126 break; 127 case edit_users_picture: 128 if ($array_acl[acl_edit_users_picture]) 129 return true; 130 break; 75 131 case manipulate_corporative_information: 76 132 if ($array_acl[acl_manipulate_corporative_information]) … … 93 149 return true; 94 150 break; 95 case edit_sambausers_attributes: 151 case edit_sambausers_attributes: case list_maillists: 152 if ($array_acl[acl_add_maillists] || $array_acl[acl_edit_maillists] || $array_acl[acl_delete_maillists]) 153 return true; 154 break; 155 96 156 if ($array_acl[acl_edit_sambausers_attributes]) 97 157 return true; … … 202 262 203 263 default: 204 return false;264 return $array_acl["acl_$access"]; 205 265 } 206 266 return false; 207 267 } 268 */ 208 269 209 270 // Read acl from db … … 227 288 228 289 // Make a array read humam 229 // Last acl: 268435456, 536870912290 // Last acl: 536.870.912 230 291 function make_array_acl($acl) 231 292 { 293 $array_acl_tmp = array(); 294 $tmp = array( "acl_add_users", 295 "acl_edit_users", 296 "acl_delete_users", 297 "acl_EMPTY1", 298 "acl_add_groups", 299 "acl_edit_groups", 300 "acl_delete_groups", 301 "acl_change_users_password", 302 "acl_add_maillists", 303 "acl_edit_maillists", 304 "acl_delete_maillists", 305 "acl_EMPTY2", 306 "acl_create_sectors", 307 "acl_edit_sectors", 308 "acl_delete_sectors", 309 "acl_edit_sambausers_attributes", 310 "acl_view_global_sessions", 311 "acl_view_logs", 312 "acl_change_users_quote", 313 "acl_set_user_default_password", 314 "acl_create_computers", 315 "acl_edit_computers", 316 "acl_delete_computers", 317 "acl_rename_users", 318 "acl_edit_sambadomains", 319 "acl_view_users", 320 "acl_edit_email_groups", 321 "acl_empty_user_inbox", 322 "acl_manipulate_corporative_information", 323 "acl_edit_users_picture" 324 ); 325 326 foreach ($tmp as $index => $right) 327 { 328 $bin = ''; 329 for ($i=0; $i<$index; $i++) 330 { 331 $bin .= '0'; 332 } 333 $bin = '1' . $bin; 334 335 $array_acl[$right] = $acl & bindec($bin); 336 } 337 return $array_acl; 338 /* 232 339 $array_acl['acl_add_users'] = $acl & 1; 233 340 $array_acl['acl_edit_users'] = $acl & 2; 234 341 $array_acl['acl_delete_users'] = $acl & 4; 235 $array_acl['acl_rename_users'] = $acl & 8388608; 236 $array_acl['acl_view_users'] = $acl & 33554432; 237 $array_acl['acl_manipulate_corporative_information'] = $acl & 268435456; 342 //8 238 343 $array_acl['acl_add_groups'] = $acl & 16; 239 344 $array_acl['acl_edit_groups'] = $acl & 32; 240 345 $array_acl['acl_delete_groups'] = $acl & 64; 241 $array_acl['acl_edit_email_groups'] = $acl & 67108864;242 346 $array_acl['acl_change_users_password'] = $acl & 128; 243 $array_acl['acl_change_users_quote'] = $acl & 262144;244 $array_acl['acl_set_user_default_password'] = $acl & 524288;245 $array_acl['acl_empty_user_inbox'] = $acl & 134217728;246 $array_acl['acl_edit_sambausers_attributes'] = $acl & 32768;247 $array_acl['acl_edit_sambadomains'] = $acl & 16777216;248 347 $array_acl['acl_add_maillists'] = $acl & 256; 249 348 $array_acl['acl_edit_maillists'] = $acl & 512; 250 349 $array_acl['acl_delete_maillists'] = $acl & 1024; 350 //2048 251 351 $array_acl['acl_create_sectors'] = $acl & 4096; 252 352 $array_acl['acl_edit_sectors'] = $acl & 8192; 253 353 $array_acl['acl_delete_sectors'] = $acl & 16384; 354 $array_acl['acl_edit_sambausers_attributes'] = $acl & 32768; 254 355 $array_acl['acl_view_global_sessions'] = $acl & 65536; 255 356 $array_acl['acl_view_logs'] = $acl & 131072; 357 $array_acl['acl_change_users_quote'] = $acl & 262144; 358 $array_acl['acl_set_user_default_password'] = $acl & 524288; 256 359 $array_acl['acl_create_computers'] = $acl & 1048576; 257 360 $array_acl['acl_edit_computers'] = $acl & 2097152; 258 361 $array_acl['acl_delete_computers'] = $acl & 4194304; 362 $array_acl['acl_rename_users'] = $acl & 8388608; 363 $array_acl['acl_edit_sambadomains'] = $acl & 16777216; 364 $array_acl['acl_view_users'] = $acl & 33554432; 365 $array_acl['acl_edit_email_groups'] = $acl & 67108864; 366 $array_acl['acl_empty_user_inbox'] = $acl & 134217728; 367 $array_acl['acl_manipulate_corporative_information'] = $acl & 268435456; 368 $array_acl['acl_edit_users_picture'] = $acl & 536870912; 259 369 return $array_acl; 370 */ 260 371 } 261 372 -
trunk/expressoAdmin1_2/inc/class.uiaccounts.inc.php
r81 r107 280 280 'phpgwaccountstatus_checked' => 'CHECKED', 281 281 'photo_bin' => $GLOBALS['phpgw_info']['server']['webserver_url'].'/expressoAdmin1_2/templates/default/images/photo_celepar.png', 282 'display_picture' => $this->functions->check_acl($manager_lid,'edit_users_picture') ? '' : 'none', 282 283 'disabled_delete_photo' => 'disabled', 283 284 'display_tr_default_password' => 'none', … … 625 626 'photo_bin' => $photo_bin, 626 627 'disabled_delete_photo' => $disabled_delete_photo, 628 'display_picture' => $this->functions->check_acl($manager_account_lid,'edit_users_picture') ? '' : 'none', 627 629 628 630 'display_tr_default_password' => $this->functions->check_acl($manager_account_lid,'set_user_default_password') ? '' : 'none', -
trunk/expressoAdmin1_2/inc/class.uimanagers.inc.php
r81 r107 149 149 150 150 // App, create list of available apps 151 $applications_list = $this->make_app_list(); 152 151 $applications_list = $this->make_app_list(''); 152 153 if ($_POST['context']) 154 { 155 $contexts = split("%", $_POST['context']); 156 foreach ($contexts as $manager_context) 157 $input_context_fields .= "<input type='text' size=60 value=$manager_context></input><br>"; 158 } 159 else 153 160 $input_context_fields = '<input type="text" size=60></input><br>'; 154 161 -
trunk/expressoAdmin1_2/inc/class.user.inc.php
r81 r107 191 191 192 192 // Chama funcao para salvar foto no OpenLDAP. 193 if ( $_FILES['photo']['name'] != '')193 if ( ($_FILES['photo']['name'] != '') && ($this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'edit_users_picture')) ) 194 194 { 195 195 $result = $this->ldap_functions->ldap_save_photo($dn, $_FILES['photo']['tmp_name']); … … 535 535 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 536 536 // PHOTO 537 if ( $new_values['delete_photo'])537 if ( ($new_values['delete_photo']) && ($this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'edit_users_picture')) ) 538 538 { 539 539 $this->ldap_functions->ldap_remove_photo($dn); 540 $this->db_functions->write_log("removido jpegphoto ao usuario",'',$dn,'','');541 } 542 if ($_FILES['photo']['name'] != '')540 $this->db_functions->write_log("removido jpegphoto do usuario",'',$dn,'',''); 541 } 542 elseif ( ($_FILES['photo']['name'] != '') && ($this->functions->check_acl($_SESSION['phpgw_session']['session_lid'], 'edit_users_picture')) ) 543 543 { 544 544 if ($new_values['photo_exist']) … … 643 643 } 644 644 } 645 646 echo '<pre>';647 print_r($add_mailalternateaddress);648 print_r($remove_mailalternateaddress);649 echo '---<br>';650 print_r($new_values['mailforwardingaddress']);651 print_r($add_mailforwardingaddress);652 print_r($remove_mailforwardingaddress);653 654 645 655 646 ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Note: See TracChangeset
for help on using the changeset viewer.