mirror of
https://github.com/django-helpdesk/django-helpdesk.git
synced 2025-08-16 02:48:00 +02:00
Added optional serverside processing on datatables that lists all tickets - True by default
This commit is contained in:
48
helpdesk/serializers.py
Normal file
48
helpdesk/serializers.py
Normal file
@ -0,0 +1,48 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
from .models import Ticket
|
||||
|
||||
from django.contrib.humanize.templatetags import humanize
|
||||
|
||||
"""
|
||||
A serializer for the Ticket model, returns data in the format as required by
|
||||
datatables for ticket_list.html. Called from staff.datatables_ticket_list.
|
||||
|
||||
"""
|
||||
|
||||
class TicketSerializer(serializers.ModelSerializer):
|
||||
ticket = serializers.SerializerMethodField()
|
||||
assigned_to = serializers.SerializerMethodField()
|
||||
created = serializers.SerializerMethodField()
|
||||
due_date = serializers.SerializerMethodField()
|
||||
status = serializers.SerializerMethodField()
|
||||
row_class = serializers.SerializerMethodField()
|
||||
|
||||
class Meta:
|
||||
model = Ticket
|
||||
# fields = '__all__'
|
||||
fields = ('ticket', 'id', 'priority', 'title', 'queue', 'status', 'created', 'due_date', 'assigned_to', 'row_class')
|
||||
|
||||
def get_ticket(self, obj):
|
||||
return (str(obj.id)+" "+obj.ticket)
|
||||
|
||||
def get_status(self, obj):
|
||||
return (obj.get_status)
|
||||
|
||||
def get_created(self, obj):
|
||||
return (humanize.naturaltime(obj.created))
|
||||
|
||||
def get_due_date(self, obj):
|
||||
return (humanize.naturaltime(obj.due_date))
|
||||
|
||||
def get_assigned_to(self, obj):
|
||||
if obj.assigned_to:
|
||||
if obj.assigned_to.first_name:
|
||||
return (obj.assigned_to.first_name)
|
||||
else:
|
||||
return (obj.assigned_to.email)
|
||||
else:
|
||||
return ("None")
|
||||
|
||||
def get_row_class(self, obj):
|
||||
return (obj.get_priority_css_class)
|
Reference in New Issue
Block a user