diff --git a/core/migrations/0001_initial.py b/core/migrations/0001_initial.py new file mode 100644 index 0000000..b9e0a34 --- /dev/null +++ b/core/migrations/0001_initial.py @@ -0,0 +1,575 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.8 on 2020-02-18 16:01 +from __future__ import unicode_literals + +from django.conf import settings +import django.core.files.storage +from django.db import migrations, models +import django.db.models.deletion +import troggle.core.models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Area', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('short_name', models.CharField(max_length=100)), + ('name', models.CharField(blank=True, max_length=200, null=True)), + ('description', models.TextField(blank=True, null=True)), + ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Area')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='Cave', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('official_name', models.CharField(max_length=160)), + ('kataster_code', models.CharField(blank=True, max_length=20, null=True)), + ('kataster_number', models.CharField(blank=True, max_length=10, null=True)), + ('unofficial_number', models.CharField(blank=True, max_length=60, null=True)), + ('explorers', models.TextField(blank=True, null=True)), + ('underground_description', models.TextField(blank=True, null=True)), + ('equipment', models.TextField(blank=True, null=True)), + ('references', models.TextField(blank=True, null=True)), + ('survey', models.TextField(blank=True, null=True)), + ('kataster_status', models.TextField(blank=True, null=True)), + ('underground_centre_line', models.TextField(blank=True, null=True)), + ('notes', models.TextField(blank=True, null=True)), + ('length', models.CharField(blank=True, max_length=100, null=True)), + ('depth', models.CharField(blank=True, max_length=100, null=True)), + ('extent', models.CharField(blank=True, max_length=100, null=True)), + ('survex_file', models.CharField(blank=True, max_length=100, null=True)), + ('description_file', models.CharField(blank=True, max_length=200, null=True)), + ('url', models.CharField(blank=True, max_length=200, null=True)), + ('filename', models.CharField(max_length=200)), + ('area', models.ManyToManyField(blank=True, to='core.Area')), + ], + options={ + 'ordering': ('kataster_code', 'unofficial_number'), + }, + ), + migrations.CreateModel( + name='CaveAndEntrance', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('entrance_letter', models.CharField(blank=True, max_length=20, null=True)), + ('cave', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + ), + migrations.CreateModel( + name='CaveDescription', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('short_name', models.CharField(max_length=50, unique=True)), + ('long_name', models.CharField(blank=True, max_length=200, null=True)), + ('description', models.TextField(blank=True, null=True)), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='CaveSlug', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('slug', models.SlugField(unique=True)), + ('primary', models.BooleanField(default=False)), + ('cave', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + ), + migrations.CreateModel( + name='DataIssue', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('date', models.DateTimeField(auto_now_add=True)), + ('parser', models.CharField(blank=True, max_length=50, null=True)), + ('message', models.CharField(blank=True, max_length=400, null=True)), + ], + options={ + 'ordering': ['date'], + }, + ), + migrations.CreateModel( + name='DPhoto', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('caption', models.CharField(blank=True, max_length=1000, null=True)), + ('file', models.ImageField(storage=django.core.files.storage.FileSystemStorage(base_url=b'http://127.0.0.1:8000/photos/', location=b'/expo/expoweb/photos'), upload_to=b'.')), + ('is_mugshot', models.BooleanField(default=False)), + ('lon_utm', models.FloatField(blank=True, null=True)), + ('lat_utm', models.FloatField(blank=True, null=True)), + ('contains_cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='Entrance', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('name', models.CharField(blank=True, max_length=100, null=True)), + ('entrance_description', models.TextField(blank=True, null=True)), + ('explorers', models.TextField(blank=True, null=True)), + ('map_description', models.TextField(blank=True, null=True)), + ('location_description', models.TextField(blank=True, null=True)), + ('approach', models.TextField(blank=True, null=True)), + ('underground_description', models.TextField(blank=True, null=True)), + ('photo', models.TextField(blank=True, null=True)), + ('marking', models.CharField(choices=[(b'P', b'Paint'), (b'P?', b'Paint (?)'), (b'T', b'Tag'), (b'T?', b'Tag (?)'), (b'R', b'Needs Retag'), (b'S', b'Spit'), (b'S?', b'Spit (?)'), (b'U', b'Unmarked'), (b'?', b'Unknown')], max_length=2)), + ('marking_comment', models.TextField(blank=True, null=True)), + ('findability', models.CharField(blank=True, choices=[(b'?', b'To be confirmed ...'), (b'S', b'Coordinates'), (b'L', b'Lost'), (b'R', b'Refindable')], max_length=1, null=True)), + ('findability_description', models.TextField(blank=True, null=True)), + ('alt', models.TextField(blank=True, null=True)), + ('northing', models.TextField(blank=True, null=True)), + ('easting', models.TextField(blank=True, null=True)), + ('tag_station', models.TextField(blank=True, null=True)), + ('exact_station', models.TextField(blank=True, null=True)), + ('other_station', models.TextField(blank=True, null=True)), + ('other_description', models.TextField(blank=True, null=True)), + ('bearings', models.TextField(blank=True, null=True)), + ('url', models.CharField(blank=True, max_length=200, null=True)), + ('filename', models.CharField(max_length=200)), + ('cached_primary_slug', models.CharField(blank=True, max_length=200, null=True)), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='EntranceSlug', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('slug', models.SlugField(unique=True)), + ('primary', models.BooleanField(default=False)), + ('entrance', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Entrance')), + ], + ), + migrations.CreateModel( + name='Expedition', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('year', models.CharField(max_length=20, unique=True)), + ('name', models.CharField(max_length=100)), + ], + options={ + 'ordering': ('-year',), + 'get_latest_by': 'year', + }, + ), + migrations.CreateModel( + name='ExpeditionDay', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('date', models.DateField()), + ('expedition', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Expedition')), + ], + options={ + 'ordering': ('date',), + }, + ), + migrations.CreateModel( + name='LogbookEntry', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('date', models.DateTimeField()), + ('title', models.CharField(max_length=200)), + ('cave_slug', models.SlugField()), + ('place', models.CharField(blank=True, help_text=b"Only use this if you haven't chosen a cave", max_length=100, null=True)), + ('text', models.TextField()), + ('slug', models.SlugField()), + ('filename', models.CharField(max_length=200, null=True)), + ('entry_type', models.CharField(choices=[(b'wiki', b'Wiki style logbook'), (b'html', b'Html style logbook')], default=b'wiki', max_length=50, null=True)), + ('expedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Expedition')), + ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.ExpeditionDay')), + ], + options={ + 'ordering': ('-date',), + 'verbose_name_plural': 'Logbook Entries', + }, + ), + migrations.CreateModel( + name='NewSubCave', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('name', models.CharField(max_length=200, unique=True)), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='OtherCaveName', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('name', models.CharField(max_length=160)), + ('cave', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='Person', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('first_name', models.CharField(max_length=100)), + ('last_name', models.CharField(max_length=100)), + ('fullname', models.CharField(max_length=200)), + ('is_vfho', models.BooleanField(default=False, help_text=b'VFHO is the Vereines für Höhlenkunde in Obersteier, a nearby Austrian caving club.')), + ('mug_shot', models.CharField(blank=True, max_length=100, null=True)), + ('blurb', models.TextField(blank=True, null=True)), + ('orderref', models.CharField(max_length=200)), + ('user', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + options={ + 'ordering': ('orderref',), + 'verbose_name_plural': 'People', + }, + ), + migrations.CreateModel( + name='PersonExpedition', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('slugfield', models.SlugField(blank=True, null=True)), + ('is_guest', models.BooleanField(default=False)), + ('expo_committee_position', models.CharField(blank=True, choices=[(b'leader', b'Expo leader'), (b'medical', b'Expo medical officer'), (b'treasurer', b'Expo treasurer'), (b'sponsorship', b'Expo sponsorship coordinator'), (b'research', b'Expo research coordinator')], max_length=200, null=True)), + ('nickname', models.CharField(blank=True, max_length=100, null=True)), + ('expedition', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Expedition')), + ('person', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Person')), + ], + options={ + 'ordering': ('-expedition',), + }, + ), + migrations.CreateModel( + name='PersonTrip', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('time_underground', models.FloatField(help_text=b'In decimal hours')), + ('is_logbook_entry_author', models.BooleanField(default=False)), + ('logbook_entry', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.LogbookEntry')), + ('personexpedition', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.PersonExpedition')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='QM', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('number', models.IntegerField(help_text=b'this is the sequential number in the year')), + ('grade', models.CharField(choices=[(b'A', b'A: Large obvious lead'), (b'B', b'B: Average lead'), (b'C', b'C: Tight unpromising lead'), (b'D', b'D: Dig'), (b'X', b'X: Unclimbable aven')], max_length=1)), + ('location_description', models.TextField(blank=True)), + ('nearest_station_description', models.CharField(blank=True, max_length=400, null=True)), + ('nearest_station_name', models.CharField(blank=True, max_length=200, null=True)), + ('area', models.CharField(blank=True, max_length=100, null=True)), + ('completion_description', models.TextField(blank=True, null=True)), + ('comment', models.TextField(blank=True, null=True)), + ('found_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='QMs_found', to='core.LogbookEntry')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='ScannedImage', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('file', models.ImageField(storage=django.core.files.storage.FileSystemStorage(base_url=b'/survey_scans/', location=b'/expo/expofiles/'), upload_to=troggle.core.models.get_scan_path)), + ('scanned_on', models.DateField(null=True)), + ('contents', models.CharField(choices=[(b'notes', b'notes'), (b'plan', b'plan_sketch'), (b'elevation', b'elevation_sketch')], max_length=20)), + ('number_in_wallet', models.IntegerField(null=True)), + ('lon_utm', models.FloatField(blank=True, null=True)), + ('lat_utm', models.FloatField(blank=True, null=True)), + ('scanned_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Person')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='SurvexBlock', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100)), + ('text', models.TextField()), + ('date', models.DateTimeField(blank=True, null=True)), + ('begin_char', models.IntegerField()), + ('survexpath', models.CharField(max_length=200)), + ('totalleglength', models.FloatField()), + ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ('expedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Expedition')), + ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.ExpeditionDay')), + ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ], + options={ + 'ordering': ('id',), + }, + ), + migrations.CreateModel( + name='SurvexDirectory', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('path', models.CharField(max_length=200)), + ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + options={ + 'ordering': ('path',), + }, + ), + migrations.CreateModel( + name='SurvexEquate', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ], + ), + migrations.CreateModel( + name='SurvexFile', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('path', models.CharField(max_length=200)), + ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ('survexdirectory', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexDirectory')), + ], + options={ + 'ordering': ('id',), + }, + ), + migrations.CreateModel( + name='SurvexLeg', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('tape', models.FloatField()), + ('compass', models.FloatField()), + ('clino', models.FloatField()), + ('block', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ], + ), + migrations.CreateModel( + name='SurvexPersonRole', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('nrole', models.CharField(blank=True, choices=[(b'insts', b'Instruments'), (b'dog', b'Other'), (b'notes', b'Notes'), (b'pics', b'Pictures'), (b'tape', b'Tape measure'), (b'useless', b'Useless'), (b'helper', b'Helper'), (b'disto', b'Disto'), (b'consultant', b'Consultant')], max_length=200, null=True)), + ('personname', models.CharField(max_length=100)), + ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.ExpeditionDay')), + ('person', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Person')), + ('personexpedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.PersonExpedition')), + ('persontrip', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.PersonTrip')), + ('survexblock', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ], + ), + migrations.CreateModel( + name='SurvexScansFolder', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('fpath', models.CharField(max_length=200)), + ('walletname', models.CharField(max_length=200)), + ], + options={ + 'ordering': ('walletname',), + }, + ), + migrations.CreateModel( + name='SurvexScanSingle', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('ffile', models.CharField(max_length=200)), + ('name', models.CharField(max_length=200)), + ('survexscansfolder', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexScansFolder')), + ], + options={ + 'ordering': ('name',), + }, + ), + migrations.CreateModel( + name='SurvexStation', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100)), + ('x', models.FloatField(blank=True, null=True)), + ('y', models.FloatField(blank=True, null=True)), + ('z', models.FloatField(blank=True, null=True)), + ('block', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ('equate', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexEquate')), + ], + ), + migrations.CreateModel( + name='SurvexTitle', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('title', models.CharField(max_length=200)), + ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Cave')), + ('survexblock', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ], + ), + migrations.CreateModel( + name='Survey', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('new_since_parsing', models.BooleanField(default=False, editable=False)), + ('non_public', models.BooleanField(default=False)), + ('wallet_number', models.IntegerField(blank=True, null=True)), + ('wallet_letter', models.CharField(blank=True, max_length=1, null=True)), + ('comments', models.TextField(blank=True, null=True)), + ('location', models.CharField(blank=True, max_length=400, null=True)), + ('centreline_printed_on', models.DateField(blank=True, null=True)), + ('tunnel_file', models.FileField(blank=True, null=True, upload_to=b'surveyXMLfiles')), + ('integrated_into_main_sketch_on', models.DateField(blank=True, null=True)), + ('rendered_image', models.ImageField(blank=True, null=True, upload_to=b'renderedSurveys')), + ('centreline_printed_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='centreline_printed_by', to='core.Person')), + ('expedition', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Expedition')), + ('integrated_into_main_sketch_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='integrated_into_main_sketch_by', to='core.Person')), + ('logbook_entry', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.LogbookEntry')), + ('subcave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.NewSubCave')), + ('survex_block', models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')), + ('tunnel_main_sketch', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.Survey')), + ], + options={ + 'abstract': False, + }, + ), + migrations.CreateModel( + name='TunnelFile', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('tunnelpath', models.CharField(max_length=200)), + ('tunnelname', models.CharField(max_length=200)), + ('bfontcolours', models.BooleanField(default=False)), + ('filesize', models.IntegerField(default=0)), + ('npaths', models.IntegerField(default=0)), + ('survexblocks', models.ManyToManyField(to='core.SurvexBlock')), + ('survexscans', models.ManyToManyField(to='core.SurvexScanSingle')), + ('survexscansfolders', models.ManyToManyField(to='core.SurvexScansFolder')), + ('survextitles', models.ManyToManyField(to='core.SurvexTitle')), + ('tunnelcontains', models.ManyToManyField(to='core.TunnelFile')), + ], + options={ + 'ordering': ('tunnelpath',), + }, + ), + migrations.AddField( + model_name='survexleg', + name='stationfrom', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stationfrom', to='core.SurvexStation'), + ), + migrations.AddField( + model_name='survexleg', + name='stationto', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='stationto', to='core.SurvexStation'), + ), + migrations.AddField( + model_name='survexdirectory', + name='primarysurvexfile', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='primarysurvexfile', to='core.SurvexFile'), + ), + migrations.AddField( + model_name='survexblock', + name='survexfile', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexFile'), + ), + migrations.AddField( + model_name='survexblock', + name='survexscansfolder', + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexScansFolder'), + ), + migrations.AddField( + model_name='scannedimage', + name='survey', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Survey'), + ), + migrations.AddField( + model_name='qm', + name='nearest_station', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.SurvexStation'), + ), + migrations.AddField( + model_name='qm', + name='ticked_off_by', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='QMs_ticked_off', to='core.LogbookEntry'), + ), + migrations.AddField( + model_name='dphoto', + name='contains_entrance', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='photo_file', to='core.Entrance'), + ), + migrations.AddField( + model_name='dphoto', + name='contains_logbookentry', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.LogbookEntry'), + ), + migrations.AddField( + model_name='dphoto', + name='contains_person', + field=models.ManyToManyField(blank=True, to='core.Person'), + ), + migrations.AddField( + model_name='dphoto', + name='nearest_QM', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='core.QM'), + ), + migrations.AddField( + model_name='cavedescription', + name='linked_entrances', + field=models.ManyToManyField(blank=True, to='core.Entrance'), + ), + migrations.AddField( + model_name='cavedescription', + name='linked_qms', + field=models.ManyToManyField(blank=True, to='core.QM'), + ), + migrations.AddField( + model_name='cavedescription', + name='linked_subcaves', + field=models.ManyToManyField(blank=True, to='core.NewSubCave'), + ), + migrations.AddField( + model_name='caveandentrance', + name='entrance', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Entrance'), + ), + ] diff --git a/core/migrations/__init__.py b/core/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/flatpages/migrations/0001_initial.py b/flatpages/migrations/0001_initial.py index c292e88..07d2140 100644 --- a/flatpages/migrations/0001_initial.py +++ b/flatpages/migrations/0001_initial.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Generated by Django 1.10.8 on 2019-07-14 19:45 +# Generated by Django 1.10.8 on 2020-02-18 16:01 from __future__ import unicode_literals from django.db import migrations, models @@ -11,7 +11,7 @@ class Migration(migrations.Migration): initial = True dependencies = [ - ('core', '0003_auto_20190714_2029'), + ('core', '0001_initial'), ] operations = [