Commit 4eb91894a8055e5a182e5b294af78eb34a3e9820

Authored by Sergio Oliveira
2 parents 500a1240 fe1e839d

Merge pull request #19 from colab-community/compatibility_django_1.7

Add compatibility to django 1.7
requirements.txt
1 -Django>=1.6.1,<1.7  
2 -South==0.8.1 1 +Django>=1.6.1,<1.8
3 psycopg2==2.5.1 2 psycopg2==2.5.1
4 django-piston==0.2.3 3 django-piston==0.2.3
5 pytz==2011n 4 pytz==2011n
src/badger/models.py
1 # -*- coding: utf-8 -*- 1 # -*- coding: utf-8 -*-
2 2
3 from django.conf import settings 3 from django.conf import settings
4 -from django.contrib.auth import get_user_model  
5 from django.db import models 4 from django.db import models
6 from django.utils.translation import ugettext_lazy as _ 5 from django.utils.translation import ugettext_lazy as _
7 from i18n_model.models import I18nModel 6 from i18n_model.models import I18nModel
@@ -58,7 +57,7 @@ class Badge(models.Model): @@ -58,7 +57,7 @@ class Badge(models.Model):
58 null=True 57 null=True
59 ) 58 )
60 awardees = models.ManyToManyField( 59 awardees = models.ManyToManyField(
61 - get_user_model(), 60 + settings.AUTH_USER_MODEL,
62 verbose_name=_(u'Awardees'), 61 verbose_name=_(u'Awardees'),
63 blank=True, 62 blank=True,
64 null=True 63 null=True
src/colab/custom_settings.py
@@ -94,7 +94,6 @@ INSTALLED_APPS = INSTALLED_APPS + ( @@ -94,7 +94,6 @@ INSTALLED_APPS = INSTALLED_APPS + (
94 94
95 # Not standard apps 95 # Not standard apps
96 'raven.contrib.django.raven_compat', 96 'raven.contrib.django.raven_compat',
97 - 'south',  
98 'cliauth', 97 'cliauth',
99 'django_mobile', 98 'django_mobile',
100 'django_browserid', 99 'django_browserid',
@@ -321,4 +320,4 @@ except ImportError: @@ -321,4 +320,4 @@ except ImportError:
321 if TRAC_ENABLED: 320 if TRAC_ENABLED:
322 INSTALLED_APPS = INSTALLED_APPS + ( 321 INSTALLED_APPS = INSTALLED_APPS + (
323 'proxy.trac', 322 'proxy.trac',
324 - )  
325 \ No newline at end of file 323 \ No newline at end of file
  324 + )
src/super_archives/managers.py
1 -  
2 from django.db import models 1 from django.db import models
3 2
4 from haystack.query import SearchQuerySet 3 from haystack.query import SearchQuerySet
5 - 4 +import django
6 5
7 class NotSpamManager(models.Manager): 6 class NotSpamManager(models.Manager):
8 """Only return objects which are not marked as spam.""" 7 """Only return objects which are not marked as spam."""
9 8
10 - def get_query_set(self):  
11 - return super(NotSpamManager, self).get_query_set().exclude(spam=True) 9 + def get_queryset(self):
  10 + if django.VERSION < (1, 7):
  11 + return super(NotSpamManager, self).get_queryset().exclude(spam=True)
  12 + else:
  13 + return super(NotSpamManager, self).get_query_set().exclude(spam=True)
  14 +
  15 + if django.VERSION < (1, 7):
  16 + # in 1.7+, get_query_set gets defined by the base ChangeList and complains if it's called.
  17 + # otherwise, we have to define it ourselves.
  18 + get_query_set = get_queryset
12 19
13 20
14 class HighestScore(NotSpamManager): 21 class HighestScore(NotSpamManager):
15 - def get_query_set(self):  
16 - queryset = super(HighestScore, self).get_query_set() 22 + def get_queryset(self):
  23 + if django.VERSION < (1, 7):
  24 + queryset = super(HighestScore, self).get_queryset()
  25 + else:
  26 + queryset = super(HighestScore, self).get_query_set()
17 return queryset.order_by('-score', '-latest_message__received_time') 27 return queryset.order_by('-score', '-latest_message__received_time')
18 28
19 def from_haystack(self): 29 def from_haystack(self):
@@ -21,11 +31,14 @@ class HighestScore(NotSpamManager): @@ -21,11 +31,14 @@ class HighestScore(NotSpamManager):
21 31
22 32
23 class MostVotedManager(NotSpamManager): 33 class MostVotedManager(NotSpamManager):
24 - def get_query_set(self): 34 + def get_queryset(self):
25 """Query for the most voted messages sorting by the sum of 35 """Query for the most voted messages sorting by the sum of
26 voted and after by date.""" 36 voted and after by date."""
27 37
28 - queryset = super(MostVotedManager, self).get_query_set() 38 + if django.VERSION < (1, 7):
  39 + queryset = super(MostVotedManager, self).get_queryset()
  40 + else:
  41 + queryset = super(MostVotedManager, self).get_query_set()
29 42
30 sql = """ 43 sql = """
31 SELECT 44 SELECT
src/super_archives/models.py
@@ -23,7 +23,7 @@ from .utils import blocks @@ -23,7 +23,7 @@ from .utils import blocks
23 from .utils.etiquetador import etiquetador 23 from .utils.etiquetador import etiquetador
24 24
25 25
26 -User = get_user_model() 26 +User = settings.AUTH_USER_MODEL
27 27
28 28
29 class EmailAddressValidation(models.Model): 29 class EmailAddressValidation(models.Model):
@@ -360,7 +360,7 @@ class Message(models.Model): @@ -360,7 +360,7 @@ class Message(models.Model):
360 class MessageBlock(models.Model): 360 class MessageBlock(models.Model):
361 message = models.ForeignKey(Message, related_name='blocks') 361 message = models.ForeignKey(Message, related_name='blocks')
362 text = models.TextField() 362 text = models.TextField()
363 - is_reply = models.BooleanField() 363 + is_reply = models.BooleanField(default=False)
364 order = models.IntegerField() 364 order = models.IntegerField()
365 365
366 def __unicode__(self): 366 def __unicode__(self):