Add flag to enable liveblog
This commit is contained in:
parent
eab9083d90
commit
13a26650ad
4 changed files with 43 additions and 8 deletions
|
@ -6,6 +6,7 @@ from copy import deepcopy
|
|||
from aldryn_apphooks_config.admin import BaseAppHookConfig, ModelAppHookConfig
|
||||
from cms.admin.placeholderadmin import FrontendEditableAdminMixin, PlaceholderAdminMixin
|
||||
from django import forms
|
||||
from django.apps import apps
|
||||
from django.conf import settings
|
||||
from django.conf.urls import url
|
||||
from django.contrib import admin
|
||||
|
@ -60,7 +61,12 @@ class PostAdmin(PlaceholderAdminMixin, FrontendEditableAdminMixin,
|
|||
}),
|
||||
('Info', {
|
||||
'fields': (['slug', 'tags'],
|
||||
('date_published', 'date_published_end', 'enable_comments')),
|
||||
('date_published', 'date_published_end',),
|
||||
(
|
||||
'enable_comments',
|
||||
'enable_liveblog' if apps.is_installed('djangocms_blog.liveblog')
|
||||
else None
|
||||
)),
|
||||
'classes': ('collapse',)
|
||||
}),
|
||||
('Images', {
|
||||
|
|
31
djangocms_blog/migrations/0019_auto_20160605_2305.py
Normal file
31
djangocms_blog/migrations/0019_auto_20160605_2305.py
Normal file
|
@ -0,0 +1,31 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.9.7 on 2016-06-05 21:05
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('djangocms_blog', '0018_post_liveblog'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='post',
|
||||
name='enable_liveblog',
|
||||
field=models.BooleanField(default=False, verbose_name='enable liveblog on post'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_full',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='djangocms_blog_post_full', to='cmsplugin_filer_image.ThumbnailOption', verbose_name='main image full'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='post',
|
||||
name='main_image_thumbnail',
|
||||
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='djangocms_blog_post_thumbnail', to='cmsplugin_filer_image.ThumbnailOption', verbose_name='main image thumbnail'),
|
||||
),
|
||||
]
|
|
@ -164,6 +164,7 @@ class Post(KnockerModel, ModelMeta, TranslatableModel):
|
|||
)
|
||||
content = PlaceholderField('post_content', related_name='post_content')
|
||||
liveblog = PlaceholderField('live_blog', related_name='live_blog')
|
||||
enable_liveblog = models.BooleanField(verbose_name=_('enable liveblog on post'), default=False)
|
||||
|
||||
objects = GenericDateTaggedManager()
|
||||
tags = TaggableManager(blank=True, related_name='djangocms_blog_tags')
|
||||
|
|
|
@ -4,6 +4,7 @@ from __future__ import absolute_import, print_function, unicode_literals
|
|||
import os.path
|
||||
|
||||
from aldryn_apphooks_config.mixins import AppConfigMixin
|
||||
from django.apps import apps
|
||||
from django.contrib.auth import get_user_model
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
from django.core.urlresolvers import reverse
|
||||
|
@ -51,13 +52,6 @@ class BaseBlogView(AppConfigMixin, ViewUrlMixin):
|
|||
template_path = (self.config and self.config.template_prefix) or 'djangocms_blog'
|
||||
return os.path.join(template_path, self.base_template_name)
|
||||
|
||||
def liveblog_enabled(self):
|
||||
try:
|
||||
from django.apps import apps
|
||||
return apps.is_installed('djangocms_blog.liveblog')
|
||||
except ImportError:
|
||||
return False
|
||||
|
||||
|
||||
class BaseBlogListView(BaseBlogView):
|
||||
context_object_name = 'post_list'
|
||||
|
@ -79,6 +73,9 @@ class PostDetailView(TranslatableSlugMixin, BaseBlogView, DetailView):
|
|||
view_url_name = 'djangocms_blog:post-detail'
|
||||
instant_article = False
|
||||
|
||||
def liveblog_enabled(self):
|
||||
return self.object.enable_liveblog and apps.is_installed('djangocms_blog.liveblog')
|
||||
|
||||
def get_template_names(self):
|
||||
if self.instant_article:
|
||||
template_path = (self.config and self.config.template_prefix) or 'djangocms_blog'
|
||||
|
|
Loading…
Add table
Reference in a new issue