Skip to content

Commit 7af3a1f

Browse files
committed
fix initial visible_for in event creation
1 parent e36807f commit 7af3a1f

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

ephios/core/forms/events.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class Meta:
6666
def __init__(self, **kwargs):
6767
user = kwargs.pop("user")
6868
can_publish_for_groups = get_objects_for_user(user, "publish_event_for_group", klass=Group)
69-
if (event := kwargs.get("instance", None)) is not None:
69+
if (event := kwargs.get("instance", None)) is not None and event.id:
7070
self.eventtype = event.type
7171
responsible_users = get_users_with_perms(
7272
event, only_with_perms_in=["change_event"], with_group_users=False
@@ -88,12 +88,15 @@ def __init__(self, **kwargs):
8888
else:
8989
# new event
9090
self.eventtype = kwargs.pop("eventtype")
91+
visible_for = (
92+
self.eventtype.preferences.get("visible_for").filter(id__in=can_publish_for_groups)
93+
or can_publish_for_groups
94+
)
9195
kwargs["initial"] = {
9296
"responsible_users": self.eventtype.preferences.get("responsible_users")
9397
| get_user_model().objects.filter(pk=user.pk),
9498
"responsible_groups": self.eventtype.preferences.get("responsible_groups"),
95-
"visible_for": self.eventtype.preferences.get("visible_for")
96-
or get_objects_for_user(user, "publish_event_for_group", klass=Group),
99+
"visible_for": visible_for,
97100
}
98101
self.locked_visible_for_groups = set()
99102

0 commit comments

Comments
 (0)