fixes group selection

This commit is contained in:
fbsanchez 2020-09-30 17:47:44 +02:00
parent b7c2913071
commit 95f58776c8
8 changed files with 22 additions and 6 deletions

View File

@ -269,7 +269,7 @@ $table->data[2][1] = '<div class="w250px">'.html_print_select_groups(
'AR', 'AR',
$display_all_group, $display_all_group,
'id_group', 'id_group',
$idGroup, $id_group,
'', '',
'', '',
'', '',

View File

@ -106,7 +106,7 @@ $table->data['group'][1] .= html_print_select_groups(
'AR', 'AR',
true, true,
'id_group', 'id_group',
$idGroup, $idGroupReport,
'', '',
'', '',
'', '',

View File

@ -381,7 +381,7 @@ if (is_metaconsole()) {
$table->rowstyle['all_3'] = 'display: none;'; $table->rowstyle['all_3'] = 'display: none;';
$table->data['all_3'][0] = __('Groups'); $table->data['all_3'][0] = __('Groups');
$table->colspan['all_3'][1] = '3'; $table->colspan['all_3'][1] = '3';
$table->data['all_3'][1] = html_print_select_groups( $table->data['all_3'][1] = '<div class="w250px">'.html_print_select_groups(
$config['id_user'], $config['id_user'],
'AR', 'AR',
true, true,
@ -391,7 +391,7 @@ $table->data['all_3'][1] = html_print_select_groups(
'', '',
0, 0,
true true
); ).'</div>';
$table->rowstyle['all_one_item_per_agent'] = 'display: none'; $table->rowstyle['all_one_item_per_agent'] = 'display: none';

View File

@ -855,7 +855,7 @@ class CredentialStore extends Wizard
'id' => 'id_group', 'id' => 'id_group',
'input_class' => 'flex-row', 'input_class' => 'flex-row',
'type' => 'select_groups', 'type' => 'select_groups',
'returnAllGroup' => false, 'returnAllGroup' => true,
'selected' => $values['id_group'], 'selected' => $values['id_group'],
'return' => true, 'return' => true,
'class' => 'w50p', 'class' => 'w50p',

View File

@ -574,6 +574,8 @@ function html_print_select_groups(
search: params.term, search: params.term,
page: 'include/ajax/group', page: 'include/ajax/group',
method: 'getGroupsForSelect', method: 'getGroupsForSelect',
id_user: '<?php echo $id_user; ?>',
privilege: '<?php echo $privilege; ?>',
exclusions: '<?php echo $json_exclusions; ?>', exclusions: '<?php echo $json_exclusions; ?>',
inclusions: '<?php echo $json_inclusions; ?>', inclusions: '<?php echo $json_inclusions; ?>',
step: params.page || 1, step: params.page || 1,
@ -592,6 +594,9 @@ function html_print_select_groups(
if (empty($fields) === true) { if (empty($fields) === true) {
?> ?>
$('select[name="<?php echo $name; ?>"]').val(null).trigger("change"); $('select[name="<?php echo $name; ?>"]').val(null).trigger("change");
$('select[name="<?php echo $name; ?>"] option[value=""]').each(function() {
$(this).remove();
});
<?php <?php
} }
?> ?>

View File

@ -268,6 +268,11 @@ class SystemGroupStatusWidget extends Widget
} }
// Restrict access to group. // Restrict access to group.
$selected_groups = [];
if ($values['groupId']) {
$selected_groups = explode(',', $values['groupId'][0]);
}
$inputs[] = [ $inputs[] = [
'label' => __('Groups'), 'label' => __('Groups'),
'arguments' => [ 'arguments' => [
@ -275,7 +280,7 @@ class SystemGroupStatusWidget extends Widget
'name' => 'groupId[]', 'name' => 'groupId[]',
'returnAllGroup' => true, 'returnAllGroup' => true,
'privilege' => 'ER', 'privilege' => 'ER',
'selected' => explode(',', $values['groupId'][0]), 'selected' => $selected_groups,
'return' => true, 'return' => true,
'multiple' => true, 'multiple' => true,
], ],

View File

@ -275,6 +275,10 @@ class Group extends Entity
$exclusions = get_parameter('exclusions', '[]'); $exclusions = get_parameter('exclusions', '[]');
$inclusions = get_parameter('inclusions', '[]'); $inclusions = get_parameter('inclusions', '[]');
if (empty($id_user) === true) {
$id_user = false;
}
$groups = self::search( $groups = self::search(
[ [
'id_user' => $id_user, 'id_user' => $id_user,

View File

@ -354,7 +354,9 @@ if ($count_total >= 1) {
echo '</td></tr><tr><td colspan=3>'; echo '</td></tr><tr><td colspan=3>';
echo '<b>'.__('Groups:').'</b>'.'&nbsp;&nbsp;'; echo '<b>'.__('Groups:').'</b>'.'&nbsp;&nbsp;';
echo '<div class="w250px inline">';
html_print_select_groups($config['id_user'], 'IR', true, 'grupo', $grupo, 'javascript:this.form.submit();', '', '', false, false, false, 'w155'); html_print_select_groups($config['id_user'], 'IR', true, 'grupo', $grupo, 'javascript:this.form.submit();', '', '', false, false, false, 'w155');
echo '</div>';
// echo "&nbsp;&nbsp;&nbsp;&nbsp;"; // echo "&nbsp;&nbsp;&nbsp;&nbsp;";
echo '</td></tr><tr><td colspan=3>'; echo '</td></tr><tr><td colspan=3>';