diff --git a/cms_helper.py b/cms_helper.py index e8c7bf8..ef6b154 100755 --- a/cms_helper.py +++ b/cms_helper.py @@ -1,5 +1,7 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from tempfile import mkdtemp gettext = lambda s: s diff --git a/djangocms_blog/admin.py b/djangocms_blog/admin.py index d20ac4d..70189fe 100755 --- a/djangocms_blog/admin.py +++ b/djangocms_blog/admin.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from copy import deepcopy from cms.admin.placeholderadmin import FrontendEditableAdminMixin, PlaceholderAdminMixin diff --git a/djangocms_blog/cms_app.py b/djangocms_blog/cms_app.py index 2a6243b..508c665 100644 --- a/djangocms_blog/cms_app.py +++ b/djangocms_blog/cms_app.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.app_base import CMSApp from cms.apphook_pool import apphook_pool from django.utils.translation import ugettext_lazy as _ diff --git a/djangocms_blog/cms_plugins.py b/djangocms_blog/cms_plugins.py index c25b8c3..42ce80a 100644 --- a/djangocms_blog/cms_plugins.py +++ b/djangocms_blog/cms_plugins.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.models.pluginmodel import CMSPlugin from cms.plugin_base import CMSPluginBase from cms.plugin_pool import plugin_pool diff --git a/djangocms_blog/cms_toolbar.py b/djangocms_blog/cms_toolbar.py index 4ab5fce..e8b7a17 100644 --- a/djangocms_blog/cms_toolbar.py +++ b/djangocms_blog/cms_toolbar.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.toolbar_base import CMSToolbar from cms.toolbar_pool import toolbar_pool from django.core.urlresolvers import reverse diff --git a/djangocms_blog/compat.py b/djangocms_blog/compat.py index 7a2405d..54efadd 100644 --- a/djangocms_blog/compat.py +++ b/djangocms_blog/compat.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from heapq import nlargest from itertools import ifilter, repeat from operator import itemgetter diff --git a/djangocms_blog/feeds.py b/djangocms_blog/feeds.py index 5c45ebe..0675c0d 100644 --- a/djangocms_blog/feeds.py +++ b/djangocms_blog/feeds.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django.contrib.sites.models import Site from django.contrib.syndication.views import Feed from django.core.urlresolvers import reverse diff --git a/djangocms_blog/forms.py b/djangocms_blog/forms.py index 4dd5226..9ffc323 100644 --- a/djangocms_blog/forms.py +++ b/djangocms_blog/forms.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django import forms from django.conf import settings from taggit_autosuggest.widgets import TagAutoSuggest diff --git a/djangocms_blog/menu.py b/djangocms_blog/menu.py index 3de4175..d28099f 100644 --- a/djangocms_blog/menu.py +++ b/djangocms_blog/menu.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.menu_bases import CMSAttachMenu from django.db.models.signals import post_delete, post_save from django.utils.translation import get_language, ugettext_lazy as _ diff --git a/djangocms_blog/models.py b/djangocms_blog/models.py index e7bd057..f5deb6a 100644 --- a/djangocms_blog/models.py +++ b/djangocms_blog/models.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.models import CMSPlugin, PlaceholderField from django.conf import settings as dj_settings from django.core.urlresolvers import reverse @@ -74,52 +76,52 @@ class Post(ModelMeta, TranslatableModel): Blog post """ author = models.ForeignKey(dj_settings.AUTH_USER_MODEL, - verbose_name=_(u'author'), null=True, blank=True, + verbose_name=_('author'), null=True, blank=True, related_name='djangocms_blog_post_author') - date_created = models.DateTimeField(_(u'created'), auto_now_add=True) - date_modified = models.DateTimeField(_(u'last modified'), auto_now=True) - date_published = models.DateTimeField(_(u'published Since'), + date_created = models.DateTimeField(_('created'), auto_now_add=True) + date_modified = models.DateTimeField(_('last modified'), auto_now=True) + date_published = models.DateTimeField(_('published Since'), default=timezone.now) - date_published_end = models.DateTimeField(_(u'published Until'), null=True, + date_published_end = models.DateTimeField(_('published Until'), null=True, blank=True) - publish = models.BooleanField(_(u'publish'), default=False) - categories = models.ManyToManyField('djangocms_blog.BlogCategory', verbose_name=_(u'category'), + publish = models.BooleanField(_('publish'), default=False) + categories = models.ManyToManyField('djangocms_blog.BlogCategory', verbose_name=_('category'), related_name='blog_posts',) - main_image = FilerImageField(verbose_name=_(u'main image'), blank=True, null=True, + main_image = FilerImageField(verbose_name=_('main image'), blank=True, null=True, on_delete=models.SET_NULL, related_name='djangocms_blog_post_image') main_image_thumbnail = models.ForeignKey('cmsplugin_filer_image.ThumbnailOption', - verbose_name=_(u'main image thumbnail'), + verbose_name=_('main image thumbnail'), related_name='djangocms_blog_post_thumbnail', on_delete=models.SET_NULL, blank=True, null=True) main_image_full = models.ForeignKey('cmsplugin_filer_image.ThumbnailOption', - verbose_name=_(u'main image full'), + verbose_name=_('main image full'), related_name='djangocms_blog_post_full', on_delete=models.SET_NULL, blank=True, null=True) - enable_comments = models.BooleanField(verbose_name=_(u'enable comments on post'), + enable_comments = models.BooleanField(verbose_name=_('enable comments on post'), default=get_setting('ENABLE_COMMENTS')) - sites = models.ManyToManyField('sites.Site', verbose_name=_(u'Site(s)'), blank=True, + sites = models.ManyToManyField('sites.Site', verbose_name=_('Site(s)'), blank=True, null=True, - help_text=_(u'Select sites in which to show the post. ' + help_text=_('Select sites in which to show the post. ' u'If none is set it will be ' u'visible in all the configured sites.')) translations = TranslatedFields( - title=models.CharField(_(u'title'), max_length=255), - slug=models.SlugField(_(u'slug'), blank=True, db_index=True), - abstract=HTMLField(_(u'abstract'), blank=True, default=''), - meta_description=models.TextField(verbose_name=_(u'post meta description'), + title=models.CharField(_('title'), max_length=255), + slug=models.SlugField(_('slug'), blank=True, db_index=True), + abstract=HTMLField(_('abstract'), blank=True, default=''), + meta_description=models.TextField(verbose_name=_('post meta description'), blank=True, default=''), - meta_keywords=models.TextField(verbose_name=_(u'post meta keywords'), + meta_keywords=models.TextField(verbose_name=_('post meta keywords'), blank=True, default=''), - meta_title=models.CharField(verbose_name=_(u'post meta title'), - help_text=_(u'used in title tag and social sharing'), + meta_title=models.CharField(verbose_name=_('post meta title'), + help_text=_('used in title tag and social sharing'), max_length=255, blank=True, default=''), - post_text=HTMLField(_(u'text'), default='', blank=True), + post_text=HTMLField(_('text'), default='', blank=True), meta={'unique_together': (('language_code', 'slug'),)} ) content = PlaceholderField('post_content', related_name='post_content') @@ -239,19 +241,19 @@ class BasePostPlugin(CMSPlugin): class LatestPostsPlugin(BasePostPlugin): - latest_posts = models.IntegerField(_(u'articles'), default=get_setting('LATEST_POSTS'), - help_text=_(u'The number of latests ' + latest_posts = models.IntegerField(_('articles'), default=get_setting('LATEST_POSTS'), + help_text=_('The number of latests ' u'articles to be displayed.')) - tags = TaggableManager(_(u'filter by tag'), blank=True, - help_text=_(u'Show only the blog articles tagged with chosen tags.'), + tags = TaggableManager(_('filter by tag'), blank=True, + help_text=_('Show only the blog articles tagged with chosen tags.'), related_name='djangocms_blog_latest_post') categories = models.ManyToManyField('djangocms_blog.BlogCategory', blank=True, - verbose_name=_(u'filter by category'), - help_text=_(u'Show only the blog articles tagged ' + verbose_name=_('filter by category'), + help_text=_('Show only the blog articles tagged ' u'with chosen categories.')) def __str__(self): - return _(u'%s latest articles by tag') % self.latest_posts + return _('%s latest articles by tag') % self.latest_posts def copy_relations(self, oldinstance): for tag in oldinstance.tags.all(): @@ -272,12 +274,12 @@ class AuthorEntriesPlugin(BasePostPlugin): limit_choices_to={'djangocms_blog_post_author__publish': True} ) latest_posts = models.IntegerField( - _(u'articles'), default=get_setting('LATEST_POSTS'), - help_text=_(u'The number of author articles to be displayed.') + _('articles'), default=get_setting('LATEST_POSTS'), + help_text=_('The number of author articles to be displayed.') ) def __str__(self): - return _(u'%s latest articles by author') % self.latest_posts + return _('%s latest articles by author') % self.latest_posts def copy_relations(self, oldinstance): self.authors = oldinstance.authors.all() diff --git a/djangocms_blog/settings.py b/djangocms_blog/settings.py index 700d5e1..6676154 100644 --- a/djangocms_blog/settings.py +++ b/djangocms_blog/settings.py @@ -1,4 +1,5 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals def get_setting(name): diff --git a/djangocms_blog/sitemaps/__init__.py b/djangocms_blog/sitemaps/__init__.py index b23e5f7..76bd2ba 100644 --- a/djangocms_blog/sitemaps/__init__.py +++ b/djangocms_blog/sitemaps/__init__.py @@ -1,11 +1,13 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django.contrib.sitemaps import Sitemap from ..models import Post class BlogSitemap(Sitemap): - changefreq = "never" + changefreq = 'never' priority = 0.5 def items(self): diff --git a/djangocms_blog/urls.py b/djangocms_blog/urls.py index 9eb383a..b4896cb 100644 --- a/djangocms_blog/urls.py +++ b/djangocms_blog/urls.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django.conf.urls import patterns, url from .feeds import LatestEntriesFeed, TagFeed diff --git a/djangocms_blog/views.py b/djangocms_blog/views.py index a638a42..31c64f5 100644 --- a/djangocms_blog/views.py +++ b/djangocms_blog/views.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django.contrib.auth import get_user_model from django.core.urlresolvers import resolve from django.utils.timezone import now diff --git a/tests/__init__.py b/tests/__init__.py index 724cffa..9cf872c 100644 --- a/tests/__init__.py +++ b/tests/__init__.py @@ -2,6 +2,7 @@ """ Tests for `djangocms_blog` module. """ +from __future__ import absolute_import, print_function, unicode_literals from cmsplugin_filer_image.models import ThumbnailOption from django.contrib.auth import get_user_model diff --git a/tests/test_menu.py b/tests/test_menu.py index 9d79c5b..84d334c 100644 --- a/tests/test_menu.py +++ b/tests/test_menu.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + import copy from django.utils.translation import activate diff --git a/tests/test_models.py b/tests/test_models.py index 1dcaa9f..771ac94 100644 --- a/tests/test_models.py +++ b/tests/test_models.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from copy import deepcopy import parler diff --git a/tests/test_plugins.py b/tests/test_plugins.py index 2422931..348a6ca 100644 --- a/tests/test_plugins.py +++ b/tests/test_plugins.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + import re from cms.api import add_plugin diff --git a/tests/test_toolbar.py b/tests/test_toolbar.py index 534a224..be0ffb9 100644 --- a/tests/test_toolbar.py +++ b/tests/test_toolbar.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.toolbar.items import ModalItem from django.core.urlresolvers import reverse diff --git a/tests/test_utils/urls.py b/tests/test_utils/urls.py index 080855a..ec11f56 100644 --- a/tests/test_utils/urls.py +++ b/tests/test_utils/urls.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from cms.utils.conf import get_cms_setting from django.conf import settings from django.conf.urls import include, patterns, url diff --git a/tests/test_views.py b/tests/test_views.py index eb95b70..27c35e8 100644 --- a/tests/test_views.py +++ b/tests/test_views.py @@ -1,4 +1,6 @@ # -*- coding: utf-8 -*- +from __future__ import absolute_import, print_function, unicode_literals + from django.contrib.auth.models import AnonymousUser from django.http import Http404 from django.utils.timezone import now