return ''
-def get_topik_image_path(instance, filename):
- return os.path.join('images', 'topik', instance.page.slug,
- os.path.basename(filename))
-
-@python_2_unicode_compatible
-class Topik(models.Model):
- page = models.ForeignKey('data.Page')
- image = models.ImageField(_('Image'),
- upload_to=get_topik_image_path, max_length=250, null=True, blank=True)
-
- # denormalized from Focus
- got_focus = models.DateTimeField(default=None, null=True, blank=True)
- has_focus = models.BooleanField(default=False)
-
- def __str__(self):
- if not self.page:
- return super(Topik, self).__str__()
- return force_text(self.page)
-
-
class ItemTopik(models.Model):
newsitem = models.ForeignKey('emissions.NewsItem', verbose_name=_('News Item'),
null=True, blank=True)
episode = models.ForeignKey('emissions.Episode', verbose_name=_('Episode'),
null=True, blank=True)
page = models.ForeignKey('data.Page', null=True, blank=True)
-
-
-@register_cell_class
-class TopikCell(CellBase):
- topik = models.ForeignKey(Topik, null=True)
- text = RichTextField(_('Text'), blank=True, null=True)
-
- template_name = 'panikombo/topik-cell.html'
-
- class Meta:
- verbose_name = _('Topik')
-
- def get_additional_label(self):
- if not self.topik:
- return ''
- return self.topik.page.title