class Migration(migrations.Migration): dependencies = [ ('content', '0002_systemsetting'), ] operations = [ migrations.CreateModel( name='Albumn', fields=[ ('id', models.CharField(default=uuid.uuid4, max_length=64, primary_key=True, serialize=False, verbose_name='Activation key')), ('name', models.CharField(db_index=True, max_length=60, unique=True)), ('weight', models.IntegerField(default=0)), ('slug', models.SlugField(max_length=150, unique=True)), ('created', models.DateTimeField(auto_now_add=True, db_index=True)), ('active', models.BooleanField(default=True)), ], ), migrations.CreateModel( name='Image', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(blank=True, max_length=60, null=True)), ('image_key', models.CharField(default=uuid.uuid4, max_length=64, verbose_name='Activation key')), ('image', models.ImageField(storage=content.storage.OverwriteStorage(), upload_to=content.models.image_upload_path)), ('created', models.DateTimeField(auto_now_add=True)), ('active', models.BooleanField(default=True)), ('weight', models.IntegerField(default=0)), ('albumn', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Albumn')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='PEvent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('email', models.EmailField(max_length=100)), ('contact', models.CharField(max_length=10)), ('image', models.ImageField(upload_to='pictures/')), ], ), migrations.CreateModel( name='WEvent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('email', models.EmailField(max_length=100)), ('contact', models.CharField(max_length=10)), ('docfile', models.FileField(upload_to='uploads/%Y/%m/%d', validators=[content.models.WEvent.validate_file_extension])), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0001_initial'), ] operations = [ migrations.RemoveField( model_name='post', name='image', ), migrations.RemoveField( model_name='post', name='image_height', ), migrations.RemoveField( model_name='post', name='image_width', ), migrations.CreateModel( name='PostImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('image_height', models.IntegerField(blank=True, null=True)), ('image_width', models.IntegerField(blank=True, null=True)), ('image', models.ImageField(height_field='image_height', upload_to=content.models.post_image_upload, width_field='image_width')), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Post')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('slug', models.SlugField(unique=True)), ('active', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ], ), migrations.CreateModel( name='Post', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=120)), ('title_pic', models.CharField(max_length=120)), ('content', models.TextField()), ('image_height', models.IntegerField(blank=True, null=True)), ('image_width', models.IntegerField(blank=True, null=True)), ('image', models.ImageField(height_field='image_height', upload_to=content.models.post_image_upload, width_field='image_width')), ('share_num', models.IntegerField()), ('article_id', models.IntegerField()), ('location', models.CharField(max_length=50)), ('post_type', models.IntegerField()), ('public', models.BooleanField(default=True)), ('updated', models.DateTimeField(auto_now=True)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='category_posts', to='content.Category')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0036_contactusemail'), ] operations = [ migrations.AlterField( model_name='header', name='image', field=models.ImageField( upload_to='header/', validators=[content.models.validate_image_size]), ), migrations.AlterField( model_name='resource', name='image', field=models.ImageField( blank=True, null=True, upload_to=content.models.get_image_path, validators=[content.models.validate_image_size]), ), migrations.AlterField( model_name='resourcelistdetail', name='image', field=models.ImageField( upload_to='resource_header/', validators=[content.models.validate_image_size]), ), migrations.AlterField( model_name='section', name='section_image', field=models.ImageField( upload_to='section/', validators=[content.models.validate_image_size]), ), migrations.AlterField( model_name='section', name='subquote_image', field=models.ImageField( upload_to='section/', validators=[content.models.validate_image_size]), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0004_auto_20170113_2334'), ] operations = [ migrations.AddField( model_name='meta', name='favicon', field=models.ImageField(blank=True, upload_to=content.models.make_upload_path, verbose_name='favicon.ico'), ), migrations.AddField( model_name='slide', name='image', field=models.ImageField(blank=True, upload_to=content.models.make_upload_path, verbose_name='Image'), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0014_auto_20180402_1743'), ] operations = [ migrations.AlterModelOptions( name='profile', options={ 'verbose_name': 'Профиль', 'verbose_name_plural': 'Профили' }, ), migrations.AlterModelOptions( name='profileimage', options={ 'verbose_name': 'Изображение', 'verbose_name_plural': 'Изображения' }, ), migrations.AlterField( model_name='profile', name='user', field=models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь'), ), migrations.AlterField( model_name='profileimage', name='file', field=models.ImageField( blank=True, null=True, upload_to=content.models.generate_file_name, verbose_name='Изображение'), ), migrations.AlterField( model_name='profileimage', name='profile', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='images', to='content.Profile', verbose_name='Профиль'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=35)), ('name_ar', models.CharField(max_length=35)), ('age_rating', models.CharField(max_length=3)), ('difficulty', models.IntegerField(validators=[django.core.validators.MaxValueValidator(5, 'Maximum Limit is 5')])), ('created_date', models.DateTimeField(default=datetime.datetime.now)), ('creator_id', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='creator', to=settings.AUTH_USER_MODEL)), ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Category')), ], ), migrations.CreateModel( name='Question', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=35, null=True)), ('name_ar', models.CharField(blank=True, max_length=35, null=True)), ('age_rating', models.CharField(max_length=3)), ('Correct_answer', models.CharField(max_length=150)), ('difficulty', models.IntegerField(validators=[django.core.validators.MaxValueValidator(5, 'Maximum Limit is 5')])), ('Category_parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Category')), ('creator_id', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='maker', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='QuestionImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('question_image', models.ImageField(blank=True, null=True, upload_to=content.models.get_image_path)), ('Question', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, to='content.Question')), ], ), migrations.AddField( model_name='question', name='question_image', field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='Image', to='content.QuestionImage'), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0008_resourcelistdetail'), ] operations = [ migrations.AddField( model_name='resource', name='image', field=models.ImageField(blank=True, null=True, upload_to=content.models.get_image_path), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0004_auto_20180527_1349'), ] operations = [ migrations.AlterField( model_name='article', name='content', field=models.TextField(blank=True, default='', null=True), ), migrations.AlterField( model_name='article', name='created_at', field=models.ForeignKey(blank=True, default=None, null=True, on_delete=models.SET(content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL), ), migrations.AlterField( model_name='article', name='description', field=models.TextField(blank=True, default='', null=True), ), migrations.AlterField( model_name='article', name='edited_at', field=models.ForeignKey(blank=True, default=None, null=True, on_delete=models.SET(content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL), ), migrations.AlterField( model_name='article', name='img_path', field=models.ImageField(blank=True, default='', null=True, upload_to='article/imgs'), ), migrations.AlterField( model_name='article', name='img_url', field=models.URLField(blank=True, default='', null=True), ), migrations.AlterField( model_name='article', name='intro', field=models.TextField(blank=True, default='', null=True), ), migrations.AlterField( model_name='article', name='published_at', field=models.ForeignKey(blank=True, default=None, null=True, on_delete=models.SET(content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Article', fields=[ ('id', models.BigAutoField(editable=False, primary_key=True, serialize=False)), ('title', models.TextField(db_index=True)), ('alias', models.TextField(unique=True)), ('intro', models.TextField(default='', null=True)), ('content', models.TextField(default='', null=True)), ('img_url', models.URLField(default='', null=True)), ('img_path', models.ImageField(default='', null=True, upload_to='')), ('state', models.BooleanField(db_index=True, default=False)), ('created', models.DateTimeField(auto_now_add=True, db_index=True)), ('edited', models.DateTimeField(auto_now_add=True, db_index=True)), ('published', models.DateTimeField(db_index=True, null=True)), ('created_at', models.ForeignKey(on_delete=models.SET( content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL)), ('edited_at', models.ForeignKey(on_delete=models.SET( content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL)), ('published_at', models.ForeignKey(on_delete=models.SET( content.models.get_sentinel_user), related_name='+', to=settings.AUTH_USER_MODEL)), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0017_auto_20180402_2016'), ] operations = [ migrations.AddField( model_name='profile', name='avatar', field=models.ImageField( blank=True, null=True, upload_to=content.models.generate_file_name, verbose_name='Юзерпик'), ), ]
class Migration(migrations.Migration): dependencies = [ ('content', '0001_initial'), ] operations = [ migrations.RemoveField( model_name='questionimage', name='Question', ), migrations.AlterField( model_name='question', name='question_image', field=models.ImageField(blank=True, null=True, upload_to=content.models.get_image_path), ), migrations.DeleteModel(name='QuestionImage', ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')), ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')), ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')), ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')), ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')), ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')), ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')), ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=25)), ('slug', models.SlugField(blank=True)), ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='owner', to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Category', 'verbose_name_plural': 'Categories', }, ), migrations.CreateModel( name='UnauthorizedUserLink', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=25, verbose_name='Name')), ('slug', models.SlugField(blank=True)), ('link', models.CharField(max_length=100)), ('image', models.ImageField(blank=True, upload_to=content.models.image_folder, verbose_name='Image url')), ], options={ 'verbose_name': 'UnauthorizedUserLink', 'verbose_name_plural': 'UnauthorizedUserLinks', }, ), migrations.CreateModel( name='Version', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('version', models.CharField(max_length=5, verbose_name='Версия')), ('description', models.TextField(verbose_name='Что нового в версии')), ('year', models.PositiveSmallIntegerField(verbose_name='Текущий год')), ], ), migrations.CreateModel( name='Link', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=25, verbose_name='Name')), ('slug', models.SlugField(blank=True)), ('link', models.CharField(max_length=100)), ('image', models.ImageField(blank=True, upload_to=content.models.image_folder, verbose_name='Image url')), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='category', to='content.category')), ], options={ 'verbose_name': 'Link', 'verbose_name_plural': 'Links', }, ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Author', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(default='le author name', max_length=200)), ('image', models.ImageField( blank=True, null=True, upload_to=content.models.author_image_directory_path)), ('bio', ckeditor.fields.RichTextField(default='author bio')), ('slug', models.SlugField(max_length=200, unique=True)), ], ), migrations.CreateModel( name='Classification', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('discipline', models.CharField( default='le discipline', help_text='topic discipline (ex: Neuroscience)', max_length=100)), ('academic_field', models.CharField(choices=[('S', 'Sciences'), ('H', 'Humanities')], help_text='Sciences or Humanities', max_length=2)), ], ), migrations.CreateModel( name='Episode', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('unique_id', models.CharField( blank=True, default=uuid.uuid4, help_text= 'This determines the Disqus comment section. Need to set this manually for old KiW episodes (that were on Flask)', max_length=100, unique=True)), ('title', models.CharField(default='le title', max_length=100, unique=True)), ('topic_image', models.ImageField( blank=True, null=True, upload_to=content.models.episode_image_directory_path, verbose_name='Cover image')), ('topic_image_latest', models.ImageField( blank=True, help_text="The cover image for 'featured' on the homepage", null=True, upload_to=content.models.episode_image_directory_path, verbose_name="'featured episode' cover image")), ('topic_image_box', models.ImageField( blank=True, help_text= 'This is for the circular audio player on mobile', null=True, upload_to=content.models.episode_image_directory_path, verbose_name='Mobile circular image')), ('transcript', ckeditor_uploader.fields.RichTextUploadingField( blank=True, default='le transcript', null=True)), ('abstract', ckeditor.fields.RichTextField(default='le abstract')), ('by_in_colour', models.CharField(choices=[('w', 'white'), ('b', 'black')], default='w', max_length=1, verbose_name="'by/in' colour")), ('author_name_size', models.CharField(choices=[('n', 'normal'), ('s', 'smaller')], default='n', max_length=1)), ('image_credits', ckeditor.fields.RichTextField( blank=True, default='', help_text= "Example of the correct format: The Morgan Library & Museum, New York. By <a target='_blank' href='https://commons.wikimedia.org/wiki/File:The_Morgan_Library_%26_Museum.jpg'>Paolatrabanco</a> [<a target='_blank' href='https://creativecommons.org/licenses/by-sa/4.0/deed.en'>CC BY-SA 4.0</a>]" )), ('narration_credits', models.CharField( blank=True, default='', help_text= 'Example of correct format: Mary Wellesley and Vidish Athavale', max_length=300)), ('music_credits', models.CharField( blank=True, default='', help_text= 'Example of correct format: Greg Joy and Neil Cross', max_length=300)), ('video_embed', models.CharField(blank=True, default='', max_length=300, verbose_name='Youtube URL')), ('audio_mp3', models.FileField(blank=True, upload_to='')), ('status', models.CharField(choices=[('d', 'Draft'), ('p', 'Published'), ('v', 'Previewed')], default='d', max_length=1)), ('pub_date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date published')), ('slug', models.SlugField(max_length=120, unique=True)), ('old_KiW_slug', models.CharField( blank=True, help_text= 'For old episodes (that were on Flask): need to fill this in so that the old links on social media and stuff still work', max_length=200)), ('author', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='first_author', to='content.Author')), ('classification', models.ManyToManyField(blank=True, to='content.Classification')), ], ), migrations.CreateModel( name='FlashSeminar', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='le title', max_length=100, unique=True)), ('event_date', models.DateTimeField(default=django.utils.timezone.now)), ('event_location', models.CharField(default='somewhere', max_length=400)), ('description', ckeditor.fields.RichTextField(default='a flash seminar!')), ('status', models.CharField(choices=[('d', 'Draft'), ('p', 'Published'), ('v', 'Previewed')], default='d', max_length=1)), ('slug', models.SlugField(default='le slug', max_length=120, unique=True)), ('episode', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='content.Episode')), ], ), migrations.CreateModel( name='Season', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='Season title', max_length=100)), ('abstract', ckeditor.fields.RichTextField( default='Description of the season')), ('image', models.ImageField( blank=True, null=True, upload_to=content.models.seasons_image_directory_path, verbose_name='Season image')), ('pub_date', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date published')), ], ), migrations.AddField( model_name='episode', name='season', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Season'), ), migrations.AddField( model_name='episode', name='second_author', field=models.ForeignKey( blank=True, help_text='A second author is optional', null=True, on_delete=django.db.models.deletion.CASCADE, related_name='second_author', to='content.Author'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Articles', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('article_title', models.CharField(blank=True, max_length=200, unique=True, verbose_name='Заголовок статьи')), ('article_link', models.SlugField(default='', max_length=150, verbose_name='Ссылка в браузере')), ('metakey', models.CharField(blank=True, max_length=255, verbose_name='Ключевые слова')), ('metadesc', models.CharField(blank=True, max_length=255, verbose_name='Мета описание')), ('image', models.ImageField(blank=True, upload_to=content.models.make_upload_path, verbose_name='Изображение')), ('article_anons', ckeditor.fields.RichTextField(blank=True, verbose_name='Анонс статьи')), ('article_text', ckeditor_uploader.fields.RichTextUploadingField( blank=True, verbose_name='Полный текст статьи')), ('article_date', models.DateTimeField(blank=True, default=django.utils.timezone.now, verbose_name='Дата публикации')), ('recipe', models.BooleanField(default=False, verbose_name='Рецепт')), ('article_publish', models.BooleanField(default=True, verbose_name='Опубликован')), ], options={ 'verbose_name': 'Статья, рецепт', 'verbose_name_plural': 'Статьи и рецепты', 'db_table': 'articles', }, ), migrations.CreateModel( name='Categories', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('category_name', models.CharField(db_index=True, default='', max_length=200, unique=True, verbose_name='Категория')), ('category_link', models.SlugField(default='', max_length=150)), ('metakey', models.CharField(blank=True, max_length=255, verbose_name='Ключевые слова')), ('metadesc', models.CharField(blank=True, max_length=255, verbose_name='Мета описание')), ('in_header', models.SmallIntegerField( blank=True, default=0, null=True, verbose_name='Категория в шапке сайта')), ('class_in_header', models.CharField(blank=True, default=False, max_length=20, null=True)), ], options={ 'verbose_name': 'категория', 'verbose_name_plural': 'категории', 'db_table': 'categories', 'ordering': ['id'], }, ), migrations.CreateModel( name='Comments', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user_name', models.CharField(max_length=50, verbose_name='Имя пользователя')), ('comment_date', models.DateField(default=django.utils.timezone.now, verbose_name='Дата')), ('comments_text', models.TextField(blank=True, verbose_name='Кометарий')), ('comments_article', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Articles', verbose_name='Коментарий для статьи')), ], options={ 'verbose_name': 'коментарий', 'verbose_name_plural': 'коментарии', 'db_table': 'comments', 'ordering': ['-comment_date'], }, ), migrations.AddField( model_name='articles', name='category_article', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Categories', verbose_name='Категория статьи'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('core', '0001_initial'), ] operations = [ migrations.CreateModel( name='Blog', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('body', models.TextField()), ('author', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to='core.Profile')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ], options={ 'verbose_name_plural': 'categories', }, ), migrations.CreateModel( name='ContentImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('image', models.ImageField(blank=True, null=True, upload_to='content-img')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Page', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('body', models.TextField()), ('order', models.PositiveSmallIntegerField(blank=True, null=True)), ('footer_link', models.BooleanField(default=False)), ('is_home', models.BooleanField(db_index=True, default=False, editable=False)), ('images', models.ManyToManyField(related_name='page', to='content.ContentImage')), ], options={ 'ordering': ['section', 'order'], }, ), migrations.CreateModel( name='Section', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100, unique=True)), ('slug', models.SlugField(editable=False, max_length=100, unique=True)), ('creation_date', models.DateTimeField(auto_now_add=True)), ('changed_date', models.DateTimeField(auto_now=True)), ('is_visible', models.BooleanField(default=False)), ('order', models.PositiveSmallIntegerField(default=content.models.section_default, unique=True)), ], options={ 'ordering': ['order'], }, ), migrations.AddField( model_name='page', name='section', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, related_name='pages', to='content.Section'), ), migrations.AddField( model_name='blog', name='categories', field=models.ManyToManyField(related_name='blogs', to='content.Category'), ), migrations.AddField( model_name='blog', name='images', field=models.ManyToManyField(related_name='blog', to='content.ContentImage'), ), migrations.AlterUniqueTogether( name='page', unique_together=set([('section', 'order')]), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='Character', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('chinese', models.CharField(max_length=1)), ('pinyin', models.CharField(max_length=15)), ('part_of_speech_1', models.CharField(max_length=50)), ('definition_1', models.CharField(max_length=100)), ('part_of_speech_2', models.CharField(blank=True, max_length=50, null=True)), ('definition_2', models.CharField(blank=True, max_length=100, null=True)), ('explanation_2', models.CharField(blank=True, max_length=300, null=True)), ('part_of_speech_3', models.CharField(blank=True, max_length=50, null=True)), ('definition_3', models.CharField(blank=True, max_length=100, null=True)), ('explanation_3', models.CharField(blank=True, max_length=300, null=True)), ('mnemonic_explanation', models.CharField(max_length=800)), ('example_1_word', models.CharField(max_length=10)), ('example_1_pinyin', models.CharField(max_length=25)), ('example_1_character', models.CharField(max_length=100)), ('example_1_meaning', models.CharField(max_length=100)), ('example_2_word', models.CharField(blank=True, max_length=10, null=True)), ('example_2_pinyin', models.CharField(blank=True, max_length=25, null=True)), ('example_2_character', models.CharField(blank=True, max_length=100, null=True)), ('example_2_meaning', models.CharField(blank=True, max_length=100, null=True)), ('is_preview_definition', models.BooleanField()), ('is_preview_pinyin', models.BooleanField()), ('structure', models.IntegerField(null=True)), ('stroke_order_image', models.ImageField(default='default.jpg', upload_to='')), ], options={ 'ordering': ['id'], }, bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.CreateModel( name='Radical', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('chinese', models.CharField(max_length=6)), ('pinyin', models.CharField(max_length=15)), ('definition', models.CharField(max_length=100)), ('mnemonic_explanation', models.CharField(blank=True, max_length=300, null=True)), ('mnemonic_image', models.ImageField(default='default.jpg', upload_to='')), ('is_phonetic', models.BooleanField()), ('is_semantic', models.BooleanField()), ], options={ 'ordering': ['id'], }, bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.CreateModel( name='CharacterSet', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('characters', models.ManyToManyField(to='content.Character')), ], bases=(models.Model, content.models.DFModelMixin, jiezi.utils.mixins.StrDefaultReprMixin), ), migrations.AddField( model_name='character', name='radical_1', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), migrations.AddField( model_name='character', name='radical_2', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), migrations.AddField( model_name='character', name='radical_3', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='content.radical'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='', max_length=255)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('duration', models.IntegerField(default=4)), ('no_of_semesters', models.IntegerField(default=8)), ], ), migrations.CreateModel( name='Exam_Paper_Count', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('paper_cnt', models.IntegerField(default=0)), ], ), migrations.CreateModel( name='Note_Count', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('note_cnt', models.IntegerField(default=0)), ], ), migrations.CreateModel( name='Subject', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(default='', max_length=255)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ], ), migrations.CreateModel( name='Note', fields=[ ('note_id', models.CharField(max_length=20, primary_key=True, serialize=False)), ('title', models.CharField(default='', max_length=300)), ('note_pdf', models.FileField( blank=True, default=None, null=True, upload_to=content.models.get_note_path, validators=[ django.core.validators.FileExtensionValidator(['pdf']) ])), ('is_approved', models.BooleanField(default=False)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ('upvotes', models.ManyToManyField(related_name='upvotes', to=settings.AUTH_USER_MODEL)), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Provider')), ], ), migrations.CreateModel( name='Exam_Paper', fields=[ ('paper_id', models.CharField(max_length=20, primary_key=True, serialize=False)), ('title', models.CharField(default='', max_length=300)), ('batch_year', models.IntegerField()), ('semester', models.IntegerField()), ('exam', models.CharField(max_length=20)), ('exam_type', models.CharField(choices=[('T', 'Theory'), ('P', 'Practical')], default='T', max_length=1)), ('paper_pdf', models.FileField( blank=True, default=None, null=True, upload_to=content.models.get_paper_path, validators=[ django.core.validators.FileExtensionValidator(['pdf']) ])), ('is_approved', models.BooleanField(default=False)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ('user', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Provider')), ], ), migrations.CreateModel( name='Book', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=300)), ('author', models.CharField(max_length=300)), ('image', models.ImageField(default='download.jpg', upload_to='books/')), ('flink', models.CharField(blank=True, max_length=300)), ('alink', models.CharField(blank=True, default='', max_length=300)), ('slug', models.SlugField(editable=False, max_length=30, unique=True)), ('course', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Course', verbose_name='Course')), ('subject', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='content.Subject', verbose_name='Subject')), ], ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('contenttypes', '0002_remove_content_type_name'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='Content', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.CharField(default='UNPROCESSED', editable=False, max_length=40)), ('privacy', models.CharField(choices=[('PRIVATE', 'Private'), ('RESTRICTED', 'Group'), ('PUBLIC', 'Public')], default='PRIVATE', max_length=40, verbose_name='Privacy')), ('uid', models.CharField(db_index=True, default=content.models.get_uid, editable=False, max_length=40, unique=True)), ('originalfilename', models.CharField(editable=False, max_length=256, null=True, verbose_name='Original file name')), ('filesize', models.IntegerField(editable=False, null=True)), ('filetime', models.DateTimeField(blank=True, editable=False, null=True)), ('mimetype', models.CharField(editable=False, max_length=200, null=True)), ('file', models.FileField( storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/data/content' )), upload_to=content.models.upload_split_by_1000)), ('preview', models.ImageField( blank=True, editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ('md5', models.CharField(editable=False, max_length=32, null=True)), ('sha1', models.CharField(editable=False, max_length=40, null=True)), ('linktype', models.CharField(blank=True, max_length=500)), ('point', django.contrib.gis.db.models.fields.PointField(blank=True, geography=True, null=True, srid=4326)), ('point_geom', django.contrib.gis.db.models.fields.PointField(blank=True, null=True, srid=4326)), ('title', models.CharField(blank=True, max_length=200, verbose_name='Title')), ('caption', models.TextField(blank=True, verbose_name='Caption')), ('author', models.CharField(blank=True, max_length=200, verbose_name='Author')), ('keywords', models.CharField(blank=True, max_length=500, verbose_name='Keywords')), ('place', models.CharField(blank=True, max_length=500, verbose_name='Place')), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now=True)), ('opens', models.DateTimeField(blank=True, null=True)), ('expires', models.DateTimeField(blank=True, null=True)), ('object_id', models.PositiveIntegerField(blank=True, null=True)), ('content_type', models.ForeignKey( blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to='contenttypes.contenttype')), ], ), migrations.CreateModel( name='Mail', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('status', models.CharField(choices=[('UNPROCESSED', 'UNPROCESSED'), ('PROCESSED', 'PROCESSED'), ('DUPLICATE', 'DUPLICATE'), ('FAILED', 'FAILED')], default='UNPROCESSED', max_length=40)), ('filesize', models.IntegerField(editable=False, null=True)), ('file', models.FileField( editable=False, storage=django.core.files.storage.FileSystemStorage( location= '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/mail/content' ), upload_to=content.models.upload_split_by_1000)), ('md5', models.CharField(db_index=True, editable=False, max_length=32)), ('sha1', models.CharField(db_index=True, editable=False, max_length=40)), ('created', models.DateTimeField(auto_now_add=True)), ('processed', models.DateTimeField(null=True)), ], ), migrations.CreateModel( name='Audio', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('duration', models.FloatField(blank=True, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ], ), migrations.CreateModel( name='Image', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('rotate', models.IntegerField(blank=True, choices=[(0, 0), (90, 90), (180, 180), (270, 270)], default=0, null=True)), ('thumbnail', models.ImageField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ], ), migrations.CreateModel( name='Uploadinfo', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('sessionid', models.CharField(blank=True, editable=False, max_length=200)), ('ip', models.GenericIPAddressField(blank=True, editable=False, null=True)), ('useragent', models.CharField(blank=True, editable=False, max_length=500)), ('info', models.TextField(blank=True)), ], ), migrations.CreateModel( name='Video', fields=[ ('content', models.OneToOneField( editable=False, on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to='content.content')), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.CharField(blank=True, editable=False, max_length=256, null=True)), ('thumbnail', models.ImageField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/preview' )), upload_to=content.models.upload_split_by_1000)), ], ), migrations.CreateModel( name='Videoinstance', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mimetype', models.CharField(editable=False, max_length=200)), ('filesize', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ('extension', models.CharField(editable=False, max_length=16)), ('width', models.IntegerField(blank=True, editable=False, null=True)), ('height', models.IntegerField(blank=True, editable=False, null=True)), ('framerate', models.FloatField(blank=True, editable=False, null=True)), ('file', models.FileField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/video' )), upload_to=content.models.upload_split_by_1000)), ('command', models.CharField(editable=False, max_length=2000)), ('created', models.DateTimeField(auto_now_add=True)), ('content', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, related_name='videoinstances', to='content.content')), ], ), migrations.CreateModel( name='Group', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('slug', models.SlugField(max_length=100)), ('description', models.TextField()), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now=True)), ('users', models.ManyToManyField(blank=True, related_name='contentgroups', to=settings.AUTH_USER_MODEL)), ], ), migrations.AddField( model_name='content', name='group', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.group'), ), migrations.AddField( model_name='content', name='parent', field=models.ForeignKey( blank=True, editable=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to='content.content'), ), migrations.AddField( model_name='content', name='peers', field=models.ManyToManyField(blank=True, editable=False, to='content.content'), ), migrations.AddField( model_name='content', name='user', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL), ), migrations.CreateModel( name='Audioinstance', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('mimetype', models.CharField(editable=False, max_length=200)), ('filesize', models.IntegerField(blank=True, editable=False, null=True)), ('duration', models.FloatField(blank=True, editable=False, null=True)), ('bitrate', models.FloatField(blank=True, editable=False, null=True)), ('extension', models.CharField(editable=False, max_length=16)), ('file', models.FileField( editable=False, storage=django.core.files.storage. FileSystemStorage(location=pathlib.PurePosixPath( '/Users/arista/Documents/workspace/mestadb-py3/services/mestadb/var/audio' )), upload_to=content.models.upload_split_by_1000)), ('command', models.CharField(editable=False, max_length=2000)), ('created', models.DateTimeField(auto_now_add=True)), ('content', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, related_name='audioinstances', to='content.content')), ], ), ]
class Migration(migrations.Migration): dependencies = [ ('wagtailcore', '0040_page_draft_title'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('taggit', '0002_auto_20150616_2121'), ('content', '0044_tagindex_body'), ] operations = [ migrations.CreateModel( name='CustomImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=255, verbose_name='title')), ('file', models.ImageField( height_field='height', upload_to=wagtail.wagtailimages.models.get_upload_to, verbose_name='file', width_field='width')), ('width', models.IntegerField(editable=False, verbose_name='width')), ('height', models.IntegerField(editable=False, verbose_name='height')), ('created_at', models.DateTimeField(auto_now_add=True, db_index=True, verbose_name='created at')), ('focal_point_x', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_y', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_width', models.PositiveIntegerField(blank=True, null=True)), ('focal_point_height', models.PositiveIntegerField(blank=True, null=True)), ('file_size', models.PositiveIntegerField(editable=False, null=True)), ('collection', models.ForeignKey( default=wagtail.wagtailcore.models.get_root_collection_id, on_delete=django.db.models.deletion.CASCADE, related_name='+', to='wagtailcore.Collection', verbose_name='collection')), ('tags', taggit.managers.TaggableManager(blank=True, help_text=None, through='taggit.TaggedItem', to='taggit.Tag', verbose_name='tags')), ('uploaded_by_user', models.ForeignKey( blank=True, editable=False, null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL, verbose_name='uploaded by user')), ], options={ 'abstract': False, }, bases=(wagtail.wagtailsearch.index.Indexed, models.Model), ), migrations.CreateModel( name='CustomRendition', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('filter_spec', models.CharField(db_index=True, max_length=255)), ('file', models.ImageField(height_field='height', upload_to=wagtail.wagtailimages.models. get_rendition_upload_to, width_field='width')), ('width', models.IntegerField(editable=False)), ('height', models.IntegerField(editable=False)), ('focal_point_key', models.CharField(blank=True, default='', editable=False, max_length=16)), ('image', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='renditions', to='content.CustomImage')), ], ), migrations.AlterField( model_name='articlepage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='blogpage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='eventpage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='issuepage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterField( model_name='newspage', name='body', field=wagtail.wagtailcore.fields.StreamField( (('h2', wagtail.wagtailcore.blocks.CharBlock( classname='title', icon='title', label='H2', template='content/stream_fields/h2.html')), ('embed', wagtail.wagtailembeds.blocks.EmbedBlock(icon='link', label='Эмбед')), ('image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('caption', wagtail.wagtailcore.blocks.CharBlock(label='Подпись', required=False))), icon='image', label='Фотография', template='content/stream_fields/image.html')), ('left_image', wagtail.wagtailcore.blocks.StructBlock( (('image', wagtail.wagtailimages.blocks.ImageChooserBlock( label='Фотография')), ('title', wagtail.wagtailcore.blocks.CharBlock(label='Заголовок', required=False)), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи'))), icon='image', label='Фотография слева', template='content/stream_fields/left_image.html')), ('paragraph', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Параграф', language='ru', template='content/stream_fields/paragraph.html')), ('read_also', wagtail.wagtailcore.blocks.StructBlock( (('page', wagtail.wagtailcore.blocks.PageChooserBlock( label='Страница')), ))), ('gallery', wagtail.wagtailcore.blocks.ListBlock( content.blocks.ImageBlock, icon='image', label='Галерея', template='content/stream_fields/gallery.html')), ('notes', wagtail.wagtailcore.blocks.ListBlock( wagtail.wagtailcore.blocks.StructBlock( (('key', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('value', wagtail.wagtailcore.blocks.CharBlock( label='Описание')))), label='Подписи', template='content/stream_fields/notes.html')), ('html_field', wagtail.wagtailcore.blocks.TextBlock( help_text= 'Поле для html, css и js (может использоваться для сложных embed-кодов)', icon='code', label='html врезка', template='content/stream_fields/html_field.html')), ('anchor_field', wagtail.wagtailcore.blocks.static_block.StaticBlock( admin_text= 'Якорь (передергивает скрипты аналитики и баннеры)', icon='repeat', label='Якорь', template='content/stream_fields/anchor_field.html')), ('box_field', wagtail.wagtailcore.blocks.StructBlock( (('title', wagtail.wagtailcore.blocks.CharBlock( label='Заголовок')), ('body', wagtail.wagtailcore.blocks.RichTextBlock( editor='tinymce', label='Содержание', language='ru', required=True))))), ('blockquote', wagtail.wagtailcore.blocks.CharBlock( icon='openquote', label='Цитата', template='content/stream_fields/blockquote.html')))), ), migrations.AlterUniqueTogether( name='customrendition', unique_together=set([('image', 'filter_spec', 'focal_point_key')]), ), ]