From fb0142f2491acdaf5287f329118106a64d1b22a3 Mon Sep 17 00:00:00 2001 From: Nick Sergeant Date: Sun, 24 Mar 2013 18:41:57 -0400 Subject: [PATCH] Moar work on getting 1.5-ready. --- requirements.txt | 5 +++-- snipts/api.py | 30 +++++++++++++++--------------- snipts/search_indexes.py | 2 +- templates/base.html | 4 ++-- 4 files changed, 21 insertions(+), 20 deletions(-) diff --git a/requirements.txt b/requirements.txt index 837ff15..e320e4a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14,7 +14,7 @@ gunicorn lxml parsedatetime psycopg2 -pyelasticsearch +pyelasticsearch==0.3 Pygments python-memcached python-postmark @@ -24,6 +24,7 @@ simplejson South Werkzeug -git+https://github.com/toastdriven/django-haystack.git@master#egg=django-haystack hg+https://bitbucket.org/ubernostrum/django-registration#egg=django-registration + +git+git://github.com/toastdriven/django-haystack.git#egg=django-haystack git+git://github.com/mintchaos/typogrify.git#egg=typogrify diff --git a/snipts/api.py b/snipts/api.py index 87d4dcc..27d72c8 100644 --- a/snipts/api.py +++ b/snipts/api.py @@ -23,20 +23,20 @@ models.signals.post_save.connect(create_api_key, sender=User) class FavoriteValidation(Validation): - def is_valid(self, bundle, request=None): + def is_valid(self, bundle): errors = {} snipt = bundle.data['snipt'] - if Favorite.objects.filter(user=request.user, snipt=snipt).count(): + if Favorite.objects.filter(user=bundle.request.user, snipt=snipt).count(): errors['duplicate'] = 'User has already favorited this snipt.' return errors class UserProfileValidation(Validation): - def is_valid(self, bundle, request=None): + def is_valid(self, bundle): errors = {} - if not request.user.profile.is_pro: + if not bundle.request.user.profile.is_pro: return 'You must be a Pro to change these settings.' for field in bundle.data: @@ -258,18 +258,18 @@ class PrivateSniptResource(ModelResource): return bundle - def obj_create(self, bundle, request=None, **kwargs): + def obj_create(self, bundle, **kwargs): bundle.data['tags_list'] = bundle.data.get('tags') bundle.data['tags'] = '' if 'blog_post' in bundle.data: bundle = self._clean_publish_date(bundle) - return super(PrivateSniptResource, self).obj_create(bundle, request, - user=request.user, **kwargs) + return super(PrivateSniptResource, self).obj_create(bundle, + user=bundle.request.user, **kwargs) - def obj_update(self, bundle, request=None, **kwargs): - bundle.data['user'] = request.user + def obj_update(self, bundle, **kwargs): + bundle.data['user'] = bundle.request.user if type(bundle.data['tags']) in (str, unicode): bundle.data['tags_list'] = bundle.data['tags'] @@ -280,8 +280,8 @@ class PrivateSniptResource(ModelResource): if 'blog_post' in bundle.data: bundle = self._clean_publish_date(bundle) - return super(PrivateSniptResource, self).obj_update(bundle, request, - user=request.user, **kwargs) + return super(PrivateSniptResource, self).obj_update(bundle, + user=bundle.request.user, **kwargs) def _clean_publish_date(self, bundle): if bundle.data['blog_post'] and 'publish_date' not in bundle.data: @@ -354,11 +354,11 @@ class PrivateFavoriteResource(ModelResource): bundle.obj.snipt.pk) return bundle - def obj_create(self, bundle, request=None, **kwargs): - bundle.data['user'] = request.user + def obj_create(self, bundle, **kwargs): + bundle.data['user'] = bundle.request.user bundle.data['snipt'] = Snipt.objects.get(pk=bundle.data['snipt']) - return super(PrivateFavoriteResource, self).obj_create(bundle, request, - user=request.user, **kwargs) + return super(PrivateFavoriteResource, self).obj_create(bundle, + user=bundle.request.user, **kwargs) def apply_authorization_limits(self, request, object_list): return object_list.filter(user=request.user) diff --git a/snipts/search_indexes.py b/snipts/search_indexes.py index 270e301..5aa2ac9 100644 --- a/snipts/search_indexes.py +++ b/snipts/search_indexes.py @@ -13,6 +13,6 @@ class SniptIndex(indexes.SearchIndex, indexes.Indexable): def get_model(self): return Snipt - def index_queryset(self): + def index_queryset(self, **kwargs): """Used when the entire index for model is updated.""" return self.get_model().objects.filter(created__lte=datetime.datetime.now()) diff --git a/templates/base.html b/templates/base.html index 2ff3630..d4ed390 100644 --- a/templates/base.html +++ b/templates/base.html @@ -382,8 +382,8 @@ {% block js %} window.user = '{{ request.user.username }}'; - window.user_id = {{ request.user.id }}; - window.user_profile_id = {{ request.user.profile.id }}; + window.user_id = {% firstof request.user.id 'null' %}; + window.user_profile_id = {% firstof request.user.profile.id 'null' %}; {% if public %} window.pub = {{ public|lower }};