Skip to content

Commit

Permalink
Bring back the friendly date time for file and image list views.
Browse files Browse the repository at this point in the history
  • Loading branch information
markotibold committed Dec 21, 2012
1 parent 86c9346 commit 7368fb0
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 8 deletions.
9 changes: 9 additions & 0 deletions fiber/rest_api/fields.py
Expand Up @@ -2,6 +2,8 @@

from fiber.app_settings import PERMISSION_CLASS
from fiber.utils import class_loader
from fiber.utils.date import friendly_datetime

PERMISSIONS = class_loader.load_class(PERMISSION_CLASS)


Expand All @@ -14,3 +16,10 @@ class CanEditField(serializers.Field):
def field_to_native(self, obj, field_name):
return PERMISSIONS.can_edit(self.context['request'].user, obj)


class UpdatedField(serializers.Field):
"""
Return a friendly timestamp.
"""
def field_to_native(self, obj, field_name):
return friendly_datetime(obj.updated)
4 changes: 3 additions & 1 deletion fiber/rest_api/serializers.py
Expand Up @@ -2,7 +2,7 @@

from fiber.models import Page, PageContentItem, ContentItem, File, Image

from .fields import CanEditField
from .fields import CanEditField, UpdatedField


class PageSerializer(serializers.ModelSerializer):
Expand Down Expand Up @@ -30,6 +30,7 @@ class FileSerializer(serializers.ModelSerializer):
file_url = serializers.Field(source='file.url')
filename = serializers.Field(source='get_filename')
can_edit = CanEditField()
updated = UpdatedField()

class Meta:
model = File
Expand All @@ -41,6 +42,7 @@ class ImageSerializer(serializers.ModelSerializer):
filename = serializers.Field(source='get_filename')
size = serializers.Field(source='get_size')
can_edit = CanEditField()
updated = UpdatedField()

class Meta:
model = Image
Expand Down
7 changes: 0 additions & 7 deletions fiber/rest_api/views.py
Expand Up @@ -143,13 +143,6 @@ def check_fields(self, order_by):
if order_by not in self.orderable_fields:
raise ErrorResponse(status=HTTP_400_BAD_REQUEST, content="Can not order by the passed value.")

def filter_response(self, obj):
obj = super(PaginatedListView, self).filter_response(obj)
if self.request.method.upper() == 'GET':
obj['rows'] = obj['results']
obj.pop('results')
return obj


class FileListView(PaginatedListView):

Expand Down

0 comments on commit 7368fb0

Please sign in to comment.