summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--core/models/caves.py5
-rw-r--r--core/models/troggle.py1
-rw-r--r--core/views/logbooks.py15
-rw-r--r--core/views/other.py20
-rw-r--r--parsers/logbooks.py3
-rw-r--r--templates/errors/generic.html10
-rw-r--r--templates/logbookentry.html16
-rw-r--r--templates/newlogbookentry.html1
8 files changed, 31 insertions, 40 deletions
diff --git a/core/models/caves.py b/core/models/caves.py
index 536ace8..c76b8b5 100644
--- a/core/models/caves.py
+++ b/core/models/caves.py
@@ -373,7 +373,6 @@ class LogbookEntry(TroggleModel):
place = models.CharField(max_length=100,blank=True, null=True,help_text="Only use this if you haven't chosen a cave")
text = models.TextField()
slug = models.SlugField(max_length=50)
- filename = models.CharField(max_length=200,null=True)
entry_type = models.CharField(default="wiki",null=True,choices=LOGBOOK_ENTRY_TYPES,max_length=50)
class Meta:
@@ -412,7 +411,7 @@ class LogbookEntry(TroggleModel):
return urljoin(settings.URL_ROOT, reverse('logbookentry',kwargs={'date':self.date,'slug':self.slug}))
def __str__(self):
- return "%s: (%s)" % (self.date, self.title)
+ return f'{self.date}: {self.title}'
def get_next_by_id(self):
LogbookEntry.objects.get(id=self.id+1)
@@ -507,7 +506,7 @@ class PersonTrip(TroggleModel):
return self.logbook_entry.cave and self.logbook_entry.cave or self.logbook_entry.place
def __str__(self):
- return "%s (%s)" % (self.personexpedition, self.logbook_entry.date)
+ return f'{self.personexpedition} ({self.logbook_entry.date})'
scansFileStorage = FileSystemStorage(location=settings.SURVEY_SCANS, base_url=settings.SURVEYS_URL)
def get_scan_path(instance, filename):
diff --git a/core/models/troggle.py b/core/models/troggle.py
index c41e6f0..927ee44 100644
--- a/core/models/troggle.py
+++ b/core/models/troggle.py
@@ -70,6 +70,7 @@ class DataIssue(TroggleModel):
class Expedition(TroggleModel):
year = models.CharField(max_length=20, unique=True)
name = models.CharField(max_length=100)
+ logbookfile = models.CharField(max_length=100, blank=True, null=True)
def __str__(self):
return self.year
diff --git a/core/views/logbooks.py b/core/views/logbooks.py
index 00ac4e4..4abe966 100644
--- a/core/views/logbooks.py
+++ b/core/views/logbooks.py
@@ -115,16 +115,13 @@ class Expeditions_jsonListView(ListView):
def person(request, first_name='', last_name='', ):
- this_person = Person.objects.get(first_name = first_name, last_name = last_name)
+ try:
+ this_person = Person.objects.get(first_name = first_name, last_name = last_name)
+ return render(request,'person.html', {'person': this_person, })
+ except:
+ message = f'Person not found - possibly Scottish? (We have a name parser issue with Mc, Mac etc.)'
+ return render(request, 'errors/generic.html', {'message': message})
- # This is for removing the reference to the user's profile, in case they set it to the wrong person
- if request.method == 'GET':
- if request.GET.get('clear_profile')=='True':
- this_person.user=None
- this_person.save()
- return HttpResponseRedirect(reverse('profiles_select_profile'))
-
- return render(request,'person.html', {'person': this_person, })
def get_person_chronology(personexpedition):
diff --git a/core/views/other.py b/core/views/other.py
index 569264b..b179f82 100644
--- a/core/views/other.py
+++ b/core/views/other.py
@@ -134,14 +134,12 @@ def ajax_QM_number(request):
return HttpResponse(res)
-
-#print(" - newFile() is next in troggle/core/views/other.py")
-
@login_required_if_public
def newFile(request, pslug = None):
+ ''' not known quite what this was for or where it fits in - original 2006 troggle idea never finished?
+ '''
if pslug:
previousfile = LogbookEntry.objects.get(slug = pslug, date = previousdate, expedition = expedition)
- #assert previousfile.filename
if request.method == 'POST': # If the form has been submitted...
tripForm = TripForm(request.POST) # A form bound to the POST data
personTripFormSet = PersonTripFormSet(request.POST)
@@ -175,16 +173,4 @@ def newFile(request, pslug = None):
return render(request, 'editfile.html', {'fileForm': fileform, })
-@login_required_if_public
-def deleteFile(request, expeditionyear, date = None, slug = None):
- expedition = Expedition.objects.get(year=expeditionyear)
- previousdate = datetime.date(*[int(x) for x in date.split("-")])
- previouslbe = LogbookEntry.objects.get(slug = slug, date = previousdate, expedition = expedition)
- delLogbookEntry(previouslbe)
- return HttpResponseRedirect(reverse('expedition', args=[expedition.year])) # Redirect after POST
-
-def delFile(f):
- for pt in lbe.persontrip_set.all():
- pt.delete()
- lbe.delete()
- os.remove(lbe.filename)
+
diff --git a/parsers/logbooks.py b/parsers/logbooks.py
index 8afb0fa..4310fdb 100644
--- a/parsers/logbooks.py
+++ b/parsers/logbooks.py
@@ -447,11 +447,14 @@ def LoadLogbookForExpedition(expedition, expect):
if expedition.year in yearlinks:
logbookfile = os.path.join(expologbase, yearlinks[expedition.year][0])
+ expedition.logbookfile = yearlinks[expedition.year][0]
parsefunc = yearlinks[expedition.year][1]
else:
logbookfile = os.path.join(expologbase, expedition.year, settings.DEFAULT_LOGBOOK_FILE)
+ expedition.logbookfile = settings.DEFAULT_LOGBOOK_FILE
parsefunc = settings.DEFAULT_LOGBOOK_PARSER
cache_filename = logbookfile + ".cache"
+ expedition.save()
try:
bad_cache = False
diff --git a/templates/errors/generic.html b/templates/errors/generic.html
index 66655a1..19bed46 100644
--- a/templates/errors/generic.html
+++ b/templates/errors/generic.html
@@ -13,7 +13,15 @@
<div class='space'></div>
<div class='align-center'>
<h3>There has been an error.</h3>
- <p>We are terribly sorry but an unknown fault has occurred. </p>
+
+
+
+ {% if message %}
+ {{message}}
+ {% else %}
+ <p>We are terribly sorry but an unknown fault has occurred. </p>
+
+ {% endif %})
</div>
diff --git a/templates/logbookentry.html b/templates/logbookentry.html
index 1af88bd..9407e72 100644
--- a/templates/logbookentry.html
+++ b/templates/logbookentry.html
@@ -1,4 +1,5 @@
{% extends "base.html" %}
+<!-- logbookentry.html - this text visible because this template has been included -->
{% load wiki_markup %}
{% block title %}Logbook {{logbookentry.id}}{% endblock %}
@@ -10,12 +11,14 @@
<h2>{{logbookentry.title|safe}}</h2>
<div id="related">
-<p><a href="{{ logbookentry.expedition.get_absolute_url }}">{{logbookentry.expedition.name}}</a></p>
+<p><a href="{{ logbookentry.expedition.get_absolute_url }}">{{logbookentry.expedition.name}}</a>
+&nbsp;&nbsp;&nbsp;&nbsp;<a href="/years/{{logbookentry.expedition.logbookfile}}">Full logbook</a>
+</p>
{% if logbookentry.cave %}
<p>place: <a href="{{ logbookentry.cave.get_absolute_url }}">{{logbookentry.place}}</p>
{% else %}
- <p>{{logbookentry.place}}</p>
+ <p>{{logbookentry.place|safe}}</p>
{% endif %}
<p>
@@ -67,16 +70,9 @@
<div id="col1">
<div class="logbookentry">
<b>{{logbookentry.date|date:"D d M Y"}}</b>
- {% if logbookentry.entry_type == "html" %}
- <p>{{logbookentry.text|safe}}</p>
- {% else %}
- {{logbookentry.text|wiki_to_html}}
- {% endif %}
+ <p>{{logbookentry.text|safe}}</p>
</div>
</div>
</div>
-{% if logbookentry.filename %}<a href="{% url "editLogBookEntry" expeditionyear=logbookentry.expedition.year pdate=logbookentry.date pslug=logbookentry.slug %}">Edit</a> <a href="{% url "deleteLogBookEntry" expeditionyear=logbookentry.expedition.year date=logbookentry.date slug=logbookentry.slug %}">Delete</a>{%endif%}
-
-
{% endblock %}
diff --git a/templates/newlogbookentry.html b/templates/newlogbookentry.html
index fdb4cbd..bdb0919 100644
--- a/templates/newlogbookentry.html
+++ b/templates/newlogbookentry.html
@@ -1,4 +1,5 @@
{% extends "base.html" %}
+<!-- logbookentry.html - this text visible because this template has been included -->
{% load csrffaker %}
{% block title %}Logbook {{logbookentry.id}}{% endblock %}
{% block head %}