Update user_edit.php
This commit is contained in:
parent
0a46263b94
commit
1188194d0b
|
|
@ -375,18 +375,24 @@
|
|||
$group_data = explode('|', $group_uuid_name);
|
||||
$group_uuid = $group_data[0];
|
||||
$group_name = $group_data[1];
|
||||
//only a superadmin can add other superadmins or admins, admins can only add other admins
|
||||
switch ($group_name) {
|
||||
case "superadmin": if (!if_group("superadmin")) { break; }
|
||||
case "admin": if (!if_group("superadmin") && !if_group("admin")) { break; }
|
||||
default: //add group user to array for insert
|
||||
$array['user_groups'][$n]['user_group_uuid'] = uuid();
|
||||
$array['user_groups'][$n]['domain_uuid'] = $domain_uuid;
|
||||
$array['user_groups'][$n]['group_name'] = $group_name;
|
||||
$array['user_groups'][$n]['group_uuid'] = $group_uuid;
|
||||
$array['user_groups'][$n]['user_uuid'] = $user_uuid;
|
||||
$n++;
|
||||
|
||||
//compare the group level to only add groups at the same level or lower than the user
|
||||
$sql = "select * from v_groups ";
|
||||
$sql .= "where (domain_uuid = :domain_uuid or domain_uuid is null) ";
|
||||
$sql .= "and group_uuid = :group_uuid ";
|
||||
$parameters['domain_uuid'] = $_SESSION['domain_uuid'];
|
||||
$parameters['group_uuid'] = $group_uuid;
|
||||
$database = new database;
|
||||
$row = $database->select($sql, $parameters, 'row');
|
||||
if ($row['group_level'] <= $_SESSION['user']['group_level']) {
|
||||
$array['user_groups'][$n]['user_group_uuid'] = uuid();
|
||||
$array['user_groups'][$n]['domain_uuid'] = $domain_uuid;
|
||||
$array['user_groups'][$n]['group_name'] = $group_name;
|
||||
$array['user_groups'][$n]['group_uuid'] = $group_uuid;
|
||||
$array['user_groups'][$n]['user_uuid'] = $user_uuid;
|
||||
$n++;
|
||||
}
|
||||
unset($parameters);
|
||||
}
|
||||
|
||||
//update domain, if changed
|
||||
|
|
@ -943,11 +949,11 @@
|
|||
echo "<select name='group_uuid_name' class='formfld' style='width: auto; margin-right: 3px;' ".($action == 'add' ? "required='required'" : null).">\n";
|
||||
echo " <option value=''></option>\n";
|
||||
foreach($groups as $field) {
|
||||
if ($field['group_name'] == "superadmin" && !if_group("superadmin")) { continue; } //only show the superadmin group to other superadmins
|
||||
if ($field['group_name'] == "admin" && (!if_group("superadmin") && !if_group("admin") )) { continue; } //only show the admin group to other admins
|
||||
if ( !isset($assigned_groups) || (isset($assigned_groups) && !in_array($field["group_uuid"], $assigned_groups)) ) {
|
||||
if ($group_uuid_name == $field['group_uuid']."|".$field['group_name']) { $selected = "selected='selected'"; } else { $selected = ''; }
|
||||
echo " <option value='".$field['group_uuid']."|".$field['group_name']."' $selected>".$field['group_name'].(($field['domain_uuid'] != '') ? "@".$_SESSION['domains'][$field['domain_uuid']]['domain_name'] : null)."</option>\n";
|
||||
if ($field['group_level'] <= $_SESSION['user']['group_level']) {
|
||||
if (!isset($assigned_groups) || (isset($assigned_groups) && !in_array($field["group_uuid"], $assigned_groups))) {
|
||||
if ($group_uuid_name == $field['group_uuid']."|".$field['group_name']) { $selected = "selected='selected'"; } else { $selected = ''; }
|
||||
echo " <option value='".$field['group_uuid']."|".$field['group_name']."' $selected>".$field['group_name'].(($field['domain_uuid'] != '') ? "@".$_SESSION['domains'][$field['domain_uuid']]['domain_name'] : null)."</option>\n";
|
||||
}
|
||||
}
|
||||
}
|
||||
echo "</select>";
|
||||
|
|
|
|||
Loading…
Reference in New Issue