From: Guillaume Pellerin Date: Wed, 9 Mar 2016 15:46:02 +0000 (+0100) Subject: use agenda fork for extending event metadata, add playlist test X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=e9d930cffd368d33ea6121e468a5605e9c14b2df;p=mezzo.git use agenda fork for extending event metadata, add playlist test --- diff --git a/app/festival/admin.py b/app/festival/admin.py index c80c7e75..65918868 100644 --- a/app/festival/admin.py +++ b/app/festival/admin.py @@ -14,16 +14,6 @@ from mezzanine.core.admin import DisplayableAdmin, OwnableAdmin from festival.models import * -class FestivalEventInline(admin.StackedInline): - model = FestivalEvent - extra = 3 - - -class FestivalEventAdmin(EventAdmin): - - inlines = [FestivalEventInline, ] - - class ArtistAdmin(admin.ModelAdmin): model = Artist @@ -44,10 +34,6 @@ class ArtistAdminDisplayable(DisplayableAdmin): fieldsets = deepcopy(ArtistAdmin.fieldsets) -admin.site.unregister(Event) -admin.site.register(Event, FestivalEventAdmin) -admin.site.register(EventCategory) admin.site.register(PageCategory) - admin.site.register(Artist, ArtistAdminDisplayable) admin.site.register(Video, VideoAdminDisplayable) diff --git a/app/festival/migrations/0007_auto_20160309_1441.py b/app/festival/migrations/0007_auto_20160309_1441.py new file mode 100644 index 00000000..1713cb8e --- /dev/null +++ b/app/festival/migrations/0007_auto_20160309_1441.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('mezzanine_agenda', '0002_auto_20160224_1142'), + ('festival', '0006_auto_20160303_1442'), + ] + + operations = [ + migrations.RemoveField( + model_name='festivalevent', + name='artists', + ), + migrations.RemoveField( + model_name='festivalevent', + name='category', + ), + migrations.RemoveField( + model_name='festivalevent', + name='event', + ), + migrations.AddField( + model_name='artist', + name='events', + field=models.ManyToManyField(related_name='artists', verbose_name='events', to='mezzanine_agenda.Event', blank=True), + ), + migrations.DeleteModel( + name='EventCategory', + ), + migrations.DeleteModel( + name='FestivalEvent', + ), + ] diff --git a/app/festival/models.py b/app/festival/models.py index c7fe39b5..71c892a8 100644 --- a/app/festival/models.py +++ b/app/festival/models.py @@ -46,27 +46,6 @@ class BaseTitleModel(models.Model): return self.title -class FestivalEvent(models.Model): - """Extensible event metadata""" - - event = models.ForeignKey(Event, related_name='festival_events', verbose_name=_('festival event'), blank=True, null=True, on_delete=models.SET_NULL) - #eve_event = SpanningForeignKey(eve.models.EventVersion, related_name='festival_events', verbose_name=_('E-venement event'), blank=True, null=True, default=None) - eve_event_id = models.IntegerField(_('eve id'), blank=True, null=True) - category = models.ForeignKey('EventCategory', related_name='festival_events', verbose_name=_('category'), blank=True, null=True, on_delete=models.SET_NULL) - artists = models.ManyToManyField('Artist', related_name='metaevents', verbose_name=_('artists'), blank=True) - featured = models.BooleanField(_('featured'), default=False) - featured_image = FileField(_('featured image'), upload_to='images/events', max_length=1024, blank=True, format="Image") - featured_image_header = FileField(_('featured image header'), upload_to='images/events/headers', max_length=1024, blank=True, format="Image") - featured_image_description = models.TextField(_('featured image description'), blank=True) - - class Meta(MetaCore): - verbose_name = _('festival event') - db_table = app_label + '_events' - - def __unicode__(self): - return self.event.title - - class Artist(Displayable, RichText, AdminThumbMixin): """Artist""" @@ -78,6 +57,7 @@ class Artist(Displayable, RichText, AdminThumbMixin): featured = models.BooleanField(_('featured'), default=False) photo_featured = FileField(_('photo featured'), upload_to='images/photos', max_length=1024, blank=True, format="Image") photo_featured_credits = models.CharField(_('photo featured credits'), max_length=255, blank=True, null=True) + events = models.ManyToManyField(Event, related_name='artists', verbose_name=_('events'), blank=True) search_fields = ("title", "bio") @@ -118,13 +98,6 @@ class Video(Displayable, RichText): return reverse("festival-video-detail", kwargs={"slug": self.slug}) -class EventCategory(BaseNameModel): - """Event Category""" - - class Meta(MetaCore): - verbose_name = _('event category') - - class PageCategory(BaseNameModel): """Page Category""" diff --git a/app/festival/templates/festival/playlist.html b/app/festival/templates/festival/playlist.html new file mode 100644 index 00000000..073ffdaf --- /dev/null +++ b/app/festival/templates/festival/playlist.html @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + diff --git a/app/migrations/mezzanine_agenda/0003_auto_20160309_1621.py b/app/migrations/mezzanine_agenda/0003_auto_20160309_1621.py new file mode 100644 index 00000000..51e65fea --- /dev/null +++ b/app/migrations/mezzanine_agenda/0003_auto_20160309_1621.py @@ -0,0 +1,64 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-03-09 15:21 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion +import mezzanine.core.fields + + +class Migration(migrations.Migration): + + dependencies = [ + ('mezzanine_agenda', '0002_auto_20160224_1142'), + ] + + operations = [ + migrations.CreateModel( + name='EventCategory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=512, verbose_name='name')), + ('description', models.TextField(blank=True, verbose_name='description')), + ], + options={ + 'verbose_name_plural': 'Event categories', + 'verbose_name': 'Event category', + }, + ), + migrations.AddField( + model_name='event', + name='external_id', + field=models.IntegerField(blank=True, null=True, verbose_name='external_id'), + ), + migrations.AddField( + model_name='event', + name='featured', + field=models.BooleanField(default=False, verbose_name='featured'), + ), + migrations.AddField( + model_name='event', + name='featured_image_description', + field=models.TextField(blank=True, verbose_name='featured image description'), + ), + migrations.AddField( + model_name='event', + name='featured_image_header', + field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='featured image header'), + ), + migrations.AddField( + model_name='event', + name='parent', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='children', to='mezzanine_agenda.Event', verbose_name='parent'), + ), + migrations.AlterField( + model_name='event', + name='allow_comments', + field=models.BooleanField(default=False, verbose_name='Allow comments'), + ), + migrations.AddField( + model_name='event', + name='category', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='events', to='mezzanine_agenda.EventCategory', verbose_name='category'), + ), + ] diff --git a/app/sandbox/local_settings.py b/app/sandbox/local_settings.py index 8fbfbb64..4f7634e8 100644 --- a/app/sandbox/local_settings.py +++ b/app/sandbox/local_settings.py @@ -82,7 +82,8 @@ ADMIN_MENU_ORDER = ( "generic.ThreadedComment", (_("Media Library"), "fb_browse"),)), (_("Site"), ("sites.Site", "redirects.Redirect", "conf.Setting")), (_("Users"), ("auth.User", "auth.Group",)), - (_("Festival"), ("mezzanine_agenda.EventLocation", "festival.EventCategory", "PageCategory")), + (_("Festival"), ("mezzanine_agenda.EventLocation", + "mezzanine_agenda.EventCategory", "festival.PageCategory")), ) SEARCH_MODEL_CHOICES = () diff --git a/app/translations.py b/app/translations.py index 016f557d..794a7429 100644 --- a/app/translations.py +++ b/app/translations.py @@ -10,11 +10,6 @@ class EventTranslationOptions(TranslationOptions): fields = ('title', 'content') -@register(FestivalEvent) -class MetaEventTranslationOptions(TranslationOptions): - pass - - @register(Artist) class ArtistTranslationOptions(TranslationOptions): diff --git a/conf/dev.yml b/conf/dev.yml index 72e814b5..8c8c9c2a 100644 --- a/conf/dev.yml +++ b/conf/dev.yml @@ -21,5 +21,8 @@ app: command: /bin/sh deploy/start_app.sh --runserver + volumes: + - ./app/:/srv/app + - ./app/apps/mezzanine-agenda/:/srv/src/mezzanine-agenda ports: - "9010:8000" diff --git a/docker-compose.yml b/docker-compose.yml index c573b8c1..202bae26 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -38,17 +38,6 @@ db: - MYSQL_USER=manifeste - MYSQL_PASSWORD=Onukifsid7 -# pgdb: -# image: postgres -# volumes: -# - ./data/var/lib/postgresql/eve/data/:/var/lib/postgresql/data -# volumes_from: -# - data -# environment: -# - POSTGRES_PASSWORD=mysecretpassword -# - POSTGRES_USER=postgres -# - POSTGRES_DB=eve - app: build: . command: /bin/sh deploy/start_app.sh