class MeetingBulkInvite(serializers.Serializer): users = PrimaryKeyRelatedFieldNoPKOpt(queryset=User.objects.all(), many=True, required=False) groups = PrimaryKeyRelatedFieldNoPKOpt(queryset=AbakusGroup.objects.all(), many=True, required=False)
class AdminRegistrationCreateAndUpdateSerializer(serializers.Serializer): user = PrimaryKeyRelatedFieldNoPKOpt(queryset=User.objects.all()) pool = PrimaryKeyRelatedFieldNoPKOpt(queryset=Pool.objects.all(), required=False) feedback = serializers.CharField( required=False, max_length=Registration._meta.get_field("feedback").max_length ) admin_registration_reason = serializers.CharField( required=True, max_length=Registration._meta.get_field("admin_registration_reason").max_length, )
class ContactFormSerializer(serializers.Serializer): title = serializers.CharField(max_length=80) message = serializers.CharField() anonymous = serializers.BooleanField() captcha_response = serializers.CharField() recipient_group = PrimaryKeyRelatedFieldNoPKOpt( allow_null=True, queryset=AbakusGroup.objects.all().filter(type=GROUP_COMMITTEE)) def validate_captcha_response(self, captcha_response): if not verify_captcha(captcha_response): raise exceptions.ValidationError("invalid_captcha") return captcha_response def validate_anonymous(self, anonymous): if not self.context["request"].user.is_authenticated and not anonymous: raise exceptions.ValidationError("anonymous_required_without_auth") return anonymous
class MeetingUserInvite(serializers.Serializer): user = PrimaryKeyRelatedFieldNoPKOpt(queryset=User.objects.all())
class MeetingGroupInvite(serializers.Serializer): group = PrimaryKeyRelatedFieldNoPKOpt(queryset=AbakusGroup.objects.all())
class ChangeGradeSerializer(serializers.Serializer): group = PrimaryKeyRelatedFieldNoPKOpt( allow_null=True, queryset=AbakusGroup.objects.all().filter(type=constants.GROUP_GRADE), )
class AdminUnregisterSerializer(serializers.Serializer): user = PrimaryKeyRelatedFieldNoPKOpt(queryset=User.objects.all()) admin_unregistration_reason = serializers.CharField(required=True)