Support raw delivery of JavaScript code.

master
Nick Sergeant 2012-05-10 21:34:11 -04:00
parent 466ecaee3a
commit 94f8418dbb
3 changed files with 14 additions and 1 deletions

View File

@ -0,0 +1 @@
{{ snipt.code|safe }}

View File

@ -8,6 +8,7 @@ urlpatterns = patterns('',
url(r'^public/$', views.list_public, name='list-public'),
url(r'^public/tag/(?P<tag_slug>[^/]+)/$', views.list_public, name='list-public-tag'),
url(r'^embed/(?P<snipt_key>[^/]+)/$', views.embed, name='embed'),
url(r'^raw/(?P<snipt_key>[^/]+)/$', views.raw, name='raw'),
url(r'^(?P<username_or_custom_slug>[^/]+)/$', views.list_user, name='list-user'),
url(r'^(?P<username_or_custom_slug>[^/]+)/tag/(?P<tag_slug>[^/]+)/$', views.list_user, name='list-user-tag'),
url(r'^(?P<username>[^/]+)/(?P<snipt_slug>[^/]+)/$', views.detail, name='detail'),

View File

@ -1,6 +1,6 @@
from django.http import Http404, HttpResponseRedirect, HttpResponseBadRequest
from django.shortcuts import get_object_or_404, render_to_response
from django.core.paginator import Paginator, InvalidPage
from django.http import Http404, HttpResponseRedirect
from django.contrib.auth.models import User
from django.template import RequestContext
from annoying.decorators import render_to
@ -148,6 +148,17 @@ def embed(request, snipt_key):
context_instance=RequestContext(request),
mimetype='application/javascript')
def raw(request, snipt_key):
snipt = get_object_or_404(Snipt, key=snipt_key)
if snipt.lexer != 'js':
return HttpResponseBadRequest()
return render_to_response('snipts/raw.html',
{'snipt': snipt},
context_instance=RequestContext(request),
mimetype='text/javascript')
def rss(request, context):
return render_to_response(
'rss.xml',