2012-06-01 08:38:55 -07:00
|
|
|
from django.shortcuts import render_to_response
|
2012-05-31 19:32:32 -07:00
|
|
|
from django.template import RequestContext
|
|
|
|
from annoying.decorators import render_to
|
|
|
|
|
|
|
|
from snipts.models import Snipt
|
|
|
|
|
|
|
|
|
2012-06-01 08:38:55 -07:00
|
|
|
@render_to('blogs/themes/default/homepage.html')
|
|
|
|
def blog_homepage(request):
|
|
|
|
|
|
|
|
try:
|
|
|
|
homepage = Snipt.objects.get(user=request.blog_user, title__iexact='Homepage', blog_post=True, public=True)
|
|
|
|
except Snipt.DoesNotExist:
|
|
|
|
return blog_list(request)
|
2012-05-31 22:21:28 -07:00
|
|
|
|
|
|
|
context = {
|
2012-06-01 08:38:55 -07:00
|
|
|
'blog_user': request.blog_user,
|
2012-06-01 18:05:25 -07:00
|
|
|
'homepage': homepage,
|
2012-05-31 22:21:28 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
return context
|
|
|
|
|
2012-06-01 08:38:55 -07:00
|
|
|
@render_to('blogs/themes/default/list.html')
|
2012-06-01 18:05:25 -07:00
|
|
|
def blog_list(request, username_or_custom_slug=None):
|
|
|
|
|
|
|
|
if username_or_custom_slug and username_or_custom_slug != 'blog':
|
|
|
|
return blog_post(request, username_or_custom_slug)
|
2012-05-31 19:32:32 -07:00
|
|
|
|
2012-06-01 08:38:55 -07:00
|
|
|
snipts = Snipt.objects.filter(user=request.blog_user, blog_post=True, public=True).order_by('-created').exclude(title__iexact='Homepage')
|
2012-05-31 19:32:32 -07:00
|
|
|
|
|
|
|
context = {
|
2012-06-01 08:38:55 -07:00
|
|
|
'blog_user': request.blog_user,
|
2012-06-01 18:05:25 -07:00
|
|
|
'has_posts': True,
|
|
|
|
'snipts': snipts,
|
2012-05-31 19:32:32 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
if 'rss' in request.GET:
|
|
|
|
context['snipts'] = context['snipts'][:20]
|
|
|
|
return rss(request, context)
|
|
|
|
|
|
|
|
return context
|
|
|
|
|
2012-06-01 18:05:25 -07:00
|
|
|
@render_to('blogs/themes/default/list.html')
|
|
|
|
def blog_post(request, username_or_custom_slug):
|
|
|
|
|
|
|
|
snipts = Snipt.objects.filter(user=request.blog_user,
|
|
|
|
blog_post=True,
|
|
|
|
public=True,
|
|
|
|
slug=username_or_custom_slug,
|
|
|
|
).order_by('-created').exclude(title__iexact='Homepage')
|
|
|
|
|
|
|
|
context = {
|
|
|
|
'blog_user': request.blog_user,
|
|
|
|
'has_posts': True,
|
|
|
|
'single_blog_post': True,
|
|
|
|
'snipts': snipts,
|
|
|
|
}
|
|
|
|
|
|
|
|
return context
|
|
|
|
|
2012-05-31 19:32:32 -07:00
|
|
|
def rss(request, context):
|
|
|
|
return render_to_response(
|
|
|
|
'rss.xml',
|
|
|
|
context,
|
|
|
|
context_instance=RequestContext(request),
|
|
|
|
mimetype="application/rss+xml"
|
|
|
|
)
|