bundle install
+/!\ If you have an issue with ffi module, try to install dev package from ruby:
+apt-get install ruby-dev
+
Compile static files
==================
model = PageImage
+class BasicPageAdmin(PageAdmin):
-admin.site.register(BasicPage, PageAdmin)
+ inlines = [PageBlockInline, PageImageInline]
+
+admin.site.register(BasicPage, BasicPageAdmin)
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-07-27 13:53
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import mezzanine.core.fields
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-core', '0007_auto_20160726_0042'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='photo'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_alignment',
+ field=models.CharField(blank=True, choices=[('left', 'left'), ('center', 'center'), ('right', 'right')], default='left', max_length=32, verbose_name='photo alignment'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_card',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='card photo'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_card_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo card credits'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo credits'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_description',
+ field=models.TextField(blank=True, verbose_name='photo description'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_slider',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='slider photo'),
+ ),
+ migrations.AddField(
+ model_name='basicpage',
+ name='photo_slider_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo slider credits'),
+ ),
+ ]
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-07-27 14:38
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-core', '0008_auto_20160727_1553'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='pageblock',
+ name='with_separator',
+ field=models.BooleanField(default=False),
+ ),
+ ]
from mezzanine.pages.models import Page, RichText
from mezzanine.core.fields import RichTextField, OrderField, FileField
from mezzanine.core.models import Displayable, Slugged, Orderable
-
+from organization.media.models import Photo
COLOR_CHOICES = (('black', _('black')), ('yellow', _('yellow')), ('red', _('red')))
class Meta:
abstract = True
-
class Category(Named):
"""Category description)"""
return self.name
-class BasicPage(Page, SubTitle, RichText):
+class BasicPage(Page, SubTitle, Photo, RichText):
class Meta:
verbose_name = 'basic page'
class PageBlock(Titled, RichText):
page = models.ForeignKey(Page, verbose_name=_('page'), blank=True, null=True, on_delete=models.SET_NULL)
+ with_separator = models.BooleanField(default=False)
background_color = models.CharField(_('background color'), max_length=32, choices=COLOR_CHOICES, blank=True)
class Meta:
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-07-27 13:53
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-media', '0002_auto_20160721_1351'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='playlist',
+ name='description',
+ ),
+ ]
from mezzanine.utils.models import AdminThumbMixin, upload_to
from mezzanine_agenda.models import Event
-from organization.core.models import *
-
+from django.conf import settings
ALIGNMENT_CHOICES = (('left', _('left')), ('center', _('center')), ('right', _('right')))
MEDIA_BASE_URL = getattr(settings, 'MEDIA_BASE_URL', 'http://medias.ircam.fr/embed/media/')
return self.videos.published().count()+1
-class Playlist(Slugged, Description):
+class Playlist(Slugged):
"""(Playlist description)"""
audios = models.ManyToManyField('Audio', verbose_name=_('audios'), related_name='playlists', blank=True)
+ #description = models.OneToOneField('organization-core.Description', verbose_name=_('description'), related_name='description', blank=True, on_delete=models.CASCADE)
def __str__(self):
return self.title
inlines = [PageBlockInline, PageImageInline]
+class DepartmentAdmin(PageAdmin):
+
+ inlines = [PageBlockInline, PageImageInline]
+
class PersonAdminBase(admin.ModelAdmin):
admin.site.register(Organization, OrganizationAdmin)
admin.site.register(OrganizationType)
-admin.site.register(Department, PageAdmin)
+admin.site.register(Department, DepartmentAdmin)
admin.site.register(Team, TeamAdmin)
# admin.site.register(Team)
admin.site.register(Person, PersonAdmin)
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-07-27 14:31
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import mezzanine.core.fields
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-team', '0010_auto_20160725_0201'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='department',
+ name='photo',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='photo'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_alignment',
+ field=models.CharField(blank=True, choices=[('left', 'left'), ('center', 'center'), ('right', 'right')], default='left', max_length=32, verbose_name='photo alignment'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_card',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='card photo'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_card_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo card credits'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo credits'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_description',
+ field=models.TextField(blank=True, verbose_name='photo description'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_slider',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='slider photo'),
+ ),
+ migrations.AddField(
+ model_name='department',
+ name='photo_slider_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo slider credits'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='photo'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_alignment',
+ field=models.CharField(blank=True, choices=[('left', 'left'), ('center', 'center'), ('right', 'right')], default='left', max_length=32, verbose_name='photo alignment'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_card',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='card photo'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_card_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo card credits'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo credits'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_description',
+ field=models.TextField(blank=True, verbose_name='photo description'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_slider',
+ field=mezzanine.core.fields.FileField(blank=True, max_length=1024, verbose_name='slider photo'),
+ ),
+ migrations.AddField(
+ model_name='team',
+ name='photo_slider_credits',
+ field=models.CharField(blank=True, max_length=255, null=True, verbose_name='photo slider credits'),
+ ),
+ ]
verbose_name = _('organization type')
-class Department(Page, SubTitle, RichText):
+class Department(Page, SubTitle, RichText, Photo):
"""(Department description)"""
organization = models.ForeignKey('Organization', verbose_name=_('organization'))
verbose_name = _('department')
-class Team(Page, SubTitle, RichText):
+class Team(Page, SubTitle, RichText, Photo):
"""(Team description)"""
# department = models.ForeignKey('Department', verbose_name=_('department'), related_name="teams", blank=True, null=True, on_delete=models.SET_NULL)