from .models import Post


class ExampleStaticView(StaticgenView):

    def items(self):
        return (
            'homepage',
            'error_page',
            'redirect_home',
            'django.contrib.sitemaps.views.sitemap',
        )


class ExampleListView(StaticgenView):
    is_paginated = True

    def items(self):
        return ('post_list', )


class ExampleDetailView(StaticgenView):

    def items(self):
        return Post.objects.all()


staticgen_pool.register(ExampleStaticView)
staticgen_pool.register(ExampleListView)
staticgen_pool.register(ExampleDetailView)
from staticgen.staticgen_views import StaticgenView

from .models import Post


class ExampleStaticView(StaticgenView):
    def items(self):
        return (
            'homepage',
            'error_page',
            'redirect_home',
            'django.contrib.sitemaps.views.sitemap',
        )


class ExampleListView(StaticgenView):
    is_paginated = True

    def items(self):
        return ('post_list', )


class ExampleDetailView(StaticgenView):
    def items(self):
        return Post.objects.all()


staticgen_pool.register(ExampleStaticView)
staticgen_pool.register(ExampleListView)
staticgen_pool.register(ExampleDetailView)
from staticgen.models import Page
from staticgen.staticgen_pool import staticgen_pool
from staticgen.staticgen_views import StaticgenView


class StaicgenDemoStaticViews(StaticgenView):

    def items(self):
        return (
            'django.contrib.sitemaps.views.sitemap',
            'robots.txt',
            'page_not_found',
            'application_error',
        )

staticgen_pool.register(StaicgenDemoStaticViews)


class StaticgenCMSView(StaticgenView):

    def items(self):
        items = Title.objects.public().filter(
            page__login_required=False,
            page__site_id=settings.SITE_ID,
        ).order_by('page__path')
        return items

    def url(self, obj):
        translation.activate(obj.language)
        url = obj.page.get_absolute_url(obj.language)
        translation.deactivate()
from staticgen.models import Page
from staticgen.staticgen_pool import staticgen_pool
from staticgen.staticgen_views import StaticgenView


class StaicgenDemoStaticViews(StaticgenView):
    def items(self):
        return (
            'django.contrib.sitemaps.views.sitemap',
            'robots.txt',
            'page_not_found',
            'application_error',
        )


staticgen_pool.register(StaicgenDemoStaticViews)


class StaticgenCMSView(StaticgenView):
    def items(self):
        items = Title.objects.public().filter(
            page__login_required=False,
            page__site_id=settings.SITE_ID,
        ).order_by('page__path')
        return items

    def url(self, obj):
        translation.activate(obj.language)
        url = obj.page.get_absolute_url(obj.language)
        translation.deactivate()
        return url