Esempio n. 1
0
    def dehydrate(self, bundle):
        """inject extra info"""
        event, data = bundle.obj, bundle.data
        category_resource = self.concrete_category.get_related_resource(bundle.obj.concrete_category)
        ctree = CachedCategoryTree()

        # concrete parent category
        concrete_parent_category = ctree.surface_parent(event.concrete_category_id)
        concrete_parent_category_uri = category_resource.get_resource_uri(concrete_parent_category)
        data.update(concrete_parent_category=concrete_parent_category_uri)

        # concrete breadcrumbs :)
        concrete_category_breadcrumb_uris = []
        for category in ctree.parents(event.concrete_category_id):
            concrete_category_breadcrumb_uris.append(category_resource.get_resource_uri(category))
        data.update(concrete_category_breadcrumbs=concrete_category_breadcrumb_uris)

        # detail image thumbnail
        try:
            image = event.image_chain(ctree)
            detail_thumb = get_thumbnail(image, **settings.IPHONE_THUMB_OPTIONS)
        except Exception:
            pass
        else:
            data.update(thumbnail_detail=detail_thumb.url)

        return super(EventResource, self).dehydrate(bundle)
Esempio n. 2
0
    def dehydrate(self, bundle):
        """inject extra info"""
        event, data = bundle.obj, bundle.data
        category_resource = self.concrete_category.get_related_resource(
            bundle.obj.concrete_category)
        ctree = CachedCategoryTree()

        # concrete parent category
        concrete_parent_category = ctree.surface_parent(
            event.concrete_category_id)
        concrete_parent_category_uri = category_resource.get_resource_uri(
            concrete_parent_category)
        data.update(concrete_parent_category=concrete_parent_category_uri)

        # concrete breadcrumbs :)
        concrete_category_breadcrumb_uris = []
        for category in ctree.parents(event.concrete_category_id):
            concrete_category_breadcrumb_uris.append(
                category_resource.get_resource_uri(category))
        data.update(
            concrete_category_breadcrumbs=concrete_category_breadcrumb_uris)

        # detail image thumbnail
        try:
            image = event.image_chain(ctree)
            detail_thumb = get_thumbnail(image,
                                         **settings.IPHONE_THUMB_OPTIONS)
        except Exception:
            pass
        else:
            data.update(thumbnail_detail=detail_thumb.url)

        return super(EventResource, self).dehydrate(bundle)