54 lines
1.6 KiB
Python
54 lines
1.6 KiB
Python
from django.contrib.auth.models import User
|
|
from rest_framework import serializers
|
|
from rest_framework.validators import UniqueTogetherValidator
|
|
from standards.models import Standards
|
|
from chat.models import ChatRoom, ChatMessage
|
|
|
|
class StandardsSerializer(serializers.ModelSerializer):
|
|
|
|
username = serializers.SerializerMethodField('getCreatedByUser')
|
|
last_modified_on = serializers.SerializerMethodField('getFormatedLastModified')
|
|
|
|
class Meta:
|
|
model = Standards
|
|
fields = ["id", "name", "last_modified_on", "username", "content"]
|
|
|
|
def getCreatedByUser(self, standard):
|
|
return standard.created_standard_by.first_name + " " + standard.created_standard_by.first_name
|
|
|
|
def getFormatedLastModified(self, standard):
|
|
return standard.last_modified_on.strftime("%d.%m.%Y %H:%M")
|
|
|
|
|
|
class ChatRoomSerializer(serializers.ModelSerializer):
|
|
|
|
class Meta:
|
|
model = ChatRoom
|
|
fields = ["id", "roomname", "roomname_channel"]
|
|
|
|
class ChatMessageSerializer(serializers.ModelSerializer):
|
|
sendtime = serializers.SerializerMethodField('getFormatedMessageTimeStarted')
|
|
|
|
class Meta:
|
|
model = ChatMessage
|
|
fields = ["author", "content", "sendtime"]
|
|
|
|
|
|
class ChatRoomFullSerializer(serializers.ModelSerializer):
|
|
|
|
chatroom_createddate = serializers.SerializerMethodField('getFormatedChatStarted')
|
|
#messages = ChatMessageSerializer(many=True)
|
|
|
|
class Meta:
|
|
model = ChatRoom
|
|
fields = ["id", "roomname", "roomname_channel", "chatroom_createddate", "chatmembers", "chatmember_single","messages", "creator"]
|
|
depth = 2
|
|
|
|
def getFormatedChatStarted(self, chatroom):
|
|
return chatroom.chatroom_createddate.strftime("%d.%m.%Y %H:%M")
|
|
|
|
|
|
|
|
|
|
|
|
|