--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-01 13:55
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-core', '0003_auto_20160825_1232'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='customdisplayable',
+ name='site',
+ ),
+ migrations.RemoveField(
+ model_name='displayableblock',
+ name='displayable',
+ ),
+ migrations.RemoveField(
+ model_name='displayableimage',
+ name='displayable',
+ ),
+ migrations.RemoveField(
+ model_name='displayablelink',
+ name='displayable',
+ ),
+ migrations.RemoveField(
+ model_name='displayablelink',
+ name='link_type',
+ ),
+ migrations.RemoveField(
+ model_name='modelblock',
+ name='model',
+ ),
+ migrations.RemoveField(
+ model_name='modelimage',
+ name='model',
+ ),
+ migrations.RemoveField(
+ model_name='modellink',
+ name='link_type',
+ ),
+ migrations.RemoveField(
+ model_name='modellink',
+ name='model',
+ ),
+ ]
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-01 13:55
+from __future__ import unicode_literals
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-network', '0003_auto_20160901_1555'),
+ ('organization-core', '0004_auto_20160901_1555'),
+ ('organization-projects', '0002_auto_20160901_1555'),
+ ('organization-media', '0006_auto_20160901_1555'),
+ ]
+
+ operations = [
+ migrations.DeleteModel(
+ name='CustomDisplayable',
+ ),
+ migrations.DeleteModel(
+ name='CustomModel',
+ ),
+ migrations.DeleteModel(
+ name='DisplayableBlock',
+ ),
+ migrations.DeleteModel(
+ name='DisplayableImage',
+ ),
+ migrations.DeleteModel(
+ name='DisplayableLink',
+ ),
+ migrations.DeleteModel(
+ name='ModelBlock',
+ ),
+ migrations.DeleteModel(
+ name='ModelImage',
+ ),
+ migrations.DeleteModel(
+ name='ModelLink',
+ ),
+ ]
class Meta:
abstract = True
-
-class CustomDisplayable(Displayable):
-
- class Meta:
- verbose_name = _('custom displayable')
-
- def get_absolute_url(self):
- return reverse("organization-displayable", kwargs={"slug": self.slug})
-
-
-
-class DisplayableBlock(Block):
-
- displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='blocks', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('block')
- verbose_name_plural = _("blocks")
- order_with_respect_to = "displayable"
-
-
-class DisplayableImage(Image):
-
- displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='images', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('image')
- verbose_name_plural = _("images")
- order_with_respect_to = "displayable"
-
-
-class DisplayableLink(Link):
-
- displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='links', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('link')
- verbose_name_plural = _("links")
- order_with_respect_to = "displayable"
-
-
-class CustomModel(models.Model):
-
- class Meta:
- verbose_name = _('custom model')
-
-
-class ModelBlock(Block):
-
- model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='blocks', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('block')
- verbose_name_plural = _("blocks")
- order_with_respect_to = "model"
-
-
-class ModelImage(Image):
-
- model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='images', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('image')
- verbose_name_plural = _("images")
- order_with_respect_to = "model"
-
-
-class ModelLink(Link):
-
- model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='links', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _('link')
- verbose_name_plural = _("links")
- order_with_respect_to = "model"
+#
+# class Displayable(Displayable):
+#
+# class Meta:
+# verbose_name = _('custom displayable')
+#
+# def get_absolute_url(self):
+# return reverse("organization-displayable", kwargs={"slug": self.slug})
+#
+#
+
+# class DisplayableBlock(Block):
+#
+# displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='blocks', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('block')
+# verbose_name_plural = _("blocks")
+# order_with_respect_to = "displayable"
+#
+#
+# class DisplayableImage(Image):
+#
+# displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='images', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('image')
+# verbose_name_plural = _("images")
+# order_with_respect_to = "displayable"
+#
+#
+# class DisplayableLink(Link):
+#
+# displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='links', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('link')
+# verbose_name_plural = _("links")
+# order_with_respect_to = "displayable"
+#
+#
+# class CustomModel(models.Model):
+#
+# class Meta:
+# verbose_name = _('custom model')
+#
+#
+# class ModelBlock(Block):
+#
+# model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='blocks', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('block')
+# verbose_name_plural = _("blocks")
+# order_with_respect_to = "model"
+#
+#
+# class ModelImage(Image):
+#
+# model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='images', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('image')
+# verbose_name_plural = _("images")
+# order_with_respect_to = "model"
+#
+#
+# class ModelLink(Link):
+#
+# model = models.ForeignKey(CustomModel, verbose_name=_('model'), related_name='links', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _('link')
+# verbose_name_plural = _("links")
+# order_with_respect_to = "model"
from organization.core.models import *
-@register(CustomDisplayable)
-class CustomDisplayableTranslationOptions(TranslationOptions):
-
- pass
-
-
-@register(DisplayableImage)
-class DisplayableImageTranslationOptions(TranslationOptions):
-
- fields = ('description',)
-
-
-@register(DisplayableLink)
-class DisplayableLinkTranslationOptions(TranslationOptions):
-
- pass
-
-
-@register(DisplayableBlock)
-class DisplayableBlockTranslationOptions(TranslationOptions):
-
- fields = ('title', 'content', )
-
-
-@register(CustomModel)
-class CustomModelTranslationOptions(TranslationOptions):
-
- pass
-
-
-@register(ModelImage)
-class ModelImageTranslationOptions(TranslationOptions):
-
- fields = ('description',)
-
-
-@register(ModelLink)
-class ModelLinkTranslationOptions(TranslationOptions):
-
- pass
-
-
-@register(ModelBlock)
-class ModelBlockTranslationOptions(TranslationOptions):
-
- fields = ('title', 'content', )
+# @register(CustomDisplayable)
+# class CustomDisplayableTranslationOptions(TranslationOptions):
+#
+# pass
+#
+#
+# @register(DisplayableImage)
+# class DisplayableImageTranslationOptions(TranslationOptions):
+#
+# fields = ('description',)
+#
+#
+# @register(DisplayableLink)
+# class DisplayableLinkTranslationOptions(TranslationOptions):
+#
+# pass
+#
+#
+# @register(DisplayableBlock)
+# class DisplayableBlockTranslationOptions(TranslationOptions):
+#
+# fields = ('title', 'content', )
+#
+#
+# @register(CustomModel)
+# class CustomModelTranslationOptions(TranslationOptions):
+#
+# pass
+#
+
+# @register(ModelImage)
+# class ModelImageTranslationOptions(TranslationOptions):
+#
+# fields = ('description',)
+#
+#
+# @register(ModelLink)
+# class ModelLinkTranslationOptions(TranslationOptions):
+#
+# pass
+#
+#
+# @register(ModelBlock)
+# class ModelBlockTranslationOptions(TranslationOptions):
+#
+# fields = ('title', 'content', )
from organization.core.views import *
urlpatterns = [
- url(r'^displayable/(?P<slug>.*)/$', CustomDisplayableView.as_view(), name="organization-displayable"),
+ # url(r'^displayable/(?P<slug>.*)/$', CustomDisplayableView.as_view(), name="organization-displayable"),
]
return get_object_or_404(objects, slug=self.kwargs['slug'])
-class CustomDisplayableView(SlugMixin, DetailView):
-
- model = CustomDisplayable
+# class CustomDisplayableView(SlugMixin, DetailView):
+#
+# model = CustomDisplayable
model = Video
-class VideoAdminDisplayable(DisplayableAdmin):
-
- fieldsets = deepcopy(VideoAdmin.fieldsets)
- #filter_horizontal = ['artists']
+# class VideoAdminDisplayable(DisplayableAdmin):
+#
+# fieldsets = deepcopy(VideoAdmin.fieldsets)
+# #filter_horizontal = ['artists']
class AudioAdmin(admin.ModelAdmin):
model = Audio
-class AudioAdminDisplayable(DisplayableAdmin):
-
- fieldsets = deepcopy(AudioAdmin.fieldsets)
- # filter_horizontal = ['artists']
+# class AudioAdminDisplayable(DisplayableAdmin):
+#
+# fieldsets = deepcopy(AudioAdmin.fieldsets)
+# # filter_horizontal = ['artists']
class PlaylistAdmin(admin.ModelAdmin):
filter_horizontal = ['audios']
-admin.site.register(Video, VideoAdminDisplayable)
-admin.site.register(Audio, AudioAdminDisplayable)
+# admin.site.register(Video, VideoAdminDisplayable)
+# admin.site.register(Audio, AudioAdminDisplayable)
admin.site.register(Playlist, PlaylistAdmin)
admin.site.register(VideoCategory)
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-01 13:55
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('organization-media', '0005_displayableaudio'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='displayableaudio',
+ name='audio_ptr',
+ ),
+ migrations.RemoveField(
+ model_name='displayableaudio',
+ name='displayable',
+ ),
+ migrations.RemoveField(
+ model_name='audio',
+ name='customdisplayable_ptr',
+ ),
+ migrations.RemoveField(
+ model_name='video',
+ name='customdisplayable_ptr',
+ ),
+ migrations.AddField(
+ model_name='audio',
+ name='description',
+ field=models.TextField(blank=True, verbose_name='description'),
+ ),
+ migrations.AddField(
+ model_name='audio',
+ name='id',
+ field=models.AutoField(auto_created=True, default=1, primary_key=True, serialize=False, verbose_name='ID'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='audio',
+ name='title',
+ field=models.CharField(default='a', max_length=1024, verbose_name='title'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='video',
+ name='description',
+ field=models.TextField(blank=True, verbose_name='description'),
+ ),
+ migrations.AddField(
+ model_name='video',
+ name='id',
+ field=models.AutoField(auto_created=True, default=1, primary_key=True, serialize=False, verbose_name='ID'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='video',
+ name='title',
+ field=models.CharField(default='a', max_length=1024, verbose_name='title'),
+ preserve_default=False,
+ ),
+ migrations.AlterField(
+ model_name='audio',
+ name='description_en',
+ field=models.TextField(blank=True, null=True, verbose_name='description'),
+ ),
+ migrations.AlterField(
+ model_name='audio',
+ name='description_fr',
+ field=models.TextField(blank=True, null=True, verbose_name='description'),
+ ),
+ migrations.AlterField(
+ model_name='audio',
+ name='title_en',
+ field=models.CharField(max_length=1024, null=True, verbose_name='title'),
+ ),
+ migrations.AlterField(
+ model_name='audio',
+ name='title_fr',
+ field=models.CharField(max_length=1024, null=True, verbose_name='title'),
+ ),
+ migrations.AlterField(
+ model_name='video',
+ name='description_en',
+ field=models.TextField(blank=True, null=True, verbose_name='description'),
+ ),
+ migrations.AlterField(
+ model_name='video',
+ name='description_fr',
+ field=models.TextField(blank=True, null=True, verbose_name='description'),
+ ),
+ migrations.AlterField(
+ model_name='video',
+ name='title_en',
+ field=models.CharField(max_length=1024, null=True, verbose_name='title'),
+ ),
+ migrations.AlterField(
+ model_name='video',
+ name='title_fr',
+ field=models.CharField(max_length=1024, null=True, verbose_name='title'),
+ ),
+ migrations.DeleteModel(
+ name='DisplayableAudio',
+ ),
+ ]
MEDIA_BASE_URL = getattr(settings, 'MEDIA_BASE_URL', 'http://medias.ircam.fr/embed/media/')
-class Media(CustomDisplayable):
+class Media(Titled):
"""Media"""
media_id = models.CharField(_('media id'), max_length=128)
verbose_name_plural = _("audios")
order_with_respect_to = "page"
-
-class DisplayableAudio(Audio):
-
- displayable = models.ForeignKey(CustomDisplayable, verbose_name=_('displayable'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL)
-
- class Meta:
- verbose_name = _("audio")
- verbose_name_plural = _("audios")
+#
+# class DisplayableAudio(Audio):
+#
+# displayable = models.ForeignKey(Titled, verbose_name=_('displayable'), related_name='audios', blank=True, null=True, on_delete=models.SET_NULL)
+#
+# class Meta:
+# verbose_name = _("audio")
+# verbose_name_plural = _("audios")
exclude = ("short_url", "keywords", "description", "slug", )
-class OrganizationImageInline(TabularDynamicInlineAdmin):
-
- model = ModelImage
-
+# class OrganizationImageInline(TabularDynamicInlineAdmin):
+#
+# model = ModelImage
+#
class OrganizationAdmin(BaseTranslationModelAdmin):
model = Organization
- inlines = [OrganizationImageInline,]
+ # inlines = [OrganizationImageInline,]
class DepartmentPageBlockInline(StackedDynamicInlineAdmin):
class DepartmentPageAdmin(PageAdmin):
- inlines = [DepartmentPageImageInline, DepartmentPageBlockInline, PageAudioInline, PageVideoInline, ]
+ pass
+ # inlines = [DepartmentPageImageInline, DepartmentPageBlockInline, PageAudioInline, PageVideoInline, ]
class DepartmentAdmin(BaseTranslationModelAdmin):
model = Person
-class PersonLinkInline(StackedDynamicInlineAdmin):
-
- model = DisplayableLink
+# class PersonLinkInline(StackedDynamicInlineAdmin):
+#
+# model = DisplayableLink
class PersonActivityInline(StackedDynamicInlineAdmin):
fk_name = 'person'
-class PersonImageInline(TabularDynamicInlineAdmin):
-
- model = DisplayableImage
-
+# class PersonImageInline(TabularDynamicInlineAdmin):
+#
+# model = DisplayableImage
+#
class PersonAdmin(BaseTranslationModelAdmin):
model = Person
- inlines = [PersonImageInline, PersonActivityInline, PersonLinkInline, ]
+ # inlines = [PersonImageInline, PersonActivityInline, PersonLinkInline, ]
first_fields = ['last_name', 'first_name', 'title', 'gender', 'user']
def get_fieldsets(self, request, obj = None):
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-01 13:55
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('sites', '0002_alter_domain_unique'),
+ ('organization-network', '0002_auto_20160824_0020'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='organization',
+ name='custommodel_ptr',
+ ),
+ migrations.RemoveField(
+ model_name='person',
+ name='customdisplayable_ptr',
+ ),
+ migrations.AddField(
+ model_name='organization',
+ name='id',
+ field=models.AutoField(auto_created=True, default=1, primary_key=True, serialize=False, verbose_name='ID'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='_meta_title',
+ field=models.CharField(blank=True, help_text='Optional title to be used in the HTML title tag. If left blank, the main title field will be used.', max_length=500, null=True, verbose_name='Title'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='created',
+ field=models.DateTimeField(editable=False, null=True),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='description',
+ field=models.TextField(blank=True, verbose_name='Description'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='expiry_date',
+ field=models.DateTimeField(blank=True, help_text="With Published chosen, won't be shown after this time", null=True, verbose_name='Expires on'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='gen_description',
+ field=models.BooleanField(default=True, help_text='If checked, the description will be automatically generated from content. Uncheck if you want to manually set a custom description.', verbose_name='Generate description'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='id',
+ field=models.AutoField(auto_created=True, default=1, primary_key=True, serialize=False, verbose_name='ID'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='in_sitemap',
+ field=models.BooleanField(default=True, verbose_name='Show in sitemap'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='keywords_string',
+ field=models.CharField(blank=True, editable=False, max_length=500),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='publish_date',
+ field=models.DateTimeField(blank=True, db_index=True, help_text="With Published chosen, won't be shown until this time", null=True, verbose_name='Published from'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='short_url',
+ field=models.URLField(blank=True, null=True),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='site',
+ field=models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.Site'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='slug',
+ field=models.CharField(blank=True, help_text='Leave blank to have the URL auto-generated from the title.', max_length=2000, null=True, verbose_name='URL'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='status',
+ field=models.IntegerField(choices=[(1, 'Draft'), (2, 'Published')], default=2, help_text='With Draft chosen, will only be shown for admin users on the site.', verbose_name='Status'),
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='title',
+ field=models.CharField(default='a', max_length=500, verbose_name='Title'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='person',
+ name='updated',
+ field=models.DateTimeField(editable=False, null=True),
+ ),
+ ]
abstract = True
-class Organization(CustomModel, Named, Address, URL):
+class Organization(Named, Address, URL):
"""(Organization description)"""
type = models.ForeignKey('OrganizationType', verbose_name=_('organization type'), blank=True, null=True, on_delete=models.SET_NULL)
-class Person(CustomDisplayable, AdminThumbMixin):
+class Person(Displayable, AdminThumbMixin):
"""(Person description)"""
user = models.ForeignKey(User, verbose_name=_('user'), blank=True, null=True, on_delete=models.SET_NULL)
from organization.pages.models import *
from organization.media.models import Video, Audio
-class ProjectLinkInline(StackedDynamicInlineAdmin):
-
- model = DisplayableLink
-
-
-class ProjectImageInline(TabularDynamicInlineAdmin):
-
- model = DisplayableImage
-
-
-class ProjectBlockInline(StackedDynamicInlineAdmin):
-
- model = DisplayableBlock
-
+# class ProjectLinkInline(StackedDynamicInlineAdmin):
+#
+# model = DisplayableLink
+#
+#
+# class ProjectImageInline(TabularDynamicInlineAdmin):
+#
+# model = DisplayableImage
+#
+#
+# class ProjectBlockInline(StackedDynamicInlineAdmin):
+#
+# model = DisplayableBlock
+#
class ProjectAudioInline(StackedDynamicInlineAdmin):
class ProjectAdminDisplayable(DisplayableAdmin):
fieldsets = deepcopy(ProjectAdmin.fieldsets)
- inlines = [ProjectImageInline, ProjectBlockInline, ProjectAudioInline, ProjectVideoInline]
+ # inlines = [ProjectImageInline, ProjectBlockInline, ProjectAudioInline, ProjectVideoInline]
filter_horizontal = ['persons', 'teams', 'organizations']
--- /dev/null
+# -*- coding: utf-8 -*-
+# Generated by Django 1.9.7 on 2016-09-01 13:55
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('sites', '0002_alter_domain_unique'),
+ ('organization-projects', '0001_initial'),
+ ]
+
+ operations = [
+ migrations.RemoveField(
+ model_name='project',
+ name='customdisplayable_ptr',
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='_meta_title',
+ field=models.CharField(blank=True, help_text='Optional title to be used in the HTML title tag. If left blank, the main title field will be used.', max_length=500, null=True, verbose_name='Title'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='created',
+ field=models.DateTimeField(editable=False, null=True),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='description',
+ field=models.TextField(blank=True, verbose_name='Description'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='expiry_date',
+ field=models.DateTimeField(blank=True, help_text="With Published chosen, won't be shown after this time", null=True, verbose_name='Expires on'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='gen_description',
+ field=models.BooleanField(default=True, help_text='If checked, the description will be automatically generated from content. Uncheck if you want to manually set a custom description.', verbose_name='Generate description'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='id',
+ field=models.AutoField(auto_created=True, default=1, primary_key=True, serialize=False, verbose_name='ID'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='in_sitemap',
+ field=models.BooleanField(default=True, verbose_name='Show in sitemap'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='keywords_string',
+ field=models.CharField(blank=True, editable=False, max_length=500),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='publish_date',
+ field=models.DateTimeField(blank=True, db_index=True, help_text="With Published chosen, won't be shown until this time", null=True, verbose_name='Published from'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='short_url',
+ field=models.URLField(blank=True, null=True),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='site',
+ field=models.ForeignKey(default=1, editable=False, on_delete=django.db.models.deletion.CASCADE, to='sites.Site'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='slug',
+ field=models.CharField(blank=True, help_text='Leave blank to have the URL auto-generated from the title.', max_length=2000, null=True, verbose_name='URL'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='status',
+ field=models.IntegerField(choices=[(1, 'Draft'), (2, 'Published')], default=2, help_text='With Draft chosen, will only be shown for admin users on the site.', verbose_name='Status'),
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='title',
+ field=models.CharField(default='a', max_length=500, verbose_name='Title'),
+ preserve_default=False,
+ ),
+ migrations.AddField(
+ model_name='project',
+ name='updated',
+ field=models.DateTimeField(editable=False, null=True),
+ ),
+ ]
from organization.pages.models import *
-class Project(CustomDisplayable, Period, RichText):
+class Project(Displayable, Period, RichText):
"""(Project description)"""
lead_team = models.ForeignKey('organization-network.Team', verbose_name=_('lead team'), related_name='leader_projects', blank=True, null=True)