|
@@ -29,17 +29,22 @@ const featured = ref(playlist.value.featured);
|
|
const isOwner = () =>
|
|
const isOwner = () =>
|
|
loggedIn.value && userId.value === playlist.value.createdBy;
|
|
loggedIn.value && userId.value === playlist.value.createdBy;
|
|
|
|
|
|
-const isEditable = permission =>
|
|
+const isEditable = permission => {
|
|
- ((playlist.value.type === "user" ||
|
|
+ if (permission === "playlists.update.featured")
|
|
- playlist.value.type === "user-liked" ||
|
|
+ return playlist.value.type !== "station" && hasPermission(permission);
|
|
- playlist.value.type === "user-disliked" ||
|
|
+ if (
|
|
- playlist.value.type === "admin") &&
|
|
+ ["user", "user-liked", "user-disliked", "admin"].includes(
|
|
- (isOwner() || hasPermission(permission))) ||
|
|
+ playlist.value.type
|
|
- (playlist.value.type === "genre" &&
|
|
+ )
|
|
- ["playlists.update.privacy", "playlists.update.featured"].includes(
|
|
+ )
|
|
- permission
|
|
+ return isOwner() || hasPermission(permission);
|
|
- ) &&
|
|
+ if (
|
|
- hasPermission(permission));
|
|
+ playlist.value.type === "genre" &&
|
|
|
|
+ permission === "playlists.update.privacy"
|
|
|
|
+ )
|
|
|
|
+ return hasPermission(permission);
|
|
|
|
+ return false;
|
|
|
|
+};
|
|
|
|
|
|
const {
|
|
const {
|
|
inputs: displayNameInputs,
|
|
inputs: displayNameInputs,
|