diff --git a/settings.py b/settings.py index 8864b3b..42dfa41 100644 --- a/settings.py +++ b/settings.py @@ -206,6 +206,9 @@ if not DEBUG: SESSION_COOKIE_SECURE = True CSRF_COOKIE_SECURE = True +# Messages +MESSAGE_STORAGE = 'django.contrib.messages.storage.cookie.CookieStorage' + # User absolute URLs ABSOLUTE_URL_OVERRIDES = { 'auth.user': lambda u: "/%s/" % u.username, diff --git a/snipts/templatetags/snipt_tags.py b/snipts/templatetags/snipt_tags.py index feccdae..b3277a8 100644 --- a/snipts/templatetags/snipt_tags.py +++ b/snipts/templatetags/snipt_tags.py @@ -2,9 +2,9 @@ from django import template from templatetag_sugar.register import tag from templatetag_sugar.parser import Variable, Constant -from pygments.lexers import get_all_lexers from snipts.models import Favorite, Snipt +from snipts.utils import get_lexers_list import hashlib @@ -44,13 +44,7 @@ def snipts_count_for_user(context): @tag(register, [Constant('as'), Variable()]) def get_lexers(context, asvar): - - lexers = list(get_all_lexers()) - lexers.append(('Markdown', ('markdown',),)) - lexers = sorted(lexers) - - context[asvar] = lexers - + context[asvar] = get_lexers_list() return '' diff --git a/snipts/utils.py b/snipts/utils.py index a5c9ec2..20de095 100644 --- a/snipts/utils.py +++ b/snipts/utils.py @@ -1,6 +1,7 @@ from django.contrib.auth import authenticate, login from django.template.defaultfilters import slugify from registration.signals import user_registered +from pygments.lexers import get_all_lexers def slugify_uniquely(value, model, slugfield="slug"): @@ -22,5 +23,10 @@ def activate_user(user, request, **kwargs): password=request.POST['password1']) login(request, user) +def get_lexers_list(): + lexers = list(get_all_lexers()) + lexers.append(('Markdown', ('markdown',),)) + lexers = sorted(lexers) + return lexers user_registered.connect(activate_user) diff --git a/snipts/views.py b/snipts/views.py index 58b4220..3a93737 100644 --- a/snipts/views.py +++ b/snipts/views.py @@ -203,3 +203,4 @@ def search(request, template='search/search.html', load_all=True, form_class=Mod context.update(extra_context) return render_to_response(template, context, context_instance=context_class(request)) + diff --git a/urls.py b/urls.py index f21de8f..621cd01 100644 --- a/urls.py +++ b/urls.py @@ -1,11 +1,11 @@ +from django.conf.urls.defaults import include, patterns, url from django.views.generic.simple import direct_to_template from registration.forms import RegistrationFormUniqueEmail from django.http import HttpResponseRedirect -from django.conf.urls.defaults import * from django.contrib import admin from snipts.views import search -from django.db.models import Q from tastypie.api import Api +from views import lexers from snipts.api import * import admin as custom_admin @@ -32,6 +32,8 @@ urlpatterns = patterns('', url(r'^404/$', direct_to_template, {'template': '404.html'}), url(r'^500/$', direct_to_template, {'template': '500.html'}), + url(r'^api/public/lexers/$', lexers), + url(r'^api/', include(public_api.urls)), url(r'^api/', include(private_api.urls)), diff --git a/views.py b/views.py index e69de29..fad9939 100644 --- a/views.py +++ b/views.py @@ -0,0 +1,7 @@ +from annoying.decorators import ajax_request +from snipts.utils import get_lexers_list + + +@ajax_request +def lexers(request): + return {'objects': get_lexers_list()}