예제 #1
0
파일: models.py 프로젝트: abael/cms
    class Meta:
        verbose_name_plural = "categories"
        unique_together = (("url_title",),)
        ordering = ("title",)
        

class CategoryHistoryLinkAdapter(externals.historylinks.HistoryLinkAdapter):
    
    """History link adapter for category models."""
    
    def get_permalinks(self, obj):
        """Returns all permalinks for the given category."""
        return obj._get_permalinks()

        
externals.historylinks("register", Category, CategoryHistoryLinkAdapter)


class ArticleManager(OnlineBaseManager):
    
    """Manager for Article models."""
    
    def select_published(self, queryset):
        queryset = super(ArticleManager, self).select_published(queryset)
        queryset = queryset.filter(
            date__lte = timezone.now(),
        )
        return queryset


class Article(PageBase):
예제 #2
0
파일: models.py 프로젝트: danielsamuels/cms
        list(Page.objects.all().select_for_update().values_list(
            "left",
            "right"
        ))  #
        # Lock entire
        #  table.
        super(Page, self).delete(*args, **kwargs)
        # Update the entire tree.
        self._excise_branch()

    class Meta:
        unique_together = (("parent", "slug", "country_group"),)
        ordering = ("left",)


externals.historylinks("register", Page)


class PageSitemap(sitemaps.PageBaseSitemap):

    """Sitemap for page models."""

    model = Page

    def items(self):
        """Only lists items that are marked as indexable."""
        return filter_indexable_pages(super(PageSitemap, self).items())


sitemaps.register(Page, sitemap_cls=PageSitemap)
예제 #3
0
파일: models.py 프로젝트: dan-gamble/cms
        if externals.reversion:
            import reversion
            versions = reversion.get_for_object(self)
            if versions.count() > 0:
                latest_version = versions[:1][0]
                return "{} by {}".format(
                    latest_version.revision.date_created.strftime(
                        "%Y-%m-%d %H:%M:%S"), latest_version.revision.user)
        return "-"

    class Meta:
        unique_together = (("parent", "slug", "country_group"), )
        ordering = ("left", )


externals.historylinks("register", Page)


class PageSitemap(sitemaps.PageBaseSitemap):
    """Sitemap for page models."""

    model = Page

    def items(self):
        """Only lists items that are marked as indexable."""
        return filter_indexable_pages(super(PageSitemap, self).items())


sitemaps.register(Page, sitemap_cls=PageSitemap)

예제 #4
0
                     self._get_permalink_for_page(page)) for page in pages)

    class Meta:
        verbose_name_plural = "categories"
        unique_together = (("url_title", ), )
        ordering = ("title", )


class CategoryHistoryLinkAdapter(externals.historylinks.HistoryLinkAdapter):
    """History link adapter for category models."""
    def get_permalinks(self, obj):
        """Returns all permalinks for the given category."""
        return obj._get_permalinks()


externals.historylinks("register", Category, CategoryHistoryLinkAdapter)


class ArticleManager(OnlineBaseManager):
    """Manager for Article models."""
    def select_published(self, queryset):
        queryset = super(ArticleManager, self).select_published(queryset)
        queryset = queryset.filter(date__lte=timezone.now(), )
        return queryset


class Article(PageBase):
    """A news article."""

    objects = ArticleManager()