Merge branch 'dj111' into dj19deprecations
commit
120c0eea5a
|
@ -5,25 +5,24 @@ from urllib import quote
|
||||||
from functools import partial
|
from functools import partial
|
||||||
from xml.etree import ElementTree
|
from xml.etree import ElementTree
|
||||||
|
|
||||||
|
from django.apps import apps
|
||||||
|
|
||||||
from . exceptions import BooXtreamError
|
from . exceptions import BooXtreamError
|
||||||
from . models import Boox
|
|
||||||
|
|
||||||
|
|
||||||
class BooXtream(object):
|
class BooXtream(object):
|
||||||
""" ``apikey``
|
""" ``apikey``
|
||||||
|
|
||||||
The API key for your BooXtream account, obtained from BooXtream. Defaults to using
|
The API key for your BooXtream account, obtained from BooXtream. Defaults to using
|
||||||
settings.BOOXTREAM_API_KEY
|
settings.BOOXTREAM_API_KEY
|
||||||
|
|
||||||
``apiuser``
|
``apiuser``
|
||||||
|
|
||||||
The username key for your BooXtream account, obtained from BooXtream. Defaults to using
|
The username key for your BooXtream account, obtained from BooXtream. Defaults to using
|
||||||
settings.BOOXTREAM_API_USER
|
settings.BOOXTREAM_API_USER
|
||||||
|
|
||||||
|
|
||||||
``timeout``
|
``timeout``
|
||||||
|
|
||||||
passed to requests
|
passed to requests
|
||||||
"""
|
"""
|
||||||
def __init__(self,
|
def __init__(self,
|
||||||
|
@ -36,58 +35,60 @@ class BooXtream(object):
|
||||||
apiuser = settings.BOOXTREAM_API_USER
|
apiuser = settings.BOOXTREAM_API_USER
|
||||||
self.endpoint = 'https://service.booxtream.com/'
|
self.endpoint = 'https://service.booxtream.com/'
|
||||||
self.postrequest = partial(requests.post, timeout=timeout, auth=(apiuser,apikey))
|
self.postrequest = partial(requests.post, timeout=timeout, auth=(apiuser,apikey))
|
||||||
|
|
||||||
|
|
||||||
def platform(self, epubfile=None, epub=True, kf8mobi=False, **kwargs):
|
def platform(self, epubfile=None, epub=True, kf8mobi=False, **kwargs):
|
||||||
""" Make an API request to BooXtream
|
""" Make an API request to BooXtream
|
||||||
``self.apikey``, ``epubfile`` and the supplied ``kwargs``.
|
``self.apikey``, ``epubfile`` and the supplied ``kwargs``.
|
||||||
Attempts to deserialize the XML response and return the download link.
|
Attempts to deserialize the XML response and return the download link.
|
||||||
|
|
||||||
Will raise ``BooXtreamError`` if BooXtream returns an exception
|
Will raise ``BooXtreamError`` if BooXtream returns an exception
|
||||||
code.
|
code.
|
||||||
"""
|
"""
|
||||||
url = self.endpoint + 'booxtream.xml'
|
Boox = apps.get_model('booxtream', 'Boox')
|
||||||
|
|
||||||
|
url = self.endpoint + 'booxtream.xml'
|
||||||
kwargs['epub'] = '1' if epub else '0'
|
kwargs['epub'] = '1' if epub else '0'
|
||||||
kwargs['kf8mobi'] = '1' if kf8mobi else '0'
|
kwargs['kf8mobi'] = '1' if kf8mobi else '0'
|
||||||
if epubfile:
|
if epubfile:
|
||||||
if hasattr(epubfile,'name') and str(epubfile.name).endswith('.epub'):
|
if hasattr(epubfile,'name') and str(epubfile.name).endswith('.epub'):
|
||||||
files= {'epubfile': (str(epubfile.name),epubfile)}
|
files= {'epubfile': (str(epubfile.name),epubfile)}
|
||||||
else:
|
else:
|
||||||
# give it a random file name so that kindlegen doesn't choke
|
# give it a random file name so that kindlegen doesn't choke
|
||||||
# needed for in-memory (StringIO) epubs
|
# needed for in-memory (StringIO) epubs
|
||||||
files= {'epubfile': ('%012x.epub' % random.randrange(16**12),epubfile)}
|
files= {'epubfile': ('%012x.epub' % random.randrange(16**12),epubfile)}
|
||||||
else:
|
else:
|
||||||
files={}
|
files={}
|
||||||
if settings.LOCAL_TEST:
|
if settings.LOCAL_TEST:
|
||||||
# fake it, so you can test other functions without hitting booxtream
|
# fake it, so you can test other functions without hitting booxtream
|
||||||
boox = Boox.objects.create(
|
boox = Boox.objects.create(
|
||||||
download_link_epub='https://github.com/eshellman/42_ebook/blob/master/download/42.epub?raw=true&extra=download.booxtream.com/',
|
download_link_epub='https://github.com/eshellman/42_ebook/blob/master/download/42.epub?raw=true&extra=download.booxtream.com/',
|
||||||
download_link_mobi='https://github.com/eshellman/42_ebook/blob/master/download/42.mobi?raw=true',
|
download_link_mobi='https://github.com/eshellman/42_ebook/blob/master/download/42.mobi?raw=true',
|
||||||
referenceid= kwargs.get('referenceid'),
|
referenceid= kwargs.get('referenceid'),
|
||||||
downloads_remaining= kwargs.get('downloadlimit'),
|
downloads_remaining= kwargs.get('downloadlimit'),
|
||||||
expirydays=kwargs.get('expirydays'),
|
expirydays=kwargs.get('expirydays'),
|
||||||
)
|
)
|
||||||
return boox
|
return boox
|
||||||
|
|
||||||
resp = self.postrequest(url, data=kwargs, files=files)
|
resp = self.postrequest(url, data=kwargs, files=files)
|
||||||
doc = ElementTree.fromstring(resp.content)
|
doc = ElementTree.fromstring(resp.content)
|
||||||
|
|
||||||
# it turns out an Error can have an Error in it
|
# it turns out an Error can have an Error in it
|
||||||
errors = doc.findall('.//Response/Error')
|
errors = doc.findall('.//Response/Error')
|
||||||
if len(errors) > 0:
|
if len(errors) > 0:
|
||||||
raise BooXtreamError(errors)
|
raise BooXtreamError(errors)
|
||||||
download_link_epub = doc.find('.//DownloadLink[@type="epub"]')
|
download_link_epub = doc.find('.//DownloadLink[@type="epub"]')
|
||||||
if download_link_epub is not None:
|
if download_link_epub is not None:
|
||||||
download_link_epub = download_link_epub.text
|
download_link_epub = download_link_epub.text
|
||||||
download_link_mobi = doc.find('.//DownloadLink[@type="mobi"]')
|
download_link_mobi = doc.find('.//DownloadLink[@type="mobi"]')
|
||||||
if download_link_mobi is not None:
|
if download_link_mobi is not None:
|
||||||
download_link_mobi = download_link_mobi.text
|
download_link_mobi = download_link_mobi.text
|
||||||
boox = Boox.objects.create(
|
boox = Boox.objects.create(
|
||||||
download_link_epub=download_link_epub,
|
download_link_epub=download_link_epub,
|
||||||
download_link_mobi=download_link_mobi,
|
download_link_mobi=download_link_mobi,
|
||||||
referenceid= kwargs.get('referenceid'),
|
referenceid= kwargs.get('referenceid'),
|
||||||
downloads_remaining= kwargs.get('downloadlimit'),
|
downloads_remaining= kwargs.get('downloadlimit'),
|
||||||
expirydays=kwargs.get('expirydays'),
|
expirydays=kwargs.get('expirydays'),
|
||||||
)
|
)
|
||||||
return boox
|
return boox
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,10 @@
|
||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
from django.db.models.signals import post_migrate
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
from regluit.core.signals import create_notice_types
|
|
||||||
|
|
||||||
class CoreConfig(AppConfig):
|
class CoreConfig(AppConfig):
|
||||||
name = 'regluit.core'
|
name = 'regluit.core'
|
||||||
verbose_name = ' core objects'
|
verbose_name = ' core objects'
|
||||||
|
|
||||||
def ready(self):
|
def ready(self):
|
||||||
|
from regluit.core.signals import create_notice_types
|
||||||
post_migrate.connect(create_notice_types, sender=self)
|
post_migrate.connect(create_notice_types, sender=self)
|
|
@ -101,7 +101,7 @@ def create_notice_types( **kwargs):
|
||||||
notification.create_notice_type("purchase_notgot_gift", _("Your gift wasn't received."), _("The ebook you sent as a gift has not yet been redeemed."))
|
notification.create_notice_type("purchase_notgot_gift", _("Your gift wasn't received."), _("The ebook you sent as a gift has not yet been redeemed."))
|
||||||
notification.create_notice_type("donation", _("Your donation was processed."), _("Thank you, your generous donation has been processed."))
|
notification.create_notice_type("donation", _("Your donation was processed."), _("Thank you, your generous donation has been processed."))
|
||||||
|
|
||||||
signals.post_syncdb.connect(create_notice_types, sender=notification)
|
signals.post_migrate.connect(create_notice_types, sender=notification)
|
||||||
|
|
||||||
# define the notifications and tie them to corresponding signals
|
# define the notifications and tie them to corresponding signals
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,10 @@ import os
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from decimal import Decimal as D
|
from decimal import Decimal as D
|
||||||
from math import factorial
|
from math import factorial
|
||||||
from time import sleep, mktime
|
import unittest
|
||||||
from urlparse import parse_qs, urlparse
|
from urlparse import parse_qs, urlparse
|
||||||
from tempfile import NamedTemporaryFile
|
from tempfile import NamedTemporaryFile
|
||||||
|
from time import sleep, mktime
|
||||||
|
|
||||||
from celery.task.sets import TaskSet
|
from celery.task.sets import TaskSet
|
||||||
import requests
|
import requests
|
||||||
|
@ -25,7 +26,6 @@ from django.http import Http404
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
from django.test.client import Client
|
from django.test.client import Client
|
||||||
from django.test.utils import override_settings
|
from django.test.utils import override_settings
|
||||||
from django.utils import unittest
|
|
||||||
from django.utils.timezone import now
|
from django.utils.timezone import now
|
||||||
|
|
||||||
from django_comments.models import Comment
|
from django_comments.models import Comment
|
||||||
|
@ -163,7 +163,7 @@ class BookLoaderTests(TestCase):
|
||||||
if not (mocking or settings.TEST_INTEGRATION):
|
if not (mocking or settings.TEST_INTEGRATION):
|
||||||
return
|
return
|
||||||
edition = bookloader.add_by_isbn('9787104030126')
|
edition = bookloader.add_by_isbn('9787104030126')
|
||||||
self.assertEqual(edition.work.language, 'zh-CN')
|
self.assertEqual(edition.work.language, u'zh-CN')
|
||||||
|
|
||||||
def test_update_edition_mock(self):
|
def test_update_edition_mock(self):
|
||||||
with requests_mock.Mocker(real_http=True) as m:
|
with requests_mock.Mocker(real_http=True) as m:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load lang_utils %}
|
{% load lang_utils %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load lang_utils %}
|
{% load lang_utils %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load lang_utils %}
|
{% load lang_utils %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
{% load truncatechars %}
|
{% load truncatechars %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load truncatechars %}
|
{% load truncatechars %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load lang_utils %}
|
{% load lang_utils %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
|
||||||
{% load endless %}
|
{% load el_pagination_tags %}
|
||||||
{% load lang_utils %}
|
{% load lang_utils %}
|
||||||
{% load sass_tags %}
|
{% load sass_tags %}
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,6 @@
|
||||||
"""
|
|
||||||
The truncatechars filter is part of Django dev, but we're on 1.3.1
|
|
||||||
The following is the filter and its dependencies
|
|
||||||
To use this filter, put "{% load truncatechars %}" at the beginning of your template,
|
|
||||||
then {{ myvariable|truncatechars:num }}
|
|
||||||
"""
|
|
||||||
import unicodedata
|
import unicodedata
|
||||||
|
|
||||||
from django.template.base import Library
|
from django.template import Library
|
||||||
from django.template.defaultfilters import stringfilter
|
from django.template.defaultfilters import stringfilter
|
||||||
from django.utils.translation import get_language_info
|
from django.utils.translation import get_language_info
|
||||||
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ then {{ myvariable|truncatechars:num }}
|
||||||
import unicodedata
|
import unicodedata
|
||||||
|
|
||||||
from django import template
|
from django import template
|
||||||
from django.template.base import Library
|
from django.template import Library
|
||||||
from django.template.defaultfilters import stringfilter
|
from django.template.defaultfilters import stringfilter
|
||||||
from django.utils.encoding import force_unicode
|
from django.utils.encoding import force_unicode
|
||||||
from django.utils.functional import allow_lazy, SimpleLazyObject
|
from django.utils.functional import allow_lazy, SimpleLazyObject
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
"""
|
"""
|
||||||
from urllib import unquote
|
from urllib import unquote
|
||||||
|
|
||||||
from django.template.base import Library
|
from django.template import Library
|
||||||
from django.template.defaultfilters import stringfilter
|
from django.template.defaultfilters import stringfilter
|
||||||
|
|
||||||
register = Library()
|
register = Library()
|
||||||
|
|
|
@ -1 +1,9 @@
|
||||||
from . import signals
|
from django.apps import AppConfig
|
||||||
|
|
||||||
|
default_app_config = 'regluit.libraryauth.LibraryAuthConfig'
|
||||||
|
|
||||||
|
class LibraryAuthConfig(AppConfig):
|
||||||
|
name = 'regluit.libraryauth'
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
from . import signals
|
|
@ -1,6 +1,6 @@
|
||||||
import unicodedata
|
import unicodedata
|
||||||
|
|
||||||
from django.template.base import Library
|
from django.template import Library
|
||||||
from .. import models
|
from .. import models
|
||||||
|
|
||||||
register = Library()
|
register = Library()
|
||||||
|
|
|
@ -6,12 +6,15 @@ external library imports
|
||||||
"""
|
"""
|
||||||
import logging
|
import logging
|
||||||
import json
|
import json
|
||||||
import re
|
|
||||||
import stripe
|
|
||||||
|
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from itertools import islice
|
from itertools import islice
|
||||||
from pytz import utc
|
from pytz import utc
|
||||||
|
import re
|
||||||
|
import unittest
|
||||||
|
from unittest import TestCase
|
||||||
|
|
||||||
|
import stripe
|
||||||
|
|
||||||
"""
|
"""
|
||||||
django imports
|
django imports
|
||||||
|
@ -73,12 +76,6 @@ def grouper(iterable, page_size):
|
||||||
class StripelibError(baseprocessor.ProcessorError):
|
class StripelibError(baseprocessor.ProcessorError):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
try:
|
|
||||||
import unittest
|
|
||||||
from unittest import TestCase
|
|
||||||
except:
|
|
||||||
from django.test import TestCase
|
|
||||||
from django.utils import unittest
|
|
||||||
|
|
||||||
# if customer.id doesn't exist, create one and then charge the customer
|
# if customer.id doesn't exist, create one and then charge the customer
|
||||||
# we probably should ask our users whether they are ok with our creating a customer id account -- or ask for credit
|
# we probably should ask our users whether they are ok with our creating a customer id account -- or ask for credit
|
||||||
|
|
|
@ -5,6 +5,7 @@ import logging
|
||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
import traceback
|
import traceback
|
||||||
|
import unittest
|
||||||
|
|
||||||
from datetime import timedelta
|
from datetime import timedelta
|
||||||
from decimal import Decimal as D
|
from decimal import Decimal as D
|
||||||
|
@ -19,8 +20,11 @@ from django.contrib.auth.models import User
|
||||||
from django.core.exceptions import ValidationError
|
from django.core.exceptions import ValidationError
|
||||||
from django.core.validators import URLValidator
|
from django.core.validators import URLValidator
|
||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
|
<<<<<<< HEAD
|
||||||
|
=======
|
||||||
from django.utils import unittest
|
from django.utils import unittest
|
||||||
from django.utils.timezone import now
|
from django.utils.timezone import now
|
||||||
|
>>>>>>> Gluejar/master
|
||||||
|
|
||||||
"""
|
"""
|
||||||
regluit imports
|
regluit imports
|
||||||
|
|
|
@ -13,7 +13,7 @@ django imports
|
||||||
"""
|
"""
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.contrib.auth.models import User
|
from django.contrib.auth.models import User
|
||||||
from django.contrib.sites.models import RequestSite
|
from django.contrib.sites.requests import RequestSite
|
||||||
from django.core.urlresolvers import reverse
|
from django.core.urlresolvers import reverse
|
||||||
from django.http import (
|
from django.http import (
|
||||||
HttpResponse,
|
HttpResponse,
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
Django==1.8.14
|
Django==1.9.13
|
||||||
Fabric==1.6.0
|
Fabric==1.6.0
|
||||||
MySQL-python==1.2.5
|
MySQL-python==1.2.5
|
||||||
Pillow==3.4.2
|
Pillow==3.4.2
|
||||||
PyJWT==1.4.1
|
PyJWT==1.4.1
|
||||||
PyPDF2==1.23
|
PyPDF2==1.26
|
||||||
PyGithub==1.15.0
|
PyGithub==1.15.0
|
||||||
PyYAML==3.11
|
PyYAML==3.11
|
||||||
amqp==1.4.9
|
amqp==1.4.9
|
||||||
|
@ -19,29 +19,29 @@ certifi==2016.2.28
|
||||||
django-celery==3.1.17
|
django-celery==3.1.17
|
||||||
django-ckeditor==4.5.1
|
django-ckeditor==4.5.1
|
||||||
#django-email-change==0.2.3
|
#django-email-change==0.2.3
|
||||||
git+git://github.com/eshellman/django-email-change.git@1e71dd320504d56b1fc7d447ce4cffb550cedce7
|
git+git://github.com/eshellman/django-email-change.git@57169bdef1c8a41d122e2bab2dcd8564b8fb231d
|
||||||
django-compat==1.0.10
|
django-compat==1.0.10
|
||||||
django-contrib-comments==1.7.1
|
django-contrib-comments==1.7.1
|
||||||
django-endless-pagination==2.0
|
django-el-pagination==3.2.4
|
||||||
django-extensions==1.6.1
|
django-extensions==1.6.1
|
||||||
django-jsonfield==1.0.0
|
django-jsonfield==1.0.0
|
||||||
#django-kombu==0.9.4
|
#django-kombu==0.9.4
|
||||||
django-maintenancemode==0.11.2
|
django-maintenancemode==0.11.2
|
||||||
django-mptt==0.8.5
|
django-mptt==0.8.5
|
||||||
#django-notification==0.2
|
#django-notification==0.2
|
||||||
git+git://github.com/eshellman/django-notification.git@412c7a03a327195a1017c2be92c8e2caabc880b6
|
git+git://github.com/eshellman/django-notification.git@a4620e893e2da220994e0189bf5d980bfbdcf0ad
|
||||||
django-registration==2.1.2
|
django-registration==2.1.2
|
||||||
django-selectable==0.9.0
|
django-selectable==0.9.0
|
||||||
django-smtp-ssl==1.0
|
django-smtp-ssl==1.0
|
||||||
django-storages==1.4.1
|
django-storages==1.4.1
|
||||||
django-tastypie==0.13.3
|
django-tastypie==0.13.3
|
||||||
django-transmeta==0.7.3
|
#django-transmeta==0.7.3 git+git://github.com/resulto/django-transmeta.git@ad4d7278ba330dcf8c8446f8ae9b2c769ae8684e
|
||||||
fef-questionnaire==4.0.1
|
fef-questionnaire==4.0.1
|
||||||
#gitenberg.metadata==0.1.6
|
#gitenberg.metadata==0.1.6
|
||||||
git+https://github.com/gitenberg-dev/gitberg-build
|
git+https://github.com/gitenberg-dev/gitberg-build
|
||||||
#git+ssh://git@github.com/gitenberg-dev/metadata.git@0.1.11
|
#git+ssh://git@github.com/gitenberg-dev/metadata.git@0.1.11
|
||||||
github3.py==0.9.5
|
github3.py==0.9.5
|
||||||
html5lib==1.0b3
|
html5lib==1.0.1
|
||||||
httplib2==0.7.5
|
httplib2==0.7.5
|
||||||
isodate==0.5.1
|
isodate==0.5.1
|
||||||
kombu==3.0.35
|
kombu==3.0.35
|
||||||
|
@ -68,7 +68,7 @@ pytz==2016.6.1
|
||||||
rdflib==4.2.0
|
rdflib==4.2.0
|
||||||
rdflib-jsonld==0.3
|
rdflib-jsonld==0.3
|
||||||
redis==2.10.3
|
redis==2.10.3
|
||||||
reportlab==3.1.8
|
reportlab==3.4.0
|
||||||
requests==2.10.0
|
requests==2.10.0
|
||||||
requests-mock==1.2.0
|
requests-mock==1.2.0
|
||||||
requests-oauthlib==0.6.2
|
requests-oauthlib==0.6.2
|
||||||
|
@ -82,7 +82,8 @@ virtualenv==1.4.9
|
||||||
# virtualenv-clone==0.2.4 not sure why I have this in my env
|
# virtualenv-clone==0.2.4 not sure why I have this in my env
|
||||||
#virtualenvwrapper==3.6
|
#virtualenvwrapper==3.6
|
||||||
wsgiref==0.1.2
|
wsgiref==0.1.2
|
||||||
xhtml2pdf==0.0.6
|
xhtml2pdf==0.2.2
|
||||||
|
webencodings==0.5.1
|
||||||
#for urllib3 secure
|
#for urllib3 secure
|
||||||
cffi==1.7.0
|
cffi==1.7.0
|
||||||
cryptography==1.4
|
cryptography==1.4
|
||||||
|
|
|
@ -165,7 +165,7 @@ INSTALLED_APPS = (
|
||||||
'social.apps.django_app.default',
|
'social.apps.django_app.default',
|
||||||
'tastypie',
|
'tastypie',
|
||||||
'djcelery',
|
'djcelery',
|
||||||
'endless_pagination',
|
'el_pagination',
|
||||||
'selectable',
|
'selectable',
|
||||||
'regluit.frontend.templatetags',
|
'regluit.frontend.templatetags',
|
||||||
'notification',
|
'notification',
|
||||||
|
|
|
@ -29,7 +29,9 @@ DATABASES = {
|
||||||
'PASSWORD': '',
|
'PASSWORD': '',
|
||||||
'HOST': '',
|
'HOST': '',
|
||||||
'PORT': '',
|
'PORT': '',
|
||||||
'TEST_CHARSET': 'utf8',
|
'TEST': {
|
||||||
|
'CHARSET': 'utf8',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,9 @@ DATABASES = {
|
||||||
'PASSWORD': 'regluit',
|
'PASSWORD': 'regluit',
|
||||||
'HOST': '',
|
'HOST': '',
|
||||||
'PORT': '',
|
'PORT': '',
|
||||||
'TEST_CHARSET': 'utf8',
|
'TEST': {
|
||||||
|
'CHARSET': 'utf8',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,7 +22,9 @@ DATABASES = {
|
||||||
'PASSWORD': DATABASE_PASSWORD,
|
'PASSWORD': DATABASE_PASSWORD,
|
||||||
'HOST': DATABASE_HOST,
|
'HOST': DATABASE_HOST,
|
||||||
'PORT': '',
|
'PORT': '',
|
||||||
'TEST_CHARSET': 'utf8'
|
'TEST': {
|
||||||
|
'CHARSET': 'utf8',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,9 @@ DATABASES = {
|
||||||
'PASSWORD': DATABASE_PASSWORD,
|
'PASSWORD': DATABASE_PASSWORD,
|
||||||
'HOST': DATABASE_HOST,
|
'HOST': DATABASE_HOST,
|
||||||
'PORT': '',
|
'PORT': '',
|
||||||
'TEST_CHARSET': 'utf8',
|
'TEST': {
|
||||||
|
'CHARSET': 'utf8',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,9 @@ DATABASES = {
|
||||||
'PASSWORD': DATABASE_PASSWORD,
|
'PASSWORD': DATABASE_PASSWORD,
|
||||||
'HOST': DATABASE_HOST,
|
'HOST': DATABASE_HOST,
|
||||||
'PORT': '',
|
'PORT': '',
|
||||||
'TEST_CHARSET': 'utf8',
|
'TEST': {
|
||||||
|
'CHARSET': 'utf8',
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue