diff --git a/scipost/migrations/0041_editorialcollege_editorialcollegemember.py b/scipost/migrations/0041_editorialcollege_editorialcollegemember.py new file mode 100644 index 0000000000000000000000000000000000000000..fa72a86c632fd7c0f1eb6709d5e53a43b7e41802 --- /dev/null +++ b/scipost/migrations/0041_editorialcollege_editorialcollegemember.py @@ -0,0 +1,34 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.3 on 2017-03-18 20:08 +from __future__ import unicode_literals + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('scipost', '0040_auto_20170317_1659'), + ] + + operations = [ + migrations.CreateModel( + name='EditorialCollege', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('discipline', models.CharField(max_length=255)), + ], + ), + migrations.CreateModel( + name='EditorialCollegeMember', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=255)), + ('title', models.CharField(blank=True, max_length=10)), + ('link', models.URLField(blank=True)), + ('subtitle', models.CharField(blank=True, max_length=255)), + ('discipline', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='member', to='scipost.EditorialCollege')), + ], + ), + ] diff --git a/scipost/models.py b/scipost/models.py index 80d0640e6fb5cafc2cd22e778475990af3e1fd23..bfed272e4620b2a23767a5d22fc31d48b5a2d124 100644 --- a/scipost/models.py +++ b/scipost/models.py @@ -4,7 +4,6 @@ from django import forms from django.contrib.auth.models import User from django.contrib.postgres.fields import ArrayField from django.db import models -from django.shortcuts import get_object_or_404 from django.template import Template, Context from django.utils import timezone from django.utils.safestring import mark_safe @@ -512,3 +511,27 @@ class SPBMembershipAgreement(models.Model): return (str(self.partner) + ' [' + spb_membership_duration_dict[self.duration] + ' from ' + self.start_date.strftime('%Y-%m-%d') + ']') + + +###################### +# Static info models # +###################### + +class EditorialCollege(models.Model): + '''A SciPost Editorial College for a specific discipline.''' + discipline = models.CharField(max_length=255) + + +class EditorialCollegeMember(models.Model): + """ + Editorial College Members for non-functional use! + This model is used for static information purposes only. + """ + name = models.CharField(max_length=255) + title = models.CharField(max_length=10, blank=True) + link = models.URLField(blank=True) + subtitle = models.CharField(max_length=255, blank=True) + discipline = models.ForeignKey('scipost.EditorialCollege', related_name='member') + + def __str__(self): + return ('%s %s' % (self.title, self.name)).strip()