a8ef28ce973a207c32ac3d0bca3dc74b6d4c277c
[django-migdal.git] / migdal / sitemap.py
1 # -*- coding: utf-8 -*-
2 # This file is part of PrawoKultury, licensed under GNU Affero GPLv3 or later.
3 # Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
4 #
5 from django.contrib.sitemaps import Sitemap
6 from django.utils.translation import override
7 from .models import Entry
8 from django.conf import settings
9
10
11 class MigdalSitemap(Sitemap):
12     changefreq = "never"
13     priority = 0.5
14
15     def __init__(self, lang):
16         self.lang = lang
17
18     def items(self):
19         return Entry.objects.filter(**{"published_%s" % self.lang: True})
20
21     def lastmod(self, obj):
22         return obj.changed_at
23
24     def location(self, obj):
25         with override(self.lang):
26             return obj.get_absolute_url()
27
28
29 sitemaps = {}
30 for lc, ln in settings.LANGUAGES:
31     sitemaps['entry_%s' % lc] = MigdalSitemap(lc)