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',
$display_all_group,
'id_group',
$idGroup,
$id_group,
'',
'',
'',

View File

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

View File

@ -381,7 +381,7 @@ if (is_metaconsole()) {
$table->rowstyle['all_3'] = 'display: none;';
$table->data['all_3'][0] = __('Groups');
$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'],
'AR',
true,
@ -391,7 +391,7 @@ $table->data['all_3'][1] = html_print_select_groups(
'',
0,
true
);
).'</div>';
$table->rowstyle['all_one_item_per_agent'] = 'display: none';

View File

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

View File

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

View File

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

View File

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

View File

@ -354,7 +354,9 @@ if ($count_total >= 1) {
echo '</td></tr><tr><td colspan=3>';
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');
echo '</div>';
// echo "&nbsp;&nbsp;&nbsp;&nbsp;";
echo '</td></tr><tr><td colspan=3>';