Attempt at Django 1.7
authorRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Fri, 5 Sep 2014 08:18:46 +0000 (10:18 +0200)
committerRadek Czajka <radekczajka@nowoczesnapolska.org.pl>
Fri, 5 Sep 2014 08:18:46 +0000 (10:18 +0200)
88 files changed:
apps/ajaxable/utils.py
apps/api/migrations/0001_initial.py
apps/api/migrations/0002_auto__add_field_deleted_category.py [deleted file]
apps/api/migrations/0003_auto__add_field_deleted_slug.py [deleted file]
apps/catalogue/fields.py
apps/catalogue/migrations/0001_initial.py
apps/catalogue/migrations/0002_auto__add_field_book_fb2_file.py [deleted file]
apps/catalogue/migrations/0003_sort_themes.py [deleted file]
apps/catalogue/migrations/0004_remove_parent_fb2.py [deleted file]
apps/catalogue/migrations/0005_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py [deleted file]
apps/catalogue/migrations/0006_auto.py [deleted file]
apps/catalogue/migrations/0007_auto__add_field_collection_kind.py [deleted file]
apps/catalogue/migrations/0007_auto__add_field_tag_name_de__add_field_tag_name_en__add_field_tag_name.py [deleted file]
apps/catalogue/migrations/0008_auto__add_field_tag_picture_count.py [deleted file]
apps/catalogue/migrations/0008_clear_related.py [deleted file]
apps/catalogue/migrations/0009_auto__add_field_collection_title_de__add_field_collection_title_en__ad.py [deleted file]
apps/catalogue/migrations/0010_preserve_pl.py [deleted file]
apps/catalogue/migrations/0011_auto__add_field_collection_kind__add_field_tag_picture_count__add_fiel.py [deleted file]
apps/catalogue/migrations/0012_auto__add_field_book_sort_key_author.py [deleted file]
apps/catalogue/migrations/0013_auto__chg_field_bookmedia_name.py [deleted file]
apps/catalogue/migrations/0014_auto__add_field_book_cover_thumb.py [deleted file]
apps/catalogue/migrations/0015_rebuild_cover.py [deleted file]
apps/catalogue/migrations/0016_auto__chg_field_collection_title_de__chg_field_collection_description_.py [deleted file]
apps/catalogue/migrations/0017_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py [deleted file]
apps/catalogue/migrations/0018_auto__add_source.py [deleted file]
apps/catalogue/migrations/0019_auto__add_field_source_name_de__add_field_source_name_en__add_field_so.py [deleted file]
apps/catalogue/models/book.py
apps/catalogue/models/bookmedia.py
apps/catalogue/translation.py [new file with mode: 0644]
apps/chunks/migrations/0001_initial.py
apps/chunks/migrations/0002_auto__add_field_chunk_content_de__add_field_chunk_content_en__add_fiel.py [deleted file]
apps/chunks/migrations/0003_auto__chg_field_chunk_content__chg_field_chunk_description.py [deleted file]
apps/chunks/migrations/0004_auto__chg_field_chunk_content_fr__chg_field_chunk_content_ru__chg_fiel.py [deleted file]
apps/chunks/translation.py [new file with mode: 0644]
apps/dictionary/migrations/0001_initial.py
apps/funding/migrations/0001_initial.py
apps/funding/migrations/0002_auto__add_spent__del_field_offer_book_url__add_field_offer_book.py [deleted file]
apps/funding/migrations/0003_auto__add_field_offer_due.py [deleted file]
apps/funding/migrations/0004_auto__add_field_funding_anonymous.py [deleted file]
apps/funding/migrations/0005_auto__chg_field_funding_payed_at.py [deleted file]
apps/funding/migrations/0006_auto__del_field_funding_anonymous.py [deleted file]
apps/funding/migrations/0007_auto__add_field_perk_end_date.py [deleted file]
apps/funding/migrations/0008_auto__add_field_offer_description.py [deleted file]
apps/funding/migrations/0009_auto.py [deleted file]
apps/funding/migrations/0010_auto.py [deleted file]
apps/funding/migrations/0011_auto__add_field_offer_cover.py [deleted file]
apps/funding/migrations/0012_auto__add_field_offer_poll.py [deleted file]
apps/funding/migrations/0013_auto__add_field_funding_language_code.py [deleted file]
apps/funding/migrations/0014_auto__del_field_perk_description__add_field_perk_long_name.py [deleted file]
apps/funding/migrations/0015_auto__add_field_funding_notifications__add_field_funding_notify_key.py [deleted file]
apps/funding/migrations/0016_auto__del_field_offer_due.py [deleted file]
apps/funding/migrations/0017_auto__add_field_offer_notified_near__add_field_offer_notified_end.py [deleted file]
apps/infopages/migrations/0001_initial.py
apps/infopages/migrations/0002_auto__del_field_infopage_page_title__del_field_infopage_page_title_en_.py [deleted file]
apps/infopages/migrations/0003_auto__add_field_infopage_title_it__add_field_infopage_title_jp__add_fi.py [deleted file]
apps/infopages/migrations/0004_auto__del_field_infopage_left_column_jp__del_field_infopage_title_jp__.py [deleted file]
apps/infopages/migrations/0005_auto__chg_field_infopage_title_de__chg_field_infopage_left_column_uk__.py [deleted file]
apps/infopages/translation.py [new file with mode: 0644]
apps/lesmianator/migrations/0001_initial.py
apps/libraries/migrations/0001_initial.py
apps/libraries/migrations/0002_auto__add_catalog__add_field_library_catalog.py [deleted file]
apps/libraries/migrations/0003_auto__add_field_library_slug.py [deleted file]
apps/pdcounter/migrations/0001_initial.py
apps/pdcounter/models.py
apps/picture/migrations/0001_initial.py
apps/picture/migrations/0002_auto__add_field_picture_areas.py [deleted file]
apps/picture/migrations/0003_auto__add_field_picture_extra_info.py [deleted file]
apps/picture/migrations/0004_auto__add_field_picture_gazeta_link__add_field_picture_wiki_link.py [deleted file]
apps/picture/migrations/0005_auto__del_field_picture_gazeta_link__add_field_picture_culturepl_link.py [deleted file]
apps/picture/migrations/0006_auto__add_field_picture_width__add_field_picture_height.py [deleted file]
apps/picture/migrations/0007_auto__add_picturearea__del_field_picture_areas__add_field_picture_area.py [deleted file]
apps/picture/migrations/0008_auto__add_field_picturearea__related_info.py [deleted file]
apps/picture/migrations/0009_auto__add_field_picture_sort_key_author.py [deleted file]
apps/polls/migrations/0001_initial.py
apps/social/migrations/0001_initial.py
apps/social/migrations/0002_auto__add_field_cite_sticky__add_field_cite_image__add_field_cite_imag.py [deleted file]
apps/social/migrations/0003_auto__add_field_cite_image_shift__chg_field_cite_book.py [deleted file]
apps/sponsors/migrations/0001_initial.py
apps/suggest/migrations/0001_initial.py
apps/suggest/migrations/0002_auto__add_publishingsuggestion.py [deleted file]
apps/suggest/migrations/0003_auto__chg_field_suggestion_ip.py [deleted file]
apps/suggest/migrations/0004_auto__chg_field_publishingsuggestion_ip.py [deleted file]
apps/waiter/migrations/0001_initial.py
requirements.txt
wolnelektury/settings/__init__.py
wolnelektury/settings/contrib.py
wolnelektury/translation.py [deleted file]
wolnelektury/urls.py

index 4a80120..456c2b4 100755 (executable)
@@ -31,7 +31,7 @@ class JSONResponse(HttpResponse):
         data = json.dumps(data)
         if callback:
             data = callback + "(" + data + ");"
         data = json.dumps(data)
         if callback:
             data = callback + "(" + data + ");"
-        super(JSONResponse, self).__init__(data, mimetype="application/json", **kwargs)
+        super(JSONResponse, self).__init__(data, content_type="application/json", **kwargs)
 
 
 def method_decorator(function_decorator):
 
 
 def method_decorator(function_decorator):
index a567752..4d20304 100644 (file)
@@ -1,52 +1,33 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding model 'Deleted'
-        db.create_table('api_deleted', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('object_id', self.gf('django.db.models.fields.IntegerField')()),
-            ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(db_index=True)),
-            ('deleted_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, db_index=True, blank=True)),
-        ))
-        db.send_create_signal('api', ['Deleted'])
-
-        # Adding unique constraint on 'Deleted', fields ['content_type', 'object_id']
-        db.create_unique('api_deleted', ['content_type_id', 'object_id'])
-
-
-    def backwards(self, orm):
-        
-        # Removing unique constraint on 'Deleted', fields ['content_type', 'object_id']
-        db.delete_unique('api_deleted', ['content_type_id', 'object_id'])
-
-        # Deleting model 'Deleted'
-        db.delete_table('api_deleted')
-
-
-    models = {
-        'api.deleted': {
-            'Meta': {'unique_together': "(('content_type', 'object_id'),)", 'object_name': 'Deleted'},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True'}),
-            'deleted_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.IntegerField', [], {})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['api']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('contenttypes', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Deleted',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('object_id', models.IntegerField()),
+                ('slug', models.SlugField(max_length=120, verbose_name='Slug', blank=True)),
+                ('category', models.CharField(db_index=True, max_length=64, null=True, blank=True)),
+                ('created_at', models.DateTimeField(editable=False, db_index=True)),
+                ('deleted_at', models.DateTimeField(auto_now_add=True, db_index=True)),
+                ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+        migrations.AlterUniqueTogether(
+            name='deleted',
+            unique_together=set([('content_type', 'object_id')]),
+        ),
+    ]
diff --git a/apps/api/migrations/0002_auto__add_field_deleted_category.py b/apps/api/migrations/0002_auto__add_field_deleted_category.py
deleted file mode 100644 (file)
index 5480e52..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding field 'Deleted.category'
-        db.add_column('api_deleted', 'category', self.gf('django.db.models.fields.CharField')(db_index=True, max_length=64, null=True, blank=True), keep_default=False)
-
-
-    def backwards(self, orm):
-        
-        # Deleting field 'Deleted.category'
-        db.delete_column('api_deleted', 'category')
-
-
-    models = {
-        'api.deleted': {
-            'Meta': {'unique_together': "(('content_type', 'object_id'),)", 'object_name': 'Deleted'},
-            'category': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'null': 'True', 'blank': 'True'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True'}),
-            'deleted_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.IntegerField', [], {})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['api']
diff --git a/apps/api/migrations/0003_auto__add_field_deleted_slug.py b/apps/api/migrations/0003_auto__add_field_deleted_slug.py
deleted file mode 100644 (file)
index d03c56d..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Deleted.slug'
-        db.add_column('api_deleted', 'slug',
-                      self.gf('django.db.models.fields.SlugField')(default='', max_length=120, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Deleted.slug'
-        db.delete_column('api_deleted', 'slug')
-
-
-    models = {
-        'api.deleted': {
-            'Meta': {'unique_together': "(('content_type', 'object_id'),)", 'object_name': 'Deleted'},
-            'category': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '64', 'null': 'True', 'blank': 'True'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True'}),
-            'deleted_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.IntegerField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'blank': 'True'})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['api']
\ No newline at end of file
index 89b76ee..8ed628e 100644 (file)
@@ -33,6 +33,11 @@ class EbookField(models.FileField):
         super(EbookField, self).__init__(*args, **kwargs)
         self.format_name = format_name
 
         super(EbookField, self).__init__(*args, **kwargs)
         self.format_name = format_name
 
+    def deconstruct(self):
+        name, path, args, kwargs = super(EbookField, self).deconstruct()
+        args.insert(0, self.format_name)
+        return name, path, args, kwargs
+
     @property
     def builder(self):
         """Finds a celery task suitable for the format of the field."""
     @property
     def builder(self):
         """Finds a celery task suitable for the format of the field."""
@@ -44,7 +49,7 @@ class EbookField(models.FileField):
         def has(model_instance):
             return bool(getattr(model_instance, self.attname, None))
         has.__doc__ = None
         def has(model_instance):
             return bool(getattr(model_instance, self.attname, None))
         has.__doc__ = None
-        has.__name__ = "has_%s" % self.attname
+        has.__name__ = str("has_%s" % self.attname)
         has.short_description = self.name
         has.boolean = True
         setattr(cls, 'has_%s' % self.attname, has)
         has.short_description = self.name
         has.boolean = True
         setattr(cls, 'has_%s' % self.attname, has)
index 38a31e9..ad83d1c 100644 (file)
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding model 'Tag'
-        db.create_table('catalogue_tag', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=120, db_index=True)),
-            ('sort_key', self.gf('django.db.models.fields.CharField')(max_length=120, db_index=True)),
-            ('category', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True, blank=True)),
-            ('book_count', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
-            ('gazeta_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-            ('wiki_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, db_index=True, blank=True)),
-            ('changed_at', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, db_index=True, blank=True)),
-        ))
-        db.send_create_signal('catalogue', ['Tag'])
-
-        # Adding unique constraint on 'Tag', fields ['slug', 'category']
-        db.create_unique('catalogue_tag', ['slug', 'category'])
-
-        # Adding model 'TagRelation'
-        db.create_table('catalogue_tag_relation', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('tag', self.gf('django.db.models.fields.related.ForeignKey')(related_name='items', to=orm['catalogue.Tag'])),
-            ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])),
-            ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')(db_index=True)),
-        ))
-        db.send_create_signal('catalogue', ['TagRelation'])
-
-        # Adding unique constraint on 'TagRelation', fields ['tag', 'content_type', 'object_id']
-        db.create_unique('catalogue_tag_relation', ['tag_id', 'content_type_id', 'object_id'])
-
-        # Adding model 'BookMedia'
-        db.create_table('catalogue_bookmedia', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('type', self.gf('django.db.models.fields.CharField')(max_length='100')),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length='100')),
-            ('file', self.gf('catalogue.fields.OverwritingFileField')(max_length=100)),
-            ('uploaded_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
-            ('extra_info', self.gf('jsonfield.fields.JSONField')(default='{}')),
-            ('book', self.gf('django.db.models.fields.related.ForeignKey')(related_name='media', to=orm['catalogue.Book'])),
-            ('source_sha1', self.gf('django.db.models.fields.CharField')(max_length=40, null=True, blank=True)),
-        ))
-        db.send_create_signal('catalogue', ['BookMedia'])
-
-        # Adding model 'Book'
-        db.create_table('catalogue_book', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('sort_key', self.gf('django.db.models.fields.CharField')(max_length=120, db_index=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(unique=True, max_length=120, db_index=True)),
-            ('common_slug', self.gf('django.db.models.fields.SlugField')(max_length=120, db_index=True)),
-            ('language', self.gf('django.db.models.fields.CharField')(default='pol', max_length=3, db_index=True)),
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, db_index=True, blank=True)),
-            ('changed_at', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, db_index=True, blank=True)),
-            ('parent_number', self.gf('django.db.models.fields.IntegerField')(default=0)),
-            ('extra_info', self.gf('jsonfield.fields.JSONField')(default='{}')),
-            ('gazeta_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-            ('wiki_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-            ('cover', self.gf('django.db.models.fields.files.FileField')(max_length=100, null=True, blank=True)),
-            ('parent', self.gf('django.db.models.fields.related.ForeignKey')(blank=True, related_name='children', null=True, to=orm['catalogue.Book'])),
-            ('_related_info', self.gf('jsonfield.fields.JSONField')(null=True, blank=True)),
-            ('pdf_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-            ('epub_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-            ('mobi_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-            ('txt_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-            ('html_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-            ('xml_file', self.gf('django.db.models.fields.files.FileField')(max_length=100, blank=True)),
-        ))
-        db.send_create_signal('catalogue', ['Book'])
-
-        # Adding model 'Fragment'
-        db.create_table('catalogue_fragment', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('text', self.gf('django.db.models.fields.TextField')()),
-            ('short_text', self.gf('django.db.models.fields.TextField')()),
-            ('anchor', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('book', self.gf('django.db.models.fields.related.ForeignKey')(related_name='fragments', to=orm['catalogue.Book'])),
-        ))
-        db.send_create_signal('catalogue', ['Fragment'])
-
-        # Adding model 'Collection'
-        db.create_table('catalogue_collection', (
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=120, db_index=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=120, primary_key=True, db_index=True)),
-            ('description', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('book_slugs', self.gf('django.db.models.fields.TextField')()),
-        ))
-        db.send_create_signal('catalogue', ['Collection'])
-
-
-    def backwards(self, orm):
-        
-        # Removing unique constraint on 'TagRelation', fields ['tag', 'content_type', 'object_id']
-        db.delete_unique('catalogue_tag_relation', ['tag_id', 'content_type_id', 'object_id'])
-
-        # Removing unique constraint on 'Tag', fields ['slug', 'category']
-        db.delete_unique('catalogue_tag', ['slug', 'category'])
-
-        # Deleting model 'Tag'
-        db.delete_table('catalogue_tag')
-
-        # Deleting model 'TagRelation'
-        db.delete_table('catalogue_tag_relation')
-
-        # Deleting model 'BookMedia'
-        db.delete_table('catalogue_bookmedia')
-
-        # Deleting model 'Book'
-        db.delete_table('catalogue_book')
-
-        # Deleting model 'Fragment'
-        db.delete_table('catalogue_fragment')
-
-        # Deleting model 'Collection'
-        db.delete_table('catalogue_collection')
-
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'db_index': 'True'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import fnpdjango.storage
+import jsonfield.fields
+import catalogue.fields
+import catalogue.models.bookmedia
+from django.conf import settings
+import catalogue.models.book
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('contenttypes', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Book',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('title', models.CharField(max_length=120, verbose_name='Title')),
+                ('sort_key', models.CharField(verbose_name='Sort key', max_length=120, editable=False, db_index=True)),
+                ('sort_key_author', models.CharField(default='', verbose_name='sort key by author', max_length=120, editable=False, db_index=True)),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+                ('common_slug', models.SlugField(max_length=120, verbose_name='Slug')),
+                ('language', models.CharField(default=b'pol', max_length=3, verbose_name='language code', db_index=True)),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date', db_index=True)),
+                ('changed_at', models.DateTimeField(auto_now=True, verbose_name='creation date', db_index=True)),
+                ('parent_number', models.IntegerField(default=0, verbose_name='Parent number')),
+                ('extra_info', jsonfield.fields.JSONField(default={}, verbose_name='Additional information')),
+                ('gazeta_link', models.CharField(max_length=240, blank=True)),
+                ('wiki_link', models.CharField(max_length=240, blank=True)),
+                ('cover', catalogue.fields.EbookField(b'cover', upload_to=catalogue.models.book._cover_upload_to, storage=fnpdjango.storage.BofhFileSystemStorage(), max_length=255, blank=True, null=True, verbose_name='cover')),
+                ('cover_thumb', catalogue.fields.EbookField(b'cover_thumb', max_length=255, upload_to=catalogue.models.book._cover_thumb_upload_to, null=True, verbose_name='cover thumbnail', blank=True)),
+                ('_related_info', jsonfield.fields.JSONField(null=True, editable=False, blank=True)),
+                ('txt_file', catalogue.fields.EbookField(b'txt', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='TXT file')),
+                ('fb2_file', catalogue.fields.EbookField(b'fb2', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='FB2 file')),
+                ('pdf_file', catalogue.fields.EbookField(b'pdf', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='PDF file')),
+                ('epub_file', catalogue.fields.EbookField(b'epub', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='EPUB file')),
+                ('mobi_file', catalogue.fields.EbookField(b'mobi', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='MOBI file')),
+                ('html_file', catalogue.fields.EbookField(b'html', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='HTML file')),
+                ('xml_file', catalogue.fields.EbookField(b'xml', default=b'', storage=fnpdjango.storage.BofhFileSystemStorage(), upload_to=None, max_length=255, blank=True, verbose_name='XML file')),
+                ('parent', models.ForeignKey(related_name=b'children', blank=True, to='catalogue.Book', null=True)),
+            ],
+            options={
+                'ordering': ('sort_key',),
+                'verbose_name': 'book',
+                'verbose_name_plural': 'Books',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='BookMedia',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('type', models.CharField(db_index=True, max_length=20, verbose_name='type', choices=[(b'mp3', 'MP3 file'), (b'ogg', 'Ogg Vorbis file'), (b'daisy', 'DAISY file')])),
+                ('name', models.CharField(max_length=512, verbose_name='name')),
+                ('file', catalogue.fields.OverwritingFileField(upload_to=catalogue.models.bookmedia._file_upload_to, max_length=600, verbose_name='XML file')),
+                ('uploaded_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date', db_index=True)),
+                ('extra_info', jsonfield.fields.JSONField(default={}, verbose_name='Additional information', editable=False)),
+                ('source_sha1', models.CharField(max_length=40, null=True, editable=False, blank=True)),
+                ('book', models.ForeignKey(related_name=b'media', to='catalogue.Book')),
+            ],
+            options={
+                'ordering': ('type', 'name'),
+                'verbose_name': 'book media',
+                'verbose_name_plural': 'book media',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Collection',
+            fields=[
+                ('title', models.CharField(max_length=120, verbose_name='Title', db_index=True)),
+                ('title_de', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_en', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_es', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_fr', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_it', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_lt', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_pl', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_ru', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('title_uk', models.CharField(max_length=120, null=True, verbose_name='Title', db_index=True)),
+                ('slug', models.SlugField(max_length=120, serialize=False, verbose_name='Slug', primary_key=True)),
+                ('description', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_de', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_en', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_es', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_fr', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_it', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_lt', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_pl', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_ru', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_uk', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('book_slugs', models.TextField(verbose_name='Book stubs')),
+                ('kind', models.CharField(default=b'book', max_length=10, verbose_name='form', db_index=True, choices=[(b'book', 'book'), (b'picture', b'picture')])),
+            ],
+            options={
+                'ordering': ('title',),
+                'verbose_name': 'collection',
+                'verbose_name_plural': 'collections',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Fragment',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('text', models.TextField()),
+                ('short_text', models.TextField(editable=False)),
+                ('anchor', models.CharField(max_length=120)),
+                ('book', models.ForeignKey(related_name=b'fragments', to='catalogue.Book')),
+            ],
+            options={
+                'ordering': ('book', 'anchor'),
+                'verbose_name': 'Fragment',
+                'verbose_name_plural': 'Fragments',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Source',
+            fields=[
+                ('netloc', models.CharField(max_length=120, serialize=False, verbose_name='network location', primary_key=True)),
+                ('name', models.CharField(max_length=120, verbose_name='name', blank=True)),
+                ('name_de', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_en', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_es', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_fr', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_it', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_lt', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_pl', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_ru', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+                ('name_uk', models.CharField(max_length=120, null=True, verbose_name='name', blank=True)),
+            ],
+            options={
+                'ordering': ('netloc',),
+                'verbose_name': 'source',
+                'verbose_name_plural': 'sources',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Tag',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=50, verbose_name='name', db_index=True)),
+                ('name_de', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_en', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_es', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_fr', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_it', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_lt', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_pl', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_ru', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('name_uk', models.CharField(max_length=50, null=True, verbose_name='name', db_index=True)),
+                ('slug', models.SlugField(max_length=120, verbose_name='Slug')),
+                ('sort_key', models.CharField(max_length=120, verbose_name='Sort key', db_index=True)),
+                ('category', models.CharField(db_index=True, max_length=50, verbose_name='Category', choices=[(b'author', 'author'), (b'epoch', 'period'), (b'kind', 'form'), (b'genre', 'genre'), (b'theme', 'motif'), (b'set', 'set'), (b'book', 'book'), (b'thing', 'thing')])),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('description_de', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_en', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_es', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_fr', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_it', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_lt', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_pl', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_ru', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('description_uk', models.TextField(null=True, verbose_name='Description', blank=True)),
+                ('book_count', models.IntegerField(null=True, verbose_name='Number of books', blank=True)),
+                ('picture_count', models.IntegerField(null=True, verbose_name='picture count', blank=True)),
+                ('gazeta_link', models.CharField(max_length=240, blank=True)),
+                ('culturepl_link', models.CharField(max_length=240, blank=True)),
+                ('wiki_link', models.CharField(max_length=240, blank=True)),
+                ('wiki_link_de', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_en', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_es', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_fr', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_it', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_lt', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_pl', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_ru', models.CharField(max_length=240, null=True, blank=True)),
+                ('wiki_link_uk', models.CharField(max_length=240, null=True, blank=True)),
+                ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date', db_index=True)),
+                ('changed_at', models.DateTimeField(auto_now=True, verbose_name='creation date', db_index=True)),
+                ('user', models.ForeignKey(blank=True, to=settings.AUTH_USER_MODEL, null=True)),
+            ],
+            options={
+                'ordering': ('sort_key',),
+                'verbose_name': 'tag',
+                'verbose_name_plural': 'tags',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='TagRelation',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('object_id', models.PositiveIntegerField(verbose_name='object id', db_index=True)),
+                ('content_type', models.ForeignKey(verbose_name='content type', to='contenttypes.ContentType')),
+                ('tag', models.ForeignKey(related_name=b'items', verbose_name='tag', to='catalogue.Tag')),
+            ],
+            options={
+                'db_table': 'catalogue_tag_relation',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.AlterUniqueTogether(
+            name='tagrelation',
+            unique_together=set([('tag', 'content_type', 'object_id')]),
+        ),
+        migrations.AlterUniqueTogether(
+            name='tag',
+            unique_together=set([('slug', 'category')]),
+        ),
+    ]
diff --git a/apps/catalogue/migrations/0002_auto__add_field_book_fb2_file.py b/apps/catalogue/migrations/0002_auto__add_field_book_fb2_file.py
deleted file mode 100644 (file)
index 1755402..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Book.fb2_file'
-        db.add_column('catalogue_book', 'fb2_file',
-                      self.gf('django.db.models.fields.files.FileField')(default='', max_length=100, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Book.fb2_file'
-        db.delete_column('catalogue_book', 'fb2_file')
-
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0003_sort_themes.py b/apps/catalogue/migrations/0003_sort_themes.py
deleted file mode 100644 (file)
index edc5c1e..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import DataMigration
-from django.db import models
-from sortify import sortify
-
-
-class Migration(DataMigration):
-
-    def forwards(self, orm):
-        "Write your forwards methods here."
-        for theme in orm.Tag.objects.filter(category='theme'):
-            theme.sort_key = sortify(theme.sort_key)
-            theme.save()
-
-    def backwards(self, orm):
-        "Write your backwards methods here."
-        pass
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
-    symmetrical = True
diff --git a/apps/catalogue/migrations/0004_remove_parent_fb2.py b/apps/catalogue/migrations/0004_remove_parent_fb2.py
deleted file mode 100644 (file)
index f048a45..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import DataMigration
-from django.db import models
-
-class Migration(DataMigration):
-    """Deletes empty FB2 files from books which have no real own content."""
-
-    def forwards(self, orm):
-        "Write your forwards methods here."
-        # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..."
-        for book in orm['catalogue.Book'].objects.filter(html_file=''):
-            if book.fb2_file:
-                book.fb2_file.delete()
-
-    def backwards(self, orm):
-        "Write your backwards methods here."
-        pass
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
-    symmetrical = True
diff --git a/apps/catalogue/migrations/0005_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py b/apps/catalogue/migrations/0005_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py
deleted file mode 100644 (file)
index 6f6bc81..0000000
+++ /dev/null
@@ -1,175 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Book.pdf_file'
-        db.alter_column('catalogue_book', 'pdf_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='pdf'))
-
-        # Changing field 'Book.html_file'
-        db.alter_column('catalogue_book', 'html_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='html'))
-
-        # Changing field 'Book.xml_file'
-        db.alter_column('catalogue_book', 'xml_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='xml'))
-
-        # Changing field 'Book.txt_file'
-        db.alter_column('catalogue_book', 'txt_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='txt'))
-
-        # Changing field 'Book.fb2_file'
-        db.alter_column('catalogue_book', 'fb2_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='fb2'))
-
-        # Changing field 'Book.mobi_file'
-        db.alter_column('catalogue_book', 'mobi_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='mobi'))
-
-        # Changing field 'Book.epub_file'
-        db.alter_column('catalogue_book', 'epub_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='epub'))
-
-        # Changing field 'Book.cover'
-        db.alter_column('catalogue_book', 'cover', self.gf('catalogue.fields.EbookField')(max_length=100, null=True, format_name='cover'))
-
-    def backwards(self, orm):
-
-        # Changing field 'Book.pdf_file'
-        db.alter_column('catalogue_book', 'pdf_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.html_file'
-        db.alter_column('catalogue_book', 'html_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.xml_file'
-        db.alter_column('catalogue_book', 'xml_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.txt_file'
-        db.alter_column('catalogue_book', 'txt_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.fb2_file'
-        db.alter_column('catalogue_book', 'fb2_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.mobi_file'
-        db.alter_column('catalogue_book', 'mobi_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.epub_file'
-        db.alter_column('catalogue_book', 'epub_file', self.gf('django.db.models.fields.files.FileField')(max_length=100))
-
-        # Changing field 'Book.cover'
-        db.alter_column('catalogue_book', 'cover', self.gf('django.db.models.fields.files.FileField')(max_length=100, null=True))
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0006_auto.py b/apps/catalogue/migrations/0006_auto.py
deleted file mode 100644 (file)
index 10aff58..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding index on 'BookMedia', fields ['uploaded_at']
-        db.create_index(u'catalogue_bookmedia', ['uploaded_at'])
-
-        # Adding index on 'BookMedia', fields ['type']
-        db.create_index(u'catalogue_bookmedia', ['type'])
-
-
-    def backwards(self, orm):
-        # Removing index on 'BookMedia', fields ['type']
-        db.delete_index(u'catalogue_bookmedia', ['type'])
-
-        # Removing index on 'BookMedia', fields ['uploaded_at']
-        db.delete_index(u'catalogue_bookmedia', ['uploaded_at'])
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0007_auto__add_field_collection_kind.py b/apps/catalogue/migrations/0007_auto__add_field_collection_kind.py
deleted file mode 100644 (file)
index 1fef5e4..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Collection.kind'
-        db.add_column(u'catalogue_collection', 'kind',
-                      self.gf('django.db.models.fields.CharField')(default='book', max_length=10, db_index=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Collection.kind'
-        db.delete_column(u'catalogue_collection', 'kind')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0007_auto__add_field_tag_name_de__add_field_tag_name_en__add_field_tag_name.py b/apps/catalogue/migrations/0007_auto__add_field_tag_name_de__add_field_tag_name_en__add_field_tag_name.py
deleted file mode 100644 (file)
index 6410957..0000000
+++ /dev/null
@@ -1,289 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Tag.name_de'
-        db.add_column(u'catalogue_tag', 'name_de',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_en'
-        db.add_column(u'catalogue_tag', 'name_en',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_es'
-        db.add_column(u'catalogue_tag', 'name_es',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_fr'
-        db.add_column(u'catalogue_tag', 'name_fr',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_it'
-        db.add_column(u'catalogue_tag', 'name_it',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_lt'
-        db.add_column(u'catalogue_tag', 'name_lt',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_pl'
-        db.add_column(u'catalogue_tag', 'name_pl',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_ru'
-        db.add_column(u'catalogue_tag', 'name_ru',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.name_uk'
-        db.add_column(u'catalogue_tag', 'name_uk',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=50, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_de'
-        db.add_column(u'catalogue_tag', 'description_de',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_en'
-        db.add_column(u'catalogue_tag', 'description_en',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_es'
-        db.add_column(u'catalogue_tag', 'description_es',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_fr'
-        db.add_column(u'catalogue_tag', 'description_fr',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_it'
-        db.add_column(u'catalogue_tag', 'description_it',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_lt'
-        db.add_column(u'catalogue_tag', 'description_lt',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_pl'
-        db.add_column(u'catalogue_tag', 'description_pl',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_ru'
-        db.add_column(u'catalogue_tag', 'description_ru',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.description_uk'
-        db.add_column(u'catalogue_tag', 'description_uk',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Tag.name_de'
-        db.delete_column(u'catalogue_tag', 'name_de')
-
-        # Deleting field 'Tag.name_en'
-        db.delete_column(u'catalogue_tag', 'name_en')
-
-        # Deleting field 'Tag.name_es'
-        db.delete_column(u'catalogue_tag', 'name_es')
-
-        # Deleting field 'Tag.name_fr'
-        db.delete_column(u'catalogue_tag', 'name_fr')
-
-        # Deleting field 'Tag.name_it'
-        db.delete_column(u'catalogue_tag', 'name_it')
-
-        # Deleting field 'Tag.name_lt'
-        db.delete_column(u'catalogue_tag', 'name_lt')
-
-        # Deleting field 'Tag.name_pl'
-        db.delete_column(u'catalogue_tag', 'name_pl')
-
-        # Deleting field 'Tag.name_ru'
-        db.delete_column(u'catalogue_tag', 'name_ru')
-
-        # Deleting field 'Tag.name_uk'
-        db.delete_column(u'catalogue_tag', 'name_uk')
-
-        # Deleting field 'Tag.description_de'
-        db.delete_column(u'catalogue_tag', 'description_de')
-
-        # Deleting field 'Tag.description_en'
-        db.delete_column(u'catalogue_tag', 'description_en')
-
-        # Deleting field 'Tag.description_es'
-        db.delete_column(u'catalogue_tag', 'description_es')
-
-        # Deleting field 'Tag.description_fr'
-        db.delete_column(u'catalogue_tag', 'description_fr')
-
-        # Deleting field 'Tag.description_it'
-        db.delete_column(u'catalogue_tag', 'description_it')
-
-        # Deleting field 'Tag.description_lt'
-        db.delete_column(u'catalogue_tag', 'description_lt')
-
-        # Deleting field 'Tag.description_pl'
-        db.delete_column(u'catalogue_tag', 'description_pl')
-
-        # Deleting field 'Tag.description_ru'
-        db.delete_column(u'catalogue_tag', 'description_ru')
-
-        # Deleting field 'Tag.description_uk'
-        db.delete_column(u'catalogue_tag', 'description_uk')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0008_auto__add_field_tag_picture_count.py b/apps/catalogue/migrations/0008_auto__add_field_tag_picture_count.py
deleted file mode 100644 (file)
index f186ae1..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Tag.picture_count'
-        db.add_column(u'catalogue_tag', 'picture_count',
-                      self.gf('django.db.models.fields.IntegerField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Tag.picture_count'
-        db.delete_column(u'catalogue_tag', 'picture_count')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0008_clear_related.py b/apps/catalogue/migrations/0008_clear_related.py
deleted file mode 100644 (file)
index 3a9892d..0000000
+++ /dev/null
@@ -1,155 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import DataMigration
-from django.db import models
-from django.conf import settings
-
-class Migration(DataMigration):
-
-    def forwards(self, orm):
-        "Write your forwards methods here."
-        # Note: Remember to use orm['appname.ModelName'] rather than "from appname.models..."
-        for t in orm.Tag.objects.filter(category__in=('author', 'epoch', 'genre', 'kind', 'theme')):
-            setattr(t, "name_%s" % settings.LANGUAGE_CODE, t.name)
-            t.save()
-        orm.Book.objects.all().update(_related_info=None)
-
-    def backwards(self, orm):
-        "Write your backwards methods here."
-        orm.Book.objects.all().update(_related_info=None)
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
-    symmetrical = True
diff --git a/apps/catalogue/migrations/0009_auto__add_field_collection_title_de__add_field_collection_title_en__ad.py b/apps/catalogue/migrations/0009_auto__add_field_collection_title_de__add_field_collection_title_en__ad.py
deleted file mode 100644 (file)
index 8b73a0a..0000000
+++ /dev/null
@@ -1,388 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Collection.title_de'
-        db.add_column(u'catalogue_collection', 'title_de',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_en'
-        db.add_column(u'catalogue_collection', 'title_en',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_es'
-        db.add_column(u'catalogue_collection', 'title_es',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_fr'
-        db.add_column(u'catalogue_collection', 'title_fr',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_it'
-        db.add_column(u'catalogue_collection', 'title_it',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_lt'
-        db.add_column(u'catalogue_collection', 'title_lt',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_pl'
-        db.add_column(u'catalogue_collection', 'title_pl',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_ru'
-        db.add_column(u'catalogue_collection', 'title_ru',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.title_uk'
-        db.add_column(u'catalogue_collection', 'title_uk',
-                      self.gf('django.db.models.fields.CharField')(blank=True, max_length=120, null=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_de'
-        db.add_column(u'catalogue_collection', 'description_de',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_en'
-        db.add_column(u'catalogue_collection', 'description_en',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_es'
-        db.add_column(u'catalogue_collection', 'description_es',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_fr'
-        db.add_column(u'catalogue_collection', 'description_fr',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_it'
-        db.add_column(u'catalogue_collection', 'description_it',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_lt'
-        db.add_column(u'catalogue_collection', 'description_lt',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_pl'
-        db.add_column(u'catalogue_collection', 'description_pl',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_ru'
-        db.add_column(u'catalogue_collection', 'description_ru',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Collection.description_uk'
-        db.add_column(u'catalogue_collection', 'description_uk',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_de'
-        db.add_column(u'catalogue_tag', 'wiki_link_de',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_en'
-        db.add_column(u'catalogue_tag', 'wiki_link_en',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_es'
-        db.add_column(u'catalogue_tag', 'wiki_link_es',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_fr'
-        db.add_column(u'catalogue_tag', 'wiki_link_fr',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_it'
-        db.add_column(u'catalogue_tag', 'wiki_link_it',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_lt'
-        db.add_column(u'catalogue_tag', 'wiki_link_lt',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_pl'
-        db.add_column(u'catalogue_tag', 'wiki_link_pl',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_ru'
-        db.add_column(u'catalogue_tag', 'wiki_link_ru',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Tag.wiki_link_uk'
-        db.add_column(u'catalogue_tag', 'wiki_link_uk',
-                      self.gf('django.db.models.fields.CharField')(max_length=240, null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Collection.title_de'
-        db.delete_column(u'catalogue_collection', 'title_de')
-
-        # Deleting field 'Collection.title_en'
-        db.delete_column(u'catalogue_collection', 'title_en')
-
-        # Deleting field 'Collection.title_es'
-        db.delete_column(u'catalogue_collection', 'title_es')
-
-        # Deleting field 'Collection.title_fr'
-        db.delete_column(u'catalogue_collection', 'title_fr')
-
-        # Deleting field 'Collection.title_it'
-        db.delete_column(u'catalogue_collection', 'title_it')
-
-        # Deleting field 'Collection.title_lt'
-        db.delete_column(u'catalogue_collection', 'title_lt')
-
-        # Deleting field 'Collection.title_pl'
-        db.delete_column(u'catalogue_collection', 'title_pl')
-
-        # Deleting field 'Collection.title_ru'
-        db.delete_column(u'catalogue_collection', 'title_ru')
-
-        # Deleting field 'Collection.title_uk'
-        db.delete_column(u'catalogue_collection', 'title_uk')
-
-        # Deleting field 'Collection.description_de'
-        db.delete_column(u'catalogue_collection', 'description_de')
-
-        # Deleting field 'Collection.description_en'
-        db.delete_column(u'catalogue_collection', 'description_en')
-
-        # Deleting field 'Collection.description_es'
-        db.delete_column(u'catalogue_collection', 'description_es')
-
-        # Deleting field 'Collection.description_fr'
-        db.delete_column(u'catalogue_collection', 'description_fr')
-
-        # Deleting field 'Collection.description_it'
-        db.delete_column(u'catalogue_collection', 'description_it')
-
-        # Deleting field 'Collection.description_lt'
-        db.delete_column(u'catalogue_collection', 'description_lt')
-
-        # Deleting field 'Collection.description_pl'
-        db.delete_column(u'catalogue_collection', 'description_pl')
-
-        # Deleting field 'Collection.description_ru'
-        db.delete_column(u'catalogue_collection', 'description_ru')
-
-        # Deleting field 'Collection.description_uk'
-        db.delete_column(u'catalogue_collection', 'description_uk')
-
-        # Deleting field 'Tag.wiki_link_de'
-        db.delete_column(u'catalogue_tag', 'wiki_link_de')
-
-        # Deleting field 'Tag.wiki_link_en'
-        db.delete_column(u'catalogue_tag', 'wiki_link_en')
-
-        # Deleting field 'Tag.wiki_link_es'
-        db.delete_column(u'catalogue_tag', 'wiki_link_es')
-
-        # Deleting field 'Tag.wiki_link_fr'
-        db.delete_column(u'catalogue_tag', 'wiki_link_fr')
-
-        # Deleting field 'Tag.wiki_link_it'
-        db.delete_column(u'catalogue_tag', 'wiki_link_it')
-
-        # Deleting field 'Tag.wiki_link_lt'
-        db.delete_column(u'catalogue_tag', 'wiki_link_lt')
-
-        # Deleting field 'Tag.wiki_link_pl'
-        db.delete_column(u'catalogue_tag', 'wiki_link_pl')
-
-        # Deleting field 'Tag.wiki_link_ru'
-        db.delete_column(u'catalogue_tag', 'wiki_link_ru')
-
-        # Deleting field 'Tag.wiki_link_uk'
-        db.delete_column(u'catalogue_tag', 'wiki_link_uk')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0010_preserve_pl.py b/apps/catalogue/migrations/0010_preserve_pl.py
deleted file mode 100644 (file)
index 253c9a6..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import DataMigration
-from django.conf import settings
-from django.db import models
-
-class Migration(DataMigration):
-
-    def forwards(self, orm):
-        "Write your forwards methods here."
-        lang = settings.LANGUAGE_CODE
-        orm.Collection.objects.all().update(**{
-                "title_%s" % lang: models.F("title"),
-                "description_%s" % lang: models.F("description")
-            })
-        orm.Tag.objects.all().update(**{
-                "wiki_link_%s" % lang: models.F("wiki_link")
-            })
-
-    def backwards(self, orm):
-        "Write your backwards methods here."
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
-    symmetrical = True
diff --git a/apps/catalogue/migrations/0011_auto__add_field_collection_kind__add_field_tag_picture_count__add_fiel.py b/apps/catalogue/migrations/0011_auto__add_field_collection_kind__add_field_tag_picture_count__add_fiel.py
deleted file mode 100644 (file)
index c541a62..0000000
+++ /dev/null
@@ -1,183 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Tag.culturepl_link'
-        db.add_column(u'catalogue_tag', 'culturepl_link',
-                      self.gf('django.db.models.fields.CharField')(default='', max_length=240, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Tag.culturepl_link'
-        db.delete_column(u'catalogue_tag', 'culturepl_link')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0012_auto__add_field_book_sort_key_author.py b/apps/catalogue/migrations/0012_auto__add_field_book_sort_key_author.py
deleted file mode 100644 (file)
index 076f668..0000000
+++ /dev/null
@@ -1,184 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Book.sort_key_author'
-        db.add_column(u'catalogue_book', 'sort_key_author',
-                      self.gf('django.db.models.fields.CharField')(default=u'', max_length=120, db_index=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Book.sort_key_author'
-        db.delete_column(u'catalogue_book', 'sort_key_author')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': "'100'"}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0013_auto__chg_field_bookmedia_name.py b/apps/catalogue/migrations/0013_auto__chg_field_bookmedia_name.py
deleted file mode 100644 (file)
index 0c1e2ef..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'BookMedia.name'
-        db.alter_column(u'catalogue_bookmedia', 'name', self.gf('django.db.models.fields.CharField')(max_length=512))
-
-    def backwards(self, orm):
-
-        # Changing field 'BookMedia.name'
-        db.alter_column(u'catalogue_bookmedia', 'name', self.gf('django.db.models.fields.CharField')(max_length='100'))
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0014_auto__add_field_book_cover_thumb.py b/apps/catalogue/migrations/0014_auto__add_field_book_cover_thumb.py
deleted file mode 100644 (file)
index 4a0c228..0000000
+++ /dev/null
@@ -1,185 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Book.cover_thumb'
-        db.add_column(u'catalogue_book', 'cover_thumb',
-                      self.gf('catalogue.fields.EbookField')(max_length=100, null=True, format_name='cover_thumb', blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Book.cover_thumb'
-        db.delete_column(u'catalogue_book', 'cover_thumb')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0015_rebuild_cover.py b/apps/catalogue/migrations/0015_rebuild_cover.py
deleted file mode 100644 (file)
index fa45ce3..0000000
+++ /dev/null
@@ -1,179 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import DataMigration
-from django.db import models
-
-class Migration(DataMigration):
-
-    def forwards(self, orm):
-        orm.Book.objects.all().update(cover_thumb=models.F('cover'))
-
-    def backwards(self, orm):
-        "Write your backwards methods here."
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '120', 'null': True, 'db_index': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'blank': True, 'max_length': '50', 'null': True, 'db_index': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': True, 'blank': True})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
-    symmetrical = True
diff --git a/apps/catalogue/migrations/0016_auto__chg_field_collection_title_de__chg_field_collection_description_.py b/apps/catalogue/migrations/0016_auto__chg_field_collection_title_de__chg_field_collection_description_.py
deleted file mode 100644 (file)
index 522df56..0000000
+++ /dev/null
@@ -1,447 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Collection.title_de'
-        db.alter_column(u'catalogue_collection', 'title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_fr'
-        db.alter_column(u'catalogue_collection', 'description_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_de'
-        db.alter_column(u'catalogue_collection', 'description_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_uk'
-        db.alter_column(u'catalogue_collection', 'description_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_fr'
-        db.alter_column(u'catalogue_collection', 'title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_lt'
-        db.alter_column(u'catalogue_collection', 'description_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_lt'
-        db.alter_column(u'catalogue_collection', 'title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_pl'
-        db.alter_column(u'catalogue_collection', 'description_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_uk'
-        db.alter_column(u'catalogue_collection', 'title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_ru'
-        db.alter_column(u'catalogue_collection', 'description_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_en'
-        db.alter_column(u'catalogue_collection', 'title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_en'
-        db.alter_column(u'catalogue_collection', 'description_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_es'
-        db.alter_column(u'catalogue_collection', 'title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_es'
-        db.alter_column(u'catalogue_collection', 'description_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_it'
-        db.alter_column(u'catalogue_collection', 'description_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_pl'
-        db.alter_column(u'catalogue_collection', 'title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.title_ru'
-        db.alter_column(u'catalogue_collection', 'title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.title_it'
-        db.alter_column(u'catalogue_collection', 'title_it', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Tag.name_fr'
-        db.alter_column(u'catalogue_tag', 'name_fr', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_fr'
-        db.alter_column(u'catalogue_tag', 'wiki_link_fr', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_de'
-        db.alter_column(u'catalogue_tag', 'name_de', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_fr'
-        db.alter_column(u'catalogue_tag', 'description_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_de'
-        db.alter_column(u'catalogue_tag', 'description_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_uk'
-        db.alter_column(u'catalogue_tag', 'description_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_de'
-        db.alter_column(u'catalogue_tag', 'wiki_link_de', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_ru'
-        db.alter_column(u'catalogue_tag', 'name_ru', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_lt'
-        db.alter_column(u'catalogue_tag', 'description_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.name_it'
-        db.alter_column(u'catalogue_tag', 'name_it', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_it'
-        db.alter_column(u'catalogue_tag', 'wiki_link_it', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_pl'
-        db.alter_column(u'catalogue_tag', 'name_pl', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_pl'
-        db.alter_column(u'catalogue_tag', 'description_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_pl'
-        db.alter_column(u'catalogue_tag', 'wiki_link_pl', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.wiki_link_ru'
-        db.alter_column(u'catalogue_tag', 'wiki_link_ru', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.description_ru'
-        db.alter_column(u'catalogue_tag', 'description_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_es'
-        db.alter_column(u'catalogue_tag', 'wiki_link_es', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_es'
-        db.alter_column(u'catalogue_tag', 'name_es', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_en'
-        db.alter_column(u'catalogue_tag', 'description_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_es'
-        db.alter_column(u'catalogue_tag', 'description_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_it'
-        db.alter_column(u'catalogue_tag', 'description_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.name_en'
-        db.alter_column(u'catalogue_tag', 'name_en', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_en'
-        db.alter_column(u'catalogue_tag', 'wiki_link_en', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.wiki_link_uk'
-        db.alter_column(u'catalogue_tag', 'wiki_link_uk', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_uk'
-        db.alter_column(u'catalogue_tag', 'name_uk', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_lt'
-        db.alter_column(u'catalogue_tag', 'wiki_link_lt', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_lt'
-        db.alter_column(u'catalogue_tag', 'name_lt', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-    def backwards(self, orm):
-
-        # Changing field 'Collection.title_de'
-        db.alter_column(u'catalogue_collection', 'title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_fr'
-        db.alter_column(u'catalogue_collection', 'description_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_de'
-        db.alter_column(u'catalogue_collection', 'description_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_uk'
-        db.alter_column(u'catalogue_collection', 'description_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_fr'
-        db.alter_column(u'catalogue_collection', 'title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_lt'
-        db.alter_column(u'catalogue_collection', 'description_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_lt'
-        db.alter_column(u'catalogue_collection', 'title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_pl'
-        db.alter_column(u'catalogue_collection', 'description_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_uk'
-        db.alter_column(u'catalogue_collection', 'title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_ru'
-        db.alter_column(u'catalogue_collection', 'description_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_en'
-        db.alter_column(u'catalogue_collection', 'title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_en'
-        db.alter_column(u'catalogue_collection', 'description_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_es'
-        db.alter_column(u'catalogue_collection', 'title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.description_es'
-        db.alter_column(u'catalogue_collection', 'description_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.description_it'
-        db.alter_column(u'catalogue_collection', 'description_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Collection.title_pl'
-        db.alter_column(u'catalogue_collection', 'title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.title_ru'
-        db.alter_column(u'catalogue_collection', 'title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Collection.title_it'
-        db.alter_column(u'catalogue_collection', 'title_it', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'Tag.name_fr'
-        db.alter_column(u'catalogue_tag', 'name_fr', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_fr'
-        db.alter_column(u'catalogue_tag', 'wiki_link_fr', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_de'
-        db.alter_column(u'catalogue_tag', 'name_de', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_fr'
-        db.alter_column(u'catalogue_tag', 'description_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_de'
-        db.alter_column(u'catalogue_tag', 'description_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_uk'
-        db.alter_column(u'catalogue_tag', 'description_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_de'
-        db.alter_column(u'catalogue_tag', 'wiki_link_de', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_ru'
-        db.alter_column(u'catalogue_tag', 'name_ru', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_lt'
-        db.alter_column(u'catalogue_tag', 'description_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.name_it'
-        db.alter_column(u'catalogue_tag', 'name_it', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_it'
-        db.alter_column(u'catalogue_tag', 'wiki_link_it', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_pl'
-        db.alter_column(u'catalogue_tag', 'name_pl', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_pl'
-        db.alter_column(u'catalogue_tag', 'description_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_pl'
-        db.alter_column(u'catalogue_tag', 'wiki_link_pl', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.wiki_link_ru'
-        db.alter_column(u'catalogue_tag', 'wiki_link_ru', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.description_ru'
-        db.alter_column(u'catalogue_tag', 'description_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.wiki_link_es'
-        db.alter_column(u'catalogue_tag', 'wiki_link_es', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_es'
-        db.alter_column(u'catalogue_tag', 'name_es', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.description_en'
-        db.alter_column(u'catalogue_tag', 'description_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_es'
-        db.alter_column(u'catalogue_tag', 'description_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.description_it'
-        db.alter_column(u'catalogue_tag', 'description_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Tag.name_en'
-        db.alter_column(u'catalogue_tag', 'name_en', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_en'
-        db.alter_column(u'catalogue_tag', 'wiki_link_en', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.wiki_link_uk'
-        db.alter_column(u'catalogue_tag', 'wiki_link_uk', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_uk'
-        db.alter_column(u'catalogue_tag', 'name_uk', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-        # Changing field 'Tag.wiki_link_lt'
-        db.alter_column(u'catalogue_tag', 'wiki_link_lt', self.gf('django.db.models.fields.CharField')(max_length=240, null=True))
-
-        # Changing field 'Tag.name_lt'
-        db.alter_column(u'catalogue_tag', 'name_lt', self.gf('django.db.models.fields.CharField')(max_length=50, null=True))
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Group']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Permission']"}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': "'100'", 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0017_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py b/apps/catalogue/migrations/0017_auto__chg_field_book_pdf_file__chg_field_book_html_file__chg_field_boo.py
deleted file mode 100644 (file)
index df96042..0000000
+++ /dev/null
@@ -1,243 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Book.pdf_file'
-        db.alter_column(u'catalogue_book', 'pdf_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='pdf'))
-
-        # Changing field 'Book.html_file'
-        db.alter_column(u'catalogue_book', 'html_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='html'))
-
-        # Changing field 'Book.fb2_file'
-        db.alter_column(u'catalogue_book', 'fb2_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='fb2'))
-
-        # Changing field 'Book.xml_file'
-        db.alter_column(u'catalogue_book', 'xml_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='xml'))
-
-        # Changing field 'Book.txt_file'
-        db.alter_column(u'catalogue_book', 'txt_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='txt'))
-
-        # Changing field 'Book.mobi_file'
-        db.alter_column(u'catalogue_book', 'mobi_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='mobi'))
-
-        # Changing field 'Book.epub_file'
-        db.alter_column(u'catalogue_book', 'epub_file', self.gf('catalogue.fields.EbookField')(max_length=255, format_name='epub'))
-
-        # Changing field 'Book.cover_thumb'
-        db.alter_column(u'catalogue_book', 'cover_thumb', self.gf('catalogue.fields.EbookField')(max_length=255, null=True, format_name='cover_thumb'))
-
-        # Changing field 'Book.cover'
-        db.alter_column(u'catalogue_book', 'cover', self.gf('catalogue.fields.EbookField')(max_length=255, null=True, format_name='cover'))
-
-        # Changing field 'BookMedia.file'
-        db.alter_column(u'catalogue_bookmedia', 'file', self.gf('catalogue.fields.OverwritingFileField')(max_length=600))
-
-        # Changing field 'BookMedia.type'
-        db.alter_column(u'catalogue_bookmedia', 'type', self.gf('django.db.models.fields.CharField')(max_length=20))
-
-    def backwards(self, orm):
-
-        # Changing field 'Book.pdf_file'
-        db.alter_column(u'catalogue_book', 'pdf_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='pdf'))
-
-        # Changing field 'Book.html_file'
-        db.alter_column(u'catalogue_book', 'html_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='html'))
-
-        # Changing field 'Book.fb2_file'
-        db.alter_column(u'catalogue_book', 'fb2_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='fb2'))
-
-        # Changing field 'Book.xml_file'
-        db.alter_column(u'catalogue_book', 'xml_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='xml'))
-
-        # Changing field 'Book.txt_file'
-        db.alter_column(u'catalogue_book', 'txt_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='txt'))
-
-        # Changing field 'Book.mobi_file'
-        db.alter_column(u'catalogue_book', 'mobi_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='mobi'))
-
-        # Changing field 'Book.epub_file'
-        db.alter_column(u'catalogue_book', 'epub_file', self.gf('catalogue.fields.EbookField')(max_length=100, format_name='epub'))
-
-        # Changing field 'Book.cover_thumb'
-        db.alter_column(u'catalogue_book', 'cover_thumb', self.gf('catalogue.fields.EbookField')(max_length=100, null=True, format_name='cover_thumb'))
-
-        # Changing field 'Book.cover'
-        db.alter_column(u'catalogue_book', 'cover', self.gf('catalogue.fields.EbookField')(max_length=100, null=True, format_name='cover'))
-
-        # Changing field 'BookMedia.file'
-        db.alter_column(u'catalogue_bookmedia', 'file', self.gf('catalogue.fields.OverwritingFileField')(max_length=100))
-
-        # Changing field 'BookMedia.type'
-        db.alter_column(u'catalogue_bookmedia', 'type', self.gf('django.db.models.fields.CharField')(max_length='100'))
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Group']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Permission']"}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '600'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0018_auto__add_source.py b/apps/catalogue/migrations/0018_auto__add_source.py
deleted file mode 100644 (file)
index 1bad359..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-# -*- coding: utf-8 -*-
-from south.utils import datetime_utils as datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Source'
-        db.create_table(u'catalogue_source', (
-            ('netloc', self.gf('django.db.models.fields.CharField')(max_length=120, primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=120)),
-        ))
-        db.send_create_signal('catalogue', ['Source'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Source'
-        db.delete_table(u'catalogue_source')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Group']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Permission']"}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '600'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.source': {
-            'Meta': {'ordering': "('netloc',)", 'object_name': 'Source'},
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'netloc': ('django.db.models.fields.CharField', [], {'max_length': '120', 'primary_key': 'True'})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
diff --git a/apps/catalogue/migrations/0019_auto__add_field_source_name_de__add_field_source_name_en__add_field_so.py b/apps/catalogue/migrations/0019_auto__add_field_source_name_de__add_field_source_name_en__add_field_so.py
deleted file mode 100644 (file)
index 9a861fc..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-# -*- coding: utf-8 -*-
-from south.utils import datetime_utils as datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Source.name_de'
-        db.add_column(u'catalogue_source', 'name_de',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_en'
-        db.add_column(u'catalogue_source', 'name_en',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_es'
-        db.add_column(u'catalogue_source', 'name_es',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_fr'
-        db.add_column(u'catalogue_source', 'name_fr',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_it'
-        db.add_column(u'catalogue_source', 'name_it',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_lt'
-        db.add_column(u'catalogue_source', 'name_lt',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_pl'
-        db.add_column(u'catalogue_source', 'name_pl',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_ru'
-        db.add_column(u'catalogue_source', 'name_ru',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Source.name_uk'
-        db.add_column(u'catalogue_source', 'name_uk',
-                      self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Source.name_de'
-        db.delete_column(u'catalogue_source', 'name_de')
-
-        # Deleting field 'Source.name_en'
-        db.delete_column(u'catalogue_source', 'name_en')
-
-        # Deleting field 'Source.name_es'
-        db.delete_column(u'catalogue_source', 'name_es')
-
-        # Deleting field 'Source.name_fr'
-        db.delete_column(u'catalogue_source', 'name_fr')
-
-        # Deleting field 'Source.name_it'
-        db.delete_column(u'catalogue_source', 'name_it')
-
-        # Deleting field 'Source.name_lt'
-        db.delete_column(u'catalogue_source', 'name_lt')
-
-        # Deleting field 'Source.name_pl'
-        db.delete_column(u'catalogue_source', 'name_pl')
-
-        # Deleting field 'Source.name_ru'
-        db.delete_column(u'catalogue_source', 'name_ru')
-
-        # Deleting field 'Source.name_uk'
-        db.delete_column(u'catalogue_source', 'name_uk')
-
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Group']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'symmetrical': 'False', 'related_name': "u'user_set'", 'blank': 'True', 'to': u"orm['auth.Permission']"}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'cover_thumb': ('catalogue.fields.EbookField', [], {'max_length': '255', 'null': 'True', 'format_name': "'cover_thumb'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '255', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'catalogue.bookmedia': {
-            'Meta': {'ordering': "('type', 'name')", 'object_name': 'BookMedia'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'media'", 'to': "orm['catalogue.Book']"}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'file': ('catalogue.fields.OverwritingFileField', [], {'max_length': '600'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '512'}),
-            'source_sha1': ('django.db.models.fields.CharField', [], {'max_length': '40', 'null': 'True', 'blank': 'True'}),
-            'type': ('django.db.models.fields.CharField', [], {'max_length': '20', 'db_index': 'True'}),
-            'uploaded_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'})
-        },
-        'catalogue.collection': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'Collection'},
-            'book_slugs': ('django.db.models.fields.TextField', [], {}),
-            'description': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'default': "'book'", 'max_length': '10', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'primary_key': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '120', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.fragment': {
-            'Meta': {'ordering': "('book', 'anchor')", 'object_name': 'Fragment'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'fragments'", 'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'short_text': ('django.db.models.fields.TextField', [], {}),
-            'text': ('django.db.models.fields.TextField', [], {})
-        },
-        'catalogue.source': {
-            'Meta': {'ordering': "('netloc',)", 'object_name': 'Source'},
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'netloc': ('django.db.models.fields.CharField', [], {'max_length': '120', 'primary_key': 'True'})
-        },
-        'catalogue.tag': {
-            'Meta': {'ordering': "('sort_key',)", 'unique_together': "(('slug', 'category'),)", 'object_name': 'Tag'},
-            'book_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'category': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'name_de': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_en': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_es': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_fr': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_it': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_lt': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_pl': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_ru': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'name_uk': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '50', 'null': 'True', 'blank': 'True'}),
-            'picture_count': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'wiki_link_de': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_en': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_es': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_fr': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_it': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_lt': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_pl': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_ru': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'}),
-            'wiki_link_uk': ('django.db.models.fields.CharField', [], {'max_length': '240', 'null': 'True', 'blank': 'True'})
-        },
-        'catalogue.tagrelation': {
-            'Meta': {'unique_together': "(('tag', 'content_type', 'object_id'),)", 'object_name': 'TagRelation', 'db_table': "u'catalogue_tag_relation'"},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {'db_index': 'True'}),
-            'tag': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'items'", 'to': "orm['catalogue.Tag']"})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['catalogue']
\ No newline at end of file
index c91ce11..bab6f58 100644 (file)
@@ -26,6 +26,16 @@ bofh_storage = BofhFileSystemStorage()
 permanent_cache = get_cache('permanent')
 
 
 permanent_cache = get_cache('permanent')
 
 
+def _cover_upload_to(i, n):
+    return 'book/cover/%s.jpg' % i.slug
+def _cover_thumb_upload_to(i, n):
+    return 'book/cover_thumb/%s.jpg' % i.slug,
+def _ebook_upload_to(upload_path):
+    def _upload_to(i, n):
+        return upload_path % i.slug
+    return _upload_to
+
+
 class Book(models.Model):
     """Represents a book imported from WL-XML."""
     title         = models.CharField(_('title'), max_length=120)
 class Book(models.Model):
     """Represents a book imported from WL-XML."""
     title         = models.CharField(_('title'), max_length=120)
@@ -47,12 +57,12 @@ class Book(models.Model):
 
     cover = EbookField('cover', _('cover'),
             null=True, blank=True,
 
     cover = EbookField('cover', _('cover'),
             null=True, blank=True,
-            upload_to=lambda i, n: 'book/cover/%s.jpg' % i.slug,
+            upload_to=_cover_upload_to,
             storage=bofh_storage, max_length=255)
     # Cleaner version of cover for thumbs
     cover_thumb = EbookField('cover_thumb', _('cover thumbnail'), 
             null=True, blank=True,
             storage=bofh_storage, max_length=255)
     # Cleaner version of cover for thumbs
     cover_thumb = EbookField('cover_thumb', _('cover thumbnail'), 
             null=True, blank=True,
-            upload_to=lambda i, n: 'book/cover_thumb/%s.jpg' % i.slug,
+            upload_to=_cover_thumb_upload_to,
             max_length=255)
     ebook_formats = constants.EBOOK_FORMATS
     formats = ebook_formats + ['html', 'xml']
             max_length=255)
     ebook_formats = constants.EBOOK_FORMATS
     formats = ebook_formats + ['html', 'xml']
@@ -633,9 +643,7 @@ class Book(models.Model):
 # add the file fields
 for format_ in Book.formats:
     field_name = "%s_file" % format_
 # add the file fields
 for format_ in Book.formats:
     field_name = "%s_file" % format_
-    upload_to = (lambda upload_path:
-            lambda i, n: upload_path % i.slug
-        )('book/%s/%%s.%s' % (format_, format_))
+    upload_to = _ebook_upload_to('book/%s/%%s.%s' % (format_, format_))
     EbookField(format_, _("%s file" % format_.upper()),
         upload_to=upload_to,
         storage=bofh_storage,
     EbookField(format_, _("%s file" % format_.upper()),
         upload_to=upload_to,
         storage=bofh_storage,
index 6291329..9688e86 100644 (file)
@@ -12,6 +12,10 @@ from fnpdjango.utils.text.slughifi import slughifi
 from catalogue.fields import OverwritingFileField
 
 
 from catalogue.fields import OverwritingFileField
 
 
+def _file_upload_to(i, _n):
+    return 'book/%(ext)s/%(name)s.%(ext)s' % {
+            'ext': i.ext(), 'name': slughifi(i.name)}
+
 class BookMedia(models.Model):
     """Represents media attached to a book."""
     FileFormat = namedtuple("FileFormat", "name ext")
 class BookMedia(models.Model):
     """Represents media attached to a book."""
     FileFormat = namedtuple("FileFormat", "name ext")
@@ -20,14 +24,13 @@ class BookMedia(models.Model):
         ('ogg', FileFormat(name='Ogg Vorbis', ext='ogg')),
         ('daisy', FileFormat(name='DAISY', ext='daisy.zip')),
     ])
         ('ogg', FileFormat(name='Ogg Vorbis', ext='ogg')),
         ('daisy', FileFormat(name='DAISY', ext='daisy.zip')),
     ])
-    format_choices = [(k, _('%s file') % t.name)
+    format_choices = [(k, _('%s file' % t.name))
             for k, t in formats.items()]
 
     type = models.CharField(_('type'), db_index=True, choices=format_choices, max_length=20)
     name = models.CharField(_('name'), max_length=512)
     file = OverwritingFileField(_('file'), max_length=600,
             for k, t in formats.items()]
 
     type = models.CharField(_('type'), db_index=True, choices=format_choices, max_length=20)
     name = models.CharField(_('name'), max_length=512)
     file = OverwritingFileField(_('file'), max_length=600,
-        upload_to=lambda i, _n: 'book/%(ext)s/%(name)s.%(ext)s' % {
-                    'ext': i.ext(), 'name': slughifi(i.name)})
+        upload_to=_file_upload_to)
     uploaded_at = models.DateTimeField(_('creation date'), auto_now_add=True, editable=False, db_index=True)
     extra_info = jsonfield.JSONField(_('extra information'), default={}, editable=False)
     book = models.ForeignKey('Book', related_name='media')
     uploaded_at = models.DateTimeField(_('creation date'), auto_now_add=True, editable=False, db_index=True)
     extra_info = jsonfield.JSONField(_('extra information'), default={}, editable=False)
     book = models.ForeignKey('Book', related_name='media')
diff --git a/apps/catalogue/translation.py b/apps/catalogue/translation.py
new file mode 100644 (file)
index 0000000..3197365
--- /dev/null
@@ -0,0 +1,20 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+
+from modeltranslation.translator import translator, TranslationOptions
+from catalogue.models import Collection, Tag, Source
+
+class TagTranslationOptions(TranslationOptions):
+    fields = ('name', 'description', 'wiki_link')
+
+class CollectionTranslationOptions(TranslationOptions):
+    fields = ('title', 'description')
+
+class SourceTranslationOptions(TranslationOptions):
+    fields = ('name',)
+
+translator.register(Tag, TagTranslationOptions)
+translator.register(Collection, CollectionTranslationOptions)
+translator.register(Source, SourceTranslationOptions)
index fa51499..878e4fb 100644 (file)
@@ -1,49 +1,49 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Chunk'
-        db.create_table(u'chunks_chunk', (
-            ('key', self.gf('django.db.models.fields.CharField')(max_length=255, primary_key=True)),
-            ('description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)),
-            ('content', self.gf('django.db.models.fields.TextField')(blank=True)),
-        ))
-        db.send_create_signal(u'chunks', ['Chunk'])
-
-        # Adding model 'Attachment'
-        db.create_table(u'chunks_attachment', (
-            ('key', self.gf('django.db.models.fields.CharField')(max_length=255, primary_key=True)),
-            ('attachment', self.gf('django.db.models.fields.files.FileField')(max_length=100)),
-        ))
-        db.send_create_signal(u'chunks', ['Attachment'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Chunk'
-        db.delete_table(u'chunks_chunk')
-
-        # Deleting model 'Attachment'
-        db.delete_table(u'chunks_attachment')
-
-
-    models = {
-        u'chunks.attachment': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Attachment'},
-            'attachment': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        },
-        u'chunks.chunk': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Chunk'},
-            'content': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        }
-    }
-
-    complete_apps = ['chunks']
\ No newline at end of file
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Attachment',
+            fields=[
+                ('key', models.CharField(help_text='A unique name for this attachment', max_length=255, serialize=False, verbose_name='key', primary_key=True)),
+                ('attachment', models.FileField(upload_to=b'chunks/attachment')),
+            ],
+            options={
+                'ordering': ('key',),
+                'verbose_name': 'attachment',
+                'verbose_name_plural': 'attachments',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Chunk',
+            fields=[
+                ('key', models.CharField(help_text='A unique name for this piece of content', max_length=255, serialize=False, verbose_name='key', primary_key=True)),
+                ('description', models.CharField(max_length=255, null=True, verbose_name='Description', blank=True)),
+                ('content', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_de', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_en', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_es', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_fr', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_it', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_lt', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_pl', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_ru', models.TextField(null=True, verbose_name='content', blank=True)),
+                ('content_uk', models.TextField(null=True, verbose_name='content', blank=True)),
+            ],
+            options={
+                'ordering': ('key',),
+                'verbose_name': 'piece',
+                'verbose_name_plural': 'pieces',
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/chunks/migrations/0002_auto__add_field_chunk_content_de__add_field_chunk_content_en__add_fiel.py b/apps/chunks/migrations/0002_auto__add_field_chunk_content_de__add_field_chunk_content_en__add_fiel.py
deleted file mode 100644 (file)
index 57c8935..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Chunk.content_de'
-        db.add_column(u'chunks_chunk', 'content_de',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_en'
-        db.add_column(u'chunks_chunk', 'content_en',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_es'
-        db.add_column(u'chunks_chunk', 'content_es',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_fr'
-        db.add_column(u'chunks_chunk', 'content_fr',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_it'
-        db.add_column(u'chunks_chunk', 'content_it',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_lt'
-        db.add_column(u'chunks_chunk', 'content_lt',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_pl'
-        db.add_column(u'chunks_chunk', 'content_pl',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_ru'
-        db.add_column(u'chunks_chunk', 'content_ru',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Chunk.content_uk'
-        db.add_column(u'chunks_chunk', 'content_uk',
-                      self.gf('django.db.models.fields.TextField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Chunk.content_de'
-        db.delete_column(u'chunks_chunk', 'content_de')
-
-        # Deleting field 'Chunk.content_en'
-        db.delete_column(u'chunks_chunk', 'content_en')
-
-        # Deleting field 'Chunk.content_es'
-        db.delete_column(u'chunks_chunk', 'content_es')
-
-        # Deleting field 'Chunk.content_fr'
-        db.delete_column(u'chunks_chunk', 'content_fr')
-
-        # Deleting field 'Chunk.content_it'
-        db.delete_column(u'chunks_chunk', 'content_it')
-
-        # Deleting field 'Chunk.content_lt'
-        db.delete_column(u'chunks_chunk', 'content_lt')
-
-        # Deleting field 'Chunk.content_pl'
-        db.delete_column(u'chunks_chunk', 'content_pl')
-
-        # Deleting field 'Chunk.content_ru'
-        db.delete_column(u'chunks_chunk', 'content_ru')
-
-        # Deleting field 'Chunk.content_uk'
-        db.delete_column(u'chunks_chunk', 'content_uk')
-
-
-    models = {
-        u'chunks.attachment': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Attachment'},
-            'attachment': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        },
-        u'chunks.chunk': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Chunk'},
-            'content': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'content_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        }
-    }
-
-    complete_apps = ['chunks']
\ No newline at end of file
diff --git a/apps/chunks/migrations/0003_auto__chg_field_chunk_content__chg_field_chunk_description.py b/apps/chunks/migrations/0003_auto__chg_field_chunk_content__chg_field_chunk_description.py
deleted file mode 100644 (file)
index 9137ad2..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Chunk.content'
-        db.alter_column(u'chunks_chunk', 'content', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.description'
-        db.alter_column(u'chunks_chunk', 'description', self.gf('django.db.models.fields.CharField')(max_length=255, null=True))
-
-    def backwards(self, orm):
-
-        # Changing field 'Chunk.content'
-        db.alter_column(u'chunks_chunk', 'content', self.gf('django.db.models.fields.TextField')(default=''))
-
-        # Changing field 'Chunk.description'
-        db.alter_column(u'chunks_chunk', 'description', self.gf('django.db.models.fields.CharField')(default='', max_length=255))
-
-    models = {
-        u'chunks.attachment': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Attachment'},
-            'attachment': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        },
-        u'chunks.chunk': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Chunk'},
-            'content': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'content_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        }
-    }
-
-    complete_apps = ['chunks']
\ No newline at end of file
diff --git a/apps/chunks/migrations/0004_auto__chg_field_chunk_content_fr__chg_field_chunk_content_ru__chg_fiel.py b/apps/chunks/migrations/0004_auto__chg_field_chunk_content_fr__chg_field_chunk_content_ru__chg_fiel.py
deleted file mode 100644 (file)
index ffbae4b..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Chunk.content_fr'
-        db.alter_column(u'chunks_chunk', 'content_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_ru'
-        db.alter_column(u'chunks_chunk', 'content_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_es'
-        db.alter_column(u'chunks_chunk', 'content_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_it'
-        db.alter_column(u'chunks_chunk', 'content_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_uk'
-        db.alter_column(u'chunks_chunk', 'content_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_de'
-        db.alter_column(u'chunks_chunk', 'content_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_lt'
-        db.alter_column(u'chunks_chunk', 'content_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_pl'
-        db.alter_column(u'chunks_chunk', 'content_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_en'
-        db.alter_column(u'chunks_chunk', 'content_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-    def backwards(self, orm):
-
-        # Changing field 'Chunk.content_fr'
-        db.alter_column(u'chunks_chunk', 'content_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_ru'
-        db.alter_column(u'chunks_chunk', 'content_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_es'
-        db.alter_column(u'chunks_chunk', 'content_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_it'
-        db.alter_column(u'chunks_chunk', 'content_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_uk'
-        db.alter_column(u'chunks_chunk', 'content_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_de'
-        db.alter_column(u'chunks_chunk', 'content_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_lt'
-        db.alter_column(u'chunks_chunk', 'content_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_pl'
-        db.alter_column(u'chunks_chunk', 'content_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'Chunk.content_en'
-        db.alter_column(u'chunks_chunk', 'content_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-    models = {
-        u'chunks.attachment': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Attachment'},
-            'attachment': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        },
-        u'chunks.chunk': {
-            'Meta': {'ordering': "('key',)", 'object_name': 'Chunk'},
-            'content': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'content_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'key': ('django.db.models.fields.CharField', [], {'max_length': '255', 'primary_key': 'True'})
-        }
-    }
-
-    complete_apps = ['chunks']
\ No newline at end of file
diff --git a/apps/chunks/translation.py b/apps/chunks/translation.py
new file mode 100644 (file)
index 0000000..46f1c7a
--- /dev/null
@@ -0,0 +1,12 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+
+from modeltranslation.translator import translator, TranslationOptions
+from chunks.models import Chunk
+
+class ChunkTranslationOptions(TranslationOptions):
+    fields = ('content',)
+
+translator.register(Chunk, ChunkTranslationOptions)
index 466df3b..1908a84 100644 (file)
@@ -1,64 +1,28 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
 
 
-class Migration(SchemaMigration):
+from django.db import models, migrations
 
 
-    def forwards(self, orm):
-        
-        # Adding model 'Note'
-        db.create_table('dictionary_note', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('book', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['catalogue.Book'])),
-            ('anchor', self.gf('django.db.models.fields.CharField')(max_length=64)),
-            ('html', self.gf('django.db.models.fields.TextField')()),
-            ('sort_key', self.gf('django.db.models.fields.CharField')(max_length=128, db_index=True)),
-        ))
-        db.send_create_signal('dictionary', ['Note'])
 
 
+class Migration(migrations.Migration):
 
 
-    def backwards(self, orm):
-        
-        # Deleting model 'Note'
-        db.delete_table('dictionary_note')
+    dependencies = [
+        ('catalogue', '0001_initial'),
+    ]
 
 
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'db_index': 'True'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'dictionary.note': {
-            'Meta': {'ordering': "['sort_key']", 'object_name': 'Note'},
-            'anchor': ('django.db.models.fields.CharField', [], {'max_length': '64'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'html': ('django.db.models.fields.TextField', [], {}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '128', 'db_index': 'True'})
-        }
-    }
-
-    complete_apps = ['dictionary']
+    operations = [
+        migrations.CreateModel(
+            name='Note',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('anchor', models.CharField(max_length=64)),
+                ('html', models.TextField()),
+                ('sort_key', models.CharField(max_length=128, db_index=True)),
+                ('book', models.ForeignKey(to='catalogue.Book')),
+            ],
+            options={
+                'ordering': ['sort_key'],
+            },
+            bases=(models.Model,),
+        ),
+    ]
index 924ef77..cebe8d2 100644 (file)
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
+from __future__ import unicode_literals
 
 
+from django.db import models, migrations
+import django.db.models.deletion
 
 
-class Migration(SchemaMigration):
 
 
-    def forwards(self, orm):
-        # Adding model 'Offer'
-        db.create_table('funding_offer', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('author', self.gf('django.db.models.fields.CharField')(max_length=255)),
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=255)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=50)),
-            ('book_url', self.gf('django.db.models.fields.URLField')(max_length=200, blank=True)),
-            ('redakcja_url', self.gf('django.db.models.fields.URLField')(max_length=200, blank=True)),
-            ('target', self.gf('django.db.models.fields.DecimalField')(max_digits=10, decimal_places=2)),
-            ('start', self.gf('django.db.models.fields.DateField')()),
-            ('end', self.gf('django.db.models.fields.DateField')()),
-        ))
-        db.send_create_signal('funding', ['Offer'])
+class Migration(migrations.Migration):
 
 
-        # Adding model 'Perk'
-        db.create_table('funding_perk', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('offer', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['funding.Offer'], null=True)),
-            ('price', self.gf('django.db.models.fields.DecimalField')(max_digits=10, decimal_places=2)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=255)),
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-        ))
-        db.send_create_signal('funding', ['Perk'])
+    dependencies = [
+        ('polls', '0001_initial'),
+        ('catalogue', '0001_initial'),
+    ]
 
 
-        # Adding model 'Funding'
-        db.create_table('funding_funding', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('offer', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['funding.Offer'])),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=127)),
-            ('email', self.gf('django.db.models.fields.EmailField')(max_length=75)),
-            ('amount', self.gf('django.db.models.fields.DecimalField')(max_digits=10, decimal_places=2)),
-            ('payed_at', self.gf('django.db.models.fields.DateTimeField')()),
-        ))
-        db.send_create_signal('funding', ['Funding'])
-
-        # Adding M2M table for field perks on 'Funding'
-        db.create_table('funding_funding_perks', (
-            ('id', models.AutoField(verbose_name='ID', primary_key=True, auto_created=True)),
-            ('funding', models.ForeignKey(orm['funding.funding'], null=False)),
-            ('perk', models.ForeignKey(orm['funding.perk'], null=False))
-        ))
-        db.create_unique('funding_funding_perks', ['funding_id', 'perk_id'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Offer'
-        db.delete_table('funding_offer')
-
-        # Deleting model 'Perk'
-        db.delete_table('funding_perk')
-
-        # Deleting model 'Funding'
-        db.delete_table('funding_funding')
-
-        # Removing M2M table for field perks on 'Funding'
-        db.delete_table('funding_funding_perks')
-
-
-    models = {
-        'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['funding.Perk']", 'symmetrical': 'False'})
-        },
-        'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']", 'null': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
+    operations = [
+        migrations.CreateModel(
+            name='Funding',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=127, verbose_name='name', blank=True)),
+                ('email', models.EmailField(db_index=True, max_length=75, verbose_name='email', blank=True)),
+                ('amount', models.DecimalField(verbose_name='amount', max_digits=10, decimal_places=2)),
+                ('payed_at', models.DateTimeField(db_index=True, null=True, verbose_name='payed at', blank=True)),
+                ('language_code', models.CharField(max_length=2, null=True, blank=True)),
+                ('notifications', models.BooleanField(default=True, db_index=True, verbose_name='notifications')),
+                ('notify_key', models.CharField(max_length=32)),
+            ],
+            options={
+                'ordering': ['-payed_at'],
+                'verbose_name': 'funding',
+                'verbose_name_plural': 'fundings',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Offer',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('author', models.CharField(max_length=255, verbose_name='author')),
+                ('title', models.CharField(max_length=255, verbose_name='Title')),
+                ('slug', models.SlugField(verbose_name='Slug')),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('target', models.DecimalField(verbose_name='target', max_digits=10, decimal_places=2)),
+                ('start', models.DateField(verbose_name='start', db_index=True)),
+                ('end', models.DateField(verbose_name='end', db_index=True)),
+                ('redakcja_url', models.URLField(verbose_name='redakcja URL', blank=True)),
+                ('cover', models.ImageField(upload_to=b'funding/covers', verbose_name='Cover')),
+                ('notified_near', models.DateTimeField(null=True, verbose_name='Near-end notifications sent', blank=True)),
+                ('notified_end', models.DateTimeField(null=True, verbose_name='End notifications sent', blank=True)),
+                ('book', models.ForeignKey(blank=True, to='catalogue.Book', help_text='Published book.', null=True)),
+                ('poll', models.ForeignKey(on_delete=django.db.models.deletion.SET_NULL, blank=True, to='polls.Poll', help_text='Poll', null=True)),
+            ],
+            options={
+                'ordering': ['-end'],
+                'verbose_name': 'offer',
+                'verbose_name_plural': 'offers',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Perk',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('price', models.DecimalField(verbose_name='price', max_digits=10, decimal_places=2)),
+                ('name', models.CharField(max_length=255, verbose_name='name')),
+                ('long_name', models.CharField(max_length=255, verbose_name='long name')),
+                ('end_date', models.DateField(null=True, verbose_name='end date', blank=True)),
+                ('offer', models.ForeignKey(verbose_name='offer', blank=True, to='funding.Offer', null=True)),
+            ],
+            options={
+                'ordering': ['-price'],
+                'verbose_name': 'perk',
+                'verbose_name_plural': 'perks',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Spent',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('amount', models.DecimalField(verbose_name='amount', max_digits=10, decimal_places=2)),
+                ('timestamp', models.DateField(verbose_name='when')),
+                ('book', models.ForeignKey(to='catalogue.Book')),
+            ],
+            options={
+                'ordering': ['-timestamp'],
+                'verbose_name': 'money spent on a book',
+                'verbose_name_plural': 'money spent on books',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.AddField(
+            model_name='funding',
+            name='offer',
+            field=models.ForeignKey(verbose_name='offer', to='funding.Offer'),
+            preserve_default=True,
+        ),
+        migrations.AddField(
+            model_name='funding',
+            name='perks',
+            field=models.ManyToManyField(to='funding.Perk', verbose_name='perks', blank=True),
+            preserve_default=True,
+        ),
+    ]
diff --git a/apps/funding/migrations/0002_auto__add_spent__del_field_offer_book_url__add_field_offer_book.py b/apps/funding/migrations/0002_auto__add_spent__del_field_offer_book_url__add_field_offer_book.py
deleted file mode 100644 (file)
index 1c03bdb..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Spent'
-        db.create_table('funding_spent', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('amount', self.gf('django.db.models.fields.DecimalField')(max_digits=10, decimal_places=2)),
-            ('timestamp', self.gf('django.db.models.fields.DateField')()),
-            ('book', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['catalogue.Book'])),
-        ))
-        db.send_create_signal('funding', ['Spent'])
-
-        # Deleting field 'Offer.book_url'
-        db.delete_column('funding_offer', 'book_url')
-
-        # Adding field 'Offer.book'
-        db.add_column('funding_offer', 'book',
-                      self.gf('django.db.models.fields.related.ForeignKey')(to=orm['catalogue.Book'], null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting model 'Spent'
-        db.delete_table('funding_spent')
-
-        # Adding field 'Offer.book_url'
-        db.add_column('funding_offer', 'book_url',
-                      self.gf('django.db.models.fields.URLField')(default='', max_length=200, blank=True),
-                      keep_default=False)
-
-        # Deleting field 'Offer.book'
-        db.delete_column('funding_offer', 'book_id')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        'funding.spent': {
-            'Meta': {'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0003_auto__add_field_offer_due.py b/apps/funding/migrations/0003_auto__add_field_offer_due.py
deleted file mode 100644 (file)
index 6f9d352..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Offer.due'
-        db.add_column('funding_offer', 'due',
-                      self.gf('django.db.models.fields.DateField')(default=datetime.datetime(2013, 3, 27, 0, 0)),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Offer.due'
-        db.delete_column('funding_offer', 'due')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        'funding.spent': {
-            'Meta': {'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0004_auto__add_field_funding_anonymous.py b/apps/funding/migrations/0004_auto__add_field_funding_anonymous.py
deleted file mode 100644 (file)
index d8c4faf..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Funding.anonymous'
-        db.add_column('funding_funding', 'anonymous',
-                      self.gf('django.db.models.fields.BooleanField')(default=False),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Funding.anonymous'
-        db.delete_column('funding_funding', 'anonymous')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'anonymous': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        'funding.spent': {
-            'Meta': {'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0005_auto__chg_field_funding_payed_at.py b/apps/funding/migrations/0005_auto__chg_field_funding_payed_at.py
deleted file mode 100644 (file)
index bcd4e1e..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Funding.payed_at'
-        db.alter_column(u'funding_funding', 'payed_at', self.gf('django.db.models.fields.DateTimeField')(null=True))
-
-    def backwards(self, orm):
-
-        # Changing field 'Funding.payed_at'
-        db.alter_column(u'funding_funding', 'payed_at', self.gf('django.db.models.fields.DateTimeField')(default=datetime.datetime(2013, 4, 16, 0, 0)))
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'anonymous': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0006_auto__del_field_funding_anonymous.py b/apps/funding/migrations/0006_auto__del_field_funding_anonymous.py
deleted file mode 100644 (file)
index 9a059a4..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Deleting field 'Funding.anonymous'
-        db.delete_column(u'funding_funding', 'anonymous')
-
-
-    def backwards(self, orm):
-        # Adding field 'Funding.anonymous'
-        db.add_column(u'funding_funding', 'anonymous',
-                      self.gf('django.db.models.fields.BooleanField')(default=False),
-                      keep_default=False)
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0007_auto__add_field_perk_end_date.py b/apps/funding/migrations/0007_auto__add_field_perk_end_date.py
deleted file mode 100644 (file)
index 25f15b2..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Perk.end_date'
-        db.add_column(u'funding_perk', 'end_date',
-                      self.gf('django.db.models.fields.DateField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Perk.end_date'
-        db.delete_column(u'funding_perk', 'end_date')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0008_auto__add_field_offer_description.py b/apps/funding/migrations/0008_auto__add_field_offer_description.py
deleted file mode 100644 (file)
index 265df93..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Offer.description'
-        db.add_column(u'funding_offer', 'description',
-                      self.gf('django.db.models.fields.TextField')(default='', blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Offer.description'
-        db.delete_column(u'funding_offer', 'description')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0009_auto.py b/apps/funding/migrations/0009_auto.py
deleted file mode 100644 (file)
index ae1c415..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding index on 'Offer', fields ['end']
-        db.create_index(u'funding_offer', ['end'])
-
-        # Adding index on 'Offer', fields ['start']
-        db.create_index(u'funding_offer', ['start'])
-
-
-    def backwards(self, orm):
-        # Removing index on 'Offer', fields ['start']
-        db.delete_index(u'funding_offer', ['start'])
-
-        # Removing index on 'Offer', fields ['end']
-        db.delete_index(u'funding_offer', ['end'])
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0010_auto.py b/apps/funding/migrations/0010_auto.py
deleted file mode 100644 (file)
index 80d689c..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding index on 'Funding', fields ['payed_at']
-        db.create_index(u'funding_funding', ['payed_at'])
-
-
-    def backwards(self, orm):
-        # Removing index on 'Funding', fields ['payed_at']
-        db.delete_index(u'funding_funding', ['payed_at'])
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0011_auto__add_field_offer_cover.py b/apps/funding/migrations/0011_auto__add_field_offer_cover.py
deleted file mode 100644 (file)
index 681685d..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Offer.cover'
-        db.add_column(u'funding_offer', 'cover',
-                      self.gf('django.db.models.fields.files.ImageField')(default=None, max_length=100),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Offer.cover'
-        db.delete_column(u'funding_offer', 'cover')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0012_auto__add_field_offer_poll.py b/apps/funding/migrations/0012_auto__add_field_offer_poll.py
deleted file mode 100644 (file)
index 84e0601..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-    depends_on = (
-        ("polls", "0001_initial"),
-    )
-
-    def forwards(self, orm):
-        # Adding field 'Offer.poll'
-        db.add_column(u'funding_offer', 'poll',
-                      self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Poll'], null=True, on_delete=models.SET_NULL),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Offer.poll'
-        db.delete_column(u'funding_offer', 'poll_id')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
diff --git a/apps/funding/migrations/0013_auto__add_field_funding_language_code.py b/apps/funding/migrations/0013_auto__add_field_funding_language_code.py
deleted file mode 100644 (file)
index c3e67e5..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Funding.language_code'
-        db.add_column(u'funding_funding', 'language_code',
-                      self.gf('django.db.models.fields.CharField')(max_length=2, null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Funding.language_code'
-        db.delete_column(u'funding_funding', 'language_code')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language_code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0014_auto__del_field_perk_description__add_field_perk_long_name.py b/apps/funding/migrations/0014_auto__del_field_perk_description__add_field_perk_long_name.py
deleted file mode 100644 (file)
index 905c0ce..0000000
+++ /dev/null
@@ -1,109 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Deleting field 'Perk.description'
-        db.delete_column(u'funding_perk', 'description')
-
-        # Adding field 'Perk.long_name'
-        db.add_column(u'funding_perk', 'long_name',
-                      self.gf('django.db.models.fields.CharField')(default=u'', max_length=255),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Adding field 'Perk.description'
-        db.add_column(u'funding_perk', 'description',
-                      self.gf('django.db.models.fields.TextField')(default='', blank=True),
-                      keep_default=False)
-
-        # Deleting field 'Perk.long_name'
-        db.delete_column(u'funding_perk', 'long_name')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language_code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'long_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0015_auto__add_field_funding_notifications__add_field_funding_notify_key.py b/apps/funding/migrations/0015_auto__add_field_funding_notifications__add_field_funding_notify_key.py
deleted file mode 100644 (file)
index dd9a41e..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Funding.notifications'
-        db.add_column(u'funding_funding', 'notifications',
-                      self.gf('django.db.models.fields.BooleanField')(default=True, db_index=True),
-                      keep_default=False)
-
-        # Adding field 'Funding.notify_key'
-        db.add_column(u'funding_funding', 'notify_key',
-                      self.gf('django.db.models.fields.CharField')(default='x', max_length=32),
-                      keep_default=False)
-
-        # Adding index on 'Funding', fields ['email']
-        db.create_index(u'funding_funding', ['email'])
-
-
-    def backwards(self, orm):
-        # Removing index on 'Funding', fields ['email']
-        db.delete_index(u'funding_funding', ['email'])
-
-        # Deleting field 'Funding.notifications'
-        db.delete_column(u'funding_funding', 'notifications')
-
-        # Deleting field 'Funding.notify_key'
-        db.delete_column(u'funding_funding', 'notify_key')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'db_index': 'True', 'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language_code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'db_index': 'True'}),
-            'notify_key': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'due': ('django.db.models.fields.DateField', [], {}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'long_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0016_auto__del_field_offer_due.py b/apps/funding/migrations/0016_auto__del_field_offer_due.py
deleted file mode 100644 (file)
index 1335100..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Deleting field 'Offer.due'
-        db.delete_column(u'funding_offer', 'due')
-
-
-    def backwards(self, orm):
-
-        # User chose to not deal with backwards NULL issues for 'Offer.due'
-        raise RuntimeError("Cannot reverse this migration. 'Offer.due' and its values cannot be restored.")
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'db_index': 'True', 'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language_code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'db_index': 'True'}),
-            'notify_key': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'long_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
diff --git a/apps/funding/migrations/0017_auto__add_field_offer_notified_near__add_field_offer_notified_end.py b/apps/funding/migrations/0017_auto__add_field_offer_notified_near__add_field_offer_notified_end.py
deleted file mode 100644 (file)
index 4f12e4d..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Offer.notified_near'
-        db.add_column(u'funding_offer', 'notified_near',
-                      self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Offer.notified_end'
-        db.add_column(u'funding_offer', 'notified_end',
-                      self.gf('django.db.models.fields.DateTimeField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Offer.notified_near'
-        db.delete_column(u'funding_offer', 'notified_near')
-
-        # Deleting field 'Offer.notified_end'
-        db.delete_column(u'funding_offer', 'notified_end')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        u'funding.funding': {
-            'Meta': {'ordering': "['-payed_at']", 'object_name': 'Funding'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'email': ('django.db.models.fields.EmailField', [], {'db_index': 'True', 'max_length': '75', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language_code': ('django.db.models.fields.CharField', [], {'max_length': '2', 'null': 'True', 'blank': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '127', 'blank': 'True'}),
-            'notifications': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'db_index': 'True'}),
-            'notify_key': ('django.db.models.fields.CharField', [], {'max_length': '32'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']"}),
-            'payed_at': ('django.db.models.fields.DateTimeField', [], {'db_index': 'True', 'null': 'True', 'blank': 'True'}),
-            'perks': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['funding.Perk']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'funding.offer': {
-            'Meta': {'ordering': "['-end']", 'object_name': 'Offer'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'cover': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'end': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'notified_end': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'notified_near': ('django.db.models.fields.DateTimeField', [], {'null': 'True', 'blank': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']", 'null': 'True', 'on_delete': 'models.SET_NULL', 'blank': 'True'}),
-            'redakcja_url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'}),
-            'start': ('django.db.models.fields.DateField', [], {'db_index': 'True'}),
-            'target': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '255'})
-        },
-        u'funding.perk': {
-            'Meta': {'ordering': "['-price']", 'object_name': 'Perk'},
-            'end_date': ('django.db.models.fields.DateField', [], {'null': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'long_name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '255'}),
-            'offer': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['funding.Offer']", 'null': 'True', 'blank': 'True'}),
-            'price': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'})
-        },
-        u'funding.spent': {
-            'Meta': {'ordering': "['-timestamp']", 'object_name': 'Spent'},
-            'amount': ('django.db.models.fields.DecimalField', [], {'max_digits': '10', 'decimal_places': '2'}),
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'timestamp': ('django.db.models.fields.DateField', [], {})
-        },
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        }
-    }
-
-    complete_apps = ['funding']
\ No newline at end of file
index a28ce3a..2c3f4f0 100644 (file)
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Adding model 'InfoPage'
-        db.create_table('infopages_infopage', (
-            ('title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('left_column_uk', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('right_column_pl', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('page_title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('left_column_lt', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('right_column_ru', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('left_column_fr', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('right_column', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('right_column_es', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('right_column_en', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('left_column_de', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('right_column_fr', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('left_column', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('right_column_uk', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('left_column_pl', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('left_column_ru', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('right_column_lt', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(unique=True, max_length=120, db_index=True)),
-            ('page_title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('right_column_de', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('page_title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('left_column_es', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('left_column_en', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-            ('page_title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True)),
-        ))
-
-        if not db.dry_run:
-            from django.core.management import call_command
-            call_command("loaddata", "wl_data")
-
-        db.send_create_signal('infopages', ['InfoPage'])
-
-
-    def backwards(self, orm):
-
-        # Deleting model 'InfoPage'
-        db.delete_table('infopages_infopage')
-
-
-    models = {
-        'infopages.infopage': {
-            'Meta': {'object_name': 'InfoPage'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'left_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'left_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'page_title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'page_title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'page_title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'right_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'right_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True})
-        }
-    }
-
-    complete_apps = ['infopages']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='InfoPage',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('main_page', models.IntegerField(null=True, verbose_name='main page priority', blank=True)),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+                ('title', models.CharField(max_length=120, verbose_name='Title', blank=True)),
+                ('title_de', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_en', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_es', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_fr', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_it', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_lt', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_pl', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_ru', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('title_uk', models.CharField(max_length=120, null=True, verbose_name='Title', blank=True)),
+                ('left_column', models.TextField(verbose_name='left column', blank=True)),
+                ('left_column_de', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_en', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_es', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_fr', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_it', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_lt', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_pl', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_ru', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('left_column_uk', models.TextField(null=True, verbose_name='left column', blank=True)),
+                ('right_column', models.TextField(verbose_name='right column', blank=True)),
+                ('right_column_de', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_en', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_es', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_fr', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_it', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_lt', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_pl', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_ru', models.TextField(null=True, verbose_name='right column', blank=True)),
+                ('right_column_uk', models.TextField(null=True, verbose_name='right column', blank=True)),
+            ],
+            options={
+                'ordering': ('main_page', 'slug'),
+                'verbose_name': 'info page',
+                'verbose_name_plural': 'info pages',
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/infopages/migrations/0002_auto__del_field_infopage_page_title__del_field_infopage_page_title_en_.py b/apps/infopages/migrations/0002_auto__del_field_infopage_page_title__del_field_infopage_page_title_en_.py
deleted file mode 100644 (file)
index 6ecd60b..0000000
+++ /dev/null
@@ -1,111 +0,0 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Deleting field 'InfoPage.page_title'
-        db.delete_column('infopages_infopage', 'page_title')
-
-        # Deleting field 'InfoPage.page_title_en'
-        db.delete_column('infopages_infopage', 'page_title_en')
-
-        # Deleting field 'InfoPage.page_title_es'
-        db.delete_column('infopages_infopage', 'page_title_es')
-
-        # Deleting field 'InfoPage.page_title_fr'
-        db.delete_column('infopages_infopage', 'page_title_fr')
-
-        # Deleting field 'InfoPage.page_title_uk'
-        db.delete_column('infopages_infopage', 'page_title_uk')
-
-        # Deleting field 'InfoPage.page_title_de'
-        db.delete_column('infopages_infopage', 'page_title_de')
-
-        # Deleting field 'InfoPage.page_title_lt'
-        db.delete_column('infopages_infopage', 'page_title_lt')
-
-        # Deleting field 'InfoPage.page_title_pl'
-        db.delete_column('infopages_infopage', 'page_title_pl')
-
-        # Deleting field 'InfoPage.page_title_ru'
-        db.delete_column('infopages_infopage', 'page_title_ru')
-
-        # Adding field 'InfoPage.main_page'
-        db.add_column('infopages_infopage', 'main_page', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True), keep_default=False)
-
-
-    def backwards(self, orm):
-        
-        # Adding field 'InfoPage.page_title'
-        db.add_column('infopages_infopage', 'page_title', self.gf('django.db.models.fields.CharField')(default='', max_length=120, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_en'
-        db.add_column('infopages_infopage', 'page_title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_es'
-        db.add_column('infopages_infopage', 'page_title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_fr'
-        db.add_column('infopages_infopage', 'page_title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_uk'
-        db.add_column('infopages_infopage', 'page_title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_de'
-        db.add_column('infopages_infopage', 'page_title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_lt'
-        db.add_column('infopages_infopage', 'page_title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_pl'
-        db.add_column('infopages_infopage', 'page_title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.page_title_ru'
-        db.add_column('infopages_infopage', 'page_title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Deleting field 'InfoPage.main_page'
-        db.delete_column('infopages_infopage', 'main_page')
-
-
-    models = {
-        'infopages.infopage': {
-            'Meta': {'ordering': "('main_page', 'slug')", 'object_name': 'InfoPage'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'left_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'left_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'main_page': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'right_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True})
-        }
-    }
-
-    complete_apps = ['infopages']
diff --git a/apps/infopages/migrations/0003_auto__add_field_infopage_title_it__add_field_infopage_title_jp__add_fi.py b/apps/infopages/migrations/0003_auto__add_field_infopage_title_it__add_field_infopage_title_jp__add_fi.py
deleted file mode 100644 (file)
index bb56169..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding field 'InfoPage.title_it'
-        db.add_column('infopages_infopage', 'title_it', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.title_jp'
-        db.add_column('infopages_infopage', 'title_jp', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.left_column_it'
-        db.add_column('infopages_infopage', 'left_column_it', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.left_column_jp'
-        db.add_column('infopages_infopage', 'left_column_jp', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.right_column_it'
-        db.add_column('infopages_infopage', 'right_column_it', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.right_column_jp'
-        db.add_column('infopages_infopage', 'right_column_jp', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-
-    def backwards(self, orm):
-        
-        # Deleting field 'InfoPage.title_it'
-        db.delete_column('infopages_infopage', 'title_it')
-
-        # Deleting field 'InfoPage.title_jp'
-        db.delete_column('infopages_infopage', 'title_jp')
-
-        # Deleting field 'InfoPage.left_column_it'
-        db.delete_column('infopages_infopage', 'left_column_it')
-
-        # Deleting field 'InfoPage.left_column_jp'
-        db.delete_column('infopages_infopage', 'left_column_jp')
-
-        # Deleting field 'InfoPage.right_column_it'
-        db.delete_column('infopages_infopage', 'right_column_it')
-
-        # Deleting field 'InfoPage.right_column_jp'
-        db.delete_column('infopages_infopage', 'right_column_jp')
-
-
-    models = {
-        'infopages.infopage': {
-            'Meta': {'ordering': "('main_page', 'slug')", 'object_name': 'InfoPage'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'left_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'left_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_jp': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'main_page': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'right_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_jp': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_it': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_jp': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True})
-        }
-    }
-
-    complete_apps = ['infopages']
diff --git a/apps/infopages/migrations/0004_auto__del_field_infopage_left_column_jp__del_field_infopage_title_jp__.py b/apps/infopages/migrations/0004_auto__del_field_infopage_left_column_jp__del_field_infopage_title_jp__.py
deleted file mode 100644 (file)
index cc453e0..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Deleting field 'InfoPage.left_column_jp'
-        db.delete_column('infopages_infopage', 'left_column_jp')
-
-        # Deleting field 'InfoPage.title_jp'
-        db.delete_column('infopages_infopage', 'title_jp')
-
-        # Deleting field 'InfoPage.right_column_jp'
-        db.delete_column('infopages_infopage', 'right_column_jp')
-
-
-    def backwards(self, orm):
-        
-        # Adding field 'InfoPage.left_column_jp'
-        db.add_column('infopages_infopage', 'left_column_jp', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.title_jp'
-        db.add_column('infopages_infopage', 'title_jp', self.gf('django.db.models.fields.CharField')(max_length=120, null=True, blank=True), keep_default=False)
-
-        # Adding field 'InfoPage.right_column_jp'
-        db.add_column('infopages_infopage', 'right_column_jp', self.gf('django.db.models.fields.TextField')(null=True, blank=True), keep_default=False)
-
-
-    models = {
-        'infopages.infopage': {
-            'Meta': {'ordering': "('main_page', 'slug')", 'object_name': 'InfoPage'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'left_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'left_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'left_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'main_page': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'right_column_de': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_en': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_es': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_fr': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_it': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_lt': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_pl': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_ru': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'right_column_uk': ('django.db.models.fields.TextField', [], {'null': True, 'blank': True}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_it': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': True, 'blank': True})
-        }
-    }
-
-    complete_apps = ['infopages']
diff --git a/apps/infopages/migrations/0005_auto__chg_field_infopage_title_de__chg_field_infopage_left_column_uk__.py b/apps/infopages/migrations/0005_auto__chg_field_infopage_title_de__chg_field_infopage_left_column_uk__.py
deleted file mode 100644 (file)
index 184d99d..0000000
+++ /dev/null
@@ -1,215 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'InfoPage.title_de'
-        db.alter_column(u'infopages_infopage', 'title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_uk'
-        db.alter_column(u'infopages_infopage', 'left_column_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_pl'
-        db.alter_column(u'infopages_infopage', 'right_column_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_lt'
-        db.alter_column(u'infopages_infopage', 'right_column_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_lt'
-        db.alter_column(u'infopages_infopage', 'left_column_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_ru'
-        db.alter_column(u'infopages_infopage', 'right_column_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_fr'
-        db.alter_column(u'infopages_infopage', 'left_column_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_lt'
-        db.alter_column(u'infopages_infopage', 'title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_es'
-        db.alter_column(u'infopages_infopage', 'right_column_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_fr'
-        db.alter_column(u'infopages_infopage', 'title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_en'
-        db.alter_column(u'infopages_infopage', 'right_column_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_de'
-        db.alter_column(u'infopages_infopage', 'left_column_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_uk'
-        db.alter_column(u'infopages_infopage', 'title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_it'
-        db.alter_column(u'infopages_infopage', 'right_column_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_pl'
-        db.alter_column(u'infopages_infopage', 'title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_uk'
-        db.alter_column(u'infopages_infopage', 'right_column_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_en'
-        db.alter_column(u'infopages_infopage', 'title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_pl'
-        db.alter_column(u'infopages_infopage', 'left_column_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_it'
-        db.alter_column(u'infopages_infopage', 'left_column_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_es'
-        db.alter_column(u'infopages_infopage', 'title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_ru'
-        db.alter_column(u'infopages_infopage', 'left_column_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_de'
-        db.alter_column(u'infopages_infopage', 'right_column_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_es'
-        db.alter_column(u'infopages_infopage', 'left_column_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_en'
-        db.alter_column(u'infopages_infopage', 'left_column_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_fr'
-        db.alter_column(u'infopages_infopage', 'right_column_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_ru'
-        db.alter_column(u'infopages_infopage', 'title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.title_it'
-        db.alter_column(u'infopages_infopage', 'title_it', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-    def backwards(self, orm):
-
-        # Changing field 'InfoPage.title_de'
-        db.alter_column(u'infopages_infopage', 'title_de', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_uk'
-        db.alter_column(u'infopages_infopage', 'left_column_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_pl'
-        db.alter_column(u'infopages_infopage', 'right_column_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_lt'
-        db.alter_column(u'infopages_infopage', 'right_column_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_lt'
-        db.alter_column(u'infopages_infopage', 'left_column_lt', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_ru'
-        db.alter_column(u'infopages_infopage', 'right_column_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_fr'
-        db.alter_column(u'infopages_infopage', 'left_column_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_lt'
-        db.alter_column(u'infopages_infopage', 'title_lt', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_es'
-        db.alter_column(u'infopages_infopage', 'right_column_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_fr'
-        db.alter_column(u'infopages_infopage', 'title_fr', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_en'
-        db.alter_column(u'infopages_infopage', 'right_column_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_de'
-        db.alter_column(u'infopages_infopage', 'left_column_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_uk'
-        db.alter_column(u'infopages_infopage', 'title_uk', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_it'
-        db.alter_column(u'infopages_infopage', 'right_column_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_pl'
-        db.alter_column(u'infopages_infopage', 'title_pl', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.right_column_uk'
-        db.alter_column(u'infopages_infopage', 'right_column_uk', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_en'
-        db.alter_column(u'infopages_infopage', 'title_en', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_pl'
-        db.alter_column(u'infopages_infopage', 'left_column_pl', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_it'
-        db.alter_column(u'infopages_infopage', 'left_column_it', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_es'
-        db.alter_column(u'infopages_infopage', 'title_es', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.left_column_ru'
-        db.alter_column(u'infopages_infopage', 'left_column_ru', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_de'
-        db.alter_column(u'infopages_infopage', 'right_column_de', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_es'
-        db.alter_column(u'infopages_infopage', 'left_column_es', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.left_column_en'
-        db.alter_column(u'infopages_infopage', 'left_column_en', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.right_column_fr'
-        db.alter_column(u'infopages_infopage', 'right_column_fr', self.gf('django.db.models.fields.TextField')(null=True))
-
-        # Changing field 'InfoPage.title_ru'
-        db.alter_column(u'infopages_infopage', 'title_ru', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-        # Changing field 'InfoPage.title_it'
-        db.alter_column(u'infopages_infopage', 'title_it', self.gf('django.db.models.fields.CharField')(max_length=120, null=True))
-
-    models = {
-        u'infopages.infopage': {
-            'Meta': {'ordering': "('main_page', 'slug')", 'object_name': 'InfoPage'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'left_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'left_column_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'left_column_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'main_page': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'right_column_de': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_en': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_es': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_fr': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_it': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_lt': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_pl': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_ru': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'right_column_uk': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'title_de': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_en': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_es': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_fr': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_it': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_lt': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_pl': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_ru': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'}),
-            'title_uk': ('django.db.models.fields.CharField', [], {'max_length': '120', 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['infopages']
\ No newline at end of file
diff --git a/apps/infopages/translation.py b/apps/infopages/translation.py
new file mode 100644 (file)
index 0000000..e002482
--- /dev/null
@@ -0,0 +1,12 @@
+# -*- coding: utf-8 -*-
+# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+
+from modeltranslation.translator import translator, TranslationOptions
+from infopages.models import InfoPage
+
+class InfoPageTranslationOptions(TranslationOptions):
+    fields = ('title', 'left_column', 'right_column')
+
+translator.register(InfoPage, InfoPageTranslationOptions)
index 358252b..17627e6 100644 (file)
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding model 'Poem'
-        db.create_table('lesmianator_poem', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=120, db_index=True)),
-            ('text', self.gf('django.db.models.fields.TextField')()),
-            ('created_by', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True)),
-            ('created_from', self.gf('jsonfield.fields.JSONField')(null=True, blank=True)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
-            ('seen_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
-            ('view_count', self.gf('django.db.models.fields.IntegerField')(default=1)),
-        ))
-        db.send_create_signal('lesmianator', ['Poem'])
-
-        # Adding model 'Continuations'
-        db.create_table('lesmianator_continuations', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('pickle', self.gf('django.db.models.fields.files.FileField')(max_length=100)),
-            ('content_type', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['contenttypes.ContentType'])),
-            ('object_id', self.gf('django.db.models.fields.PositiveIntegerField')()),
-        ))
-        db.send_create_signal('lesmianator', ['Continuations'])
-
-        # Adding unique constraint on 'Continuations', fields ['content_type', 'object_id']
-        db.create_unique('lesmianator_continuations', ['content_type_id', 'object_id'])
-
-
-    def backwards(self, orm):
-        
-        # Removing unique constraint on 'Continuations', fields ['content_type', 'object_id']
-        db.delete_unique('lesmianator_continuations', ['content_type_id', 'object_id'])
-
-        # Deleting model 'Poem'
-        db.delete_table('lesmianator_poem')
-
-        # Deleting model 'Continuations'
-        db.delete_table('lesmianator_continuations')
-
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        },
-        'lesmianator.continuations': {
-            'Meta': {'unique_together': "(('content_type', 'object_id'),)", 'object_name': 'Continuations'},
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'object_id': ('django.db.models.fields.PositiveIntegerField', [], {}),
-            'pickle': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        },
-        'lesmianator.poem': {
-            'Meta': {'object_name': 'Poem'},
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
-            'created_by': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True'}),
-            'created_from': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'seen_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'db_index': 'True'}),
-            'text': ('django.db.models.fields.TextField', [], {}),
-            'view_count': ('django.db.models.fields.IntegerField', [], {'default': '1'})
-        }
-    }
-
-    complete_apps = ['lesmianator']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import jsonfield.fields
+from django.conf import settings
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+        ('contenttypes', '0001_initial'),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Continuations',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('pickle', models.FileField(upload_to=b'lesmianator', verbose_name='Continuations file')),
+                ('object_id', models.PositiveIntegerField()),
+                ('content_type', models.ForeignKey(to='contenttypes.ContentType')),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Poem',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('slug', models.SlugField(max_length=120, verbose_name='Slug')),
+                ('text', models.TextField(verbose_name='text')),
+                ('created_from', jsonfield.fields.JSONField(null=True, verbose_name='Additional information', blank=True)),
+                ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date')),
+                ('seen_at', models.DateTimeField(auto_now_add=True, verbose_name='last view date')),
+                ('view_count', models.IntegerField(default=1, verbose_name='view count')),
+                ('created_by', models.ForeignKey(to=settings.AUTH_USER_MODEL, null=True)),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+        migrations.AlterUniqueTogether(
+            name='continuations',
+            unique_together=set([('content_type', 'object_id')]),
+        ),
+    ]
index 0411c87..4b210f8 100644 (file)
@@ -1,36 +1,43 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Library'
-        db.create_table(u'libraries_library', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('url', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-        ))
-        db.send_create_signal(u'libraries', ['Library'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Library'
-        db.delete_table(u'libraries_library')
-
-
-    models = {
-        u'libraries.library': {
-            'Meta': {'object_name': 'Library'},
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'url': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['libraries']
\ No newline at end of file
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Catalog',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=120, verbose_name='name')),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+            ],
+            options={
+                'verbose_name': 'catalog',
+                'verbose_name_plural': 'catalogs',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Library',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=120, verbose_name='name', blank=True)),
+                ('slug', models.SlugField(max_length=120, unique=True, null=True, verbose_name='Slug')),
+                ('url', models.CharField(max_length=120, verbose_name='url', blank=True)),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('catalog', models.ForeignKey(related_name=b'libraries', on_delete=django.db.models.deletion.PROTECT, to='libraries.Catalog')),
+            ],
+            options={
+                'verbose_name': 'library',
+                'verbose_name_plural': 'libraries',
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/libraries/migrations/0002_auto__add_catalog__add_field_library_catalog.py b/apps/libraries/migrations/0002_auto__add_catalog__add_field_library_catalog.py
deleted file mode 100644 (file)
index c37abf5..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Catalog'
-        db.create_table(u'libraries_catalog', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(unique=True, max_length=120)),
-        ))
-        db.send_create_signal(u'libraries', ['Catalog'])
-
-        # Adding field 'Library.catalog'
-        db.add_column(u'libraries_library', 'catalog',
-                      self.gf('django.db.models.fields.related.ForeignKey')(default=None, related_name='libraries', on_delete=models.PROTECT, to=orm['libraries.Catalog']),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting model 'Catalog'
-        db.delete_table(u'libraries_catalog')
-
-        # Deleting field 'Library.catalog'
-        db.delete_column(u'libraries_library', 'catalog_id')
-
-
-    models = {
-        u'libraries.catalog': {
-            'Meta': {'object_name': 'Catalog'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'})
-        },
-        u'libraries.library': {
-            'Meta': {'object_name': 'Library'},
-            'catalog': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'libraries'", 'on_delete': 'models.PROTECT', 'to': u"orm['libraries.Catalog']"}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'url': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['libraries']
\ No newline at end of file
diff --git a/apps/libraries/migrations/0003_auto__add_field_library_slug.py b/apps/libraries/migrations/0003_auto__add_field_library_slug.py
deleted file mode 100644 (file)
index de0cdf0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Library.slug'
-        db.add_column(u'libraries_library', 'slug',
-                      self.gf('django.db.models.fields.SlugField')(max_length=120, unique=True, null=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Library.slug'
-        db.delete_column(u'libraries_library', 'slug')
-
-
-    models = {
-        u'libraries.catalog': {
-            'Meta': {'object_name': 'Catalog'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'})
-        },
-        u'libraries.library': {
-            'Meta': {'object_name': 'Library'},
-            'catalog': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'libraries'", 'on_delete': 'models.PROTECT', 'to': u"orm['libraries.Catalog']"}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'unique': 'True', 'null': 'True'}),
-            'url': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['libraries']
\ No newline at end of file
index ce6a962..fdd0a8e 100644 (file)
@@ -1,68 +1,49 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding model 'Author'
-        db.create_table('pdcounter_author', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=50, db_index=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=120, unique=True, db_index=True)),
-            ('sort_key', self.gf('django.db.models.fields.CharField')(max_length=120, db_index=True)),
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('death', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
-            ('gazeta_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-            ('wiki_link', self.gf('django.db.models.fields.CharField')(max_length=240, blank=True)),
-        ))
-        db.send_create_signal('pdcounter', ['Author'])
-
-        # Adding model 'BookStub'
-        db.create_table('pdcounter_bookstub', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('author', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('pd', self.gf('django.db.models.fields.IntegerField')(null=True, blank=True)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=120, unique=True, db_index=True)),
-            ('translator', self.gf('django.db.models.fields.TextField')(blank=True)),
-        ))
-        db.send_create_signal('pdcounter', ['BookStub'])
-
-
-    def backwards(self, orm):
-        
-        # Deleting model 'Author'
-        db.delete_table('pdcounter_author')
-
-        # Deleting model 'BookStub'
-        db.delete_table('pdcounter_bookstub')
-
-
-    models = {
-        'pdcounter.author': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Author'},
-            'death': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50', 'db_index': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'unique': 'True', 'db_index': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'})
-        },
-        'pdcounter.bookstub': {
-            'Meta': {'ordering': "('title',)", 'object_name': 'BookStub'},
-            'author': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'pd': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'unique': 'True', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'translator': ('django.db.models.fields.TextField', [], {'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['pdcounter']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Author',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=50, verbose_name='name', db_index=True)),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+                ('sort_key', models.CharField(max_length=120, verbose_name='Sort key', db_index=True)),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('death', models.IntegerField(null=True, verbose_name='Year of death', blank=True)),
+                ('gazeta_link', models.CharField(max_length=240, blank=True)),
+                ('wiki_link', models.CharField(max_length=240, blank=True)),
+            ],
+            options={
+                'ordering': ('sort_key',),
+                'verbose_name': 'author',
+                'verbose_name_plural': 'authors',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='BookStub',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('title', models.CharField(max_length=120, verbose_name='Title')),
+                ('author', models.CharField(max_length=120, verbose_name='author')),
+                ('pd', models.IntegerField(null=True, verbose_name='Goes to public domain', blank=True)),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+                ('translator', models.TextField(verbose_name='Translator', blank=True)),
+            ],
+            options={
+                'ordering': ('title',),
+                'verbose_name': 'Book stub',
+                'verbose_name_plural': 'Book stubs',
+            },
+            bases=(models.Model,),
+        ),
+    ]
index 064661c..4dce99e 100644 (file)
@@ -5,7 +5,7 @@
 from django.conf import settings
 from django.db import models
 from django.db.models import permalink
 from django.conf import settings
 from django.db import models
 from django.db.models import permalink
-from django.utils.translation import ugettext as _
+from django.utils.translation import ugettext_lazy as _
 from datetime import datetime
 from django.db.models.signals import post_save, post_delete
 
 from datetime import datetime
 from django.db.models.signals import post_save, post_delete
 
index f61a3de..3105e2a 100644 (file)
@@ -1,46 +1,56 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Picture'
-        db.create_table(u'picture_picture', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('title', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('slug', self.gf('django.db.models.fields.SlugField')(unique=True, max_length=120)),
-            ('sort_key', self.gf('django.db.models.fields.CharField')(max_length=120, db_index=True)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, db_index=True, blank=True)),
-            ('changed_at', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, db_index=True, blank=True)),
-            ('xml_file', self.gf('django.db.models.fields.files.FileField')(max_length=100)),
-            ('image_file', self.gf('sorl.thumbnail.fields.ImageField')(max_length=100)),
-            ('html_file', self.gf('django.db.models.fields.files.FileField')(max_length=100)),
-        ))
-        db.send_create_signal(u'picture', ['Picture'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Picture'
-        db.delete_table(u'picture_picture')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import sorl.thumbnail.fields
+import jsonfield.fields
+import django.core.files.storage
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Picture',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('title', models.CharField(max_length=120, verbose_name='Title')),
+                ('slug', models.SlugField(unique=True, max_length=120, verbose_name='Slug')),
+                ('sort_key', models.CharField(verbose_name='Sort key', max_length=120, editable=False, db_index=True)),
+                ('sort_key_author', models.CharField(default='', verbose_name='sort key by author', max_length=120, editable=False, db_index=True)),
+                ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date', db_index=True)),
+                ('changed_at', models.DateTimeField(auto_now=True, verbose_name='creation date', db_index=True)),
+                ('xml_file', models.FileField(upload_to=b'xml', storage=django.core.files.storage.FileSystemStorage(base_url=b'/media/pictures/', location=b'/home/rczajka/workspace/wolnelektury/media/pictures'), verbose_name=b'xml_file')),
+                ('image_file', sorl.thumbnail.fields.ImageField(upload_to=b'images', storage=django.core.files.storage.FileSystemStorage(base_url=b'/media/pictures/', location=b'/home/rczajka/workspace/wolnelektury/media/pictures'), verbose_name='image_file')),
+                ('html_file', models.FileField(upload_to=b'html', storage=django.core.files.storage.FileSystemStorage(base_url=b'/media/pictures/', location=b'/home/rczajka/workspace/wolnelektury/media/pictures'), verbose_name=b'html_file')),
+                ('areas_json', jsonfield.fields.JSONField(default={}, verbose_name='picture areas JSON', editable=False)),
+                ('extra_info', jsonfield.fields.JSONField(default={}, verbose_name='Additional information')),
+                ('culturepl_link', models.CharField(max_length=240, blank=True)),
+                ('wiki_link', models.CharField(max_length=240, blank=True)),
+                ('_related_info', jsonfield.fields.JSONField(null=True, editable=False, blank=True)),
+                ('width', models.IntegerField(null=True)),
+                ('height', models.IntegerField(null=True)),
+            ],
+            options={
+                'ordering': ('sort_key',),
+                'verbose_name': 'picture',
+                'verbose_name_plural': 'pictures',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='PictureArea',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('area', jsonfield.fields.JSONField(default={}, verbose_name='area', editable=False)),
+                ('kind', models.CharField(db_index=True, max_length=10, verbose_name='form', choices=[(b'thing', 'thing'), (b'theme', 'motif')])),
+                ('picture', models.ForeignKey(related_name=b'areas', to='picture.Picture')),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/picture/migrations/0002_auto__add_field_picture_areas.py b/apps/picture/migrations/0002_auto__add_field_picture_areas.py
deleted file mode 100644 (file)
index 44ad804..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture.areas'
-        db.add_column(u'picture_picture', 'areas',
-                      self.gf('jsonfield.fields.JSONField')(default='{}'),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture.areas'
-        db.delete_column(u'picture_picture', 'areas')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0003_auto__add_field_picture_extra_info.py b/apps/picture/migrations/0003_auto__add_field_picture_extra_info.py
deleted file mode 100644 (file)
index 1e9b8bb..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture.extra_info'
-        db.add_column(u'picture_picture', 'extra_info',
-                      self.gf('jsonfield.fields.JSONField')(default={}),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture.extra_info'
-        db.delete_column(u'picture_picture', 'extra_info')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0004_auto__add_field_picture_gazeta_link__add_field_picture_wiki_link.py b/apps/picture/migrations/0004_auto__add_field_picture_gazeta_link__add_field_picture_wiki_link.py
deleted file mode 100644 (file)
index 1405f21..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture.gazeta_link'
-        db.add_column(u'picture_picture', 'gazeta_link',
-                      self.gf('django.db.models.fields.CharField')(default='', max_length=240, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Picture.wiki_link'
-        db.add_column(u'picture_picture', 'wiki_link',
-                      self.gf('django.db.models.fields.CharField')(default='', max_length=240, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture.gazeta_link'
-        db.delete_column(u'picture_picture', 'gazeta_link')
-
-        # Deleting field 'Picture.wiki_link'
-        db.delete_column(u'picture_picture', 'wiki_link')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0005_auto__del_field_picture_gazeta_link__add_field_picture_culturepl_link.py b/apps/picture/migrations/0005_auto__del_field_picture_gazeta_link__add_field_picture_culturepl_link.py
deleted file mode 100644 (file)
index 48d9ff6..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Deleting field 'Picture.gazeta_link'
-        db.delete_column(u'picture_picture', 'gazeta_link')
-
-        # Adding field 'Picture.culturepl_link'
-        db.add_column(u'picture_picture', 'culturepl_link',
-                      self.gf('django.db.models.fields.CharField')(default='', max_length=240, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Adding field 'Picture.gazeta_link'
-        db.add_column(u'picture_picture', 'gazeta_link',
-                      self.gf('django.db.models.fields.CharField')(default='', max_length=240, blank=True),
-                      keep_default=False)
-
-        # Deleting field 'Picture.culturepl_link'
-        db.delete_column(u'picture_picture', 'culturepl_link')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0006_auto__add_field_picture_width__add_field_picture_height.py b/apps/picture/migrations/0006_auto__add_field_picture_width__add_field_picture_height.py
deleted file mode 100644 (file)
index 1b1d3b1..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture.width'
-        db.add_column(u'picture_picture', 'width',
-                      self.gf('django.db.models.fields.IntegerField')(null=True),
-                      keep_default=False)
-
-        # Adding field 'Picture.height'
-        db.add_column(u'picture_picture', 'height',
-                      self.gf('django.db.models.fields.IntegerField')(null=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture.width'
-        db.delete_column(u'picture_picture', 'width')
-
-        # Deleting field 'Picture.height'
-        db.delete_column(u'picture_picture', 'height')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'height': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'width': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0007_auto__add_picturearea__del_field_picture_areas__add_field_picture_area.py b/apps/picture/migrations/0007_auto__add_picturearea__del_field_picture_areas__add_field_picture_area.py
deleted file mode 100644 (file)
index 91652cb..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'PictureArea'
-        db.create_table(u'picture_picturearea', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('picture', self.gf('django.db.models.fields.related.ForeignKey')(related_name='areas', to=orm['picture.Picture'])),
-            ('area', self.gf('jsonfield.fields.JSONField')(default={})),
-            ('kind', self.gf('django.db.models.fields.CharField')(max_length=10, db_index=True)),
-        ))
-        db.send_create_signal(u'picture', ['PictureArea'])
-
-        # Deleting field 'Picture.areas'
-        db.delete_column(u'picture_picture', 'areas')
-
-        # Adding field 'Picture.areas_json'
-        db.add_column(u'picture_picture', 'areas_json',
-                      self.gf('jsonfield.fields.JSONField')(default={}),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting model 'PictureArea'
-        db.delete_table(u'picture_picturearea')
-
-        # Adding field 'Picture.areas'
-        db.add_column(u'picture_picture', 'areas',
-                      self.gf('jsonfield.fields.JSONField')(default={}),
-                      keep_default=False)
-
-        # Deleting field 'Picture.areas_json'
-        db.delete_column(u'picture_picture', 'areas_json')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            'areas_json': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'height': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'width': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        },
-        u'picture.picturearea': {
-            'Meta': {'object_name': 'PictureArea'},
-            'area': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_index': 'True'}),
-            'picture': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'areas'", 'to': u"orm['picture.Picture']"})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0008_auto__add_field_picturearea__related_info.py b/apps/picture/migrations/0008_auto__add_field_picturearea__related_info.py
deleted file mode 100644 (file)
index 60411fc..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture._related_info'
-        db.add_column(u'picture_picture', '_related_info',
-                      self.gf('jsonfield.fields.JSONField')(null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture._related_info'
-        db.delete_column(u'picture_picture', '_related_info')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'areas_json': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'height': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'width': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        },
-        u'picture.picturearea': {
-            'Meta': {'object_name': 'PictureArea'},
-            'area': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_index': 'True'}),
-            'picture': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'areas'", 'to': u"orm['picture.Picture']"})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
diff --git a/apps/picture/migrations/0009_auto__add_field_picture_sort_key_author.py b/apps/picture/migrations/0009_auto__add_field_picture_sort_key_author.py
deleted file mode 100644 (file)
index 013e345..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Picture.sort_key_author'
-        db.add_column(u'picture_picture', 'sort_key_author',
-                      self.gf('django.db.models.fields.CharField')(default=u'', max_length=120, db_index=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Picture.sort_key_author'
-        db.delete_column(u'picture_picture', 'sort_key_author')
-
-
-    models = {
-        u'picture.picture': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Picture'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'areas_json': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'culturepl_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            'height': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image_file': ('sorl.thumbnail.fields.ImageField', [], {'max_length': '100'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'sort_key_author': ('django.db.models.fields.CharField', [], {'default': "u''", 'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'width': ('django.db.models.fields.IntegerField', [], {'null': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100'})
-        },
-        u'picture.picturearea': {
-            'Meta': {'object_name': 'PictureArea'},
-            'area': ('jsonfield.fields.JSONField', [], {'default': '{}'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'kind': ('django.db.models.fields.CharField', [], {'max_length': '10', 'db_index': 'True'}),
-            'picture': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'areas'", 'to': u"orm['picture.Picture']"})
-        }
-    }
-
-    complete_apps = ['picture']
\ No newline at end of file
index e5550b0..91c68aa 100644 (file)
@@ -1,55 +1,41 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Poll'
-        db.create_table(u'polls_poll', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('question', self.gf('django.db.models.fields.TextField')()),
-            ('slug', self.gf('django.db.models.fields.SlugField')(max_length=50)),
-            ('open', self.gf('django.db.models.fields.BooleanField')(default=False)),
-        ))
-        db.send_create_signal(u'polls', ['Poll'])
-
-        # Adding model 'PollItem'
-        db.create_table(u'polls_pollitem', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('poll', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['polls.Poll'])),
-            ('content', self.gf('django.db.models.fields.TextField')()),
-            ('vote_count', self.gf('django.db.models.fields.IntegerField')(default=0)),
-        ))
-        db.send_create_signal(u'polls', ['PollItem'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Poll'
-        db.delete_table(u'polls_poll')
-
-        # Deleting model 'PollItem'
-        db.delete_table(u'polls_pollitem')
-
-
-    models = {
-        u'polls.poll': {
-            'Meta': {'object_name': 'Poll'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'open': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'question': ('django.db.models.fields.TextField', [], {}),
-            'slug': ('django.db.models.fields.SlugField', [], {'max_length': '50'})
-        },
-        u'polls.pollitem': {
-            'Meta': {'object_name': 'PollItem'},
-            'content': ('django.db.models.fields.TextField', [], {}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'poll': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['polls.Poll']"}),
-            'vote_count': ('django.db.models.fields.IntegerField', [], {'default': '0'})
-        }
-    }
-
-    complete_apps = ['polls']
\ No newline at end of file
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Poll',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('question', models.TextField(verbose_name='question')),
+                ('slug', models.SlugField(verbose_name='Slug')),
+                ('open', models.BooleanField(default=False, verbose_name='open')),
+            ],
+            options={
+                'verbose_name': 'Poll',
+                'verbose_name_plural': 'Polls',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='PollItem',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('content', models.TextField(verbose_name='content')),
+                ('vote_count', models.IntegerField(default=0, verbose_name='vote count')),
+                ('poll', models.ForeignKey(related_name=b'items', to='polls.Poll')),
+            ],
+            options={
+                'verbose_name': 'vote item',
+                'verbose_name_plural': 'vote items',
+            },
+            bases=(models.Model,),
+        ),
+    ]
index 75ed182..2ad4a68 100644 (file)
@@ -1,66 +1,39 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
 
 
-class Migration(SchemaMigration):
+from django.db import models, migrations
 
 
-    def forwards(self, orm):
-        
-        # Adding model 'Cite'
-        db.create_table('social_cite', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('book', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['catalogue.Book'])),
-            ('text', self.gf('django.db.models.fields.TextField')()),
-            ('small', self.gf('django.db.models.fields.BooleanField')(default=False)),
-            ('vip', self.gf('django.db.models.fields.CharField')(max_length=128, null=True, blank=True)),
-            ('link', self.gf('django.db.models.fields.URLField')(max_length=200)),
-        ))
-        db.send_create_signal('social', ['Cite'])
 
 
+class Migration(migrations.Migration):
 
 
-    def backwards(self, orm):
-        
-        # Deleting model 'Cite'
-        db.delete_table('social_cite')
+    dependencies = [
+        ('catalogue', '0001_initial'),
+    ]
 
 
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120', 'db_index': 'True'}),
-            'cover': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120', 'db_index': 'True'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('django.db.models.fields.files.FileField', [], {'max_length': '100', 'blank': 'True'})
-        },
-        'social.cite': {
-            'Meta': {'ordering': "('vip', 'text')", 'object_name': 'Cite'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'link': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
-            'small': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'text': ('django.db.models.fields.TextField', [], {}),
-            'vip': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['social']
+    operations = [
+        migrations.CreateModel(
+            name='Cite',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('text', models.TextField(verbose_name='text')),
+                ('small', models.BooleanField(default=False, help_text='Make this cite display smaller.', verbose_name='small')),
+                ('vip', models.CharField(max_length=128, null=True, verbose_name='VIP', blank=True)),
+                ('link', models.URLField(verbose_name='link')),
+                ('sticky', models.BooleanField(default=False, help_text='Sticky cites will take precedense.', db_index=True, verbose_name='sticky')),
+                ('image', models.ImageField(help_text='Best image is exactly 975px wide and weights under 100kB.', upload_to=b'social/cite', null=True, verbose_name='image', blank=True)),
+                ('image_shift', models.IntegerField(help_text='Vertical shift, in percents. 0 means top, 100 is bottom. Default is 50%.', null=True, verbose_name='shift', blank=True)),
+                ('image_title', models.CharField(max_length=255, null=True, verbose_name='Title', blank=True)),
+                ('image_author', models.CharField(max_length=255, null=True, verbose_name='author', blank=True)),
+                ('image_link', models.URLField(null=True, verbose_name='link', blank=True)),
+                ('image_license', models.CharField(max_length=255, null=True, verbose_name='license name', blank=True)),
+                ('image_license_link', models.URLField(null=True, verbose_name='license link', blank=True)),
+                ('book', models.ForeignKey(verbose_name='book', blank=True, to='catalogue.Book', null=True)),
+            ],
+            options={
+                'ordering': ('vip', 'text'),
+                'verbose_name': 'cite',
+                'verbose_name_plural': 'cites',
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/social/migrations/0002_auto__add_field_cite_sticky__add_field_cite_image__add_field_cite_imag.py b/apps/social/migrations/0002_auto__add_field_cite_sticky__add_field_cite_image__add_field_cite_imag.py
deleted file mode 100644 (file)
index 32e8c43..0000000
+++ /dev/null
@@ -1,115 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Cite.sticky'
-        db.add_column('social_cite', 'sticky',
-                      self.gf('django.db.models.fields.BooleanField')(default=False),
-                      keep_default=False)
-
-        # Adding field 'Cite.image'
-        db.add_column('social_cite', 'image',
-                      self.gf('django.db.models.fields.files.ImageField')(max_length=100, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Cite.image_title'
-        db.add_column('social_cite', 'image_title',
-                      self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Cite.image_author'
-        db.add_column('social_cite', 'image_author',
-                      self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Cite.image_link'
-        db.add_column('social_cite', 'image_link',
-                      self.gf('django.db.models.fields.URLField')(max_length=200, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Cite.image_license'
-        db.add_column('social_cite', 'image_license',
-                      self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True),
-                      keep_default=False)
-
-        # Adding field 'Cite.image_license_link'
-        db.add_column('social_cite', 'image_license_link',
-                      self.gf('django.db.models.fields.URLField')(max_length=200, null=True, blank=True),
-                      keep_default=False)
-
-
-    def backwards(self, orm):
-        # Deleting field 'Cite.sticky'
-        db.delete_column('social_cite', 'sticky')
-
-        # Deleting field 'Cite.image'
-        db.delete_column('social_cite', 'image')
-
-        # Deleting field 'Cite.image_title'
-        db.delete_column('social_cite', 'image_title')
-
-        # Deleting field 'Cite.image_author'
-        db.delete_column('social_cite', 'image_author')
-
-        # Deleting field 'Cite.image_link'
-        db.delete_column('social_cite', 'image_link')
-
-        # Deleting field 'Cite.image_license'
-        db.delete_column('social_cite', 'image_license')
-
-        # Deleting field 'Cite.image_license_link'
-        db.delete_column('social_cite', 'image_license_link')
-
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'social.cite': {
-            'Meta': {'ordering': "('vip', 'text')", 'object_name': 'Cite'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'image_author': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'image_license': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'image_license_link': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
-            'image_link': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
-            'image_title': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'link': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
-            'small': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'sticky': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'text': ('django.db.models.fields.TextField', [], {}),
-            'vip': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['social']
\ No newline at end of file
diff --git a/apps/social/migrations/0003_auto__add_field_cite_image_shift__chg_field_cite_book.py b/apps/social/migrations/0003_auto__add_field_cite_image_shift__chg_field_cite_book.py
deleted file mode 100644 (file)
index 3c04611..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding field 'Cite.image_shift'
-        db.add_column('social_cite', 'image_shift',
-                      self.gf('django.db.models.fields.IntegerField')(null=True, blank=True),
-                      keep_default=False)
-
-        # Adding index on 'Cite', fields ['sticky']
-        db.create_index('social_cite', ['sticky'])
-
-
-        # Changing field 'Cite.book'
-        db.alter_column('social_cite', 'book_id', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['catalogue.Book'], null=True))
-
-    def backwards(self, orm):
-        # Removing index on 'Cite', fields ['sticky']
-        db.delete_index('social_cite', ['sticky'])
-
-        # Deleting field 'Cite.image_shift'
-        db.delete_column('social_cite', 'image_shift')
-
-
-        # Changing field 'Cite.book'
-        db.alter_column('social_cite', 'book_id', self.gf('django.db.models.fields.related.ForeignKey')(default=0, to=orm['catalogue.Book']))
-
-    models = {
-        'catalogue.book': {
-            'Meta': {'ordering': "('sort_key',)", 'object_name': 'Book'},
-            '_related_info': ('jsonfield.fields.JSONField', [], {'null': 'True', 'blank': 'True'}),
-            'changed_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'common_slug': ('django.db.models.fields.SlugField', [], {'max_length': '120'}),
-            'cover': ('catalogue.fields.EbookField', [], {'max_length': '100', 'null': 'True', 'format_name': "'cover'", 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'db_index': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'epub_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'epub'", 'blank': 'True'}),
-            'extra_info': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'fb2_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'fb2'", 'blank': 'True'}),
-            'gazeta_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'html_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'html'", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'language': ('django.db.models.fields.CharField', [], {'default': "'pol'", 'max_length': '3', 'db_index': 'True'}),
-            'mobi_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'mobi'", 'blank': 'True'}),
-            'parent': ('django.db.models.fields.related.ForeignKey', [], {'blank': 'True', 'related_name': "'children'", 'null': 'True', 'to': "orm['catalogue.Book']"}),
-            'parent_number': ('django.db.models.fields.IntegerField', [], {'default': '0'}),
-            'pdf_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'pdf'", 'blank': 'True'}),
-            'slug': ('django.db.models.fields.SlugField', [], {'unique': 'True', 'max_length': '120'}),
-            'sort_key': ('django.db.models.fields.CharField', [], {'max_length': '120', 'db_index': 'True'}),
-            'title': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'txt_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'txt'", 'blank': 'True'}),
-            'wiki_link': ('django.db.models.fields.CharField', [], {'max_length': '240', 'blank': 'True'}),
-            'xml_file': ('catalogue.fields.EbookField', [], {'default': "''", 'max_length': '100', 'format_name': "'xml'", 'blank': 'True'})
-        },
-        'social.cite': {
-            'Meta': {'ordering': "('vip', 'text')", 'object_name': 'Cite'},
-            'book': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['catalogue.Book']", 'null': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'image': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'null': 'True', 'blank': 'True'}),
-            'image_author': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'image_license': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'image_license_link': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
-            'image_link': ('django.db.models.fields.URLField', [], {'max_length': '200', 'null': 'True', 'blank': 'True'}),
-            'image_shift': ('django.db.models.fields.IntegerField', [], {'null': 'True', 'blank': 'True'}),
-            'image_title': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'link': ('django.db.models.fields.URLField', [], {'max_length': '200'}),
-            'small': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'sticky': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'db_index': 'True'}),
-            'text': ('django.db.models.fields.TextField', [], {}),
-            'vip': ('django.db.models.fields.CharField', [], {'max_length': '128', 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['social']
\ No newline at end of file
index 5233db3..d672e84 100644 (file)
@@ -1,59 +1,40 @@
 # -*- coding: utf-8 -*-
 # -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        # Adding model 'Sponsor'
-        db.create_table(u'sponsors_sponsor', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('_description', self.gf('django.db.models.fields.CharField')(max_length=255, blank=True)),
-            ('logo', self.gf('django.db.models.fields.files.ImageField')(max_length=100)),
-            ('url', self.gf('django.db.models.fields.URLField')(max_length=200, blank=True)),
-        ))
-        db.send_create_signal(u'sponsors', ['Sponsor'])
-
-        # Adding model 'SponsorPage'
-        db.create_table(u'sponsors_sponsorpage', (
-            (u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('name', self.gf('django.db.models.fields.CharField')(max_length=120)),
-            ('sponsors', self.gf('jsonfield.fields.JSONField')(default='{}')),
-            ('_html', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('sprite', self.gf('django.db.models.fields.files.ImageField')(max_length=100, blank=True)),
-        ))
-        db.send_create_signal(u'sponsors', ['SponsorPage'])
-
-
-    def backwards(self, orm):
-        # Deleting model 'Sponsor'
-        db.delete_table(u'sponsors_sponsor')
-
-        # Deleting model 'SponsorPage'
-        db.delete_table(u'sponsors_sponsorpage')
-
-
-    models = {
-        u'sponsors.sponsor': {
-            'Meta': {'object_name': 'Sponsor'},
-            '_description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'logo': ('django.db.models.fields.files.ImageField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'url': ('django.db.models.fields.URLField', [], {'max_length': '200', 'blank': 'True'})
-        },
-        u'sponsors.sponsorpage': {
-            'Meta': {'object_name': 'SponsorPage'},
-            '_html': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '120'}),
-            'sponsors': ('jsonfield.fields.JSONField', [], {'default': "'{}'"}),
-            'sprite': ('django.db.models.fields.files.ImageField', [], {'max_length': '100', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['sponsors']
\ No newline at end of file
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+import jsonfield.fields
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Sponsor',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=120, verbose_name='name')),
+                ('_description', models.CharField(max_length=255, verbose_name='Description', blank=True)),
+                ('logo', models.ImageField(upload_to=b'sponsorzy/sponsor/logo', verbose_name='logo')),
+                ('url', models.URLField(verbose_name='url', blank=True)),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='SponsorPage',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('name', models.CharField(max_length=120, verbose_name='name')),
+                ('sponsors', jsonfield.fields.JSONField(default={}, verbose_name='sponsors')),
+                ('_html', models.TextField(editable=False, blank=True)),
+                ('sprite', models.ImageField(upload_to=b'sponsorzy/sprite', blank=True)),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+    ]
index a25297a..b028897 100644 (file)
@@ -1,77 +1,50 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Adding model 'Suggestion'
-        db.create_table('suggest_suggestion', (
-            ('description', self.gf('django.db.models.fields.TextField')(blank=True)),
-            ('ip', self.gf('django.db.models.fields.IPAddressField')(max_length=15)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)),
-            ('contact', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True, blank=True)),
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-        ))
-        db.send_create_signal('suggest', ['Suggestion'])
-
-
-    def backwards(self, orm):
-
-        # Deleting model 'Suggestion'
-        db.delete_table('suggest_suggestion')
-
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True', 'blank': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False', 'blank': 'True'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        },
-        'suggest.suggestion': {
-            'Meta': {'object_name': 'Suggestion'},
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['suggest']
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
+
+from django.db import models, migrations
+from django.conf import settings
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='PublishingSuggestion',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('contact', models.CharField(max_length=120, verbose_name='Contact', blank=True)),
+                ('books', models.TextField(null=True, verbose_name='Books', blank=True)),
+                ('audiobooks', models.TextField(null=True, verbose_name='audiobooks', blank=True)),
+                ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='creation date')),
+                ('ip', models.GenericIPAddressField(verbose_name='IP address')),
+                ('user', models.ForeignKey(blank=True, to=settings.AUTH_USER_MODEL, null=True)),
+            ],
+            options={
+                'ordering': ('-created_at',),
+                'verbose_name': 'publishing suggestion',
+                'verbose_name_plural': 'publishing suggestions',
+            },
+            bases=(models.Model,),
+        ),
+        migrations.CreateModel(
+            name='Suggestion',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('contact', models.CharField(max_length=120, verbose_name='Contact', blank=True)),
+                ('description', models.TextField(verbose_name='Description', blank=True)),
+                ('created_at', models.DateTimeField(auto_now=True, verbose_name='creation date')),
+                ('ip', models.GenericIPAddressField(verbose_name='IP address')),
+                ('user', models.ForeignKey(blank=True, to=settings.AUTH_USER_MODEL, null=True)),
+            ],
+            options={
+                'ordering': ('-created_at',),
+                'verbose_name': 'suggestion',
+                'verbose_name_plural': 'suggestions',
+            },
+            bases=(models.Model,),
+        ),
+    ]
diff --git a/apps/suggest/migrations/0002_auto__add_publishingsuggestion.py b/apps/suggest/migrations/0002_auto__add_publishingsuggestion.py
deleted file mode 100644 (file)
index 8a52a7f..0000000
+++ /dev/null
@@ -1,88 +0,0 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-        
-        # Adding model 'PublishingSuggestion'
-        db.create_table('suggest_publishingsuggestion', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('contact', self.gf('django.db.models.fields.CharField')(max_length=120, blank=True)),
-            ('books', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('audiobooks', self.gf('django.db.models.fields.TextField')(null=True, blank=True)),
-            ('created_at', self.gf('django.db.models.fields.DateTimeField')(auto_now_add=True, blank=True)),
-            ('ip', self.gf('django.db.models.fields.IPAddressField')(max_length=15)),
-            ('user', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'], null=True, blank=True)),
-        ))
-        db.send_create_signal('suggest', ['PublishingSuggestion'])
-
-
-    def backwards(self, orm):
-        
-        # Deleting model 'PublishingSuggestion'
-        db.delete_table('suggest_publishingsuggestion')
-
-
-    models = {
-        'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '80', 'unique': 'True'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        'auth.permission': {
-            'Meta': {'ordering': "('content_type__app_label', 'content_type__model', 'codename')", 'unique_together': "(('content_type', 'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['contenttypes.ContentType']"}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': "orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'max_length': '30', 'unique': 'True'})
-        },
-        'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        },
-        'suggest.publishingsuggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'PublishingSuggestion'},
-            'audiobooks': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'books': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        },
-        'suggest.suggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'Suggestion'},
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': "orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['suggest']
diff --git a/apps/suggest/migrations/0003_auto__chg_field_suggestion_ip.py b/apps/suggest/migrations/0003_auto__chg_field_suggestion_ip.py
deleted file mode 100644 (file)
index 70c2e6e..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'Suggestion.ip'
-        db.alter_column(u'suggest_suggestion', 'ip', self.gf('django.db.models.fields.GenericIPAddressField')(max_length=39))
-
-    def backwards(self, orm):
-
-        # Changing field 'Suggestion.ip'
-        db.alter_column(u'suggest_suggestion', 'ip', self.gf('django.db.models.fields.IPAddressField')(max_length=15))
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        },
-        u'suggest.publishingsuggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'PublishingSuggestion'},
-            'audiobooks': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'books': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.IPAddressField', [], {'max_length': '15'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        },
-        u'suggest.suggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'Suggestion'},
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['suggest']
\ No newline at end of file
diff --git a/apps/suggest/migrations/0004_auto__chg_field_publishingsuggestion_ip.py b/apps/suggest/migrations/0004_auto__chg_field_publishingsuggestion_ip.py
deleted file mode 100644 (file)
index ea48b24..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-# -*- coding: utf-8 -*-
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
-
-
-class Migration(SchemaMigration):
-
-    def forwards(self, orm):
-
-        # Changing field 'PublishingSuggestion.ip'
-        db.alter_column(u'suggest_publishingsuggestion', 'ip', self.gf('django.db.models.fields.GenericIPAddressField')(max_length=39))
-
-    def backwards(self, orm):
-
-        # Changing field 'PublishingSuggestion.ip'
-        db.alter_column(u'suggest_publishingsuggestion', 'ip', self.gf('django.db.models.fields.IPAddressField')(max_length=15))
-
-    models = {
-        u'auth.group': {
-            'Meta': {'object_name': 'Group'},
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '80'}),
-            'permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'})
-        },
-        u'auth.permission': {
-            'Meta': {'ordering': "(u'content_type__app_label', u'content_type__model', u'codename')", 'unique_together': "((u'content_type', u'codename'),)", 'object_name': 'Permission'},
-            'codename': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'content_type': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['contenttypes.ContentType']"}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '50'})
-        },
-        u'auth.user': {
-            'Meta': {'object_name': 'User'},
-            'date_joined': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'email': ('django.db.models.fields.EmailField', [], {'max_length': '75', 'blank': 'True'}),
-            'first_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'groups': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Group']", 'symmetrical': 'False', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'is_active': ('django.db.models.fields.BooleanField', [], {'default': 'True'}),
-            'is_staff': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'is_superuser': ('django.db.models.fields.BooleanField', [], {'default': 'False'}),
-            'last_login': ('django.db.models.fields.DateTimeField', [], {'default': 'datetime.datetime.now'}),
-            'last_name': ('django.db.models.fields.CharField', [], {'max_length': '30', 'blank': 'True'}),
-            'password': ('django.db.models.fields.CharField', [], {'max_length': '128'}),
-            'user_permissions': ('django.db.models.fields.related.ManyToManyField', [], {'to': u"orm['auth.Permission']", 'symmetrical': 'False', 'blank': 'True'}),
-            'username': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '30'})
-        },
-        u'contenttypes.contenttype': {
-            'Meta': {'ordering': "('name',)", 'unique_together': "(('app_label', 'model'),)", 'object_name': 'ContentType', 'db_table': "'django_content_type'"},
-            'app_label': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'model': ('django.db.models.fields.CharField', [], {'max_length': '100'}),
-            'name': ('django.db.models.fields.CharField', [], {'max_length': '100'})
-        },
-        u'suggest.publishingsuggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'PublishingSuggestion'},
-            'audiobooks': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'books': ('django.db.models.fields.TextField', [], {'null': 'True', 'blank': 'True'}),
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now_add': 'True', 'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        },
-        u'suggest.suggestion': {
-            'Meta': {'ordering': "('-created_at',)", 'object_name': 'Suggestion'},
-            'contact': ('django.db.models.fields.CharField', [], {'max_length': '120', 'blank': 'True'}),
-            'created_at': ('django.db.models.fields.DateTimeField', [], {'auto_now': 'True', 'blank': 'True'}),
-            'description': ('django.db.models.fields.TextField', [], {'blank': 'True'}),
-            u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'ip': ('django.db.models.fields.GenericIPAddressField', [], {'max_length': '39'}),
-            'user': ('django.db.models.fields.related.ForeignKey', [], {'to': u"orm['auth.User']", 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['suggest']
\ No newline at end of file
index a75884b..a579d6e 100644 (file)
@@ -1,39 +1,27 @@
-# encoding: utf-8
-import datetime
-from south.db import db
-from south.v2 import SchemaMigration
-from django.db import models
+# -*- coding: utf-8 -*-
+from __future__ import unicode_literals
 
 
-class Migration(SchemaMigration):
+from django.db import models, migrations
+import picklefield.fields
 
 
-    def forwards(self, orm):
-        
-        # Adding model 'WaitedFile'
-        db.create_table('waiter_waitedfile', (
-            ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
-            ('path', self.gf('django.db.models.fields.CharField')(unique=True, max_length=255, db_index=True)),
-            ('task_id', self.gf('django.db.models.fields.CharField')(db_index=True, max_length=128, null=True, blank=True)),
-            ('task', self.gf('picklefield.fields.PickledObjectField')(null=True)),
-            ('description', self.gf('django.db.models.fields.CharField')(max_length=255, null=True, blank=True)),
-        ))
-        db.send_create_signal('waiter', ['WaitedFile'])
 
 
+class Migration(migrations.Migration):
 
 
-    def backwards(self, orm):
-        
-        # Deleting model 'WaitedFile'
-        db.delete_table('waiter_waitedfile')
+    dependencies = [
+    ]
 
 
-
-    models = {
-        'waiter.waitedfile': {
-            'Meta': {'object_name': 'WaitedFile'},
-            'description': ('django.db.models.fields.CharField', [], {'max_length': '255', 'null': 'True', 'blank': 'True'}),
-            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
-            'path': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '255', 'db_index': 'True'}),
-            'task': ('picklefield.fields.PickledObjectField', [], {'null': 'True'}),
-            'task_id': ('django.db.models.fields.CharField', [], {'db_index': 'True', 'max_length': '128', 'null': 'True', 'blank': 'True'})
-        }
-    }
-
-    complete_apps = ['waiter']
+    operations = [
+        migrations.CreateModel(
+            name='WaitedFile',
+            fields=[
+                ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)),
+                ('path', models.CharField(unique=True, max_length=255, db_index=True)),
+                ('task_id', models.CharField(db_index=True, max_length=128, null=True, blank=True)),
+                ('task', picklefield.fields.PickledObjectField(null=True, editable=False)),
+                ('description', models.CharField(max_length=255, null=True, blank=True)),
+            ],
+            options={
+            },
+            bases=(models.Model,),
+        ),
+    ]
index 1b6930a..8a208a3 100644 (file)
@@ -1,8 +1,7 @@
--i http://pypi.nowoczesnapolska.org.pl/simple/ 
---find-links=http://www.pythonware.com/products/pil/
+-i http://py.mdrn.pl/simple/ 
 
 # django
 
 # django
-Django>=1.6,<1.7
+Django>=1.7,<1.8
 fnpdjango>=0.1.15,<0.2
 South>=0.7 # migrations for django
 django-pipeline>=1.3,<1.4
 fnpdjango>=0.1.15,<0.2
 South>=0.7 # migrations for django
 django-pipeline>=1.3,<1.4
@@ -11,7 +10,7 @@ django-maintenancemode>=0.10
 django-piston>=0.2.2.1,<0.2.3
 jsonfield>=0.9.20
 django-picklefield
 django-piston>=0.2.2.1,<0.2.3
 jsonfield>=0.9.20
 django-picklefield
-django-modeltranslation
+django-modeltranslation==0.8b2
 django-allauth>=0.16,<0.17
 
 pytz
 django-allauth>=0.16,<0.17
 
 pytz
@@ -31,7 +30,7 @@ Feedparser>=5.1
 
 Pillow
 mutagen>=1.17
 
 Pillow
 mutagen>=1.17
-sorl-thumbnail>=11.09,<12
+sorl-thumbnail>=11.12.1b,<11.13
 
 # home-brewed & dependencies
 lxml>=2.2.2
 
 # home-brewed & dependencies
 lxml>=2.2.2
@@ -52,3 +51,5 @@ pyoai
 sunburnt
 
 django-getpaid>=1.6,<1.7
 sunburnt
 
 django-getpaid>=1.6,<1.7
+httplib2
+Texml
index bce9bd3..7c3787c 100644 (file)
@@ -74,6 +74,9 @@ GETPAID_BACKENDS = (
 )
 
 INSTALLED_APPS_CONTRIB = [
 )
 
 INSTALLED_APPS_CONTRIB = [
+    # Should be before django.contrib.admin
+    'modeltranslation',
+
     # external
     'django.contrib.auth',
     'django.contrib.contenttypes',
     # external
     'django.contrib.auth',
     'django.contrib.contenttypes',
@@ -87,7 +90,7 @@ INSTALLED_APPS_CONTRIB = [
     'piston',
     'piwik',
     #'rosetta',
     'piston',
     'piwik',
     #'rosetta',
-    'south',
+    #'south',
     'sorl.thumbnail',
     'djcelery',
     'kombu.transport.django',
     'sorl.thumbnail',
     'djcelery',
     'kombu.transport.django',
@@ -105,9 +108,6 @@ INSTALLED_APPS_CONTRIB = [
     'allauth.socialaccount.providers.openid',
     'allauth.socialaccount.providers.facebook',
     #'allauth.socialaccount.providers.twitter',
     'allauth.socialaccount.providers.openid',
     'allauth.socialaccount.providers.facebook',
     #'allauth.socialaccount.providers.twitter',
-
-    # included
-    'modeltranslation',
     ]
 
 INSTALLED_APPS = INSTALLED_APPS_OUR + INSTALLED_APPS_CONTRIB
     ]
 
 INSTALLED_APPS = INSTALLED_APPS_OUR + INSTALLED_APPS_CONTRIB
index 5ecf7d8..b480cd9 100644 (file)
@@ -2,7 +2,6 @@ HONEYPOT_FIELD_NAME = 'miut'
 PAGINATION_INVALID_PAGE_RAISES_404 = True
 THUMBNAIL_QUALITY = 95
 
 PAGINATION_INVALID_PAGE_RAISES_404 = True
 THUMBNAIL_QUALITY = 95
 
-MODELTRANSLATION_TRANSLATION_FILES = ["wolnelektury.translation"]
 MODELTRANSLATION_DEFAULT_LANGUAGE = 'pl'
 MODELTRANSLATION_PREPOPULATE_LANGUAGE = 'pl'
 
 MODELTRANSLATION_DEFAULT_LANGUAGE = 'pl'
 MODELTRANSLATION_PREPOPULATE_LANGUAGE = 'pl'
 
diff --git a/wolnelektury/translation.py b/wolnelektury/translation.py
deleted file mode 100644 (file)
index b9e7b9c..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-# -*- coding: utf-8 -*-
-# This file is part of Wolnelektury, licensed under GNU Affero GPLv3 or later.
-# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
-#
-
-from modeltranslation.translator import translator, TranslationOptions
-from catalogue.models import Collection, Tag, Source
-from infopages.models import InfoPage
-from chunks.models import Chunk
-
-class InfoPageTranslationOptions(TranslationOptions):
-    fields = ('title', 'left_column', 'right_column')
-
-class TagTranslationOptions(TranslationOptions):
-    fields = ('name', 'description', 'wiki_link')
-
-class CollectionTranslationOptions(TranslationOptions):
-    fields = ('title', 'description')
-
-class SourceTranslationOptions(TranslationOptions):
-    fields = ('name',)
-
-class ChunkTranslationOptions(TranslationOptions):
-    fields = ('content',)
-
-translator.register(InfoPage, InfoPageTranslationOptions)
-translator.register(Tag, TagTranslationOptions)
-translator.register(Collection, CollectionTranslationOptions)
-translator.register(Source, SourceTranslationOptions)
-translator.register(Chunk, ChunkTranslationOptions)
index 8adcb7a..abe872f 100644 (file)
@@ -11,8 +11,6 @@ from django.views.generic import RedirectView
 import wolnelektury_core.views
 
 
 import wolnelektury_core.views
 
 
-admin.autodiscover()
-
 urlpatterns = patterns('wolnelektury_core.views',
     url(r'^$', 'main_page', name='main_page'),
     url(r'^planowane/$', 'publish_plan', name='publish_plan'),
 urlpatterns = patterns('wolnelektury_core.views',
     url(r'^$', 'main_page', name='main_page'),
     url(r'^planowane/$', 'publish_plan', name='publish_plan'),