1 """ This module contains models for the publisher pages """
3 from __future__
import unicode_literals
5 from django
.db
import models
6 from django
.conf
import settings
8 from mygpo
.podcasts
.models
import Podcast
11 logger
= logging
.getLogger(__name__
)
14 class PublishedPodcastManager(models
.Manager
):
15 """ Manager for the PublishedPodcast model """
17 def publish_podcasts(self
, user
, podcasts
):
18 existed
, created
= 0, 0
19 for podcast
in podcasts
:
20 pp
, _
= PublishedPodcast
.objects
.get_or_create(
27 logger
.info('Created publisher permissions for %r on %r',
31 logger
.info('Publisher permissions for %r on %r already exist',
35 return created
, existed
38 class PublishedPodcast(models
.Model
):
39 publisher
= models
.ForeignKey(settings
.AUTH_USER_MODEL
,
40 on_delete
=models
.CASCADE
)
41 podcast
= models
.ForeignKey(Podcast
, on_delete
=models
.CASCADE
)
45 ('publisher', 'podcast'),
48 objects
= PublishedPodcastManager()