parent
1a799dc30a
commit
6e5a4bcb39
|
@ -18,7 +18,6 @@
|
|||
$: allpermissions = [];
|
||||
$: allgroups = [];
|
||||
$: allgroups_ids = [];
|
||||
$: usergroups_array_objects = [];
|
||||
$: usergroups_array = [];
|
||||
let usergroups_array_original = [];
|
||||
user_promise.then((data) => {
|
||||
|
@ -26,7 +25,7 @@
|
|||
original_data = Object.assign(original_data, data);
|
||||
editable_userdata = data;
|
||||
data.groups.forEach((g) => {
|
||||
usergroups_array=usergroups_array.concat([g.id]);
|
||||
usergroups_array = usergroups_array.concat([g.id]);
|
||||
});
|
||||
usergroups_array_original = usergroups_array;
|
||||
allgroups.forEach((g) => {
|
||||
|
@ -39,26 +38,27 @@
|
|||
const permissions_promise = PermissionService.permissionControllerGetAll();
|
||||
permissions_promise.then((data) => {
|
||||
data.forEach((p) => {
|
||||
allpermissions=allpermissions.concat([p.target + ":" + p.action])
|
||||
allpermissions = allpermissions.concat([p.target + ":" + p.action]);
|
||||
});
|
||||
});
|
||||
// editable_userdata.permissions=[];
|
||||
const user_permissions = UserService.userControllerGetPermissions(params.userid).then((val) => {
|
||||
// console.log(val);
|
||||
editable_userdata.permissions=[]
|
||||
val.directlyGranted.forEach(p => {
|
||||
editable_userdata.permissions=editable_userdata.permissions.concat([p.target + ":" + p.action])
|
||||
UserService.userControllerGetPermissions(params.userid).then((val) => {
|
||||
editable_userdata.permissions = [];
|
||||
val.directlyGranted.forEach((p) => {
|
||||
editable_userdata.permissions = editable_userdata.permissions.concat([
|
||||
p.target + ":" + p.action,
|
||||
]);
|
||||
});
|
||||
val.inherited.forEach((p) => {
|
||||
editable_userdata.permissions = editable_userdata.permissions.concat([
|
||||
p.target + ":" + p.action,
|
||||
]);
|
||||
});
|
||||
});
|
||||
val.inherited.forEach(p => {
|
||||
editable_userdata.permissions=editable_userdata.permissions.concat([p.target + ":" + p.action])
|
||||
});
|
||||
// editable_userdata.permissions.push()
|
||||
// console.log(val.directlyGranted);
|
||||
// console.log(val.inherited);
|
||||
})
|
||||
$: changes_performed = !lodashIsEqual(original_data, editable_userdata);
|
||||
$: groups_changed = JSON.stringify(usergroups_array)===JSON.stringify(usergroups_array_original);
|
||||
$: save_enabled = changes_performed||!groups_changed;
|
||||
$: groups_changed =
|
||||
JSON.stringify(usergroups_array) ===
|
||||
JSON.stringify(usergroups_array_original);
|
||||
$: save_enabled = changes_performed || !groups_changed;
|
||||
function submit() {
|
||||
if (
|
||||
!lodashIsEqual(original_data.permissions, editable_userdata.permissions)
|
||||
|
@ -66,7 +66,7 @@
|
|||
// TODO: add+delete permissions
|
||||
}
|
||||
if (data_loaded === true && save_enabled) {
|
||||
editable_userdata.groups=usergroups_array;
|
||||
editable_userdata.groups = usergroups_array;
|
||||
Toastify({
|
||||
text: $_("updating-user"),
|
||||
duration: 2500,
|
||||
|
@ -83,8 +83,7 @@
|
|||
backgroundColor: "linear-gradient(to right, #00b09b, #96c93d)",
|
||||
}).showToast();
|
||||
})
|
||||
.catch((err) => {
|
||||
});
|
||||
.catch((err) => {});
|
||||
} else {
|
||||
}
|
||||
}
|
||||
|
@ -93,8 +92,7 @@
|
|||
.then((resp) => {
|
||||
location.replace("./");
|
||||
})
|
||||
.catch((err) => {
|
||||
});
|
||||
.catch((err) => {});
|
||||
}
|
||||
</script>
|
||||
|
||||
|
@ -180,8 +178,7 @@
|
|||
</span>
|
||||
</div>
|
||||
<div class="mt-3 text-sm w-full">
|
||||
<p
|
||||
class="ml-1 font-medium text-gray-700">Profile Picture</p>
|
||||
<p class="ml-1 font-medium text-gray-700">Profile Picture</p>
|
||||
<img
|
||||
alt={$_('profile-picture')}
|
||||
class="h-20 w-20 rounded-full overflow-hidden bg-gray-100"
|
||||
|
@ -195,17 +192,20 @@
|
|||
<label
|
||||
for="enabled"
|
||||
class="ml-1 font-medium text-gray-700">Active?</label>
|
||||
<br>
|
||||
<p class="text-gray-500"> <input
|
||||
id="enabled"
|
||||
on:change={() => {
|
||||
editable_userdata.enabled = !editable_userdata.enabled;
|
||||
// TODO: this reactive set does not work?
|
||||
}}
|
||||
name="enabled"
|
||||
type="checkbox"
|
||||
checked={editable_userdata.enabled}
|
||||
class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded" /> set the user active/ inactive</p>
|
||||
<br />
|
||||
<p class="text-gray-500">
|
||||
<input
|
||||
id="enabled"
|
||||
on:change={() => {
|
||||
editable_userdata.enabled = !editable_userdata.enabled;
|
||||
// TODO: this reactive set does not work?
|
||||
}}
|
||||
name="enabled"
|
||||
type="checkbox"
|
||||
checked={editable_userdata.enabled}
|
||||
class="focus:ring-indigo-500 h-4 w-4 text-indigo-600 border-gray-300 rounded" />
|
||||
set the user active/ inactive
|
||||
</p>
|
||||
</div>
|
||||
<div class="text-sm w-full">
|
||||
<label
|
||||
|
@ -323,7 +323,7 @@
|
|||
{#if editable_userdata.permissions.includes(p)}
|
||||
<div
|
||||
class="block w-full mt-1 text-sm dark:border-gray-600 dark:bg-gray-700 bg-gray-200 p-2 focus:border-purple-400 focus:outline-none focus:shadow-outline-purple dark:text-gray-300 dark:focus:shadow-outline-gray form-input text-left">
|
||||
<button
|
||||
<button
|
||||
on:click={() => {
|
||||
editable_userdata.permissions = editable_userdata.permissions.filter((obj) => obj !== p);
|
||||
}}
|
||||
|
|
Loading…
Reference in New Issue