def get_similar_entries_in_category(context, number=5, template='zinnia/tags/entries_similar.html', category=''): """ Return similar entries. """ entry = context.get('entry') if not entry: return {'template': template, 'entries': []} vectors = EntryPublishedVectorBuilder(queryset=Entry.published.search('category:'+category)) entries = vectors.get_related(entry, number) return {'template': template, 'entries': entries}
def flush_similar_cache_handler(sender, **kwargs): """ Flush the cache of similar entries when an entry is saved. """ entry = kwargs['instance'] if entry.is_visible: EntryPublishedVectorBuilder().cache_flush()
def make_hidden(self, request, queryset): """ Set entries selected as hidden. """ queryset.update(status=HIDDEN) EntryPublishedVectorBuilder().cache_flush() self.message_user(request, _('The selected entries are now marked as hidden.'))
def make_published(self, request, queryset): """ Set entries selected as published. """ queryset.update(status=PUBLISHED) EntryPublishedVectorBuilder().cache_flush() self.ping_directories(request, queryset, messages=False) self.message_user( request, _('The selected entries are now marked as published.'))