]> git.0d.be Git - django-panik-combo.git/blobdiff - panikombo/models.py
add introduction to fullwidth page placeholders
[django-panik-combo.git] / panikombo / models.py
index 127e53c8d100c5829a75bcdfe4df4c42e3bba0e9..de99b6732726e6eb5535a8811d0d8b73c0a74e12 100644 (file)
@@ -96,7 +96,7 @@ class EpisodeAutoSelectionCell(CellBase):
     default_template_name = 'panikombo/episode_auto_selection.html'
 
     class Meta:
-        verbose_name = _('Automatic Episode Selection')
+        verbose_name = _('Episodes')
 
     def get_included_items(self):
         episodes_queryset = Episode.objects.select_related()
@@ -183,11 +183,12 @@ class NewsItemAutoSelectionCell(CellBase):
     category = models.ForeignKey(
         'emissions.NewsCategory', verbose_name=_('Category'), null=True, blank=True, on_delete=models.SET_NULL
     )
+    count = models.PositiveSmallIntegerField(_('Count'), default=20)
 
     default_template_name = 'panikombo/newsitem_auto_selection.html'
 
     class Meta:
-        verbose_name = _('Automatic Newsitem Selection')
+        verbose_name = _('Newsitems')
 
     def get_included_items(self):
         newsitems_queryset = NewsItem.objects.select_related()
@@ -201,17 +202,12 @@ class NewsItemAutoSelectionCell(CellBase):
         if self.category:
             newsitems_queryset = newsitems_queryset.filter(category=self.category)
         newsitems_queryset = newsitems_queryset.order_by('-event_date', '-creation_timestamp')
-        return newsitems_queryset
+        return newsitems_queryset[: self.count]
 
     def get_cell_extra_context(self, context):
         ctx = super().get_cell_extra_context(context)
         ctx['title'] = self.title
-
-        if self.tags.count() or self.future or self.category:
-            ctx['newsitems'] = self.get_included_items()
-        else:
-            ctx['newsitems'] = []
-
+        ctx['newsitems'] = self.get_included_items()
         return ctx
 
     def get_default_form_class(self):
@@ -276,6 +272,7 @@ class SoundsCell(CellBase):
     def get_cell_extra_context(self, context):
         soundfiles = SoundFile.objects.prefetch_related('episode__emission__categories')
         soundfiles = soundfiles.filter(podcastable=True)
+        soundfiles = soundfiles.exclude(creation_timestamp__isnull=True)
         if not self.include_fragments:
             soundfiles = soundfiles.filter(fragment=False)
         if self.limit_to_focus: