示例#1
0
    def content(self):
        page = self.get_page(self.request.matchdict['uuid'])

        if not page:
            raise HTTPNotFound()

        if page.linked_pages:
            linked_pages = to_eg_objects(self.workspace.S(Page).filter(
                uuid__in=page.linked_pages))
        else:
            linked_pages = []

        category = None
        if page.primary_category:
            category = self.get_category(page.primary_category)

        if page.language != self.locale:
            raise HTTPNotFound()

        context = {
            'page': page,
            'linked_pages': linked_pages,
            'primary_category': category,
            'content': markdown(page.content),
            'description': markdown(page.description),
        }
        context.update(self.get_comment_context(page))
        return context
示例#2
0
    def content(self):
        page = self.get_page(self.request.matchdict['uuid'])

        if not page:
            raise HTTPNotFound()

        if page.linked_pages:
            linked_pages = to_eg_objects(
                self.workspace.S(Page).filter(uuid__in=page.linked_pages))
        else:
            linked_pages = []

        category = None
        if page.primary_category:
            category = self.get_category(page.primary_category)

        if page.language != self.locale:
            raise HTTPNotFound()

        context = {
            'page': page,
            'linked_pages': linked_pages,
            'primary_category': category,
            'content': markdown(page.content),
            'description': markdown(page.description),
        }
        context.update(self.get_comment_context(page))
        return context
示例#3
0
 def get_pages(self, limit=5, order_by=('position', '-modified_at')):
     """
     Return pages the GitModel knows about.
     :param int limit:
         The number of pages to return, defaults to 5.
     :param tuple order_by:
         The attributes to order on,
         defaults to ('position', '-modified_at')
     """
     return to_eg_objects(self.workspace.S(Page).filter(
         language=self.locale).order_by(*order_by)[:limit])
示例#4
0
 def get_pages(self, limit=5, order_by=('position', '-modified_at')):
     """
     Return pages the GitModel knows about.
     :param int limit:
         The number of pages to return, defaults to 5.
     :param tuple order_by:
         The attributes to order on,
         defaults to ('position', '-modified_at')
     """
     return to_eg_objects(
         self.workspace.S(Page).filter(language=self.locale).order_by(
             *order_by)[:limit])
示例#5
0
 def _get_top_nav(self, locale, order_by):
     return to_eg_objects(self.workspace.S(Category).filter(
         language=locale,
         featured_in_navbar=True).order_by(*order_by))
示例#6
0
 def _get_featured_category_pages(self, category_id, locale, order_by):
     return to_eg_objects(self.workspace.S(Page).filter(
         primary_category=category_id, language=locale,
         featured_in_category=True).order_by(*order_by))
示例#7
0
 def _get_featured_pages(self, locale, limit, order_by):
     return to_eg_objects(self.workspace.S(Page).filter(
         language=locale, featured=True).order_by(*order_by)[:limit])
示例#8
0
 def _get_categories(self, locale, order_by):
     return to_eg_objects(self.workspace.S(Category).filter(
         language=locale).order_by(*order_by))
示例#9
0
 def _get_top_nav(self, locale, order_by):
     return to_eg_objects(
         self.workspace.S(Category).filter(
             language=locale, featured_in_navbar=True).order_by(*order_by))
示例#10
0
 def _get_featured_category_pages(self, category_id, locale, order_by):
     return to_eg_objects(
         self.workspace.S(Page).filter(
             primary_category=category_id,
             language=locale,
             featured_in_category=True).order_by(*order_by))
示例#11
0
 def _get_featured_pages(self, locale, limit, order_by):
     return to_eg_objects(
         self.workspace.S(Page).filter(
             language=locale, featured=True).order_by(*order_by)[:limit])
示例#12
0
 def _get_categories(self, locale, order_by):
     return to_eg_objects(
         self.workspace.S(Category).filter(language=locale).order_by(
             *order_by))