temp checkin
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
from rest_framework_simplejwt.serializers import TokenObtainPairSerializer
|
||||
from rest_framework import serializers
|
||||
from .models import CustomUser, Announcement, Company, Conversation, Prompt, Feedback, FEEDBACK_CATEGORIES
|
||||
|
||||
|
||||
class MyTokenObtainPairSerializer(TokenObtainPairSerializer):
|
||||
@classmethod
|
||||
def get_token(cls, user):
|
||||
token = super(MyTokenObtainPairSerializer, cls).get_token(user)
|
||||
|
||||
# add custom claim
|
||||
token["company"] = "something here"
|
||||
|
||||
return token
|
||||
|
||||
|
||||
class CompanySerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Company
|
||||
fields = "__all__"
|
||||
|
||||
|
||||
class AnnouncmentSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Announcement
|
||||
fields = "__all__"
|
||||
|
||||
class FeedbackSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Feedback
|
||||
fields = "__all__"
|
||||
|
||||
class CustomUserSerializer(serializers.ModelSerializer):
|
||||
email = serializers.EmailField(required=True)
|
||||
username = serializers.CharField()
|
||||
password = serializers.CharField(min_length=8, write_only=True)
|
||||
company = CompanySerializer()
|
||||
has_usable_password = serializers.BooleanField()
|
||||
|
||||
class Meta:
|
||||
model = CustomUser
|
||||
fields = "__all__"
|
||||
extra_kwargs = {"password": {"write_only": True}}
|
||||
|
||||
# def create(self, validated_data):
|
||||
# password = validated_data.pop('password',None)
|
||||
# instance = self.Meta.model(**validated_data)
|
||||
# if password is not None:
|
||||
# instance.set_password(password)
|
||||
# instance.save()
|
||||
# return instance
|
||||
|
||||
|
||||
class ConversationSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Conversation
|
||||
fields = ("title", "created", "last_modified", "id")
|
||||
|
||||
|
||||
class PromptSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Prompt
|
||||
fields = ("message", "user_created", "created", "id", )
|
||||
|
||||
class BasicUserSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = CustomUser
|
||||
fields = ("email", "first_name", "last_name", "is_active","has_usable_password","is_company_manager",'has_signed_tos')
|
||||
Reference in New Issue
Block a user