From a1b2c5630528f0edb984888533775a737a612f83 Mon Sep 17 00:00:00 2001 From: Iacopo Spalletti Date: Sun, 13 Sep 2015 00:27:48 +0200 Subject: [PATCH] Fix issues related to parler --- djangocms_blog/models.py | 9 ++------- djangocms_blog/views.py | 10 ++++++++-- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/djangocms_blog/models.py b/djangocms_blog/models.py index 6b7b9a2..2b28aff 100644 --- a/djangocms_blog/models.py +++ b/djangocms_blog/models.py @@ -174,14 +174,9 @@ class Post(ModelMeta, TranslatableModel): return reverse('djangocms_blog:post-detail', kwargs=kwargs) def save(self, *args, **kwargs): + if not self.slug and self.title: + self.slug = slugify(self.title) super(Post, self).save(*args, **kwargs) - main_lang = self.get_current_language() - for lang in self.get_available_languages(): - self.set_current_language(lang) - if not self.slug and self.title: - self.slug = slugify(self.title) - self.set_current_language(main_lang) - self.save_translations() def get_title(self): title = self.safe_translation_getter('meta_title', any_language=True) diff --git a/djangocms_blog/views.py b/djangocms_blog/views.py index 5751aba..85ffcda 100644 --- a/djangocms_blog/views.py +++ b/djangocms_blog/views.py @@ -16,10 +16,10 @@ class BaseBlogView(ViewUrlMixin): def get_queryset(self): language = get_language() - queryset = self.model._default_manager.active_translations(language_code=language) + queryset = self.model._default_manager.all().active_translations(language_code=language) if not getattr(self.request, 'toolbar', False) or not self.request.toolbar.edit_mode: queryset = queryset.published() - return queryset.on_site() + return queryset def render_to_response(self, context, **response_kwargs): response_kwargs['current_app'] = resolve(self.request.path).namespace @@ -46,6 +46,12 @@ class PostDetailView(TranslatableSlugMixin, BaseBlogView, DetailView): slug_field = 'slug' view_url_name = 'djangocms_blog:post-detail' + def get_queryset(self): + queryset = self.model._default_manager.all() + if not getattr(self.request, 'toolbar', False) or not self.request.toolbar.edit_mode: + queryset = queryset.published() + return queryset + def get(self, *args, **kwargs): # submit object to cms to get corrent language switcher and selected category behavior if hasattr(self.request, 'toolbar'):