Merge remote-tracking branch 'upstream/develop' into develop
* upstream/develop: (69 commits) Bump development version Add travis cache Test travis cache Update history Fixing #209 Test copy relations fix error in wizard tests Fix test Add Django 1.9 to travis Django 1.9 compatible admin Add support for moved ThumbnailOption Update changelog use post.get_title() to get fallback title from meta don't repeat blog title in search index twice remove defunct test fix Post.get_keywords to handle empty keywords, cleanup search_indexes Fix test Fix string formatting Fix selecting current menu item according to menu layout Update history ... Conflicts: djangocms_blog/locale/sl/LC_MESSAGES/django.mo djangocms_blog/locale/sl/LC_MESSAGES/django.po
This commit is contained in:
commit
2fbb07dc52
73 changed files with 2184 additions and 1075 deletions
4
.checkignore
Normal file
4
.checkignore
Normal file
|
@ -0,0 +1,4 @@
|
|||
tests/*
|
||||
docs/*
|
||||
djangocms_blog/south_migrations/*
|
||||
djangocms_blog/migrations/*
|
5
.gitlab-ci.yml
Normal file
5
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,5 @@
|
|||
# This file is generated by GitLab CI
|
||||
ci:
|
||||
script:
|
||||
- COMMAND="coverage run" tox -epep8,isort,py35-django19-cms32,py34-django18-cms31,py27-django16-cms30
|
||||
- if [[ $? -eq 0 ]]; then coverage report; fi
|
38
.travis.yml
38
.travis.yml
|
@ -15,6 +15,7 @@ env:
|
|||
matrix:
|
||||
- TOXENV='pep8'
|
||||
- TOXENV='isort'
|
||||
- DJANGO='django19' CMS='cms32'
|
||||
- DJANGO='django18' CMS='cms32'
|
||||
- DJANGO='django18' CMS='cms31'
|
||||
- DJANGO='django17' CMS='cms32'
|
||||
|
@ -27,7 +28,6 @@ env:
|
|||
|
||||
# command to install dependencies, e.g. pip install -r requirements.txt --use-mirrors
|
||||
install:
|
||||
- pip install -U tox>=1.8 coveralls
|
||||
- "if [[ $TRAVIS_PYTHON_VERSION == '2.6' ]]; then export PYVER=py26; fi"
|
||||
- "if [[ $TRAVIS_PYTHON_VERSION == '2.7' ]]; then export PYVER=py27; fi"
|
||||
- "if [[ $TRAVIS_PYTHON_VERSION == '3.3' ]]; then export PYVER=py33; fi"
|
||||
|
@ -39,7 +39,7 @@ install:
|
|||
script: COMMAND='coverage run' tox -e$TOXENV
|
||||
|
||||
before_install:
|
||||
- pip install codecov
|
||||
- pip install -U tox>=1.8 coveralls codecov wheel pip
|
||||
after_success:
|
||||
- codecov
|
||||
- coveralls
|
||||
|
@ -72,6 +72,10 @@ matrix:
|
|||
env: DJANGO='django18' CMS='cms31'
|
||||
- python: 2.6
|
||||
env: DJANGO='django18' CMS='cms32'
|
||||
- python: 2.6
|
||||
env: DJANGO='django19' CMS='cms32'
|
||||
- python: 3.3
|
||||
env: DJANGO='django19' CMS='cms32'
|
||||
- python: 3.5
|
||||
env: DJANGO='django16' CMS='cms30'
|
||||
- python: 3.5
|
||||
|
@ -85,26 +89,10 @@ matrix:
|
|||
- python: 3.5
|
||||
env: DJANGO='django17' CMS='cms32'
|
||||
|
||||
allow_failures:
|
||||
- python: 2.6
|
||||
env: DJANGO='django16' CMS='cms32'
|
||||
- python: 2.7
|
||||
env: DJANGO='django16' CMS='cms32'
|
||||
- python: 2.7
|
||||
env: DJANGO='django17' CMS='cms32'
|
||||
- python: 2.7
|
||||
env: DJANGO='django18' CMS='cms32'
|
||||
- python: 3.3
|
||||
env: DJANGO='django16' CMS='cms32'
|
||||
- python: 3.3
|
||||
env: DJANGO='django17' CMS='cms32'
|
||||
- python: 3.3
|
||||
env: DJANGO='django18' CMS='cms32'
|
||||
- python: 3.4
|
||||
env: DJANGO='django16' CMS='cms32'
|
||||
- python: 3.4
|
||||
env: DJANGO='django17' CMS='cms32'
|
||||
- python: 3.4
|
||||
env: DJANGO='django18' CMS='cms32'
|
||||
- python: 3.5
|
||||
env: DJANGO='django18' CMS='cms32'
|
||||
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.pip-accel
|
||||
- $HOME/.cache/pip
|
||||
|
||||
|
||||
|
|
|
@ -25,3 +25,4 @@ Contributors
|
|||
* Stefan Wehrmeyer
|
||||
* Sylvain Fankhauser
|
||||
* Tadas Dailyda
|
||||
* Olivier Tabone
|
||||
|
|
18
HISTORY.rst
18
HISTORY.rst
|
@ -3,11 +3,27 @@
|
|||
History
|
||||
-------
|
||||
|
||||
0.6.3 (XXXX-XX-XX)
|
||||
0.7.0 (unreleased)
|
||||
++++++++++++++++++
|
||||
|
||||
* Make categories non required
|
||||
* Fix tests with parler>=1.6
|
||||
* Use all_languages_column to admin
|
||||
* Add publish button
|
||||
* Fix issues in migrations. Thanks @skirsdeda
|
||||
* Fix selecting current menu item according to menu layout
|
||||
* Fix some issues with haystack indexes
|
||||
* Add support for moved ThumbnailOption
|
||||
* Fix Django 1.9 issues
|
||||
* Fix copy relations method in plugins
|
||||
|
||||
0.6.3 (2015-12-22)
|
||||
++++++++++++++++++
|
||||
|
||||
* Add BLOG_ADMIN_POST_FIELDSET_FILTER to filter admin fieldsets
|
||||
* Ensure correct creation of full URL for canonical urls
|
||||
* Move constants to settings
|
||||
* Fix error when no config is found
|
||||
|
||||
0.6.2 (2015-11-16)
|
||||
++++++++++++++++++
|
||||
|
|
37
README.rst
37
README.rst
|
@ -30,7 +30,7 @@ djangocms-blog
|
|||
:target: https://codeclimate.com/github/nephila/djangocms-blog
|
||||
:alt: Code Climate
|
||||
|
||||
A djangoCMS 3 blog application.
|
||||
django CMS blog application - Support for multilingual posts, placeholders, social network meta tags and configurable apphooks.
|
||||
|
||||
Supported Django versions:
|
||||
|
||||
|
@ -47,6 +47,11 @@ Supported django CMS versions:
|
|||
A datamigration is in place to migrate the data, but check that
|
||||
works ok for your project before upgrading, as this might delete
|
||||
some relevant data.
|
||||
Some plugins have a broken tag management prior to 0.6, in case
|
||||
you have issues with tags, upgrade to latest version to have it fixed.
|
||||
|
||||
.. warning:: When upgrading to version 0.6, check that every post as an attached
|
||||
category, or select a menu without categories.
|
||||
|
||||
.. warning:: Starting from version 0.5, this package does not declare dependency
|
||||
on South anymore; please install it separately if using this
|
||||
|
@ -88,6 +93,7 @@ Add ``djangocms_blog`` and its dependencies to INSTALLED_APPS::
|
|||
...
|
||||
'filer',
|
||||
'easy_thumbnails',
|
||||
'aldryn_apphooks_config',
|
||||
'cmsplugin_filer_image',
|
||||
'parler',
|
||||
'taggit',
|
||||
|
@ -98,7 +104,7 @@ Add ``djangocms_blog`` and its dependencies to INSTALLED_APPS::
|
|||
...
|
||||
]
|
||||
|
||||
If you installed the **admin-enhancer** variant, add ``admin_enhancer`` to ``INSTALLED_APPS::
|
||||
If you installed the **admin-enhancer** variant, add ``admin_enhancer`` to ``INSTALLED_APPS``::
|
||||
|
||||
INSTALLED_APPS = [
|
||||
...
|
||||
|
@ -170,6 +176,9 @@ suited for your deployment.
|
|||
{'code': 'it',},
|
||||
{'code': 'fr',},
|
||||
),
|
||||
'default': {
|
||||
'fallbacks': ['en', 'it', 'fr'],
|
||||
}
|
||||
}
|
||||
|
||||
* Add the following to your ``urls.py``::
|
||||
|
@ -181,12 +190,17 @@ suited for your deployment.
|
|||
`Auto setup <auto_setup>`_:
|
||||
|
||||
* Create a new django CMS page
|
||||
* Go to Advanced settings and select Blog from the Application selector and
|
||||
create an application configuration;
|
||||
* Go to **Advanced settings** and select Blog from the **Application** selector and
|
||||
create an **Application configuration**;
|
||||
* Eventually customise the Application instance name;
|
||||
* Publish the page
|
||||
* Restart the project instance to properly load blog urls.
|
||||
|
||||
.. warning:: After adding the apphook to the page you **cannot** change the **Instance Namspace**
|
||||
field for the defined **AppHokConfig**; if you want to change it, create a new one
|
||||
with the correct namespace, go in the CMS page **Advanced settings** and switch to the
|
||||
new **Application configuration**
|
||||
|
||||
* Add and edit blog by creating them in the admin or using the toolbar,
|
||||
and the use the `django CMS frontend editor <http://django-cms.readthedocs.org/en/support-3.0.x/user/reference/page_admin.html#the-interface>`_
|
||||
to edit the blog content:
|
||||
|
@ -226,11 +240,14 @@ Menu
|
|||
|
||||
``djangocms_blog`` provides support for django CMS menu framework.
|
||||
|
||||
By default all the categories and posts are added to the menu, in a hierarcical structure.
|
||||
By default all the categories and posts are added to the menu, in a hierarchical structure.
|
||||
|
||||
Is it possibile to configure per Apphook, whether the menu includes post and categories
|
||||
(the default), only categorie, only posts or no item.
|
||||
|
||||
If "post and categories" or "only categories" are set, all the posts not associated with a
|
||||
category are not added to the menu.
|
||||
|
||||
Templates
|
||||
+++++++++
|
||||
|
||||
|
@ -363,6 +380,16 @@ Global Settings
|
|||
used; (default: ``True``)
|
||||
* BLOG_DEFAULT_PUBLISHED: If posts are marked as published by default;
|
||||
(default: ``False``)
|
||||
* BLOG_ADMIN_POST_FIELDSET_FILTER: Callable function to change(add or filter)
|
||||
fields to fieldsets for admin post edit form; (default: ``False``). Function simple example::
|
||||
|
||||
|
||||
def fieldset_filter_function(fsets, request, obj=None):
|
||||
if request.user.groups.filter(name='Editor').exists():
|
||||
fsets[1][1]['fields'][0].append('author') # adding 'author' field if user is Editor
|
||||
return fsets
|
||||
|
||||
|
||||
* BLOG_AVAILABLE_PERMALINK_STYLES: Choices of permalinks styles;
|
||||
* BLOG_PERMALINK_URLS: URLConf corresponding to
|
||||
BLOG_AVAILABLE_PERMALINK_STYLES;
|
||||
|
|
|
@ -4,7 +4,8 @@ from __future__ import absolute_import, print_function, unicode_literals
|
|||
|
||||
from tempfile import mkdtemp
|
||||
|
||||
gettext = lambda s: s
|
||||
|
||||
def gettext(s): return s
|
||||
|
||||
HELPER_SETTINGS = dict(
|
||||
ROOT_URLCONF='tests.test_utils.urls',
|
||||
|
@ -68,7 +69,7 @@ HELPER_SETTINGS = dict(
|
|||
{'code': 'en'},
|
||||
),
|
||||
'default': {
|
||||
'fallback': 'en',
|
||||
'fallbacks': ['en'],
|
||||
'hide_untranslated': False,
|
||||
}
|
||||
},
|
||||
|
@ -91,7 +92,7 @@ HELPER_SETTINGS = dict(
|
|||
),
|
||||
FILE_UPLOAD_TEMP_DIR=mkdtemp(),
|
||||
SITE_ID=1,
|
||||
HAYSTACK_CONNECTIONS = {
|
||||
HAYSTACK_CONNECTIONS={
|
||||
"default": {}
|
||||
}
|
||||
)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
__author__ = 'Iacopo Spalletti'
|
||||
__email__ = 'i.spalletti@nephila.it'
|
||||
__version__ = '0.6.2.post1'
|
||||
__version__ = '0.7.0.b1'
|
||||
|
||||
default_app_config = 'djangocms_blog.apps.BlogAppConfig'
|
||||
|
|
|
@ -7,9 +7,12 @@ from aldryn_apphooks_config.admin import BaseAppHookConfig, ModelAppHookConfig
|
|||
from cms.admin.placeholderadmin import FrontendEditableAdminMixin, PlaceholderAdminMixin
|
||||
from django import forms
|
||||
from django.conf import settings
|
||||
from django.conf.urls import url
|
||||
from django.contrib import admin
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.http import HttpResponseRedirect
|
||||
from django.utils.six import callable
|
||||
from django.utils.translation import get_language_from_request, ugettext_lazy as _
|
||||
from parler.admin import TranslatableAdmin
|
||||
|
||||
from .cms_appconfig import BlogConfig
|
||||
|
@ -25,6 +28,7 @@ except ImportError:
|
|||
|
||||
|
||||
class BlogCategoryAdmin(EnhancedModelAdminMixin, ModelAppHookConfig, TranslatableAdmin):
|
||||
|
||||
def get_prepopulated_fields(self, request, obj=None):
|
||||
app_config_default = self._app_config_select(request, obj)
|
||||
if app_config_default is None and request.method == 'GET':
|
||||
|
@ -41,7 +45,8 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin,
|
|||
ModelAppHookConfig, TranslatableAdmin):
|
||||
form = PostAdminForm
|
||||
list_display = [
|
||||
'title', 'author', 'date_published', 'app_config', 'languages', 'date_published_end'
|
||||
'title', 'author', 'date_published', 'app_config', 'all_languages_column',
|
||||
'date_published_end'
|
||||
]
|
||||
list_filter = ('app_config',)
|
||||
date_hierarchy = 'date_published'
|
||||
|
@ -71,8 +76,35 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin,
|
|||
'default_published': 'publish'
|
||||
}
|
||||
|
||||
def languages(self, obj):
|
||||
return ','.join(obj.get_available_languages())
|
||||
def get_urls(self):
|
||||
"""
|
||||
Customize the modeladmin urls
|
||||
"""
|
||||
urls = [
|
||||
url(r'^publish/([0-9]+)/$', self.admin_site.admin_view(self.publish_post),
|
||||
name='djangocms_blog_publish_article'),
|
||||
]
|
||||
urls.extend(super(PostAdmin, self).get_urls())
|
||||
return urls
|
||||
|
||||
def publish_post(self, request, pk):
|
||||
"""
|
||||
Admin view to publish a single post
|
||||
:param request: request
|
||||
:param pk: primary key of the post to publish
|
||||
:return: Redirect to the post itself (if found) or fallback urls
|
||||
"""
|
||||
language = get_language_from_request(request, check_path=True)
|
||||
try:
|
||||
post = Post.objects.get(pk=int(pk))
|
||||
post.publish = True
|
||||
post.save()
|
||||
return HttpResponseRedirect(post.get_absolute_url(language))
|
||||
except Exception:
|
||||
try:
|
||||
return HttpResponseRedirect(request.META['HTTP_REFERER'])
|
||||
except KeyError:
|
||||
return HttpResponseRedirect(reverse('djangocms_blog:posts-latest'))
|
||||
|
||||
def formfield_for_dbfield(self, db_field, **kwargs):
|
||||
field = super(PostAdmin, self).formfield_for_dbfield(db_field, **kwargs)
|
||||
|
@ -85,6 +117,12 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin,
|
|||
return field
|
||||
|
||||
def get_fieldsets(self, request, obj=None):
|
||||
"""
|
||||
Customize the fieldsets according to the app settings
|
||||
:param request: request
|
||||
:param obj: post
|
||||
:return: fieldsets configuration
|
||||
"""
|
||||
app_config_default = self._app_config_select(request, obj)
|
||||
if app_config_default is None and request.method == 'GET':
|
||||
return super(PostAdmin, self).get_fieldsets(request, obj)
|
||||
|
@ -108,18 +146,16 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin,
|
|||
fsets[1][1]['fields'][0].append('sites')
|
||||
if request.user.is_superuser:
|
||||
fsets[1][1]['fields'][0].append('author')
|
||||
filter_function = get_setting('ADMIN_POST_FIELDSET_FILTER')
|
||||
if callable(filter_function):
|
||||
fsets = filter_function(fsets, request, obj=obj)
|
||||
return fsets
|
||||
|
||||
def get_prepopulated_fields(self, request, obj=None):
|
||||
return {'slug': ('title',)}
|
||||
|
||||
def save_model(self, request, obj, form, change):
|
||||
if not obj.author_id and obj.app_config.set_author:
|
||||
if get_setting('AUTHOR_DEFAULT') is True:
|
||||
user = request.user
|
||||
else:
|
||||
user = get_user_model().objects.get(username=get_setting('AUTHOR_DEFAULT'))
|
||||
obj.author = user
|
||||
obj._set_default_author(request.user)
|
||||
super(PostAdmin, self).save_model(request, obj, form, change)
|
||||
|
||||
class Media:
|
||||
|
@ -132,6 +168,12 @@ class BlogConfigAdmin(BaseAppHookConfig, TranslatableAdmin):
|
|||
|
||||
@property
|
||||
def declared_fieldsets(self):
|
||||
return self.get_fieldsets(None)
|
||||
|
||||
def get_fieldsets(self, request, obj=None):
|
||||
"""
|
||||
Fieldsets configuration
|
||||
"""
|
||||
return [
|
||||
(None, {
|
||||
'fields': ('type', 'namespace', 'app_title', 'object_name')
|
||||
|
|
|
@ -23,6 +23,10 @@ class BlogConfig(TranslatableModel, AppHookConfig):
|
|||
),
|
||||
)
|
||||
|
||||
class Meta:
|
||||
verbose_name = _('blog config')
|
||||
verbose_name_plural = _('blog configs')
|
||||
|
||||
def get_app_title(self):
|
||||
return getattr(self, 'app_title', _('untitled'))
|
||||
|
||||
|
|
|
@ -3,6 +3,7 @@ from __future__ import absolute_import, print_function, unicode_literals
|
|||
|
||||
from cms.toolbar_base import CMSToolbar
|
||||
from cms.toolbar_pool import toolbar_pool
|
||||
from cms.utils.urlutils import admin_reverse
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.utils.translation import override, ugettext_lazy as _
|
||||
|
||||
|
@ -33,6 +34,22 @@ class BlogToolbar(CMSToolbar):
|
|||
'admin:djangocms_blog_post_change', args=(current_post.pk,)),
|
||||
active=True)
|
||||
|
||||
def add_publish_button(self):
|
||||
"""
|
||||
Adds the publish button to the toolbar if the current post is unpublished
|
||||
"""
|
||||
current_post = getattr(self.request, get_setting('CURRENT_POST_IDENTIFIER'), None)
|
||||
if (self.toolbar.edit_mode and current_post and
|
||||
not current_post.publish and
|
||||
self.request.user.has_perm('djangocms_blog.change_post')
|
||||
): # pragma: no cover # NOQA
|
||||
classes = ['cms-btn-action', 'blog-publish']
|
||||
title = _('Publish {0} now').format(current_post.app_config.object_name)
|
||||
|
||||
url = admin_reverse('djangocms_blog_publish_article', args=(current_post.pk,))
|
||||
|
||||
self.toolbar.add_button(title, url=url, extra_classes=classes, side=self.toolbar.RIGHT)
|
||||
|
||||
def post_template_populate(self):
|
||||
current_post = getattr(self.request, get_setting('CURRENT_POST_IDENTIFIER'), None)
|
||||
if current_post and self.request.user.has_perm('djangocms_blog.change_post'): # pragma: no cover # NOQA
|
||||
|
@ -52,3 +69,4 @@ class BlogToolbar(CMSToolbar):
|
|||
menu.remove_item(pagetags)
|
||||
except ImportError:
|
||||
pass
|
||||
self.add_publish_button()
|
||||
|
|
|
@ -1,6 +1,8 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
from cms.utils.permissions import get_current_user
|
||||
|
||||
try:
|
||||
from cms.wizards.wizard_base import Wizard
|
||||
from cms.wizards.wizard_pool import wizard_pool
|
||||
|
@ -35,6 +37,10 @@ try:
|
|||
class Media:
|
||||
js = ('admin/js/jquery.js', 'admin/js/jquery.init.js',)
|
||||
|
||||
def save(self, commit=True):
|
||||
self.instance._set_default_author(get_current_user())
|
||||
return super(PostWizardForm, self).save(commit)
|
||||
|
||||
class PostWizard(Wizard):
|
||||
pass
|
||||
|
||||
|
|
Binary file not shown.
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Arabic (http://www.transifex.com/nephila/djangocms-blog/language/ar/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,8 +26,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "المدونة"
|
||||
|
||||
|
@ -40,155 +39,144 @@ msgid "object name"
|
|||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "آخر مواضيع المدونة"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "ناشر مواضيع المدونة"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "علامات"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "الأقسام"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "الأرشيف"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "قائمة المواضيع"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "إضافة موضوع"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "التعديل على موضوع"
|
||||
|
||||
|
@ -223,7 +211,7 @@ msgstr ""
|
|||
msgid "modified at"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -333,52 +321,52 @@ msgstr ""
|
|||
msgid "blog articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -439,6 +427,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "آخر مواضيع المدونة"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "ناشر مواضيع المدونة"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "علامات"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "الأقسام"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "الأرشيف"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr ""
|
||||
|
|
Binary file not shown.
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: German (http://www.transifex.com/nephila/djangocms-blog/language/de/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,8 +26,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
|
@ -40,155 +39,144 @@ msgid "object name"
|
|||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Letzte Blog-Einträge"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Autoren Blog-Artikel"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tags"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategorien"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archiv"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Post Liste"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Post hinzufügen"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Post bearbeiten"
|
||||
|
||||
|
@ -223,7 +211,7 @@ msgstr "erstellt am"
|
|||
msgid "modified at"
|
||||
msgstr "bearbeitet am"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -333,52 +321,52 @@ msgstr "Blog-Artikel"
|
|||
msgid "blog articles"
|
||||
msgstr "Blog-Artikel"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Anzahl der anzuzeigenden letzten Artikel"
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Nur die Blog-Einträge mit dem ausgewählten Tag anzeigen"
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Nur die Blog-Einträge der ausgewählten Kategorie anzeigen"
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "Die Anzahl der anzuzeigenden Autoren-Artikel"
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -439,6 +427,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Letzte Blog-Einträge"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Autoren Blog-Artikel"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tags"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategorien"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archiv"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "weiterlesen"
|
||||
|
|
Binary file not shown.
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2014-03-05 18:09+0100\n"
|
||||
"Last-Translator: Iacopo Spalletti\n"
|
||||
"Language-Team: Italian <i.spalletti@nephila.it>\n"
|
||||
|
@ -25,8 +25,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
|
@ -40,157 +39,148 @@ msgstr ""
|
|||
|
||||
#: cms_appconfig.py:27
|
||||
#, fuzzy
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr "blog categories"
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#, fuzzy
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr "blog categories"
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
#, fuzzy
|
||||
msgid "untitled"
|
||||
msgstr "Title"
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
#, fuzzy
|
||||
msgid "Set author"
|
||||
msgstr "Author"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
#, fuzzy
|
||||
msgid "Facebook author"
|
||||
msgstr "Author"
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Latest Blog Articles"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Author Blog Articles"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tags"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categories"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archive"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Post list"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Add post"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr ""
|
||||
|
||||
|
@ -226,7 +216,7 @@ msgstr "created at"
|
|||
msgid "modified at"
|
||||
msgstr "modified at"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -349,55 +339,55 @@ msgstr "blog article"
|
|||
msgid "blog articles"
|
||||
msgstr "blog articles"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
#, fuzzy
|
||||
msgid "articles"
|
||||
msgstr "0 articles"
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "The number of latests articles to be displayed."
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Show only the blog articles tagged with chosen tags."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
#, fuzzy
|
||||
msgid "filter by category"
|
||||
msgstr "blog category"
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Show only the blog articles tagged with chosen categories."
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
#, fuzzy
|
||||
msgid "authors"
|
||||
msgstr "Authors"
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "The number of author articles to be displayed."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -462,6 +452,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Latest Blog Articles"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Author Blog Articles"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tags"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categories"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archive"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "read more"
|
||||
|
|
Binary file not shown.
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/nephila/djangocms-blog/language/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,8 +26,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
|
@ -40,155 +39,144 @@ msgid "object name"
|
|||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Últimos artículos del blog"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Artículos del blog por author"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Etiquetas"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categorías"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archivo"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Lista de entradas"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Añadir entradas"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Editar entrada"
|
||||
|
||||
|
@ -223,7 +211,7 @@ msgstr "Creado en"
|
|||
msgid "modified at"
|
||||
msgstr "Actualizado en"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -333,52 +321,52 @@ msgstr "artículo del blog"
|
|||
msgid "blog articles"
|
||||
msgstr "artículos del blog"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "El número de últimos artículos a mostrar."
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Mostrar solo los artículos del blog etiquetados con las etiquetas elegidas."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Mostrar solo los artículos del blog etiquetados con las categorías elegidas."
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "El número de autores de artículo a mostrar."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -439,6 +427,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Últimos artículos del blog"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Artículos del blog por author"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Etiquetas"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categorías"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archivo"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "leer más"
|
||||
|
|
BIN
djangocms_blog/locale/fr/LC_MESSAGES/django.mo
Normal file
BIN
djangocms_blog/locale/fr/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
541
djangocms_blog/locale/fr/LC_MESSAGES/django.po
Normal file
541
djangocms_blog/locale/fr/LC_MESSAGES/django.po
Normal file
|
@ -0,0 +1,541 @@
|
|||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Iacopo Spalletti, 2014.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2016-01-20 19:12+0100\n"
|
||||
"Last-Translator: Olivier Tabone <olivier.tabone@ripplemotion.fr>\n"
|
||||
"Language-Team: FR <>\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
"X-Generator: Poedit 1.5.7\n"
|
||||
|
||||
#: admin.py:169 admin.py:177 admin.py:185
|
||||
msgid "You can provide plain strings, Post model attribute or method names"
|
||||
msgstr ""
|
||||
"Vous pouvez préciser des chaines de caractères, des attributs ou des "
|
||||
"methodes du modèle Post"
|
||||
|
||||
#: apps.py:15
|
||||
msgid "django CMS Blog"
|
||||
msgstr "django CMS Blog"
|
||||
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
#: cms_appconfig.py:20
|
||||
msgid "application title"
|
||||
msgstr "TItre de l’application"
|
||||
|
||||
#: cms_appconfig.py:22
|
||||
msgid "object name"
|
||||
msgstr "Nom de l’objet"
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr "Catégorie du blog"
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr "Catégories du blog"
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr "Titre"
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr "Post publié par défaut"
|
||||
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr "Structure permalien"
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr "Utiliser une balise et des plugins pour le corps de l’article"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr "Utiliser un champ abstrait"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr "Auteur"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr "Spécifier l’auteur par défaut"
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr "Nombre d’article par page"
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
"Lors de la pagination des listes, combien souhaitez vous afficher d’articles "
|
||||
"par page ?"
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr "Prefixe dans le template"
|
||||
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr "Répertoire alternatif à partir du quel charger les templates du blog"
|
||||
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr "Structure du menu"
|
||||
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr "Structure du menu django CMS"
|
||||
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr "changefreq de la Sitemap"
|
||||
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr "Attribut ‘Changfreq ‘ pour chaque entrée de la sitemap."
|
||||
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr "Priorité de la sitemap"
|
||||
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr "Priorité de chaque entrée de la sitemap"
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr "Type de l’objet"
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr "Facebook type"
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr "Facebook application ID"
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr "Facebook profile ID"
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr "Facebook page URL"
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr "Facebook author URL"
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr "Auteur"
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr "Twitter type"
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr "Twitter site handle"
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr "Twitter author handle"
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr "Google+ type"
|
||||
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr "Google+ author name"
|
||||
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Post list"
|
||||
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Add post"
|
||||
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr "Modifier la configuration"
|
||||
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Modifier Post"
|
||||
|
||||
#: cms_wizards.py:47
|
||||
#, python-brace-format
|
||||
msgid "New {0}"
|
||||
msgstr "Nouveau {0}"
|
||||
|
||||
#: cms_wizards.py:51
|
||||
#, python-brace-format
|
||||
msgid "Create a new {0} in {1}"
|
||||
msgstr "Ajouter un nouveau {0} dans {1}"
|
||||
|
||||
#: feeds.py:24
|
||||
#, python-format
|
||||
msgid "Blog articles on %(site_name)s"
|
||||
msgstr "Articles de blog sur le site %(site_name)s"
|
||||
|
||||
#: menu.py:16
|
||||
msgid "Blog menu"
|
||||
msgstr "Catégorie du blog"
|
||||
|
||||
#: models.py:34
|
||||
msgid "parent"
|
||||
msgstr "père"
|
||||
|
||||
#: models.py:35
|
||||
msgid "created at"
|
||||
msgstr "crée le"
|
||||
|
||||
#: models.py:36
|
||||
msgid "modified at"
|
||||
msgstr "modifié le"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr "app. config"
|
||||
|
||||
#: models.py:42
|
||||
msgid "name"
|
||||
msgstr "nom"
|
||||
|
||||
#: models.py:43 models.py:128
|
||||
msgid "slug"
|
||||
msgstr "slug"
|
||||
|
||||
#: models.py:50
|
||||
msgid "blog category"
|
||||
msgstr "catégorie du blog"
|
||||
|
||||
#: models.py:51
|
||||
msgid "blog categories"
|
||||
msgstr "catégories du blog"
|
||||
|
||||
#: models.py:91
|
||||
msgid "author"
|
||||
msgstr "auteur"
|
||||
|
||||
#: models.py:94
|
||||
msgid "created"
|
||||
msgstr "crée le"
|
||||
|
||||
#: models.py:95
|
||||
msgid "last modified"
|
||||
msgstr "modifié le"
|
||||
|
||||
#: models.py:96
|
||||
msgid "published since"
|
||||
msgstr "publié depuis"
|
||||
|
||||
#: models.py:98
|
||||
msgid "published until"
|
||||
msgstr "publié jusqu’à"
|
||||
|
||||
#: models.py:100
|
||||
msgid "publish"
|
||||
msgstr "publier"
|
||||
|
||||
#: models.py:101
|
||||
msgid "category"
|
||||
msgstr "catégorie"
|
||||
|
||||
#: models.py:103
|
||||
msgid "main image"
|
||||
msgstr "Image principale"
|
||||
|
||||
#: models.py:107
|
||||
msgid "main image thumbnail"
|
||||
msgstr "Miniature image principale"
|
||||
|
||||
#: models.py:112
|
||||
msgid "main image full"
|
||||
msgstr "Image principale taille réelle"
|
||||
|
||||
#: models.py:116
|
||||
msgid "enable comments on post"
|
||||
msgstr "Activer les commentaires sur l’article"
|
||||
|
||||
#: models.py:118
|
||||
msgid "Site(s)"
|
||||
msgstr "Site(s)"
|
||||
|
||||
#: models.py:119
|
||||
msgid ""
|
||||
"Select sites in which to show the post. If none is set it will be visible in "
|
||||
"all the configured sites."
|
||||
msgstr ""
|
||||
"Selectionnez les sites dans lesquels afficher l’article. Si aucun site n’est "
|
||||
"selectionné, l’article sera visible dans tous les sites."
|
||||
|
||||
#: models.py:127
|
||||
msgid "title"
|
||||
msgstr "Titre"
|
||||
|
||||
#: models.py:129
|
||||
msgid "abstract"
|
||||
msgstr "abstract"
|
||||
|
||||
#: models.py:130
|
||||
msgid "post meta description"
|
||||
msgstr "Description ‘meta’ de l’article"
|
||||
|
||||
#: models.py:132
|
||||
msgid "post meta keywords"
|
||||
msgstr "Mots clés ‘meta’ de l’article"
|
||||
|
||||
#: models.py:134
|
||||
msgid "post meta title"
|
||||
msgstr "Titre ‘meta’ de l’article"
|
||||
|
||||
#: models.py:135
|
||||
msgid "used in title tag and social sharing"
|
||||
msgstr "Visible dans le titre et dans le partage sur les réseaux sociaux"
|
||||
|
||||
#: models.py:138
|
||||
msgid "text"
|
||||
msgstr "texte"
|
||||
|
||||
#: models.py:175
|
||||
msgid "blog article"
|
||||
msgstr "article du blog"
|
||||
|
||||
#: models.py:176
|
||||
msgid "blog articles"
|
||||
msgstr "articles du blog"
|
||||
|
||||
#: models.py:294 models.py:328
|
||||
#, fuzzy
|
||||
msgid "articles"
|
||||
msgstr "0 articles"
|
||||
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Nombre d’articles récents à afficher."
|
||||
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr "filtrer par tag"
|
||||
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Afficher seulement les articles qui ont les tags séléctionnés."
|
||||
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr "filtrer par catégorie"
|
||||
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Afficher seulement les articles des catégories séléctionnées"
|
||||
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr "%s derniers articles par tag"
|
||||
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr "Auteurs"
|
||||
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "Le nombre d’articles de l’auteur à afficher"
|
||||
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr "%s derniers articles par auteur"
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr "plugin générique pour le blog"
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr "Date complète"
|
||||
|
||||
#: settings.py:17
|
||||
msgid "Year / Month"
|
||||
msgstr "Année / Mois"
|
||||
|
||||
#: settings.py:18 templates/djangocms_blog/post_list.html:14
|
||||
msgid "Category"
|
||||
msgstr "Catégorie"
|
||||
|
||||
#: settings.py:19
|
||||
#, fuzzy
|
||||
msgid "Just slug"
|
||||
msgstr "slug"
|
||||
|
||||
#: settings.py:28
|
||||
msgid "Categories and posts"
|
||||
msgstr "Catégories"
|
||||
|
||||
#: settings.py:29
|
||||
msgid "Categories only"
|
||||
msgstr "Catégories"
|
||||
|
||||
#: settings.py:30
|
||||
msgid "Posts only"
|
||||
msgstr "Articles"
|
||||
|
||||
#: settings.py:31
|
||||
msgid "None"
|
||||
msgstr "Aucun"
|
||||
|
||||
#: settings.py:34
|
||||
msgid "always"
|
||||
msgstr "toujours"
|
||||
|
||||
#: settings.py:35
|
||||
msgid "hourly"
|
||||
msgstr "toutes les heures"
|
||||
|
||||
#: settings.py:36
|
||||
msgid "daily"
|
||||
msgstr "quotidien"
|
||||
|
||||
#: settings.py:37
|
||||
msgid "weekly"
|
||||
msgstr "hebdomadaire"
|
||||
|
||||
#: settings.py:38
|
||||
msgid "monthly"
|
||||
msgstr "mensuel"
|
||||
|
||||
#: settings.py:39
|
||||
msgid "yearly"
|
||||
msgstr "annuel"
|
||||
|
||||
#: settings.py:40
|
||||
msgid "never"
|
||||
msgstr "jamais"
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Articles récents du blog"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Articles de l’auteur"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tags"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Catégories"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archive"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "lire la suite"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_meta.html:6
|
||||
msgid "by"
|
||||
msgstr "par"
|
||||
|
||||
#: templates/djangocms_blog/plugins/archive.html:17
|
||||
#: templates/djangocms_blog/plugins/authors.html:10
|
||||
#: templates/djangocms_blog/plugins/categories.html:10
|
||||
#: templates/djangocms_blog/plugins/tags.html:10
|
||||
#, python-format
|
||||
msgid "1 article"
|
||||
msgid_plural "%(articles)s articles"
|
||||
msgstr[0] "1 article"
|
||||
msgstr[1] "%(articles)s articles"
|
||||
|
||||
#: templates/djangocms_blog/plugins/archive.html:18
|
||||
#: templates/djangocms_blog/plugins/authors.html:11
|
||||
#: templates/djangocms_blog/plugins/categories.html:11
|
||||
#: templates/djangocms_blog/plugins/tags.html:11
|
||||
msgid "0 articles"
|
||||
msgstr "0 articles"
|
||||
|
||||
#: templates/djangocms_blog/plugins/archive.html:26
|
||||
#: templates/djangocms_blog/plugins/authors.html:15
|
||||
#: templates/djangocms_blog/plugins/latest_entries.html:7
|
||||
#: templates/djangocms_blog/plugins/tags.html:15
|
||||
#: templates/djangocms_blog/post_list.html:21
|
||||
msgid "No article found."
|
||||
msgstr "Aucun article trouvé"
|
||||
|
||||
#: templates/djangocms_blog/plugins/authors.html:3
|
||||
msgid "Authors"
|
||||
msgstr "Auteurs"
|
||||
|
||||
#: templates/djangocms_blog/plugins/categories.html:15
|
||||
msgid "No categories found."
|
||||
msgstr "Aucune catégorie trouvé"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:11
|
||||
msgid "Articles by"
|
||||
msgstr "Articles écrits par"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:13
|
||||
msgid "Tag"
|
||||
msgstr "Tag"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:24
|
||||
msgid "Back"
|
||||
msgstr "Retour"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:29
|
||||
msgid "previous"
|
||||
msgstr "précédent"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:32
|
||||
msgid "Page"
|
||||
msgstr "Page"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:32
|
||||
msgid "of"
|
||||
msgstr "sur"
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:35
|
||||
msgid "next"
|
||||
msgstr "suivant"
|
||||
|
||||
#, fuzzy
|
||||
#~ msgid "Article"
|
||||
#~ msgstr "Articles"
|
||||
|
||||
#~ msgid "Text"
|
||||
#~ msgstr "Text"
|
||||
|
||||
#~ msgid "blog post"
|
||||
#~ msgstr "blog post"
|
||||
|
||||
#~ msgid "Entries by"
|
||||
#~ msgstr "Entries by"
|
||||
|
||||
#~ msgid "No entry found."
|
||||
#~ msgstr "No entry found."
|
Binary file not shown.
|
@ -8,8 +8,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:24+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:19+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Italian (http://www.transifex.com/nephila/djangocms-blog/language/it/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -27,8 +27,7 @@ msgstr "Puoi inserire stringhe, attributi o metodi del model Post"
|
|||
msgid "django CMS Blog"
|
||||
msgstr "django CMS Blog"
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
|
@ -41,155 +40,144 @@ msgid "object name"
|
|||
msgstr "Nome oggetto"
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr "Configurazione del blog"
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr "Configurazioni del blog"
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr "Senza titolo"
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr "Articoli pubblicati di default"
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr "Struttura permalink"
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr "Usa placeholder e plugin per il contenuto"
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr "Usa campo abstract"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr "Imposta autore"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr "Imposta autore di default"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr "Dimensione paginazione"
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr "Se la lista è paginata, quanti articoli visualizzati per pagina?"
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr "Prefisso template"
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr "Directory alternativa da cui caricare i template"
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr "Struttura del menu"
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr "Struttura del menu django CMS"
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr "Frequenza aggiornamento Sitemap"
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr "Attributo Changefreq per gli oggetti della sitemap"
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr "Priorità sitemap"
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr "Attributo priorità per gli oggetti nella sitemap"
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr "Tipo oggetto"
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr "Tipo oggetto Facebook"
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr "ID Applicazione Facebook"
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr "ID Profilo Facebook"
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr "URL Pagina Facebook"
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr "URL Autore Facebook"
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr "Autore Facebook"
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr "Tipo oggetto Twitter"
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr "Nome Twitter del sito"
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr "Nome Twitter autore"
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr "Tipo oggetto Google+"
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr "Nome Google+ autore"
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Ultimi articoli"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Articoli per autore"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tag"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categorie"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archivio"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Lista degli articoli"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Aggiungi articolo"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr "Modifica configurazione"
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Modifica articolo"
|
||||
|
||||
|
@ -224,7 +212,7 @@ msgstr "creato il"
|
|||
msgid "modified at"
|
||||
msgstr "modificato il"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr "config. app."
|
||||
|
||||
|
@ -334,52 +322,52 @@ msgstr "articolo del blog"
|
|||
msgid "blog articles"
|
||||
msgstr "articoli del blog"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr "plugin blog"
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr "articoli"
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Il numero di articoli da mostrare."
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr "filtra per tag"
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Mostra solo gli articoli marcati con i tag selezionati."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr "filtra per categoria"
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Mostra solo gli articoli marcati con i categorie selezionati."
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr "ultimi %s articoli per tag"
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr "autori"
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "Numero di elementi per autore da mostrare."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr "ultimi %s articoli per autore"
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr "plugin blog"
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr "Data completa"
|
||||
|
@ -440,6 +428,27 @@ msgstr "ogni anno"
|
|||
msgid "never"
|
||||
msgstr "mai"
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Ultimi articoli"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Articoli per autore"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Tag"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Categorie"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archivio"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "leggi"
|
||||
|
|
Binary file not shown.
|
@ -7,8 +7,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Lithuanian (http://www.transifex.com/nephila/djangocms-blog/language/lt/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,8 +26,7 @@ msgstr "Galite pateikti paprasto teksto eilutes, įrašo modelio atributą arba
|
|||
msgid "django CMS Blog"
|
||||
msgstr "django CMS Tinklaraštis"
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Tinklaraštis"
|
||||
|
||||
|
@ -37,170 +36,159 @@ msgstr "aplikacijos pavadinimas"
|
|||
|
||||
#: cms_appconfig.py:22
|
||||
msgid "object name"
|
||||
msgstr ""
|
||||
msgstr "objekto pavadinimas"
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr "be pavadinimo"
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr "Pagal numatymą įrašas publikuojamas"
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr "Nuolatinės nuorodos struktūra"
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr "Straipsnio tekstui naudokite rezervuotą vietą ir įskiepiuis"
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr "Naudoti santraukos lauką"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr "Nustatyti autorių"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr "Pagal numatymą nustatyti autorių"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr "Puslapiavimo dydis"
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr "Kai puslapiuojamas sąrašas, kiek straipsnių atvaizduoti puslapyje?"
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr "Šablono priešdėlis"
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr "Alternatyvus katalogas iš kurio būtų užkraunami šablonai"
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr "Meniu struktūra"
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr "Django CMS meniu struktūra"
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
msgstr "Tinklalapio medžio keitimo dažnumas"
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
msgstr "Keitimo dažnumo atributas tinklalapio medžio objektams"
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
msgstr "Tinklalapio medžio prioritetas"
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
msgstr "Prioriteto atributas tinklalapio medžio objektams"
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr "Objekto tipas"
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr "Facebook tipas"
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr "Facebook aplikacijos ID"
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr "Facebook profilio ID"
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr "Facebook puslapio URL"
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr "Facebook autoriaus URL"
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr "Facebook autorius"
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr "Twitter tipas"
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr "Twitter tinklalapio vardas"
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr "Twitter autoriaus vardas"
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr "Google+ tipas"
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr "Goggle+ autoriaus vardas"
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Naujausi tinklaraščio straipsniai"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Tinklaraščio straipsnių autorius"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Žymenos"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategorijos"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archyvas"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Straipsnių sąrašas"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Pridėti straipsnį"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr "Redaguoti nustatymus"
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Redaguoti straipsnį"
|
||||
|
||||
#: cms_wizards.py:47
|
||||
#, python-brace-format
|
||||
msgid "New {0}"
|
||||
msgstr ""
|
||||
msgstr "Naujas {0}"
|
||||
|
||||
#: cms_wizards.py:51
|
||||
#, python-brace-format
|
||||
msgid "Create a new {0} in {1}"
|
||||
msgstr ""
|
||||
msgstr "Kurti naują {0} viduje {1}"
|
||||
|
||||
#: feeds.py:24
|
||||
#, python-format
|
||||
|
@ -223,7 +211,7 @@ msgstr "sukurta"
|
|||
msgid "modified at"
|
||||
msgstr "redaguota"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr "aplikacijos nustatymai"
|
||||
|
||||
|
@ -333,52 +321,52 @@ msgstr "tinklaraščio straipsnis"
|
|||
msgid "blog articles"
|
||||
msgstr "tinklaraščio straipsniai"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr "bendras tinklaraščio įskiepis"
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr "straipsniai"
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Atvaizduojamas naujausių straipsnių kiekis."
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr "filtruoti pagal žymeną"
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Atvaizduoti straipsnius su pasirinktomis žymenomis."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr "filtruoti pagal kategoriją"
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Atvaizduoti straipsnius su pasirinktomis kategorijomis."
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr "%s paskutiniai straipsniai pagal žymeną"
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr "autoriai"
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "Atvaizduojamas autoriaus straipsnių kiekis."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr "%s paskutiniai straipsniai pagal autorių"
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr "bendras tinklaraščio įskiepis"
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr "Pilna data"
|
||||
|
@ -413,31 +401,52 @@ msgstr "Niekas"
|
|||
|
||||
#: settings.py:34
|
||||
msgid "always"
|
||||
msgstr ""
|
||||
msgstr "visada"
|
||||
|
||||
#: settings.py:35
|
||||
msgid "hourly"
|
||||
msgstr ""
|
||||
msgstr "kas valandą"
|
||||
|
||||
#: settings.py:36
|
||||
msgid "daily"
|
||||
msgstr ""
|
||||
msgstr "kas dieną"
|
||||
|
||||
#: settings.py:37
|
||||
msgid "weekly"
|
||||
msgstr ""
|
||||
msgstr "kas savaitę"
|
||||
|
||||
#: settings.py:38
|
||||
msgid "monthly"
|
||||
msgstr ""
|
||||
msgstr "kas mėnesį"
|
||||
|
||||
#: settings.py:39
|
||||
msgid "yearly"
|
||||
msgstr ""
|
||||
msgstr "kas metus"
|
||||
|
||||
#: settings.py:40
|
||||
msgid "never"
|
||||
msgstr ""
|
||||
msgstr "niekada"
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Naujausi tinklaraščio straipsniai"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Tinklaraščio straipsnių autorius"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Žymenos"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategorijos"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Archyvas"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
|
|
Binary file not shown.
|
@ -6,8 +6,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/nephila/djangocms-blog/language/pt_BR/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -25,8 +25,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr ""
|
||||
|
||||
|
@ -39,155 +38,144 @@ msgid "object name"
|
|||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr ""
|
||||
|
||||
|
@ -222,7 +210,7 @@ msgstr ""
|
|||
msgid "modified at"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -332,52 +320,52 @@ msgstr ""
|
|||
msgid "blog articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr ""
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -438,6 +426,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr ""
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr ""
|
||||
|
|
Binary file not shown.
|
@ -3,13 +3,14 @@
|
|||
#
|
||||
# Translators:
|
||||
# Iacopo Spalletti, 2014
|
||||
# Rüstem Mirzaoğlu, 2015
|
||||
# Rustam Mirzaev <mirus@2x2.pw>, 2015
|
||||
# Rustam Mirzaev <mirus@2x2.pw>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Russian (http://www.transifex.com/nephila/djangocms-blog/language/ru/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -21,187 +22,175 @@ msgstr ""
|
|||
|
||||
#: admin.py:169 admin.py:177 admin.py:185
|
||||
msgid "You can provide plain strings, Post model attribute or method names"
|
||||
msgstr ""
|
||||
msgstr "Вы можете использовать простую строку, атрибут модели статьи или имена методов"
|
||||
|
||||
#: apps.py:15
|
||||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
msgstr "django CMS Блог"
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Блог"
|
||||
|
||||
#: cms_appconfig.py:20
|
||||
msgid "application title"
|
||||
msgstr ""
|
||||
msgstr "название приложения"
|
||||
|
||||
#: cms_appconfig.py:22
|
||||
msgid "object name"
|
||||
msgstr ""
|
||||
msgstr "название объекта"
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
msgid "untitled"
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
msgid "Post published by default"
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr "безымянный"
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
msgid "Post published by default"
|
||||
msgstr "Статья опубликованная по умолчанию"
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr "Строение постоянной ссылки"
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr "Используйте местозаполнитель и плагины для тела статьи"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
msgstr "Используйте поле краткого описания"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
msgid "Set author"
|
||||
msgstr "Указать автора"
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr "Указать автора по умолчанию"
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
msgid "Paginate size"
|
||||
msgstr "Разбить на части"
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr "Сколько статей на страницу вы бы хотели использовать при разбиении её на части."
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr "Префикс шаблона"
|
||||
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr "Альтернативная директория загрузки шаблонов блога"
|
||||
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
msgstr "Структура меню"
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
msgstr "Структура меню django CMS "
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
msgstr "Частота обновления карты сайта"
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
msgstr "Атрибут частоты изменения объектов карты сайта"
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
msgstr "Приоритет"
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
msgstr "Приоритет атребута для объектов карты сайта"
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
msgid "Object type"
|
||||
msgstr "Тип объекта"
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
msgid "Facebook type"
|
||||
msgstr "тип в Facebook"
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
msgid "Facebook application ID"
|
||||
msgstr "ID приложения на Facebook"
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
msgid "Facebook profile ID"
|
||||
msgstr "ID профиля на Facebook"
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
msgid "Facebook page URL"
|
||||
msgstr "URL страницы на Facebook"
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
msgid "Facebook author URL"
|
||||
msgstr "URL автора на Facebook "
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
msgid "Facebook author"
|
||||
msgstr "автор на Facebook "
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
msgid "Twitter type"
|
||||
msgstr "тип на Twitter"
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
msgid "Twitter site handle"
|
||||
msgstr "дескриптор сайта на Twitter"
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
msgid "Twitter author handle"
|
||||
msgstr "дескриптор автора на Twitter"
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr "тип на Google+"
|
||||
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
msgstr "имя автора на Google+"
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Последние статьи блога"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Автор статей блога"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Метки"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Категории"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Архив"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Список статей"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Добавить статью"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
msgstr "Редактировать настройки"
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Редактировать статью"
|
||||
|
||||
#: cms_wizards.py:47
|
||||
#, python-brace-format
|
||||
msgid "New {0}"
|
||||
msgstr ""
|
||||
msgstr "Новых {0}"
|
||||
|
||||
#: cms_wizards.py:51
|
||||
#, python-brace-format
|
||||
msgid "Create a new {0} in {1}"
|
||||
msgstr ""
|
||||
msgstr "Создать новых {0} из {1}"
|
||||
|
||||
#: feeds.py:24
|
||||
#, python-format
|
||||
|
@ -210,7 +199,7 @@ msgstr "Статьи блога с сайта: %(site_name)s"
|
|||
|
||||
#: menu.py:16
|
||||
msgid "Blog menu"
|
||||
msgstr ""
|
||||
msgstr "Меню блога"
|
||||
|
||||
#: models.py:34
|
||||
msgid "parent"
|
||||
|
@ -224,9 +213,9 @@ msgstr "время создания"
|
|||
msgid "modified at"
|
||||
msgstr "время изменения"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
msgstr "настройки приложения"
|
||||
|
||||
#: models.py:42
|
||||
msgid "name"
|
||||
|
@ -246,27 +235,27 @@ msgstr "категории блога"
|
|||
|
||||
#: models.py:91
|
||||
msgid "author"
|
||||
msgstr ""
|
||||
msgstr "автор"
|
||||
|
||||
#: models.py:94
|
||||
msgid "created"
|
||||
msgstr ""
|
||||
msgstr "создан(о)"
|
||||
|
||||
#: models.py:95
|
||||
msgid "last modified"
|
||||
msgstr ""
|
||||
msgstr "последние изменения"
|
||||
|
||||
#: models.py:96
|
||||
msgid "published since"
|
||||
msgstr ""
|
||||
msgstr "опубликовано"
|
||||
|
||||
#: models.py:98
|
||||
msgid "published until"
|
||||
msgstr ""
|
||||
msgstr "опубликовано до"
|
||||
|
||||
#: models.py:100
|
||||
msgid "publish"
|
||||
msgstr ""
|
||||
msgstr "опубликовать"
|
||||
|
||||
#: models.py:101
|
||||
msgid "category"
|
||||
|
@ -274,19 +263,19 @@ msgstr "категория"
|
|||
|
||||
#: models.py:103
|
||||
msgid "main image"
|
||||
msgstr ""
|
||||
msgstr "главная страница"
|
||||
|
||||
#: models.py:107
|
||||
msgid "main image thumbnail"
|
||||
msgstr ""
|
||||
msgstr "уменьшенная копия главного изображения"
|
||||
|
||||
#: models.py:112
|
||||
msgid "main image full"
|
||||
msgstr ""
|
||||
msgstr "Полноразмерное изображение"
|
||||
|
||||
#: models.py:116
|
||||
msgid "enable comments on post"
|
||||
msgstr ""
|
||||
msgstr "Разрешить комментарии к статье"
|
||||
|
||||
#: models.py:118
|
||||
msgid "Site(s)"
|
||||
|
@ -300,23 +289,23 @@ msgstr "Выберите сайты на которых будет опубли
|
|||
|
||||
#: models.py:127
|
||||
msgid "title"
|
||||
msgstr ""
|
||||
msgstr "Заголовок"
|
||||
|
||||
#: models.py:129
|
||||
msgid "abstract"
|
||||
msgstr ""
|
||||
msgstr "Краткое описание"
|
||||
|
||||
#: models.py:130
|
||||
msgid "post meta description"
|
||||
msgstr ""
|
||||
msgstr "мета-описание статьи"
|
||||
|
||||
#: models.py:132
|
||||
msgid "post meta keywords"
|
||||
msgstr ""
|
||||
msgstr "ключевые слова к статье"
|
||||
|
||||
#: models.py:134
|
||||
msgid "post meta title"
|
||||
msgstr ""
|
||||
msgstr "мета-заголовок к статье"
|
||||
|
||||
#: models.py:135
|
||||
msgid "used in title tag and social sharing"
|
||||
|
@ -324,7 +313,7 @@ msgstr "используется в метках и обмене в социал
|
|||
|
||||
#: models.py:138
|
||||
msgid "text"
|
||||
msgstr ""
|
||||
msgstr "текст"
|
||||
|
||||
#: models.py:175
|
||||
msgid "blog article"
|
||||
|
@ -334,59 +323,59 @@ msgstr "статья блога"
|
|||
msgid "blog articles"
|
||||
msgstr "статьи блога"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
msgstr "статьи"
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Количество последних статей, которые будут показаны."
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
msgstr "фильтровать по тегам"
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Показывать статьи только с выбранными метками."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
msgstr "фильтровать по категориям"
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Показывать статьи только из выбранных категорий."
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
msgstr "%s последних статей по тегам"
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
msgstr "авторы"
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "Количество статей автора, которые будут показаны."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
msgstr "%s последних статей по авторам"
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr "генерируемый плагин блога"
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
msgstr "Полная дата"
|
||||
|
||||
#: settings.py:17
|
||||
msgid "Year / Month"
|
||||
msgstr ""
|
||||
msgstr "Год / Месяц"
|
||||
|
||||
#: settings.py:18 templates/djangocms_blog/post_list.html:14
|
||||
msgid "Category"
|
||||
|
@ -394,51 +383,72 @@ msgstr "Категория"
|
|||
|
||||
#: settings.py:19
|
||||
msgid "Just slug"
|
||||
msgstr ""
|
||||
msgstr "ЧПУ"
|
||||
|
||||
#: settings.py:28
|
||||
msgid "Categories and posts"
|
||||
msgstr ""
|
||||
msgstr "Категории и статьи"
|
||||
|
||||
#: settings.py:29
|
||||
msgid "Categories only"
|
||||
msgstr ""
|
||||
msgstr "Только категории"
|
||||
|
||||
#: settings.py:30
|
||||
msgid "Posts only"
|
||||
msgstr ""
|
||||
msgstr "Только статьи"
|
||||
|
||||
#: settings.py:31
|
||||
msgid "None"
|
||||
msgstr ""
|
||||
msgstr "Ничего"
|
||||
|
||||
#: settings.py:34
|
||||
msgid "always"
|
||||
msgstr ""
|
||||
msgstr "всегда"
|
||||
|
||||
#: settings.py:35
|
||||
msgid "hourly"
|
||||
msgstr ""
|
||||
msgstr "ежечасно"
|
||||
|
||||
#: settings.py:36
|
||||
msgid "daily"
|
||||
msgstr ""
|
||||
msgstr "ежедневно"
|
||||
|
||||
#: settings.py:37
|
||||
msgid "weekly"
|
||||
msgstr ""
|
||||
msgstr "еженедельно"
|
||||
|
||||
#: settings.py:38
|
||||
msgid "monthly"
|
||||
msgstr ""
|
||||
msgstr "ежемесячно"
|
||||
|
||||
#: settings.py:39
|
||||
msgid "yearly"
|
||||
msgstr ""
|
||||
msgstr "ежегодно"
|
||||
|
||||
#: settings.py:40
|
||||
msgid "never"
|
||||
msgstr ""
|
||||
msgstr "никогда"
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Последние статьи блога"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Автор статей блога"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Метки"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Категории"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Архив"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
|
@ -481,7 +491,7 @@ msgstr "Авторы"
|
|||
|
||||
#: templates/djangocms_blog/plugins/categories.html:15
|
||||
msgid "No categories found."
|
||||
msgstr ""
|
||||
msgstr "Не найдено ни одной категории."
|
||||
|
||||
#: templates/djangocms_blog/post_list.html:11
|
||||
msgid "Articles by"
|
||||
|
|
Binary file not shown.
|
@ -1,23 +1,22 @@
|
|||
# SOME DESCRIPTIVE TITLE.
|
||||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||||
# This file is distributed under the same license as the PACKAGE package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
|
||||
#
|
||||
#, fuzzy
|
||||
#
|
||||
# Translators:
|
||||
# Iacopo Spalletti, 2014
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-12-15 13:53+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
"Language: \n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Slovenian (http://www.transifex.com/nephila/djangocms-blog/language/sl/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
|
||||
"%100==4 ? 2 : 3);\n"
|
||||
"Language: sl\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n"
|
||||
"X-Generator: Lokalize 1.5\n"
|
||||
|
||||
#: admin.py:169 admin.py:177 admin.py:185
|
||||
msgid "You can provide plain strings, Post model attribute or method names"
|
||||
|
@ -40,118 +39,128 @@ msgid "object name"
|
|||
msgstr "ime objekta"
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr "nepoimenovano"
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr "Objava naj bo samodejno objavljena"
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr "Struktura povezav"
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr "Za objavo naj bodo uporabljeni vtičniki in označbe mest"
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr "Uporaba abstraktnih polj"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr "Nastavi avtorja"
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr "Avtor naj bo nastavljen samodejno"
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr "Število objav na stran"
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr "Koliko objav naj bo na eni strani?"
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr "Predpona predlog"
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr "Alternativni direktorij za nalaganje predlog bloga"
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr "Struktura menija"
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr "Struktura django CMS menija"
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr "Sitemap prioriteta"
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr "Prioriteta atributov za elemente sitemapa"
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr "Tip objekta"
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr "Facebook avtor"
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
|
@ -272,8 +281,8 @@ msgstr "Stran(i)"
|
|||
|
||||
#: models.py:119
|
||||
msgid ""
|
||||
"Select sites in which to show the post. If none is set it will be visible in "
|
||||
"all the configured sites."
|
||||
"Select sites in which to show the post. If none is set it will be visible in"
|
||||
" all the configured sites."
|
||||
msgstr "Izberi strani na katerih naj bo objava prikazana. Če ni izbrano nič, bo objava prikazana na vseh nastavljenih straneh."
|
||||
|
||||
#: models.py:127
|
||||
|
@ -366,7 +375,7 @@ msgstr "Datum (poln)"
|
|||
msgid "Year / Month"
|
||||
msgstr "Leto / Mesec"
|
||||
|
||||
#: settings.py:18 templates/djangocms_blog/post_list.html.py:14
|
||||
#: settings.py:18 templates/djangocms_blog/post_list.html:14
|
||||
msgid "Category"
|
||||
msgstr "Kategorija"
|
||||
|
||||
|
@ -426,15 +435,15 @@ msgstr "Najnovejše blog objave"
|
|||
msgid "Author Blog Articles"
|
||||
msgstr "Avtorjeve blog objave"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html.py:3
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Oznake"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html.py:3
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategorije"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html.py:3
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Arhiv"
|
||||
|
@ -454,8 +463,10 @@ msgstr ""
|
|||
#, python-format
|
||||
msgid "1 article"
|
||||
msgid_plural "%(articles)s articles"
|
||||
msgstr[0] "1 objava"
|
||||
msgstr[0] "%(articles)s objava"
|
||||
msgstr[1] "%(articles)s objave"
|
||||
msgstr[2] "%(articles)s objave"
|
||||
msgstr[3] "%(articles)s objave"
|
||||
|
||||
#: templates/djangocms_blog/plugins/archive.html:18
|
||||
#: templates/djangocms_blog/plugins/authors.html:11
|
||||
|
@ -507,3 +518,18 @@ msgstr "od"
|
|||
#: templates/djangocms_blog/post_list.html:35
|
||||
msgid "next"
|
||||
msgstr "naslednji"
|
||||
|
||||
#~ msgid "Article"
|
||||
#~ msgstr "Articles"
|
||||
|
||||
#~ msgid "Text"
|
||||
#~ msgstr "Text"
|
||||
|
||||
#~ msgid "blog post"
|
||||
#~ msgstr "blog post"
|
||||
|
||||
#~ msgid "Entries by"
|
||||
#~ msgstr "Entries by"
|
||||
|
||||
#~ msgid "No entry found."
|
||||
#~ msgstr "No entry found."
|
||||
|
|
Binary file not shown.
|
@ -2,13 +2,13 @@
|
|||
# This file is distributed under the same license as the PACKAGE package.
|
||||
#
|
||||
# Translators:
|
||||
# Rüstem Mirzaoğlu, 2015
|
||||
# Rustam Mirzaev <mirus@2x2.pw>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: djangocms-blog\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2015-10-31 13:23+0100\n"
|
||||
"PO-Revision-Date: 2015-10-31 12:23+0000\n"
|
||||
"POT-Creation-Date: 2015-12-20 17:14+0100\n"
|
||||
"PO-Revision-Date: 2015-12-20 16:15+0000\n"
|
||||
"Last-Translator: yakky <i.spalletti@nephila.it>\n"
|
||||
"Language-Team: Turkish (http://www.transifex.com/nephila/djangocms-blog/language/tr/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -26,8 +26,7 @@ msgstr ""
|
|||
msgid "django CMS Blog"
|
||||
msgstr ""
|
||||
|
||||
#: cms_app.py:15 cms_plugins.py:64 cms_plugins.py:77 cms_plugins.py:93
|
||||
#: cms_plugins.py:108 cms_toolbar.py:18
|
||||
#: cms_app.py:15 cms_toolbar.py:19 settings.py:111
|
||||
msgid "Blog"
|
||||
msgstr "Blog"
|
||||
|
||||
|
@ -40,155 +39,144 @@ msgid "object name"
|
|||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:27
|
||||
#| msgid "blog categories"
|
||||
msgid "blog config"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:28
|
||||
#| msgid "blog categories"
|
||||
msgid "blog configs"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:31
|
||||
msgid "untitled"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:32
|
||||
#: cms_appconfig.py:36
|
||||
msgid "Post published by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:36
|
||||
#: cms_appconfig.py:40
|
||||
msgid "Permalink structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:41
|
||||
#: cms_appconfig.py:45
|
||||
msgid "Use placeholder and plugins for article body"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:45
|
||||
#: cms_appconfig.py:49
|
||||
msgid "Use abstract field"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:49
|
||||
#: cms_appconfig.py:53
|
||||
msgid "Set author by default"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:53
|
||||
#: cms_appconfig.py:57
|
||||
msgid "Paginate size"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:54
|
||||
#: cms_appconfig.py:58
|
||||
msgid "When paginating list views, how many articles per page?"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:57
|
||||
#: cms_appconfig.py:61
|
||||
msgid "Template prefix"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:58
|
||||
#: cms_appconfig.py:62
|
||||
msgid "Alternative directory to load the blog templates from"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:61
|
||||
#: cms_appconfig.py:65
|
||||
msgid "Menu structure"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:63
|
||||
#: cms_appconfig.py:67
|
||||
msgid "Structure of the django CMS menu"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:66
|
||||
#: cms_appconfig.py:70
|
||||
msgid "Sitemap changefreq"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:69
|
||||
#: cms_appconfig.py:73
|
||||
msgid "Changefreq attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:72
|
||||
#: cms_appconfig.py:76
|
||||
msgid "Sitemap priority"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:74
|
||||
#: cms_appconfig.py:78
|
||||
msgid "Priority attribute for sitemap items"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:77
|
||||
#: cms_appconfig.py:81
|
||||
msgid "Object type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:81
|
||||
#: cms_appconfig.py:85
|
||||
msgid "Facebook type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:85
|
||||
#: cms_appconfig.py:89
|
||||
msgid "Facebook application ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:89
|
||||
#: cms_appconfig.py:93
|
||||
msgid "Facebook profile ID"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:93
|
||||
#: cms_appconfig.py:97
|
||||
msgid "Facebook page URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:97
|
||||
#: cms_appconfig.py:101
|
||||
msgid "Facebook author URL"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:101
|
||||
#: cms_appconfig.py:105
|
||||
msgid "Facebook author"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:105
|
||||
#: cms_appconfig.py:109
|
||||
msgid "Twitter type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:109
|
||||
#: cms_appconfig.py:113
|
||||
msgid "Twitter site handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:113
|
||||
#: cms_appconfig.py:117
|
||||
msgid "Twitter author handle"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:117
|
||||
#: cms_appconfig.py:121
|
||||
msgid "Google+ type"
|
||||
msgstr ""
|
||||
|
||||
#: cms_appconfig.py:121
|
||||
#: cms_appconfig.py:125
|
||||
msgid "Google+ author name"
|
||||
msgstr ""
|
||||
|
||||
#: cms_plugins.py:30 cms_plugins.py:49
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Blog'un son makaleleri"
|
||||
|
||||
#: cms_plugins.py:65
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Blog'un makale yazarı"
|
||||
|
||||
#: cms_plugins.py:78 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Etiketler"
|
||||
|
||||
#: cms_plugins.py:94 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategoriler"
|
||||
|
||||
#: cms_plugins.py:109 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Arşiv"
|
||||
|
||||
#: cms_toolbar.py:21
|
||||
#: cms_toolbar.py:22
|
||||
msgid "Post list"
|
||||
msgstr "Makale listesi"
|
||||
|
||||
#: cms_toolbar.py:23
|
||||
#: cms_toolbar.py:24
|
||||
msgid "Add post"
|
||||
msgstr "Makale ekle"
|
||||
|
||||
#: cms_toolbar.py:27
|
||||
#: cms_toolbar.py:28
|
||||
msgid "Edit configuration"
|
||||
msgstr ""
|
||||
|
||||
#: cms_toolbar.py:31
|
||||
#: cms_toolbar.py:32
|
||||
msgid "Edit Post"
|
||||
msgstr "Makaleyi düzenle"
|
||||
|
||||
|
@ -223,7 +211,7 @@ msgstr "oluşturma tarihi"
|
|||
msgid "modified at"
|
||||
msgstr "düzenleme tarihi"
|
||||
|
||||
#: models.py:38 models.py:123 models.py:276
|
||||
#: models.py:38 models.py:123 models.py:275
|
||||
msgid "app. config"
|
||||
msgstr ""
|
||||
|
||||
|
@ -333,52 +321,52 @@ msgstr "blog makalesi"
|
|||
msgid "blog articles"
|
||||
msgstr "blog makaleleri"
|
||||
|
||||
#: models.py:293
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:297 models.py:330
|
||||
#: models.py:294 models.py:328
|
||||
msgid "articles"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:298
|
||||
#: models.py:295
|
||||
msgid "The number of latests articles to be displayed."
|
||||
msgstr "Ğörütülenecek olan makale sayısı"
|
||||
|
||||
#: models.py:300
|
||||
#: models.py:297
|
||||
msgid "filter by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:301
|
||||
#: models.py:298
|
||||
msgid "Show only the blog articles tagged with chosen tags."
|
||||
msgstr "Sadece seçili etiketlerle işaretlenmiş makaleleri göster."
|
||||
|
||||
#: models.py:304
|
||||
#: models.py:301
|
||||
msgid "filter by category"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:305
|
||||
#: models.py:302
|
||||
msgid "Show only the blog articles tagged with chosen categories."
|
||||
msgstr "Sadece seçili kategorilerde bulunan makaleleri ğöster"
|
||||
|
||||
#: models.py:309
|
||||
#: models.py:306
|
||||
#, python-format
|
||||
msgid "%s latest articles by tag"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:326
|
||||
#: models.py:324
|
||||
msgid "authors"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:331
|
||||
#: models.py:329
|
||||
msgid "The number of author articles to be displayed."
|
||||
msgstr "İlgili yazarın gösterilecek olan makale sayısı."
|
||||
|
||||
#: models.py:335
|
||||
#: models.py:333
|
||||
#, python-format
|
||||
msgid "%s latest articles by author"
|
||||
msgstr ""
|
||||
|
||||
#: models.py:362
|
||||
msgid "generic blog plugin"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:16
|
||||
msgid "Full date"
|
||||
msgstr ""
|
||||
|
@ -439,6 +427,27 @@ msgstr ""
|
|||
msgid "never"
|
||||
msgstr ""
|
||||
|
||||
#: settings.py:113
|
||||
msgid "Latest Blog Articles"
|
||||
msgstr "Blog'un son makaleleri"
|
||||
|
||||
#: settings.py:115
|
||||
msgid "Author Blog Articles"
|
||||
msgstr "Blog'un makale yazarı"
|
||||
|
||||
#: settings.py:117 templates/djangocms_blog/plugins/tags.html:3
|
||||
msgid "Tags"
|
||||
msgstr "Etiketler"
|
||||
|
||||
#: settings.py:119 templates/djangocms_blog/plugins/categories.html:3
|
||||
msgid "Categories"
|
||||
msgstr "Kategoriler"
|
||||
|
||||
#: settings.py:121 templates/djangocms_blog/plugins/archive.html:3
|
||||
#: templates/djangocms_blog/post_list.html:12
|
||||
msgid "Archive"
|
||||
msgstr "Arşiv"
|
||||
|
||||
#: templates/djangocms_blog/includes/blog_item.html:24
|
||||
msgid "read more"
|
||||
msgstr "devamını oku"
|
||||
|
|
|
@ -99,8 +99,8 @@ class GenericDateQuerySet(AppHookConfigTranslatableQueryset):
|
|||
queryset = self.on_site()
|
||||
if self.end_date_field:
|
||||
qfilter = (
|
||||
models.Q(**{'%s__gte' % self.end_date_field: now()})
|
||||
| models.Q(**{'%s__isnull' % self.end_date_field: True})
|
||||
models.Q(**{'%s__gte' % self.end_date_field: now()}) |
|
||||
models.Q(**{'%s__isnull' % self.end_date_field: True})
|
||||
)
|
||||
queryset = queryset.filter(qfilter)
|
||||
return queryset.filter(**{self.publish_field: True})
|
||||
|
@ -109,8 +109,8 @@ class GenericDateQuerySet(AppHookConfigTranslatableQueryset):
|
|||
queryset = self.on_site()
|
||||
if self.end_date_field:
|
||||
qfilter = (
|
||||
models.Q(**{'%s__lte' % self.end_date_field: now()})
|
||||
| models.Q(**{'%s__isnull' % self.end_date_field: False})
|
||||
models.Q(**{'%s__lte' % self.end_date_field: now()}) |
|
||||
models.Q(**{'%s__isnull' % self.end_date_field: False})
|
||||
)
|
||||
queryset = queryset.filter(qfilter)
|
||||
return queryset.filter(**{self.publish_field: True})
|
||||
|
|
|
@ -1,21 +1,34 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
from cms.apphook_pool import apphook_pool
|
||||
from cms.menu_bases import CMSAttachMenu
|
||||
from django.core.urlresolvers import resolve
|
||||
from django.db.models.signals import post_delete, post_save
|
||||
from django.utils.translation import get_language_from_request, ugettext_lazy as _
|
||||
from menus.base import NavigationNode
|
||||
from menus.base import Modifier, NavigationNode
|
||||
from menus.menu_pool import menu_pool
|
||||
|
||||
from .cms_appconfig import BlogConfig
|
||||
from .models import BlogCategory, Post
|
||||
from .settings import MENU_TYPE_CATEGORIES, MENU_TYPE_COMPLETE, MENU_TYPE_POSTS
|
||||
from .settings import MENU_TYPE_CATEGORIES, MENU_TYPE_COMPLETE, MENU_TYPE_POSTS, get_setting
|
||||
|
||||
|
||||
class BlogCategoryMenu(CMSAttachMenu):
|
||||
"""
|
||||
Main menu class
|
||||
|
||||
Handles all types of blog menu
|
||||
"""
|
||||
name = _('Blog menu')
|
||||
|
||||
def get_nodes(self, request):
|
||||
"""
|
||||
Generates the nodelist
|
||||
|
||||
:param request:
|
||||
:return: list of nodes
|
||||
"""
|
||||
nodes = []
|
||||
|
||||
language = get_language_from_request(request, check_path=True)
|
||||
|
@ -25,9 +38,9 @@ class BlogCategoryMenu(CMSAttachMenu):
|
|||
config = False
|
||||
if hasattr(self, 'instance') and self.instance:
|
||||
config = BlogConfig.objects.get(namespace=self.instance.application_namespace)
|
||||
if config.menu_structure in (MENU_TYPE_COMPLETE, MENU_TYPE_CATEGORIES):
|
||||
if config and config.menu_structure in (MENU_TYPE_COMPLETE, MENU_TYPE_CATEGORIES):
|
||||
categories_menu = True
|
||||
if config.menu_structure in (MENU_TYPE_COMPLETE, MENU_TYPE_POSTS):
|
||||
if config and config.menu_structure in (MENU_TYPE_COMPLETE, MENU_TYPE_POSTS):
|
||||
posts_menu = True
|
||||
|
||||
if categories_menu:
|
||||
|
@ -40,9 +53,12 @@ class BlogCategoryMenu(CMSAttachMenu):
|
|||
node = NavigationNode(
|
||||
category.name,
|
||||
category.get_absolute_url(),
|
||||
'%s-%s' % (category.__class__.__name__, category.pk),
|
||||
('%s-%s' % (category.__class__.__name__, category.parent.id) if category.parent
|
||||
else None)
|
||||
'{0}-{1}'.format(category.__class__.__name__, category.pk),
|
||||
(
|
||||
'{0}-{1}'.format(
|
||||
category.__class__.__name__, category.parent.id
|
||||
) if category.parent else None
|
||||
)
|
||||
)
|
||||
nodes.append(node)
|
||||
|
||||
|
@ -52,27 +68,77 @@ class BlogCategoryMenu(CMSAttachMenu):
|
|||
posts = posts.namespace(self.instance.application_namespace)
|
||||
posts = posts.active_translations(language).distinct()
|
||||
for post in posts:
|
||||
post_id = None
|
||||
parent = None
|
||||
if categories_menu:
|
||||
category = post.categories.first()
|
||||
parent = '%s-%s' % (category.__class__.__name__, category.pk)
|
||||
post_id = '%s-%s' % (post.__class__.__name__, post.pk),
|
||||
if category:
|
||||
parent = '{0}-{1}'.format(category.__class__.__name__, category.pk)
|
||||
post_id = '{0}-{1}'.format(post.__class__.__name__, post.pk),
|
||||
else:
|
||||
parent = None
|
||||
post_id = '%s-%s' % (post.__class__.__name__, post.pk),
|
||||
node = NavigationNode(
|
||||
post.get_title(),
|
||||
post.get_absolute_url(language),
|
||||
post_id,
|
||||
parent
|
||||
)
|
||||
nodes.append(node)
|
||||
post_id = '{0}-{1}'.format(post.__class__.__name__, post.pk),
|
||||
if post_id:
|
||||
node = NavigationNode(
|
||||
post.get_title(),
|
||||
post.get_absolute_url(language),
|
||||
post_id,
|
||||
parent
|
||||
)
|
||||
nodes.append(node)
|
||||
|
||||
return nodes
|
||||
|
||||
menu_pool.register_menu(BlogCategoryMenu)
|
||||
|
||||
|
||||
class BlogNavModifier(Modifier):
|
||||
"""
|
||||
This navigation modifier makes sure that when
|
||||
a particular blog post is viewed,
|
||||
a corresponding category is selected in menu
|
||||
"""
|
||||
def modify(self, request, nodes, namespace, root_id, post_cut, breadcrumb):
|
||||
"""
|
||||
Actual modifier function
|
||||
:param request: request
|
||||
:param nodes: complete list of nodes
|
||||
:param namespace: Menu namespace
|
||||
:param root_id: eventual root_id
|
||||
:param post_cut: flag for modifier stage
|
||||
:param breadcrumb: flag for modifier stage
|
||||
:return: nodeslist
|
||||
"""
|
||||
app = None
|
||||
config = None
|
||||
if getattr(request, 'current_page', None) and request.current_page.application_urls:
|
||||
app = apphook_pool.get_apphook(request.current_page.application_urls)
|
||||
|
||||
if app and app.app_config:
|
||||
namespace = resolve(request.path).namespace
|
||||
config = app.get_config(namespace)
|
||||
if config and config.menu_structure != MENU_TYPE_CATEGORIES:
|
||||
return nodes
|
||||
if post_cut:
|
||||
return nodes
|
||||
current_post = getattr(request, get_setting('CURRENT_POST_IDENTIFIER'), None)
|
||||
category = None
|
||||
if current_post and current_post.__class__ == Post:
|
||||
category = current_post.categories.first()
|
||||
if not category:
|
||||
return nodes
|
||||
|
||||
for node in nodes:
|
||||
if '{0}-{1}'.format(category.__class__.__name__, category.pk) == node.id:
|
||||
node.selected = True
|
||||
return nodes
|
||||
|
||||
menu_pool.register_modifier(BlogNavModifier)
|
||||
|
||||
|
||||
def clear_menu_cache(**kwargs):
|
||||
"""
|
||||
Empty menu cache when saving categories
|
||||
"""
|
||||
menu_pool.clear(all=True)
|
||||
|
||||
post_save.connect(clear_menu_cache, sender=BlogCategory)
|
||||
|
|
|
@ -8,13 +8,18 @@ import filer.fields.image
|
|||
import meta_mixin.models
|
||||
import taggit_autosuggest.managers
|
||||
from django.conf import settings
|
||||
from django.db import models, migrations
|
||||
from django.db import migrations, models
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from filer.settings import FILER_IMAGE_MODEL
|
||||
|
||||
ACTUAL_FILER_IMAGE_MODEL = FILER_IMAGE_MODEL or 'filer.Image'
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
|
||||
migrations.swappable_dependency(ACTUAL_FILER_IMAGE_MODEL),
|
||||
('cms', '__latest__'),
|
||||
('taggit', '__latest__'),
|
||||
('filer', '__latest__'),
|
||||
|
@ -90,9 +95,9 @@ class Migration(migrations.Migration):
|
|||
('author', models.ForeignKey(related_name='djangocms_blog_post_author', verbose_name='Author', blank=True, to=settings.AUTH_USER_MODEL, null=True)),
|
||||
('categories', models.ManyToManyField(related_name='blog_posts', verbose_name='category', to='djangocms_blog.BlogCategory')),
|
||||
('content', cms.models.fields.PlaceholderField(slotname='post_content', editable=False, to='cms.Placeholder', null=True)),
|
||||
('main_image', filer.fields.image.FilerImageField(related_name='djangocms_blog_post_image', verbose_name='Main image', blank=True, to='filer.Image', null=True)),
|
||||
('main_image_full', models.ForeignKey(related_name='djangocms_blog_post_full', verbose_name='Main image full', blank=True, to='cmsplugin_filer_image.ThumbnailOption', null=True)),
|
||||
('main_image_thumbnail', models.ForeignKey(related_name='djangocms_blog_post_thumbnail', verbose_name='Main image thumbnail', blank=True, to='cmsplugin_filer_image.ThumbnailOption', null=True)),
|
||||
('main_image', filer.fields.image.FilerImageField(related_name='djangocms_blog_post_image', verbose_name='Main image', blank=True, to=ACTUAL_FILER_IMAGE_MODEL, null=True)),
|
||||
('main_image_full', models.ForeignKey(related_name='djangocms_blog_post_full', verbose_name='Main image full', blank=True, to=thumbnail_model, null=True)),
|
||||
('main_image_thumbnail', models.ForeignKey(related_name='djangocms_blog_post_thumbnail', verbose_name='Main image thumbnail', blank=True, to=thumbnail_model, null=True)),
|
||||
('tags', taggit_autosuggest.managers.TaggableManager(to='taggit.Tag', through='taggit.TaggedItem', blank=True, help_text='A comma-separated list of tags.', verbose_name='Tags')),
|
||||
],
|
||||
options={
|
||||
|
|
|
@ -1,14 +1,19 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import filer.fields.image
|
||||
import django.db.models.deletion
|
||||
import filer.fields.image
|
||||
from django.db import migrations, models
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from filer.settings import FILER_IMAGE_MODEL
|
||||
|
||||
ACTUAL_FILER_IMAGE_MODEL = FILER_IMAGE_MODEL or 'filer.Image'
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
migrations.swappable_dependency(ACTUAL_FILER_IMAGE_MODEL),
|
||||
('djangocms_blog', '0003_auto_20141201_2252'),
|
||||
]
|
||||
|
||||
|
@ -16,19 +21,19 @@ class Migration(migrations.Migration):
|
|||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image',
|
||||
field=filer.fields.image.FilerImageField(related_name='djangocms_blog_post_image', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image', blank=True, to='filer.Image', null=True),
|
||||
field=filer.fields.image.FilerImageField(related_name='djangocms_blog_post_image', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image', blank=True, to=ACTUAL_FILER_IMAGE_MODEL, null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_full',
|
||||
field=models.ForeignKey(related_name='djangocms_blog_post_full', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image full', blank=True, to='cmsplugin_filer_image.ThumbnailOption', null=True),
|
||||
field=models.ForeignKey(related_name='djangocms_blog_post_full', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image full', blank=True, to=thumbnail_model, null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_thumbnail',
|
||||
field=models.ForeignKey(related_name='djangocms_blog_post_thumbnail', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image thumbnail', blank=True, to='cmsplugin_filer_image.ThumbnailOption', null=True),
|
||||
field=models.ForeignKey(related_name='djangocms_blog_post_thumbnail', on_delete=django.db.models.deletion.SET_NULL, verbose_name='Main image thumbnail', blank=True, to=thumbnail_model, null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
]
|
||||
|
|
|
@ -1,18 +1,23 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import models, migrations
|
||||
import filer.fields.image
|
||||
import django.utils.timezone
|
||||
from django.conf import settings
|
||||
import djangocms_text_ckeditor.fields
|
||||
import django.db.models.deletion
|
||||
import django.utils.timezone
|
||||
import djangocms_text_ckeditor.fields
|
||||
import filer.fields.image
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from filer.settings import FILER_IMAGE_MODEL
|
||||
|
||||
ACTUAL_FILER_IMAGE_MODEL = FILER_IMAGE_MODEL or 'filer.Image'
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('djangocms_blog', '0006_auto_20150214_1907'),
|
||||
migrations.swappable_dependency(ACTUAL_FILER_IMAGE_MODEL),
|
||||
]
|
||||
|
||||
operations = [
|
||||
|
@ -99,19 +104,19 @@ class Migration(migrations.Migration):
|
|||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image',
|
||||
field=filer.fields.image.FilerImageField(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image', to='filer.Image', related_name='djangocms_blog_post_image', null=True),
|
||||
field=filer.fields.image.FilerImageField(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image', to=ACTUAL_FILER_IMAGE_MODEL, related_name='djangocms_blog_post_image', null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_full',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image full', to='cmsplugin_filer_image.ThumbnailOption', related_name='djangocms_blog_post_full', null=True),
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image full', to=thumbnail_model, related_name='djangocms_blog_post_full', null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_thumbnail',
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image thumbnail', to='cmsplugin_filer_image.ThumbnailOption', related_name='djangocms_blog_post_thumbnail', null=True),
|
||||
field=models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, verbose_name='main image thumbnail', to=thumbnail_model, related_name='djangocms_blog_post_thumbnail', null=True),
|
||||
preserve_default=True,
|
||||
),
|
||||
migrations.AlterField(
|
||||
|
|
|
@ -4,37 +4,9 @@ from __future__ import unicode_literals
|
|||
import aldryn_apphooks_config.fields
|
||||
import app_data.fields
|
||||
import djangocms_text_ckeditor.fields
|
||||
from cms.models import Page
|
||||
from cms.utils.i18n import get_language_list
|
||||
from django.db import models, migrations
|
||||
|
||||
|
||||
def forwards(apps, schema_editor):
|
||||
BlogConfig = apps.get_model('djangocms_blog', 'BlogConfig')
|
||||
BlogConfigTranslation = apps.get_model('djangocms_blog', 'BlogConfigTranslation')
|
||||
Post = apps.get_model('djangocms_blog', 'Post')
|
||||
BlogCategory = apps.get_model('djangocms_blog', 'BlogCategory')
|
||||
GenericBlogPlugin = apps.get_model('djangocms_blog', 'GenericBlogPlugin')
|
||||
LatestPostsPlugin = apps.get_model('djangocms_blog', 'LatestPostsPlugin')
|
||||
AuthorEntriesPlugin = apps.get_model('djangocms_blog', 'AuthorEntriesPlugin')
|
||||
config = None
|
||||
for page in Page.objects.drafts().filter(application_urls='BlogApp'):
|
||||
config = BlogConfig.objects.create(namespace=page.application_namespace)
|
||||
for lang in get_language_list():
|
||||
title = page.get_title(lang)
|
||||
translation = BlogConfigTranslation.objects.create(language_code=lang, master_id=config.pk, app_title=title)
|
||||
if config:
|
||||
for model in (Post, BlogCategory, GenericBlogPlugin, LatestPostsPlugin, AuthorEntriesPlugin):
|
||||
for item in model.objects.all():
|
||||
item.app_config = config
|
||||
item.save()
|
||||
|
||||
|
||||
def backwards(apps, schema_editor):
|
||||
# No need for backward data migration
|
||||
pass
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
|
@ -120,5 +92,4 @@ class Migration(migrations.Migration):
|
|||
name='sites',
|
||||
field=models.ManyToManyField(to='sites.Site', help_text='Select sites in which to show the post. If none is set it will be visible in all the configured sites.', blank=True, verbose_name='Site(s)'),
|
||||
),
|
||||
migrations.RunPython(forwards, backwards)
|
||||
]
|
||||
|
|
18
djangocms_blog/migrations/0012_auto_20151220_1734.py
Normal file
18
djangocms_blog/migrations/0012_auto_20151220_1734.py
Normal file
|
@ -0,0 +1,18 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('djangocms_blog', '0011_auto_20151024_1809'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterModelOptions(
|
||||
name='blogconfig',
|
||||
options={'verbose_name': 'blog config', 'verbose_name_plural': 'blog configs'},
|
||||
),
|
||||
]
|
20
djangocms_blog/migrations/0013_auto_20160201_2235.py
Normal file
20
djangocms_blog/migrations/0013_auto_20160201_2235.py
Normal file
|
@ -0,0 +1,20 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.9.2 on 2016-02-01 21:35
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('djangocms_blog', '0012_auto_20151220_1734'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='categories',
|
||||
field=models.ManyToManyField(blank=True, related_name='blog_posts', to='djangocms_blog.BlogCategory', verbose_name='category'),
|
||||
),
|
||||
]
|
43
djangocms_blog/migrations/0014_auto_20160215_1331.py
Normal file
43
djangocms_blog/migrations/0014_auto_20160215_1331.py
Normal file
|
@ -0,0 +1,43 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from cms.models import Page
|
||||
from cms.utils.i18n import get_language_list
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
def forwards(apps, schema_editor):
|
||||
BlogConfig = apps.get_model('djangocms_blog', 'BlogConfig')
|
||||
BlogConfigTranslation = apps.get_model('djangocms_blog', 'BlogConfigTranslation')
|
||||
Post = apps.get_model('djangocms_blog', 'Post')
|
||||
BlogCategory = apps.get_model('djangocms_blog', 'BlogCategory')
|
||||
GenericBlogPlugin = apps.get_model('djangocms_blog', 'GenericBlogPlugin')
|
||||
LatestPostsPlugin = apps.get_model('djangocms_blog', 'LatestPostsPlugin')
|
||||
AuthorEntriesPlugin = apps.get_model('djangocms_blog', 'AuthorEntriesPlugin')
|
||||
config = None
|
||||
for page in Page.objects.drafts().filter(application_urls='BlogApp'):
|
||||
config, created = BlogConfig.objects.get_or_create(namespace=page.application_namespace)
|
||||
if not BlogConfigTranslation.objects.exists():
|
||||
for lang in get_language_list():
|
||||
title = page.get_title(lang)
|
||||
translation = BlogConfigTranslation.objects.create(language_code=lang, master_id=config.pk, app_title=title)
|
||||
if config:
|
||||
for model in (Post, BlogCategory, GenericBlogPlugin, LatestPostsPlugin, AuthorEntriesPlugin):
|
||||
for item in model.objects.filter(app_config__isnull=True):
|
||||
item.app_config = config
|
||||
item.save()
|
||||
|
||||
|
||||
def backwards(apps, schema_editor):
|
||||
# No need for backward data migration
|
||||
pass
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('djangocms_blog', '0013_auto_20160201_2235'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RunPython(forwards, backwards),
|
||||
]
|
|
@ -5,6 +5,7 @@ from aldryn_apphooks_config.fields import AppHookConfigField
|
|||
from aldryn_apphooks_config.managers.parler import AppHookConfigTranslatableManager
|
||||
from cms.models import CMSPlugin, PlaceholderField
|
||||
from django.conf import settings as dj_settings
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.db import models
|
||||
from django.utils import timezone
|
||||
|
@ -25,6 +26,13 @@ from .settings import get_setting
|
|||
BLOG_CURRENT_POST_IDENTIFIER = get_setting('CURRENT_POST_IDENTIFIER')
|
||||
BLOG_CURRENT_NAMESPACE = get_setting('CURRENT_NAMESPACE')
|
||||
|
||||
try:
|
||||
from filer.models import ThumbnailOption # NOQA
|
||||
thumbnail_model = 'filer.ThumbnailOption'
|
||||
except ImportError:
|
||||
from cmsplugin_filer_image.models import ThumbnailOption # NOQA
|
||||
thumbnail_model = 'cmsplugin_filer_image.ThumbnailOption'
|
||||
|
||||
|
||||
@python_2_unicode_compatible
|
||||
class BlogCategory(TranslatableModel):
|
||||
|
@ -99,16 +107,16 @@ class Post(ModelMeta, TranslatableModel):
|
|||
blank=True)
|
||||
publish = models.BooleanField(_('publish'), default=False)
|
||||
categories = models.ManyToManyField('djangocms_blog.BlogCategory', verbose_name=_('category'),
|
||||
related_name='blog_posts',)
|
||||
related_name='blog_posts', blank=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',
|
||||
main_image_thumbnail = models.ForeignKey(thumbnail_model,
|
||||
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',
|
||||
main_image_full = models.ForeignKey(thumbnail_model,
|
||||
verbose_name=_('main image full'),
|
||||
related_name='djangocms_blog_post_full',
|
||||
on_delete=models.SET_NULL,
|
||||
|
@ -231,7 +239,7 @@ class Post(ModelMeta, TranslatableModel):
|
|||
return title.strip()
|
||||
|
||||
def get_keywords(self):
|
||||
return self.safe_translation_getter('meta_keywords').strip().split(',')
|
||||
return self.safe_translation_getter('meta_keywords', default='').strip().split(',')
|
||||
|
||||
def get_locale(self):
|
||||
return self.get_current_language()
|
||||
|
@ -254,6 +262,14 @@ class Post(ModelMeta, TranslatableModel):
|
|||
def get_author(self):
|
||||
return self.author
|
||||
|
||||
def _set_default_author(self, current_user):
|
||||
if not self.author_id and self.app_config.set_author:
|
||||
if get_setting('AUTHOR_DEFAULT') is True:
|
||||
user = current_user
|
||||
else:
|
||||
user = get_user_model().objects.get(username=get_setting('AUTHOR_DEFAULT'))
|
||||
self.author = user
|
||||
|
||||
def thumbnail_options(self):
|
||||
if self.main_image_thumbnail_id:
|
||||
return self.main_image_thumbnail.as_dict
|
||||
|
@ -308,6 +324,8 @@ class LatestPostsPlugin(BasePostPlugin):
|
|||
def copy_relations(self, oldinstance):
|
||||
for tag in oldinstance.tags.all():
|
||||
self.tags.add(tag)
|
||||
for category in oldinstance.categories.all():
|
||||
self.categories.add(category)
|
||||
|
||||
def get_posts(self, request):
|
||||
posts = self.post_queryset(request)
|
||||
|
|
|
@ -15,20 +15,17 @@ class PostIndex(get_index_base()):
|
|||
|
||||
author = indexes.CharField(indexed=True, model_attr='get_author')
|
||||
keywords = indexes.CharField(null=True)
|
||||
tags = indexes.CharField(null=True)
|
||||
tags = indexes.CharField(null=True, model_attr='get_tags')
|
||||
post_text = indexes.CharField(null=True)
|
||||
|
||||
def get_keywords(self, post):
|
||||
return ','.join(post.get_keywords())
|
||||
|
||||
def get_title(self, post):
|
||||
return post.safe_translation_getter('title')
|
||||
return post.get_title()
|
||||
|
||||
def get_description(self, post):
|
||||
return post.get_description()
|
||||
|
||||
def prepare_pub_date(self, post):
|
||||
return post.date_published.strftime("%Y-%m-%d %H:%M:%S")
|
||||
return post.date_published
|
||||
|
||||
def index_queryset(self, using=None):
|
||||
self._get_backend(using)
|
||||
|
@ -47,32 +44,36 @@ class PostIndex(get_index_base()):
|
|||
return Post
|
||||
|
||||
def get_search_data(self, post, language, request):
|
||||
optional_attributes = []
|
||||
abstract = post.safe_translation_getter('abstract')
|
||||
text_bits = [post.get_title()]
|
||||
text_bits.append(strip_tags(abstract))
|
||||
text_bits.append(post.get_description())
|
||||
text_bits.append(' '.join(post.get_keywords()))
|
||||
description = post.get_description()
|
||||
abstract = strip_tags(post.safe_translation_getter('abstract', default=''))
|
||||
keywords = post.get_keywords()
|
||||
|
||||
text_bits = []
|
||||
if abstract:
|
||||
text_bits.append(abstract)
|
||||
if description:
|
||||
text_bits.append(description)
|
||||
if keywords:
|
||||
text_bits.append(' '.join(keywords))
|
||||
self.prepared_data['keywords'] = ','.join(keywords)
|
||||
for category in post.categories.all():
|
||||
text_bits.append(
|
||||
force_text(category.safe_translation_getter('name')))
|
||||
for tag in post.tags.all():
|
||||
text_bits.append(force_text(tag.name))
|
||||
if post.content:
|
||||
|
||||
if get_setting('USE_PLACEHOLDER'):
|
||||
plugins = post.content.cmsplugin_set.filter(language=language)
|
||||
content_bits = []
|
||||
for base_plugin in plugins:
|
||||
content = get_plugin_index_data(base_plugin, request)
|
||||
text_bits.append(' '.join(content))
|
||||
for attribute in optional_attributes:
|
||||
value = force_text(getattr(post, attribute))
|
||||
if value and value not in text_bits:
|
||||
text_bits.append(value)
|
||||
return ' '.join(text_bits)
|
||||
content_bits.append(' '.join(content))
|
||||
post_text = ' '.join(content_bits)
|
||||
else:
|
||||
post_text = post.safe_translation_getter('post_text')
|
||||
if post_text:
|
||||
post_text = strip_tags(post_text)
|
||||
self.prepared_data['post_text'] = post_text
|
||||
text_bits.append(post_text)
|
||||
|
||||
def prepare_fields(self, post, language, request):
|
||||
super(PostIndex, self).prepare_fields(post, language, request)
|
||||
data = [self.prepared_data['text']]
|
||||
self.prepared_data['keywords'] = ' '.join(post.get_keywords())
|
||||
self.prepared_data['tags'] = ' '.join(post.get_tags())
|
||||
self.prepared_data['post_text'] = ' '.join(post.safe_translation_getter('post_text'))
|
||||
self.prepared_data['text'] = ' '.join(data)
|
||||
return ' '.join(text_bits)
|
||||
|
|
|
@ -80,6 +80,8 @@ def get_setting(name):
|
|||
'BLOG_MULTISITE': getattr(settings, 'BLOG_MULTISITE', True),
|
||||
'BLOG_AUTHOR_DEFAULT': getattr(settings, 'BLOG_AUTHOR_DEFAULT', True),
|
||||
'BLOG_DEFAULT_PUBLISHED': getattr(settings, 'BLOG_DEFAULT_PUBLISHED', False),
|
||||
'BLOG_ADMIN_POST_FIELDSET_FILTER': getattr(
|
||||
settings, 'BLOG_ADMIN_POST_FIELDSET_FILTER', False),
|
||||
'BLOG_AVAILABLE_PERMALINK_STYLES': getattr(
|
||||
settings, 'BLOG_AVAILABLE_PERMALINK_STYLES', PERMALINKS
|
||||
),
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.utils import timezone
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
from django.db import models
|
||||
|
@ -66,8 +67,8 @@ class Migration(SchemaMigration):
|
|||
('date_published_end', self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True)),
|
||||
('publish', self.gf('django.db.models.fields.BooleanField')(default=False)),
|
||||
('main_image', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['filer.Image'], null=True, blank=True)),
|
||||
('main_image_thumbnail', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='blog_post_thumbnail', null=True, to=orm['cmsplugin_filer_image.ThumbnailOption'])),
|
||||
('main_image_full', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='blog_post_full', null=True, to=orm['cmsplugin_filer_image.ThumbnailOption'])),
|
||||
('main_image_thumbnail', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='blog_post_thumbnail', null=True, to=orm[thumbnail_model])),
|
||||
('main_image_full', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='blog_post_full', null=True, to=orm[thumbnail_model])),
|
||||
('content', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['cms.Placeholder'], null=True)),
|
||||
))
|
||||
db.send_create_signal(u'djangocms_blog', ['Post'])
|
||||
|
@ -218,7 +219,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -273,8 +274,8 @@ class Migration(SchemaMigration):
|
|||
'date_published_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['filer.Image']", 'null': 'True', 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -12,7 +13,7 @@ class Migration(SchemaMigration):
|
|||
|
||||
def backwards(self, orm):
|
||||
raise RuntimeError("Cannot reverse this migration. 'Post.author' and its values cannot be restored.")
|
||||
|
||||
|
||||
# The following code is provided here to aid in writing a correct migration
|
||||
# Changing field 'Post.author'
|
||||
db.alter_column(u'djangocms_blog_post', 'author_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm[dj_settings.AUTH_USER_MODEL]))
|
||||
|
@ -68,7 +69,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -123,8 +124,8 @@ class Migration(SchemaMigration):
|
|||
'date_published_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['filer.Image']", 'null': 'True', 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.post_translation': {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -67,7 +68,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -122,8 +123,8 @@ class Migration(SchemaMigration):
|
|||
'date_published_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['filer.Image']", 'null': 'True', 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -69,7 +70,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -124,8 +125,8 @@ class Migration(SchemaMigration):
|
|||
'date_published_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['filer.Image']", 'null': 'True', 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
@ -197,4 +198,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -69,7 +70,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -124,8 +125,8 @@ class Migration(SchemaMigration):
|
|||
'date_published_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['filer.Image']", 'null': 'True', 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
@ -198,4 +199,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -69,7 +70,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -125,8 +126,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
@ -193,4 +194,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from django.conf import settings as dj_settings
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -69,7 +70,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -125,8 +126,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
@ -194,4 +195,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -70,7 +71,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -126,8 +127,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'})
|
||||
},
|
||||
u'djangocms_blog.posttranslation': {
|
||||
|
@ -196,4 +197,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -74,7 +75,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "('width', 'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -130,8 +131,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': u"orm['sites.Site']", 'null': 'True', 'blank': 'True'})
|
||||
},
|
||||
|
@ -206,4 +207,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -10,24 +11,24 @@ class Migration(SchemaMigration):
|
|||
def forwards(self, orm):
|
||||
|
||||
# Changing field 'Post.main_image_full'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_full_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, on_delete=models.SET_NULL, to=orm['cmsplugin_filer_image.ThumbnailOption']))
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_full_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, on_delete=models.SET_NULL, to=orm[thumbnail_model]))
|
||||
|
||||
# Changing field 'Post.main_image'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, on_delete=models.SET_NULL, to=orm['filer.Image']))
|
||||
|
||||
# Changing field 'Post.main_image_thumbnail'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_thumbnail_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, on_delete=models.SET_NULL, to=orm['cmsplugin_filer_image.ThumbnailOption']))
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_thumbnail_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, on_delete=models.SET_NULL, to=orm[thumbnail_model]))
|
||||
|
||||
def backwards(self, orm):
|
||||
|
||||
# Changing field 'Post.main_image_full'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_full_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['cmsplugin_filer_image.ThumbnailOption']))
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_full_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm[thumbnail_model]))
|
||||
|
||||
# Changing field 'Post.main_image'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['filer.Image']))
|
||||
|
||||
# Changing field 'Post.main_image_thumbnail'
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_thumbnail_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm['cmsplugin_filer_image.ThumbnailOption']))
|
||||
db.alter_column(u'djangocms_blog_post', 'main_image_thumbnail_id', self.gf('django.db.models.fields.related.ForeignKey')(null=True, to=orm[thumbnail_model]))
|
||||
|
||||
models = {
|
||||
u'auth.group': {
|
||||
|
@ -80,7 +81,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -136,8 +137,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': u"orm['sites.Site']", 'null': 'True', 'blank': 'True'})
|
||||
},
|
||||
|
@ -212,4 +213,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
||||
|
@ -61,7 +62,7 @@ class Migration(SchemaMigration):
|
|||
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '255'})
|
||||
},
|
||||
'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'object_name': 'ThumbnailOption', 'ordering': "('width', 'height')"},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -117,8 +118,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'blank': 'True', 'to': "orm['filer.Image']", 'null': 'True', 'related_name': "'djangocms_blog_post_image'"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'blank': 'True', 'to': "orm['cmsplugin_filer_image.ThumbnailOption']", 'null': 'True', 'related_name': "'djangocms_blog_post_full'"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'blank': 'True', 'to': "orm['cmsplugin_filer_image.ThumbnailOption']", 'null': 'True', 'related_name': "'djangocms_blog_post_thumbnail'"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'blank': 'True', 'to': "orm[thumbnail_model]", 'null': 'True', 'related_name': "'djangocms_blog_post_full'"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'blank': 'True', 'to': "orm[thumbnail_model]", 'null': 'True', 'related_name': "'djangocms_blog_post_thumbnail'"}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'blank': 'True', 'to': "orm['sites.Site']", 'null': 'True', 'symmetrical': 'False'})
|
||||
},
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
|
@ -90,7 +91,7 @@ class Migration(DataMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -146,8 +147,8 @@ class Migration(DataMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': u"orm['sites.Site']", 'null': 'True', 'blank': 'True'})
|
||||
},
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -73,7 +74,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -128,8 +129,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_image'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': u"orm['sites.Site']", 'null': 'True', 'blank': 'True'})
|
||||
},
|
||||
|
@ -198,4 +199,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -133,7 +134,7 @@ class Migration(SchemaMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -211,8 +212,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_image'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['sites.Site']", 'symmetrical': 'False', 'blank': 'True'})
|
||||
},
|
||||
|
@ -282,4 +283,4 @@ class Migration(SchemaMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import DataMigration
|
||||
|
@ -84,7 +85,7 @@ class Migration(DataMigration):
|
|||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
u'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'ordering': "(u'width', u'height')", 'object_name': 'ThumbnailOption'},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -162,8 +163,8 @@ class Migration(DataMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_image'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': "orm['filer.Image']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['cmsplugin_filer_image.ThumbnailOption']"}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_full'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "u'djangocms_blog_post_thumbnail'", 'null': 'True', 'on_delete': 'models.SET_NULL', 'to': u"orm['%s']" % thumbnail_model}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['sites.Site']", 'symmetrical': 'False', 'blank': 'True'})
|
||||
},
|
||||
|
@ -233,4 +234,4 @@ class Migration(DataMigration):
|
|||
}
|
||||
}
|
||||
|
||||
complete_apps = ['djangocms_blog']
|
||||
complete_apps = ['djangocms_blog']
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from djangocms_blog.models import thumbnail_model
|
||||
from south.utils import datetime_utils as datetime
|
||||
from south.db import db
|
||||
from south.v2 import SchemaMigration
|
||||
|
@ -70,7 +71,7 @@ class Migration(SchemaMigration):
|
|||
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'slot': ('django.db.models.fields.CharField', [], {'max_length': '255', 'db_index': 'True'})
|
||||
},
|
||||
'cmsplugin_filer_image.thumbnailoption': {
|
||||
thumbnail_model: {
|
||||
'Meta': {'object_name': 'ThumbnailOption', 'ordering': "('width', 'height')"},
|
||||
'crop': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'height': ('django.db.models.fields.IntegerField', [], {}),
|
||||
|
@ -149,8 +150,8 @@ class Migration(SchemaMigration):
|
|||
'enable_comments': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
|
||||
'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
|
||||
'main_image': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'null': 'True', 'to': "orm['filer.Image']", 'related_name': "'djangocms_blog_post_image'", 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'null': 'True', 'to': "orm['cmsplugin_filer_image.ThumbnailOption']", 'related_name': "'djangocms_blog_post_full'", 'blank': 'True'}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'null': 'True', 'to': "orm['cmsplugin_filer_image.ThumbnailOption']", 'related_name': "'djangocms_blog_post_thumbnail'", 'blank': 'True'}),
|
||||
'main_image_full': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'null': 'True', 'to': "orm[thumbnail_model]", 'related_name': "'djangocms_blog_post_full'", 'blank': 'True'}),
|
||||
'main_image_thumbnail': ('django.db.models.fields.related.ForeignKey', [], {'on_delete': 'models.SET_NULL', 'null': 'True', 'to': "orm[thumbnail_model]", 'related_name': "'djangocms_blog_post_thumbnail'", 'blank': 'True'}),
|
||||
'publish': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
|
||||
'sites': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'to': "orm['sites.Site']", 'blank': 'True'})
|
||||
},
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
{% endblock meta %}
|
||||
|
||||
{% block content %}
|
||||
<div class="app app-blog span8">
|
||||
<div class="app app-blog">
|
||||
{% block content_blog %}{% endblock %}
|
||||
</div>
|
||||
{% endblock content %}
|
||||
|
|
|
@ -9,3 +9,4 @@ https://github.com/nephila/djangocms-helper/archive/develop.zip
|
|||
tox>=2.0
|
||||
wheel
|
||||
pysolr
|
||||
django-parler>=1.6
|
||||
|
|
4
setup.py
4
setup.py
|
@ -27,7 +27,7 @@ setup(
|
|||
],
|
||||
include_package_data=True,
|
||||
install_requires=[
|
||||
'django-parler>=1.2',
|
||||
'django-parler>=1.5',
|
||||
'django-cms>3.0.11',
|
||||
'django-taggit>=0.12.2',
|
||||
'django-filer',
|
||||
|
@ -51,7 +51,7 @@ setup(
|
|||
},
|
||||
|
||||
classifiers=[
|
||||
'Development Status :: 4 - Beta',
|
||||
'Development Status :: 5 - Production/Stable',
|
||||
'Framework :: Django',
|
||||
'Intended Audience :: Developers',
|
||||
'License :: OSI Approved :: BSD License',
|
||||
|
|
|
@ -6,6 +6,7 @@ from copy import deepcopy
|
|||
from cmsplugin_filer_image.models import ThumbnailOption
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.contrib.sites.models import Site
|
||||
from django.core.cache import cache
|
||||
from djangocms_helper.base_test import BaseTestCase
|
||||
from haystack import connections
|
||||
from haystack.constants import DEFAULT_ALIAS
|
||||
|
@ -18,7 +19,7 @@ User = get_user_model()
|
|||
|
||||
|
||||
def _get_cat_pk(lang, name):
|
||||
return lambda: BlogCategory.objects.translated(lang, name=name).get().pk
|
||||
return lambda: BlogCategory.objects.language(lang).translated(lang, name=name).get().pk
|
||||
|
||||
|
||||
class BaseTest(BaseTestCase):
|
||||
|
@ -65,7 +66,8 @@ class BaseTest(BaseTestCase):
|
|||
'description': 'Descrizione del terzo post', 'keywords': 'keyword5, keyword6',
|
||||
'text': 'Testo del terzo post'},
|
||||
},
|
||||
{'en': {'title': 'Different appconfig', 'abstract': '<p>Different appconfig first line</p>',
|
||||
{'en': {'title': 'Different appconfig',
|
||||
'abstract': '<p>Different appconfig first line</p>',
|
||||
'description': 'Different appconfig description', 'keywords': 'keyword5, keyword6',
|
||||
'text': 'Different appconfig text', 'app_config': 'sample_app2', 'publish': True},
|
||||
'it': {'title': 'Altro appconfig', 'abstract': '<p>prima riga del Altro appconfig</p>',
|
||||
|
@ -84,17 +86,19 @@ class BaseTest(BaseTestCase):
|
|||
{'en': {'name': 'Almost', 'app_config': 'sample_app'},
|
||||
'it': {'name': 'Mezzo'},
|
||||
},
|
||||
{'en': {'name': 'Loud', 'parent_id': _get_cat_pk('en', 'Almost'), 'app_config': 'sample_app'},
|
||||
'it': {'name': 'Forte', 'parent_id': _get_cat_pk('it', 'Mezzo')},
|
||||
},
|
||||
{'en': {'name': 'Silent', 'parent_id': _get_cat_pk('en', 'Almost'), 'app_config': 'sample_app'},
|
||||
},
|
||||
{'en': {'name': 'Drums', 'app_config': 'sample_app2'},
|
||||
'it': {'name': 'Tamburi'},
|
||||
},
|
||||
{'en': {'name': 'Guitars', 'app_config': 'sample_app2'},
|
||||
'it': {'name': 'Chitarre'},
|
||||
},
|
||||
{'en': {'name': 'Loud', 'parent_id': _get_cat_pk('en', 'Almost'),
|
||||
'app_config': 'sample_app'},
|
||||
'it': {'name': 'Forte', 'parent_id': _get_cat_pk('it', 'Mezzo')},
|
||||
},
|
||||
{'en': {'name': 'Silent', 'parent_id': _get_cat_pk('en', 'Almost'),
|
||||
'app_config': 'sample_app'},
|
||||
},
|
||||
)
|
||||
|
||||
@classmethod
|
||||
|
@ -120,11 +124,13 @@ class BaseTest(BaseTestCase):
|
|||
'sample_app': cls.app_config_1,
|
||||
'sample_app2': cls.app_config_2,
|
||||
}
|
||||
cls.category_1 = BlogCategory.objects.create(name='category 1', app_config=cls.app_config_1)
|
||||
cls.category_1 = BlogCategory.objects.create(name='category 1',
|
||||
app_config=cls.app_config_1)
|
||||
cls.category_1.set_current_language('it', initialize=True)
|
||||
cls.category_1.name = 'categoria 1'
|
||||
cls.category_1.save()
|
||||
cls.site_2 = Site.objects.create(domain='http://example2.com', name='example 2')
|
||||
cache.clear()
|
||||
|
||||
@classmethod
|
||||
def tearDownClass(cls):
|
||||
|
@ -168,7 +174,6 @@ class BaseTest(BaseTestCase):
|
|||
meta_description=data['description'],
|
||||
meta_keywords=data['keywords']
|
||||
)
|
||||
post = self.reload_model(post)
|
||||
post.categories.add(self.category_1)
|
||||
if sites:
|
||||
for site in sites:
|
||||
|
@ -177,6 +182,7 @@ class BaseTest(BaseTestCase):
|
|||
|
||||
def get_posts(self, sites=None):
|
||||
posts = []
|
||||
cache.clear()
|
||||
for post in self._post_data:
|
||||
post1 = self._get_post(post['en'], sites=sites)
|
||||
post1 = self._get_post(post['it'], post=post1, lang='it')
|
||||
|
|
|
@ -3,7 +3,7 @@ from __future__ import absolute_import, print_function, unicode_literals
|
|||
|
||||
from aldryn_apphooks_config.utils import get_app_instance
|
||||
from django.core.cache import cache
|
||||
from django.utils.translation import activate
|
||||
from django.utils.translation import activate, override
|
||||
from menus.menu_pool import menu_pool
|
||||
from parler.utils.context import smart_override, switch_language
|
||||
|
||||
|
@ -21,6 +21,7 @@ class MenuTest(BaseTest):
|
|||
def setUp(self):
|
||||
super(MenuTest, self).setUp()
|
||||
self.cats = [self.category_1]
|
||||
cache.clear()
|
||||
for i, lang_data in enumerate(self._categories_data):
|
||||
cat = self._get_category(lang_data['en'])
|
||||
if 'it' in lang_data:
|
||||
|
@ -28,26 +29,39 @@ class MenuTest(BaseTest):
|
|||
self.cats.append(cat)
|
||||
|
||||
activate('en')
|
||||
menu_pool.clear(all=True)
|
||||
menu_pool.discover_menus()
|
||||
# All cms menu modifiers should be removed from menu_pool.modifiers
|
||||
# so that they do not interfere with our menu nodes
|
||||
menu_pool.modifiers = [m for m in menu_pool.modifiers if m.__module__.startswith('djangocms_blog')]
|
||||
cache.clear()
|
||||
|
||||
def test_menu_nodes(self):
|
||||
"""
|
||||
Tests if all categories are present in the menu
|
||||
"""
|
||||
self.get_posts()
|
||||
self.get_pages()
|
||||
posts = self.get_posts()
|
||||
pages = self.get_pages()
|
||||
self.reload_urlconf()
|
||||
|
||||
for lang in ('en', 'it'):
|
||||
request = self.get_page_request(None, self.user, r'/%s/page-two/' % lang)
|
||||
with smart_override(lang):
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
request = self.get_page_request(pages[1], self.user, pages[1].get_absolute_url(lang))
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
cats_url = set([cat.get_absolute_url() for cat in self.cats if cat.has_translation(lang)])
|
||||
self.assertTrue(cats_url.issubset(nodes_url))
|
||||
|
||||
cache.clear()
|
||||
posts[0].categories.clear()
|
||||
for lang in ('en', 'it'):
|
||||
with smart_override(lang):
|
||||
request = self.get_page_request(pages[1], self.user, pages[1].get_absolute_url(lang))
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
self.assertFalse(posts[0].get_absolute_url(lang) in nodes_url)
|
||||
self.assertTrue(posts[1].get_absolute_url(lang) in nodes_url)
|
||||
|
||||
def test_menu_options(self):
|
||||
"""
|
||||
Tests menu structure based on menu_structure configuration
|
||||
|
@ -72,7 +86,7 @@ class MenuTest(BaseTest):
|
|||
for lang in languages:
|
||||
request = self.get_page_request(None, self.user, r'/%s/page-two/' % lang)
|
||||
with smart_override(lang):
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
self.assertFalse(cats_url[lang].issubset(nodes_url))
|
||||
self.assertFalse(posts_url[lang].issubset(nodes_url))
|
||||
|
@ -84,7 +98,7 @@ class MenuTest(BaseTest):
|
|||
for lang in languages:
|
||||
request = self.get_page_request(None, self.user, r'/%s/page-two/' % lang)
|
||||
with smart_override(lang):
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
self.assertFalse(cats_url[lang].issubset(nodes_url))
|
||||
self.assertTrue(posts_url[lang].issubset(nodes_url))
|
||||
|
@ -96,7 +110,7 @@ class MenuTest(BaseTest):
|
|||
for lang in languages:
|
||||
request = self.get_page_request(None, self.user, r'/%s/page-two/' % lang)
|
||||
with smart_override(lang):
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
self.assertTrue(cats_url[lang].issubset(nodes_url))
|
||||
self.assertFalse(posts_url[lang].issubset(nodes_url))
|
||||
|
@ -108,7 +122,7 @@ class MenuTest(BaseTest):
|
|||
for lang in languages:
|
||||
request = self.get_page_request(None, self.user, r'/%s/page-two/' % lang)
|
||||
with smart_override(lang):
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
nodes_url = set([node.url for node in nodes])
|
||||
self.assertTrue(cats_url[lang].issubset(nodes_url))
|
||||
self.assertTrue(posts_url[lang].issubset(nodes_url))
|
||||
|
@ -126,22 +140,55 @@ class MenuTest(BaseTest):
|
|||
(PostDetailView, 'slug', posts[0], posts[0].categories.first()),
|
||||
(CategoryEntriesView, 'category', self.cats[2], self.cats[2])
|
||||
)
|
||||
self.app_config_1.app_data.config.menu_structure = MENU_TYPE_COMPLETE
|
||||
self.app_config_1.save()
|
||||
for view_cls, kwarg, obj, cat in tests:
|
||||
request = self.get_page_request(pages[1], self.user, path=obj.get_absolute_url())
|
||||
with smart_override('en'):
|
||||
with switch_language(obj, 'en'):
|
||||
request = self.get_page_request(
|
||||
pages[1], self.user, path=obj.get_absolute_url()
|
||||
)
|
||||
cache.clear()
|
||||
menu_pool.clear(all=True)
|
||||
view_obj = view_cls()
|
||||
view_obj.request = request
|
||||
view_obj.namespace, view_obj.config = get_app_instance(request)
|
||||
view_obj.app_config = self.app_config_1
|
||||
view_obj.kwargs = {kwarg: obj.slug}
|
||||
view_obj.get(request)
|
||||
view_obj.get_context_data()
|
||||
# check if selected menu node points to cat
|
||||
nodes = menu_pool.get_nodes(request, namespace='BlogCategoryMenu')
|
||||
found = False
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
found = []
|
||||
for node in nodes:
|
||||
if node.selected:
|
||||
self.assertEqual(node.url, obj.get_absolute_url())
|
||||
found = True
|
||||
break
|
||||
self.assertTrue(found)
|
||||
found.append(node.get_absolute_url())
|
||||
self.assertTrue(obj.get_absolute_url() in found)
|
||||
|
||||
self.app_config_1.app_data.config.menu_structure = MENU_TYPE_CATEGORIES
|
||||
self.app_config_1.save()
|
||||
for view_cls, kwarg, obj, cat in tests:
|
||||
with smart_override('en'):
|
||||
with switch_language(obj, 'en'):
|
||||
request = self.get_page_request(
|
||||
pages[1], self.user, path=obj.get_absolute_url()
|
||||
)
|
||||
cache.clear()
|
||||
menu_pool.clear(all=True)
|
||||
view_obj = view_cls()
|
||||
view_obj.request = request
|
||||
view_obj.namespace, view_obj.config = get_app_instance(request)
|
||||
view_obj.app_config = self.app_config_1
|
||||
view_obj.kwargs = {kwarg: obj.slug}
|
||||
view_obj.get(request)
|
||||
view_obj.get_context_data()
|
||||
# check if selected menu node points to cat
|
||||
nodes = menu_pool.get_nodes(request)
|
||||
found = []
|
||||
for node in nodes:
|
||||
if node.selected:
|
||||
found.append(node.get_absolute_url())
|
||||
self.assertTrue(cat.get_absolute_url() in found)
|
||||
|
||||
self.app_config_1.app_data.config.menu_structure = MENU_TYPE_COMPLETE
|
||||
self.app_config_1.save()
|
||||
|
|
|
@ -34,6 +34,8 @@ class AdminTest(BaseTest):
|
|||
admin.autodiscover()
|
||||
|
||||
def test_admin_post_views(self):
|
||||
self.get_pages()
|
||||
|
||||
post_admin = admin.site._registry[Post]
|
||||
request = self.get_page_request('/', self.user, r'/en/blog/', edit=False)
|
||||
|
||||
|
@ -50,6 +52,28 @@ class AdminTest(BaseTest):
|
|||
self.assertContains(response, '<input id="id_slug" maxlength="50" name="slug" type="text" value="first-post" />')
|
||||
self.assertContains(response, '<option value="%s" selected="selected">Blog / sample_app</option>' % self.app_config_1.pk)
|
||||
|
||||
# Test for publish view
|
||||
post.publish = False
|
||||
post.save()
|
||||
response = post_admin.publish_post(request, str(post.pk))
|
||||
# Redirects to current post
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(response['Location'], post.get_absolute_url())
|
||||
post = self.reload_model(post)
|
||||
# post is publshed
|
||||
self.assertTrue(post.publish)
|
||||
|
||||
# Non-existing post is redirected to posts list
|
||||
response = post_admin.publish_post(request, str('1000000'))
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(response['Location'], reverse('djangocms_blog:posts-latest'))
|
||||
|
||||
# unless a referer is set
|
||||
request.META['HTTP_REFERER'] = '/'
|
||||
response = post_admin.publish_post(request, str('1000000'))
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(response['Location'], '/')
|
||||
|
||||
def test_admin_blogconfig_views(self):
|
||||
post_admin = admin.site._registry[BlogConfig]
|
||||
request = self.get_page_request('/', self.user, r'/en/blog/', edit=False)
|
||||
|
@ -67,7 +91,7 @@ class AdminTest(BaseTest):
|
|||
for fieldname in BlogConfigForm.base_fields:
|
||||
self.assertContains(response, 'id="id_config-%s"' % fieldname)
|
||||
self.assertContains(response, '<input id="id_config-og_app_id" maxlength="200" name="config-og_app_id" type="text" />')
|
||||
self.assertContains(response, '<input class="vTextField" id="id_namespace" maxlength="100" name="namespace" type="text" value="sample_app" />')
|
||||
self.assertContains(response, 'sample_app')
|
||||
|
||||
def test_admin_category_views(self):
|
||||
post_admin = admin.site._registry[BlogCategory]
|
||||
|
@ -191,6 +215,22 @@ class AdminTest(BaseTest):
|
|||
self.assertEqual(Post.objects.count(), 3)
|
||||
self.assertEqual(Post.objects.get(translations__slug='third-post').author.username, 'staff')
|
||||
|
||||
def test_admin_fieldsets_filter(self):
|
||||
post_admin = admin.site._registry[Post]
|
||||
request = self.get_page_request('/', self.user_normal, r'/en/blog/?app_config=%s' % self.app_config_1.pk)
|
||||
|
||||
fsets = post_admin.get_fieldsets(request)
|
||||
self.assertFalse('author' in fsets[1][1]['fields'][0])
|
||||
|
||||
def filter_function(fs, request, obj=None):
|
||||
if request.user == self.user_normal:
|
||||
fs[1][1]['fields'][0].append('author')
|
||||
return fs
|
||||
|
||||
with self.settings(BLOG_ADMIN_POST_FIELDSET_FILTER=filter_function):
|
||||
fsets = post_admin.get_fieldsets(request)
|
||||
self.assertTrue('author' in fsets[1][1]['fields'][0])
|
||||
|
||||
def test_admin_post_text(self):
|
||||
pages = self.get_pages()
|
||||
post = self._get_post(self._post_data[0]['en'])
|
||||
|
@ -252,7 +292,7 @@ class ModelsTest(BaseTest):
|
|||
url_en = reverse(
|
||||
'%s:post-detail' % self.app_config_1.namespace,
|
||||
kwargs=kwargs,
|
||||
current_app=self.app_config_1
|
||||
current_app=self.app_config_1.namespace
|
||||
)
|
||||
self.assertEqual(url_en, post.get_absolute_url())
|
||||
|
||||
|
@ -265,7 +305,7 @@ class ModelsTest(BaseTest):
|
|||
url_it = reverse(
|
||||
'%s:post-detail' % self.app_config_1.namespace,
|
||||
kwargs=kwargs,
|
||||
current_app=self.app_config_1
|
||||
current_app=self.app_config_1.namespace
|
||||
)
|
||||
self.assertEqual(url_it, post.get_absolute_url())
|
||||
self.assertNotEqual(url_it, url_en)
|
||||
|
|
|
@ -59,6 +59,24 @@ class PluginTest(BaseTest):
|
|||
self.assertTrue(rendered.find('<article id="post-second-post"') > -1)
|
||||
self.assertTrue(rendered.find(posts[1].get_absolute_url()) > -1)
|
||||
|
||||
# Checking copy relations
|
||||
ph = pages[0].placeholders.get(slot='content')
|
||||
original = ph.get_plugins('en')
|
||||
pages[0].publish('en')
|
||||
published = pages[0].get_public_object()
|
||||
ph = published.placeholders.get(slot='content')
|
||||
new = ph.get_plugins('en')
|
||||
self.assertNotEqual(original, new)
|
||||
|
||||
casted_tags, __ = new[0].get_plugin_instance()
|
||||
casted_categories, __ = new[1].get_plugin_instance()
|
||||
|
||||
self.assertEqual(casted_tags.tags.count(), 1)
|
||||
self.assertEqual(casted_tags.categories.count(), 0)
|
||||
|
||||
self.assertEqual(casted_categories.tags.count(), 0)
|
||||
self.assertEqual(casted_categories.categories.count(), 1)
|
||||
|
||||
def test_plugin_authors(self):
|
||||
pages = self.get_pages()
|
||||
posts = self.get_posts()
|
||||
|
@ -73,6 +91,36 @@ class PluginTest(BaseTest):
|
|||
rendered = plugin.render_plugin(context, ph)
|
||||
self.assertTrue(rendered.find('No article found') > -1)
|
||||
|
||||
plugin.authors.add(self.user)
|
||||
context = self.get_plugin_context(pages[0], 'en', plugin, edit=True)
|
||||
rendered = plugin.render_plugin(context, ph)
|
||||
self.assertTrue(rendered.find('/en/blog/author/admin/') > -1)
|
||||
self.assertTrue(rendered.find('2 articles') > -1)
|
||||
|
||||
plugin.authors.add(self.user_staff)
|
||||
context = self.get_plugin_context(pages[0], 'en', plugin, edit=True)
|
||||
rendered = plugin.render_plugin(context, ph)
|
||||
self.assertTrue(rendered.find('/en/blog/author/staff/') > -1)
|
||||
self.assertTrue(rendered.find('0 articles') > -1)
|
||||
|
||||
plugin.authors.add(self.user_normal)
|
||||
context = self.get_plugin_context(pages[0], 'en', plugin, edit=True)
|
||||
rendered = plugin.render_plugin(context, ph)
|
||||
self.assertTrue(rendered.find('/en/blog/author/normal/') > -1)
|
||||
self.assertTrue(rendered.find('0 articles') > -1)
|
||||
|
||||
# Checking copy relations
|
||||
ph = pages[0].placeholders.get(slot='content')
|
||||
original = ph.get_plugins('en')
|
||||
pages[0].publish('en')
|
||||
published = pages[0].get_public_object()
|
||||
ph = published.placeholders.get(slot='content')
|
||||
new = ph.get_plugins('en')
|
||||
self.assertNotEqual(original, new)
|
||||
|
||||
casted_authors, __ = new[0].get_plugin_instance()
|
||||
self.assertEqual(casted_authors.authors.count(), 3)
|
||||
|
||||
def test_plugin_tags(self):
|
||||
pages = self.get_pages()
|
||||
posts = self.get_posts()
|
||||
|
|
|
@ -11,7 +11,7 @@ from .base import BaseTest
|
|||
|
||||
|
||||
class BlogIndexingTests(BaseTest):
|
||||
sample_text = ('First post First post first line This is the description keyword1 '
|
||||
sample_text = ('First post first line This is the description keyword1 '
|
||||
'keyword2 category 1 a tag test body')
|
||||
|
||||
def setUp(self):
|
||||
|
@ -28,29 +28,12 @@ class BlogIndexingTests(BaseTest):
|
|||
index.index_queryset(DEFAULT_ALIAS) # initialises index._backend_alias
|
||||
indexed = index.prepare(post)
|
||||
|
||||
|
||||
self.assertEqual(post.get_title(), indexed['title'])
|
||||
self.assertEqual(post.get_description(), indexed['description'])
|
||||
self.assertEqual(post.get_tags(), indexed['tags'])
|
||||
self.assertEqual(self.sample_text, indexed['text'])
|
||||
self.assertEqual(post.get_absolute_url(), indexed['url'])
|
||||
#self.assertEqual(post.date_published.strftime("%Y-%m-%d %H:%M:%S"), indexed['pub_date'])
|
||||
|
||||
def test_blog_post_is_indexed_using_update_object(self):
|
||||
"""This tests the indexing path way used by the RealTimeSignalProcessor"""
|
||||
post = self._get_post(self._post_data[0]['en'])
|
||||
post = self._get_post(self._post_data[0]['it'], post, 'it')
|
||||
post.tags.add('a tag')
|
||||
add_plugin(post.content, 'TextPlugin', language='en', body='test body')
|
||||
|
||||
index = self.get_post_index()
|
||||
index.update_object(post, using=DEFAULT_ALIAS)
|
||||
indexed = index.prepared_data
|
||||
|
||||
self.assertEqual(post.get_title(), indexed['title'])
|
||||
self.assertEqual(post.get_description(), indexed['description'])
|
||||
self.assertEqual(self.sample_text, indexed['text'])
|
||||
self.assertEqual(post.get_absolute_url(), indexed['url'])
|
||||
#self.assertEqual(post.date_published.strftime("%Y-%m-%d %H:%M:%S"), indexed['pub_date'])
|
||||
self.assertEqual(post.date_published, indexed['pub_date'])
|
||||
|
||||
def test_searchqueryset(self):
|
||||
posts = self.get_posts()
|
||||
|
|
|
@ -1,8 +1,9 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from __future__ import absolute_import, print_function, unicode_literals
|
||||
|
||||
from cms.toolbar.items import ModalItem
|
||||
from cms.toolbar.items import ButtonList, ModalItem
|
||||
from django.core.urlresolvers import reverse
|
||||
from django.utils.encoding import force_text
|
||||
|
||||
from djangocms_blog.models import BLOG_CURRENT_POST_IDENTIFIER
|
||||
|
||||
|
@ -20,9 +21,39 @@ class ToolbarTest(BaseTest):
|
|||
pages = self.get_pages()
|
||||
request = self.get_page_request(pages[0], self.user, r'/en/blog/', edit=True)
|
||||
setattr(request, BLOG_CURRENT_POST_IDENTIFIER, posts[0])
|
||||
|
||||
posts[0].publish = False
|
||||
posts[0].save()
|
||||
toolbar = CMSToolbar(request)
|
||||
toolbar.populate()
|
||||
toolbar.post_template_populate()
|
||||
toolbar.get_left_items()
|
||||
blog_menu = toolbar.menus['djangocms_blog']
|
||||
self.assertEqual(len(blog_menu.find_items(ModalItem, url=reverse('admin:djangocms_blog_post_changelist'))), 1)
|
||||
self.assertEqual(len(blog_menu.find_items(ModalItem, url=reverse('admin:djangocms_blog_post_add'))), 1)
|
||||
self.assertEqual(len(blog_menu.find_items(ModalItem, url=reverse('admin:djangocms_blog_post_change', args=(posts[0].pk,)))), 1)
|
||||
|
||||
# Publish button only appears if current post is unpublished
|
||||
right = toolbar.get_right_items()
|
||||
buttons = sum([item.buttons for item in right if isinstance(item, ButtonList)], [])
|
||||
self.assertTrue([button for button in buttons if force_text(button.name) == 'Publish Blog now'])
|
||||
|
||||
# Publish button does not appears if current post is published
|
||||
posts[0].publish = True
|
||||
posts[0].save()
|
||||
toolbar = CMSToolbar(request)
|
||||
toolbar.populate()
|
||||
toolbar.post_template_populate()
|
||||
right = toolbar.get_right_items()
|
||||
buttons = sum([item.buttons for item in right if isinstance(item, ButtonList)], [])
|
||||
self.assertFalse([button for button in buttons if force_text(button.name) == 'Publish Blog now'])
|
||||
|
||||
# Publish button does not appears if other posts but the current one are unpublished
|
||||
posts[1].publish = True
|
||||
posts[1].save()
|
||||
toolbar = CMSToolbar(request)
|
||||
toolbar.populate()
|
||||
toolbar.post_template_populate()
|
||||
right = toolbar.get_right_items()
|
||||
buttons = sum([item.buttons for item in right if isinstance(item, ButtonList)], [])
|
||||
self.assertFalse([button for button in buttons if force_text(button.name) == 'Publish Blog now'])
|
||||
|
|
|
@ -47,25 +47,43 @@ class WizardTest(BaseTest):
|
|||
@skipIf(LooseVersion(cms.__version__) < LooseVersion('3.2'),
|
||||
reason='Wizards not available for django CMS < 3.2')
|
||||
def test_wizard_init(self):
|
||||
from cms.utils.permissions import current_user
|
||||
from cms.wizards.wizard_pool import wizard_pool
|
||||
from djangocms_blog.models import Post
|
||||
self.get_pages()
|
||||
|
||||
wizs = [entry for entry in wizard_pool.get_entries() if entry.model == Post]
|
||||
for wiz in wizs:
|
||||
app_config = self.app_config_1.pk if wiz.title == 'New Blog' else self.app_config_2.pk
|
||||
form = wiz.form()
|
||||
self.assertTrue(form.initial.get('app_config', False), app_config)
|
||||
self.assertTrue(form.fields['app_config'].widget.attrs['disabled'])
|
||||
with current_user(self.user_staff):
|
||||
wizs = [entry for entry in wizard_pool.get_entries() if entry.model == Post]
|
||||
for index, wiz in enumerate(wizs):
|
||||
app_config = self.app_config_1.pk if wiz.title == 'New Blog' else self.app_config_2.pk
|
||||
form = wiz.form()
|
||||
self.assertTrue(form.initial.get('app_config', False), app_config)
|
||||
self.assertTrue(form.fields['app_config'].widget.attrs['disabled'])
|
||||
|
||||
form = wiz.form(data={
|
||||
'1-title': 'title',
|
||||
'1-abstract': 'abstract',
|
||||
'1-categories': [self.category_1.pk],
|
||||
}, prefix=1)
|
||||
self.assertEqual(form.default_appconfig, app_config)
|
||||
self.assertTrue(form.is_valid())
|
||||
self.assertTrue(form.cleaned_data['app_config'], app_config)
|
||||
form = wiz.form(data={
|
||||
'1-title': 'title{0}'.format(index),
|
||||
'1-abstract': 'abstract{0}'.format(index),
|
||||
'1-categories': [self.category_1.pk],
|
||||
}, prefix=1)
|
||||
self.assertEqual(form.default_appconfig, app_config)
|
||||
self.assertTrue(form.is_valid())
|
||||
self.assertEqual(form.cleaned_data['app_config'].pk, app_config)
|
||||
instance = form.save()
|
||||
self.assertEqual(instance.author, self.user_staff)
|
||||
|
||||
with self.settings(BLOG_AUTHOR_DEFAULT='normal'):
|
||||
for index, wiz in enumerate(wizs):
|
||||
app_config = self.app_config_1.pk if wiz.title == 'New Blog' else self.app_config_2.pk
|
||||
form = wiz.form(data={
|
||||
'1-title': 'title-2{0}'.format(index),
|
||||
'1-abstract': 'abstract-2{0}'.format(index),
|
||||
'1-categories': [self.category_1.pk],
|
||||
}, prefix=1)
|
||||
self.assertEqual(form.default_appconfig, app_config)
|
||||
self.assertTrue(form.is_valid())
|
||||
self.assertEqual(form.cleaned_data['app_config'].pk, app_config)
|
||||
instance = form.save()
|
||||
self.assertEqual(instance.author, self.user_normal)
|
||||
|
||||
def test_wizard_import(self):
|
||||
# The following import should not fail in any django CMS version
|
||||
|
|
22
tox.ini
22
tox.ini
|
@ -1,27 +1,29 @@
|
|||
[tox]
|
||||
envlist = pep8,isort,py{35,34,33,27}-django{19,18}-cms{32,31},py{34,33,27}-django{17,16}-cms{32,31,30},py{26}-django16-cms{31,30}
|
||||
envlist = pep8,isort,py{35,34,27}-django{19}-cms{32},py{35,34,33,27}-django{18}-cms{32,31},py{34,33,27}-django{17,16}-cms{32,31,30},py{26}-django16-cms{31,30}
|
||||
|
||||
[testenv]
|
||||
commands = {env:COMMAND:python} cms_helper.py test djangocms_blog --no-migrate
|
||||
deps =
|
||||
-r{toxinidir}/requirements-test.txt
|
||||
django16: Django>=1.6,<1.7
|
||||
django16: django-taggit<0.18
|
||||
django16: django-mptt<0.8
|
||||
django17: Django>=1.7,<1.8
|
||||
django18: Django>=1.7,<1.9
|
||||
django18: https://github.com/stefanfoulis/django-filer/archive/develop.zip
|
||||
django18: https://github.com/stefanfoulis/cmsplugin-filer/archive/develop.zip
|
||||
django19: Django==1.9a1
|
||||
django19: https://github.com/stefanfoulis/django-filer/archive/develop.zip
|
||||
django19: https://github.com/stefanfoulis/cmsplugin-filer/archive/develop.zip
|
||||
django17: django-mptt<0.8
|
||||
django18: Django>=1.8,<1.9
|
||||
django18: django-mptt>=0.8
|
||||
django19: Django>=1.9,<1.10
|
||||
django19: django-mptt>=0.8
|
||||
django19: https://github.com/divio/django-filer/archive/develop.zip
|
||||
django19: https://github.com/divio/cmsplugin-filer/archive/develop.zip
|
||||
cms30: https://github.com/divio/django-cms/archive/support/3.0.x.zip
|
||||
cms31: https://github.com/divio/django-cms/archive/support/3.1.x.zip
|
||||
cms32: https://github.com/divio/django-cms/archive/develop.zip
|
||||
cms32: https://github.com/divio/django-cms/archive/release/3.2.x.zip
|
||||
https://github.com/nephila/django-meta-mixin/archive/master.zip
|
||||
https://github.com/nephila/djangocms-helper/archive/develop.zip
|
||||
py26: unittest2
|
||||
django-parler<1.5
|
||||
https://github.com/aldryn/aldryn-apphooks-config/archive/master.zip
|
||||
https://github.com/nephila/djangocms-apphook-setup/archive/master.zip
|
||||
-r{toxinidir}/requirements-test.txt
|
||||
|
||||
[testenv:isort]
|
||||
deps = isort
|
||||
|
|
Loading…
Reference in a new issue