Run 2to3-3.4
[mygpo.git] / mygpo / publisher / models.py
blobe34edcd88dc25477742d2ffd1e0d35fcb098113d
1 """ This module contains models for the publisher pages """
5 from django.db import models
6 from django.conf import settings
8 from mygpo.podcasts.models import Podcast
10 import logging
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, new = PublishedPodcast.objects.get_or_create(
21 publisher=user,
22 podcast=podcast,
25 if new:
26 created += 1
27 logger.info('Created publisher permissions for %r on %r',
28 user, podcast)
29 else:
30 existed += 1
31 logger.info('Publisher permissions for %r on %r already exist',
32 user, podcast)
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)
43 class Meta:
44 unique_together = (
45 ('publisher', 'podcast'),
48 objects = PublishedPodcastManager()