summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
Diffstat (limited to 'core')
-rw-r--r--core/migrations/0001_initial.py55
-rw-r--r--core/models.py2
-rw-r--r--core/models_survex.py4
-rw-r--r--core/views_logbooks.py32
-rw-r--r--core/views_statistics.py22
5 files changed, 31 insertions, 84 deletions
diff --git a/core/migrations/0001_initial.py b/core/migrations/0001_initial.py
index 080ef64..4f91b89 100644
--- a/core/migrations/0001_initial.py
+++ b/core/migrations/0001_initial.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-# Generated by Django 1.11.29 on 2020-06-26 23:53
+# Generated by Django 1.11.29 on 2020-07-04 12:11
from __future__ import unicode_literals
from django.conf import settings
@@ -25,7 +25,7 @@ class Migration(migrations.Migration):
('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')),
+ ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Area')),
],
options={
'abstract': False,
@@ -191,8 +191,8 @@ class Migration(migrations.Migration):
('slug', models.SlugField()),
('filename', models.CharField(max_length=200, null=True)),
('entry_type', models.CharField(choices=[('wiki', 'Wiki style logbook'), ('html', 'Html style logbook')], default='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')),
+ ('expedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Expedition')),
+ ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.ExpeditionDay')),
],
options={
'verbose_name_plural': 'Logbook Entries',
@@ -290,7 +290,7 @@ class Migration(migrations.Migration):
('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')),
+ ('found_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='QMs_found', to='core.LogbookEntry')),
],
options={
'abstract': False,
@@ -313,7 +313,7 @@ class Migration(migrations.Migration):
('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)),
- ('scansfolder', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.ScansFolder')),
+ ('scansfolder', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.ScansFolder')),
],
options={
'ordering': ('name',),
@@ -324,17 +324,16 @@ class Migration(migrations.Migration):
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=100)),
+ ('title', models.CharField(max_length=100)),
('date', models.DateField(blank=True, null=True)),
('survexpath', models.CharField(max_length=200)),
('legsall', models.IntegerField(null=True)),
- ('legssplay', models.IntegerField(null=True)),
- ('legssurfc', models.IntegerField(null=True)),
- ('totalleglength', models.FloatField(null=True)),
- ('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')),
- ('scansfolder', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='core.ScansFolder')),
+ ('legslength', models.FloatField(null=True)),
+ ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Cave')),
+ ('expedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Expedition')),
+ ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.ExpeditionDay')),
+ ('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.SurvexBlock')),
+ ('scansfolder', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.ScansFolder')),
],
options={
'ordering': ('id',),
@@ -345,7 +344,7 @@ class Migration(migrations.Migration):
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')),
+ ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Cave')),
],
options={
'ordering': ('id',),
@@ -356,8 +355,8 @@ class Migration(migrations.Migration):
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')),
+ ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Cave')),
+ ('survexdirectory', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.SurvexDirectory')),
],
options={
'ordering': ('id',),
@@ -369,10 +368,10 @@ class Migration(migrations.Migration):
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('nrole', models.CharField(blank=True, choices=[('insts', 'Instruments'), ('dog', 'Other'), ('notes', 'Notes'), ('pics', 'Pictures'), ('tape', 'Tape measure'), ('useless', 'Useless'), ('helper', 'Helper'), ('disto', 'Disto'), ('consultant', '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')),
+ ('expeditionday', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.ExpeditionDay')),
+ ('person', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Person')),
+ ('personexpedition', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.PersonExpedition')),
+ ('persontrip', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.PersonTrip')),
('survexblock', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.SurvexBlock')),
],
),
@@ -384,7 +383,7 @@ class Migration(migrations.Migration):
('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')),
+ ('block', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.SurvexBlock')),
],
),
migrations.CreateModel(
@@ -392,8 +391,8 @@ class Migration(migrations.Migration):
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')),
+ ('cave', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.Cave')),
+ ('survexblock', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.SurvexBlock')),
],
),
migrations.CreateModel(
@@ -417,22 +416,22 @@ class Migration(migrations.Migration):
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'),
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, 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'),
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='core.SurvexFile'),
),
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'),
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, 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'),
+ field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='QMs_ticked_off', to='core.LogbookEntry'),
),
migrations.AddField(
model_name='cavedescription',
diff --git a/core/models.py b/core/models.py
index f6ab815..7ccef54 100644
--- a/core/models.py
+++ b/core/models.py
@@ -219,7 +219,7 @@ class PersonExpedition(TroggleModel):
def surveyedleglength(self):
survexblocks = [personrole.survexblock for personrole in self.personrole_set.all() ]
- return sum([survexblock.totalleglength for survexblock in set(survexblocks)])
+ return sum([survexblock.legslength for survexblock in set(survexblocks)])
# would prefer to return actual person trips so we could link to first and last ones
def day_min(self):
diff --git a/core/models_survex.py b/core/models_survex.py
index 65bbaaa..375144c 100644
--- a/core/models_survex.py
+++ b/core/models_survex.py
@@ -113,9 +113,7 @@ class SurvexBlock(models.Model):
scansfolder = models.ForeignKey("ScansFolder", null=True,on_delete=models.SET_NULL)
legsall = models.IntegerField(null=True) # summary data for this block
- legssplay = models.IntegerField(null=True) # summary data for this block
- legssurfc = models.IntegerField(null=True) # summary data for this block
- totalleglength = models.FloatField(null=True)
+ legslength = models.FloatField(null=True)
class Meta:
ordering = ('id',)
diff --git a/core/views_logbooks.py b/core/views_logbooks.py
index 1b4e6d1..1f1e2d1 100644
--- a/core/views_logbooks.py
+++ b/core/views_logbooks.py
@@ -166,38 +166,6 @@ def personForm(request,pk):
form=PersonForm(instance=person)
return render(request,'personform.html', {'form':form,})
-def experimental(request):
- blockroots = models.SurvexBlock.objects.filter(name="rootblock")
- if len(blockroots)>1:
- print(" ! more than one root survexblock {}".format(len(blockroots)))
- for sbr in blockroots:
- print("{} {} {} {}".format(sbr.id, sbr.name, sbr.text, sbr.date))
- sbr = blockroots[0]
- totalsurvexlength = sbr.totalleglength
- try:
- nimportlegs = int(sbr.text)
- except:
- print("{} {} {} {}".format(sbr.id, sbr.name, sbr.text, sbr.date))
- nimportlegs = -1
-
- legsbyexpo = [ ]
- addupsurvexlength = 0
- for expedition in Expedition.objects.all():
- survexblocks = expedition.survexblock_set.all()
- legsyear=0
- survexleglength = 0.0
- for survexblock in survexblocks:
- survexleglength += survexblock.totalleglength
- try:
- legsyear += int(survexblock.text)
- except:
- pass
- addupsurvexlength += survexleglength
- legsbyexpo.append((expedition, {"nsurvexlegs":legsyear, "survexleglength":survexleglength}))
- legsbyexpo.reverse()
-
- return render(request, 'experimental.html', { "nsurvexlegs":nimportlegs, "totalsurvexlength":totalsurvexlength, "addupsurvexlength":addupsurvexlength, "legsbyexpo":legsbyexpo })
-
@login_required_if_public
def newLogbookEntry(request, expeditionyear, pdate = None, pslug = None):
expedition = Expedition.objects.get(year=expeditionyear)
diff --git a/core/views_statistics.py b/core/views_statistics.py
index 5b85ef1..0ce8845 100644
--- a/core/views_statistics.py
+++ b/core/views_statistics.py
@@ -71,24 +71,6 @@ def stats(request):
statsDict['caveCount'] = "{:,}".format(Cave.objects.count())
statsDict['personCount'] = "{:,}".format(Person.objects.count())
statsDict['logbookEntryCount'] = "{:,}".format(LogbookEntry.objects.count())
- try:
- blockroots = SurvexBlock.objects.filter(name="rootblock")
- if len(blockroots)>1:
- print(" ! more than one root survexblock {}".format(len(blockroots)))
- for sbr in blockroots:
- print("{} {} {} {}".format(sbr.id, sbr.name, sbr.legsall, sbr.date))
- sbr = blockroots[0]
- totalsurvexlength = sbr.totalleglength
- nimportlegs = sbr.legsall
- except:
- # if no files yet imported into database
- #survexfile = models_survex.SurvexFile(path=settings.SURVEX_TOPNAME, cave=None)
- #survexblockdummy = models_survex.SurvexBlock(name="dummy", survexpath="", cave=None, survexfile=survexfile,
- #legsall=0, legssplay=0, legssurfc=0, totalleglength=0.0)
- #sbr = survexblockdummy
- totalsurvexlength = 0.0
- nimportlegs = -1
- print("{} {} {} {}".format(sbr.id, sbr.name, sbr.legsall, sbr.date))
legsbyexpo = [ ]
addupsurvexlength = 0
@@ -97,7 +79,7 @@ def stats(request):
legsyear=0
survexleglength = 0.0
for survexblock in survexblocks:
- survexleglength += survexblock.totalleglength
+ survexleglength += survexblock.legslength
try:
legsyear += int(survexblock.legsall)
except:
@@ -107,5 +89,5 @@ def stats(request):
"survexleglength":"{:,.0f}".format(survexleglength)}))
legsbyexpo.reverse()
- renderDict = {**statsDict, **{ "nsurvexlegs": "{:,}".format(nimportlegs), "totalsurvexlength":totalsurvexlength/1000, "addupsurvexlength":addupsurvexlength/1000, "legsbyexpo":legsbyexpo }} # new syntax
+ renderDict = {**statsDict, **{ "addupsurvexlength":addupsurvexlength/1000, "legsbyexpo":legsbyexpo }} # new syntax
return render(request,'statistics.html', renderDict)