diff options
author | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-04-15 22:02:30 -0400 |
---|---|---|
committer | Luke Shumaker <lukeshu@sbcglobal.net> | 2015-04-15 22:02:30 -0400 |
commit | 2ea4e6f4d5245dd5e43c90d54635477c6e7dd6a7 (patch) | |
tree | d0994cde414fffd3389d036f5a043327aae3af39 /sitemaps.py | |
parent | 05430050147c87818c08373e9930756da4d6b5ac (diff) | |
parent | e5fc7cd53f6082f2911bc6c8cf8ea4f4ca4addc8 (diff) |
Merge tag 'release_2014-11-08.2' into archweb-generic
Todolist pagination and sitemap, news sitemap
Diffstat (limited to 'sitemaps.py')
-rw-r--r-- | sitemaps.py | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/sitemaps.py b/sitemaps.py index eb4e05d9..03ad9254 100644 --- a/sitemaps.py +++ b/sitemaps.py @@ -8,6 +8,7 @@ from main.models import Package from news.models import News from packages.utils import get_group_info, get_split_packages_info from releng.models import Release +from todolists.models import Todolist class PackagesSitemap(Sitemap): @@ -98,6 +99,13 @@ class NewsSitemap(Sitemap): return 'yearly' +class RecentNewsSitemap(NewsSitemap): + def items(self): + now = datetime.utcnow().replace(tzinfo=utc) + cutoff = now - timedelta(days=30) + return super(RecentNewsSitemap, self).items().filter(postdate__gte=cutoff) + + class ReleasesSitemap(Sitemap): changefreq = "monthly" @@ -105,7 +113,7 @@ class ReleasesSitemap(Sitemap): return Release.objects.all().defer('info', 'torrent_data').order_by() def lastmod(self, obj): - return obj.created + return obj.last_modified def priority(self, obj): if obj.available: @@ -113,6 +121,25 @@ class ReleasesSitemap(Sitemap): return "0.2" +class TodolistSitemap(Sitemap): + priority = "0.4" + + def __init__(self): + now = datetime.utcnow().replace(tzinfo=utc) + self.two_weeks_ago = now - timedelta(days=14) + + def items(self): + return Todolist.objects.all().defer('raw').order_by() + + def lastmod(self, obj): + return obj.last_modified + + def changefreq(self, obj): + if obj.last_modified > self.two_weeks_ago: + return 'weekly' + return 'monthly' + + class BaseSitemap(Sitemap): DEFAULT_PRIORITY = 0.7 |