Newer
Older
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from newsbox.views import NewsboxDetailView
from django.utils.translation import get_language
class NewsboxI18NListMixin(object):
def get_queryset(self):
queryset = super(NewsboxI18NListMixin, self).get_queryset()
queryset = queryset.active_translations()
return queryset
class NewsboxI18NDetailView(NewsboxDetailView):
slug_field = "translations__newsbox_slug"
"""
As slug_field is translated, we need to use translation aware
queryset.
"""
obj = queryset.translated(language, newsbox_slug=self.kwargs[self.slug_url_kwarg]).get()
if(
not obj.is_published()
and not obj.has_change_permission(self.request)
):
raise Http404
return obj