1 from django
.db
.models
import Count
2 from mygpo
.api
.models
import Subscription
, Podcast
3 from mygpo
.data
.models
import PodcastTag
4 from mygpo
.search
.models
import SearchEntry
7 def podcast_group_entry(group
, subscriber_count
=None):
9 if not subscriber_count
:
10 subscriber_count
= Subscription
.objects
.filter(podcast__group
=group
).values('user').distinct().count()
13 entry
.text
= group
.title
14 entry
.obj_type
= 'podcast_group'
15 entry
.obj_id
= group
.id
17 podcasts
= Podcast
.objects
.filter(group
=group
)
18 tags
= PodcastTag
.objects
.filter(podcast__in
=podcasts
).annotate(count
=Count('podcast')).order_by('count')
19 tag_string
= ','.join([t
.tag
for t
in tags
])[:200]
20 entry
.tags
= tag_string
22 entry
.priority
= subscriber_count
27 def podcast_entry(podcast
, subscriber_count
=None):
29 if not subscriber_count
:
30 subscriber_count
= Subscription
.objects
.filter(podcast
=podcast
).values('user').distinct().count()
33 entry
.text
= podcast
.title
34 entry
.obj_type
= 'podcast'
35 entry
.obj_id
= podcast
.id
37 tags
= PodcastTag
.objects
.filter(podcast
=podcast
).annotate(count
=Count('podcast')).order_by('count')
38 tag_string
= ','.join([t
.tag
for t
in tags
])[:200]
39 entry
.tags
= tag_string
41 entry
.priority
= subscriber_count