wip:hangle not public playlist audience
This commit is contained in:
parent
d6fd9ff6c4
commit
acadfa4eca
|
@ -2402,6 +2402,7 @@ class PlaylistSerializer(jsonld.JsonLdSerializer):
|
|||
"name": playlist.name,
|
||||
"attributedTo": playlist.actor.fid,
|
||||
"published": playlist.creation_date.isoformat(),
|
||||
"audience": playlist.privacy_level,
|
||||
"library": playlist.library.fid,
|
||||
}
|
||||
payload["audience"] = (
|
||||
|
@ -2432,14 +2433,16 @@ class PlaylistSerializer(jsonld.JsonLdSerializer):
|
|||
"actor": actor,
|
||||
"name": validated_data["name"],
|
||||
"creation_date": validated_data["published"],
|
||||
"privacy_level": validated_data["audience"],
|
||||
"library": library,
|
||||
}
|
||||
if not actor.is_local:
|
||||
ap_to_fw_data["privacy_level"] = (
|
||||
contexts.AS.Public
|
||||
if validated_data.get("privacy_level", "") == "everyone"
|
||||
else ""
|
||||
)
|
||||
# to do : why I did this oO
|
||||
# if not actor.is_local:
|
||||
# ap_to_fw_data["privacy_level"] = (
|
||||
# contexts.AS.Public
|
||||
# if validated_data.get("privacy_level", "") == "everyone"
|
||||
# else ""
|
||||
# )
|
||||
|
||||
playlist, created = playlists_models.Playlist.objects.update_or_create(
|
||||
defaults=ap_to_fw_data,
|
||||
|
@ -2453,6 +2456,17 @@ class PlaylistSerializer(jsonld.JsonLdSerializer):
|
|||
|
||||
return playlist
|
||||
|
||||
def validate(self, data):
|
||||
validated_data = super().validate(data)
|
||||
if validated_data["audience"] in [
|
||||
"https://www.w3.org/ns/activitystreams#Public",
|
||||
"everyone",
|
||||
]:
|
||||
validated_data["audience"] = "everyone"
|
||||
else:
|
||||
validated_data.pop("audience")
|
||||
return validated_data
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
return self.create(validated_data)
|
||||
|
||||
|
|
Loading…
Reference in New Issue