From: Emilie Date: Fri, 14 Oct 2016 12:56:36 +0000 (+0200) Subject: Search : merging X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=cd7dbff6e0ac7d4c53f9739a7c017ba2e8b33da8;p=mezzo.git Search : merging --- cd7dbff6e0ac7d4c53f9739a7c017ba2e8b33da8 diff --cc app/organization/magazine/models.py index 1f2ce07f,971ce7c2..a1b1c6b6 --- a/app/organization/magazine/models.py +++ b/app/organization/magazine/models.py @@@ -40,25 -40,12 +40,16 @@@ class ArticleImage(Image) order_with_respect_to = "article" - class ArticleAudio(Audio): + class ArticlePlaylist(PlaylistRelated): - article = models.ForeignKey(Article, verbose_name=_('article'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL) - - class Meta: - verbose_name = Audio._meta.verbose_name - verbose_name_plural = Audio._meta.verbose_name_plural - - - class ArticleVideo(Video): - - article = models.ForeignKey(Article, verbose_name=_('article'), related_name='videos', blank=True, null=True, on_delete=models.SET_NULL) + article = models.ForeignKey(Article, verbose_name=_('article'), related_name='playlists', blank=True, null=True, on_delete=models.SET_NULL) + class Meta: + verbose_name = Video._meta.verbose_name + verbose_name_plural = Video._meta.verbose_name_plural + -class Brief(Displayable, RichText): #Orderable +class Brief(Displayable, RichText): text_button = models.CharField(blank=True, max_length=150, null=False, verbose_name=_('text button')) external_content = models.URLField(blank=True, max_length=1000, null=False, verbose_name=_('external content')) diff --cc app/organization/media/models.py index 496a7412,bcffa7ae..5abdc414 --- a/app/organization/media/models.py +++ b/app/organization/media/models.py @@@ -19,26 -24,30 +24,30 @@@ PLAYLIST_TYPE_CHOICES = class Media(Displayable): """Media""" - media_id = models.CharField(_('media id'), max_length=128) - open_source_url = models.URLField(_('open source URL'), max_length=1024, blank=True) - closed_source_url = models.URLField(_('closed source URL'), max_length=1024, blank=True) + external_id = models.CharField(_('media id'), max_length=128) poster_url = models.URLField(_('poster'), max_length=1024, blank=True) - created_at = models.DateTimeField(auto_now=True) + category = models.ForeignKey('MediaCategory', verbose_name=_('category'), related_name='medias', blank=True, null=True, on_delete=models.SET_NULL) # objects = SearchableManager() - search_fields = ("title",) + # search_fields = ("title",) class Meta: - abstract = True + verbose_name = "media" + verbose_name_plural = "medias" + ordering = ('created',) - def __unicode__(self): + def __str__(self): return self.title + def get_absolute_url(self): + return reverse("organization-media-detail", kwargs={"slug": self.slug}) + @property def uri(self): - return MEDIA_BASE_URL + self.media_id + return MEDIA_BASE_URL + self.external_id def get_html(self): + print(self.uri) r = requests.get(self.uri) return r.content diff --cc app/organization/network/models.py index 5a5b7d7d,333fd0ad..b2b501cd --- a/app/organization/network/models.py +++ b/app/organization/network/models.py @@@ -125,23 -125,10 +125,14 @@@ class Organization(Named, Address, URL super(Organization, self).save() - class OrganizationAudio(Audio): + class OrganizationPlaylist(PlaylistRelated): - organization = models.ForeignKey(Organization, verbose_name=_('organization'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL) - - class Meta: - verbose_name = Audio._meta.verbose_name - verbose_name_plural = Audio._meta.verbose_name_plural - - - class OrganizationVideo(Video): - - organization = models.ForeignKey(Organization, verbose_name=_('organization'), related_name='videos', blank=True, null=True, on_delete=models.SET_NULL) + organization = models.ForeignKey(Organization, verbose_name=_('organization'), related_name='playlists', blank=True, null=True, on_delete=models.SET_NULL) + class Meta: + verbose_name = Video._meta.verbose_name + verbose_name_plural = Video._meta.verbose_name_plural + class OrganizationLink(Link): @@@ -281,23 -268,10 +272,14 @@@ class Person(Displayable, AdminThumbMix super(Person, self).save(*args, **kwargs) - class PersonAudio(Audio): - - person = models.ForeignKey(Person, verbose_name=_('person'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL) - - class Meta: - verbose_name = Audio._meta.verbose_name - verbose_name_plural = Audio._meta.verbose_name_plural - - - class PersonVideo(Video): + class PersonPlaylist(PlaylistRelated): - person = models.ForeignKey(Person, verbose_name=_('person'), related_name='videos', blank=True, null=True, on_delete=models.SET_NULL) + person = models.ForeignKey(Person, verbose_name=_('person'), related_name='playlists', blank=True, null=True, on_delete=models.SET_NULL) + class Meta: + verbose_name = Video._meta.verbose_name + verbose_name_plural = Video._meta.verbose_name_plural + class PersonLink(Link): diff --cc app/organization/projects/models.py index 90ae33d7,2b6525e8..b1a8990f --- a/app/organization/projects/models.py +++ b/app/organization/projects/models.py @@@ -79,23 -79,10 +79,14 @@@ class ProjectProgramType(Named) ordering = ['name',] - class ProjectAudio(Audio): + class ProjectPlaylist(PlaylistRelated): - project = models.ForeignKey(Project, verbose_name=_('project'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL) - - class Meta: - verbose_name = Audio._meta.verbose_name - verbose_name_plural = Audio._meta.verbose_name_plural - - - class ProjectVideo(Video): - - project = models.ForeignKey(Project, verbose_name=_('project'), related_name='videos', blank=True, null=True, on_delete=models.SET_NULL) + project = models.ForeignKey(Project, verbose_name=_('project'), related_name='playlists', blank=True, null=True, on_delete=models.SET_NULL) + class Meta: + verbose_name = Video._meta.verbose_name + verbose_name_plural = Video._meta.verbose_name_plural + class ProjectLink(Link):