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/$', views.list_public, name='list-public'),
url(r'^public/tag/(?P<tag_slug>[^/]+)/$', views.list_public, name='list-public-tag'), 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'^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>[^/]+)/$', 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_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'), 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.shortcuts import get_object_or_404, render_to_response
from django.core.paginator import Paginator, InvalidPage from django.core.paginator import Paginator, InvalidPage
from django.http import Http404, HttpResponseRedirect
from django.contrib.auth.models import User from django.contrib.auth.models import User
from django.template import RequestContext from django.template import RequestContext
from annoying.decorators import render_to from annoying.decorators import render_to
@ -148,6 +148,17 @@ def embed(request, snipt_key):
context_instance=RequestContext(request), context_instance=RequestContext(request),
mimetype='application/javascript') 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): def rss(request, context):
return render_to_response( return render_to_response(
'rss.xml', 'rss.xml',