Changeset 346
- Timestamp:
- 06/30/10 22:21:37 (2 months ago)
- Location:
- Python/blog/trunk/blog
- Files:
-
- 2 added
- 2 edited
-
feeds.py (modified) (2 diffs)
-
templates/blog/tags (added)
-
templates/blog/tags/calendar.html (added)
-
templatetags/blog.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
Python/blog/trunk/blog/feeds.py
r108 r346 3 3 from django.contrib.comments.feeds import LatestCommentFeed 4 4 from django.core.urlresolvers import reverse 5 from django.shortcuts import get_object_or_404 6 5 7 from blog.models import Entry 6 8 … … 19 21 return Entry.objects.published()[:10] 20 22 21 22 23 class LatestEntriesByTag(Feed): 23 24 _site = Site.objects.get_current() 24 title = '%s feed' % _site.name25 description = '%s posts feed.' % _site.name26 25 27 def link(self): 28 return reverse('entry_index') 26 def get_object(self, request, tag): 27 return get_object_or_404(Tag, slug=tag) 28 29 def title(self, obj): 30 return '%s feed: %s' % [_site.name, obj.tag] 31 32 def description(self, obj): 33 return '%s posts feed for %s' % [_site.name, obj.tag] 34 35 def link(self, obj): 36 return reverse('tag_list', ident=obj.tag) 29 37 30 38 def item_pubdate(self, obj): 31 39 return obj.pub_date 32 40 33 def items(self ):41 def items(self, obj): 34 42 return Entry.objects.published()[:10] 35 43 -
Python/blog/trunk/blog/templatetags/blog.py
r325 r346 1 import calendar 2 import datetime 3 1 4 from django import template 2 5 from django.core.exceptions import ObjectDoesNotExist … … 108 111 return EntryList(bits[1], type, limit, author) 109 112 entry_archive = register.tag(entry_archive) 113 114 def month_cal(year=datetime.date.today().year, month=datetime.date.today().month): 115 116 # Fix this to just use calendar.* for all math. 117 118 first_day_of_month = datetime.date(year, month, 1) 119 last_day_of_month = calendar.monthrange(year, month) 120 first_day_of_calendar = first_day_of_month - datetime.timedelta(first_day_of_month.weekday()) 121 122 last_day_of_calendar = datetime.date(year,month,last_day_of_month[1]) + datetime.timedelta(7 - calendar.weekday(year,month,last_day_of_month[1])) 123 124 event_list = Entry.objects.published(pub_date__gte=first_day_of_calendar, pub_date__lte=last_day_of_calendar) 125 126 month_cal = [] 127 week = [] 128 week_headers = [] 129 130 i = 0 131 day = first_day_of_calendar 132 while day <= last_day_of_calendar: 133 if i < 7: 134 week_headers.append(day) 135 cal_day = {} 136 cal_day['day'] = day 137 cal_day['event'] = False 138 for event in event_list: 139 if day >= event.start_date.date() and day <= event.end_date.date(): 140 cal_day['event'] = True 141 if day.month == month: 142 cal_day['in_month'] = True 143 else: 144 cal_day['in_month'] = False 145 week.append(cal_day) 146 if day.weekday() == 6: 147 month_cal.append(week) 148 week = [] 149 i += 1 150 day += datetime.timedelta(1) 151 152 return {'calendar': month_cal, 'headers': week_headers} 153 154 register.inclusion_tag('blog/tags/calendar.html')(month_cal)
Note: See TracChangeset
for help on using the changeset viewer.