$user, 'id_perfil' => $profile, 'id_grupo' => $group]); // If the profile doesnt exist, we create it if ($profile_data === false) { db_pandora_audit( 'User management', 'Added profile for user '.io_safe_input($user) ); $return = profile_create_user_profile($user, $profile, $group); if ($return !== false) { $n_added ++; } } } } } } if ($n_added > 0) { db_pandora_audit( 'Massive management', 'Add profiles', false, false, 'Profiles: '.json_encode($profiles_id).' Groups: '.json_encode($groups_id).'Users: '.json_encode($users_id) ); } else { db_pandora_audit( 'Massive management', 'Fail to try add profiles', false, false, 'Profiles: '.json_encode($profiles_id).' Groups: '.json_encode($groups_id).'Users: '.json_encode($users_id) ); } ui_print_result_message( $n_added > 0, __('Profiles added successfully').'('.$n_added.')', __('Profiles cannot be added') ); } if ($table !== null) { html_print_table($table); } unset($table); $table->width = '100%'; $table->class = 'databox filters'; $table->data = []; $table->head = []; $table->align = []; $table->style = []; $table->style[0] = 'font-weight: bold'; $table->style[1] = 'font-weight: bold'; $table->head[0] = __('Profile name'); $table->head[1] = __('Group'); $table->head[2] = __('Users'); $table->align[2] = 'left'; $table->size[0] = '34%'; $table->size[1] = '33%'; $table->size[2] = '33%'; $data = []; $data[0] = '
'; $display_all_group = true; if (check_acl($config['id_user'], 0, 'PM')) { $data[0] .= html_print_select( profile_get_profiles(), 'profiles_id[]', '', '', '', '', true, true, false, '', false, 'width: 100%' ); } else { $display_all_group = false; $data[0] .= html_print_select( profile_get_profiles( [ 'pandora_management' => '<> 1', 'db_management' => '<> 1', 'user_management' => '<> 1', ] ), 'profiles_id[]', '', '', '', '', true, true, false, '', false, 'width: 100%' ); } $data[1] = html_print_select_groups( $config['id_user'], 'UM', $display_all_group, 'groups_id[]', '', '', '', '', true, true, false, '', false, 'width: 100%' ); $data[2] = ''; $users_profiles = ''; $users_order = [ 'field' => 'id_user', 'order' => 'ASC', ]; $info_users = []; // Is admin or has group permissions all. if (check_acl($config['id_user'], 0, 'PM') || isset($group_um[0])) { $info_users = users_get_info($users_order, 'id_user'); } else { $info = []; $group_um = users_get_groups_UM($config['id_user']); foreach ($group_um as $group => $value) { $info = array_merge($info, users_get_users_by_group($group, $value)); } foreach ($info as $key => $value) { $info_users[$key] = $value['id_user']; } } $data[2] .= html_print_select( $info_users, 'users_id[]', '', '', '', '', true, true, true, '', false, 'width: 100%' ); array_push($table->data, $data); html_print_table($table); echo '
'; html_print_input_hidden('create_profiles', 1); html_print_submit_button(__('Create'), 'go', false, 'class="sub add"'); echo '
'; echo '
'; unset($table);