feat: Add event co-managers permissions and allow managers/admins to signup guests on skill-restricted shifts
This commit is contained in:
@@ -1,5 +1,9 @@
|
||||
from rest_framework import serializers
|
||||
from django.contrib.auth import get_user_model
|
||||
from .models import Skill, Event, TaskArea, Shift, ShiftSignup, EventTemplate
|
||||
from apps.users.serializers import UserSerializer
|
||||
|
||||
User = get_user_model()
|
||||
|
||||
class SkillSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
@@ -65,12 +69,17 @@ class TaskAreaSerializer(serializers.ModelSerializer):
|
||||
class EventSerializer(serializers.ModelSerializer):
|
||||
task_areas = TaskAreaSerializer(many=True, read_only=True)
|
||||
created_by_name = serializers.SerializerMethodField()
|
||||
co_managers = UserSerializer(many=True, read_only=True)
|
||||
co_manager_ids = serializers.PrimaryKeyRelatedField(
|
||||
queryset=User.objects.all(), many=True, write_only=True, required=False, source='co_managers'
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Event
|
||||
fields = [
|
||||
'id', 'title', 'description', 'location',
|
||||
'start_date', 'end_date', 'is_active', 'created_by', 'created_by_name',
|
||||
'co_managers', 'co_manager_ids',
|
||||
'task_areas', 'created_at', 'updated_at'
|
||||
]
|
||||
read_only_fields = ['created_by', 'created_at', 'updated_at']
|
||||
|
||||
Reference in New Issue
Block a user