From b81b4ef2ef8c96bfac10a3e8a0529a069ef9a605 Mon Sep 17 00:00:00 2001 From: Philip Sargent Date: Wed, 12 Oct 2022 22:09:58 +0300 Subject: [PATCH] Add date of update to the generated html file --- core/models/caves.py | 16 ++++++++++------ core/views/caves.py | 3 +++ templates/dataformat/cave.xml | 4 ++-- templates/dataformat/entrance.xml | 4 ++-- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/core/models/caves.py b/core/models/caves.py index 2494a4e..016f92e 100644 --- a/core/models/caves.py +++ b/core/models/caves.py @@ -5,6 +5,7 @@ import re import json import subprocess import operator +from datetime import datetime, timezone from collections import defaultdict from pathlib import Path @@ -235,8 +236,9 @@ class Cave(TroggleModel): filepath = os.path.join(settings.CAVEDESCRIPTIONS, self.filename) t = loader.get_template('dataformat/cave.xml') - #c = Context({'cave': self}) - c = dict({'cave': self}) + now = datetime.now(timezone.utc) + print(now) + c = dict({'cave': self, 'date': now}) u = t.render(c) writetrogglefile(filepath, u) return @@ -245,8 +247,8 @@ class Cave(TroggleModel): filepath = Path(os.path.join(settings.CAVEDESCRIPTIONS, self.filename)) t = loader.get_template('dataformat/cave.xml') - #c = Context({'cave': self}) - c = dict({'cave': self}) + now = datetime.now(timezone.utc) + c = dict({'cave': self, 'date': now}) content = t.render(c) return (filepath, content, "utf8") @@ -422,7 +424,8 @@ class Entrance(TroggleModel): filepath = Path(os.path.join(settings.ENTRANCEDESCRIPTIONS, self.filename)) t = loader.get_template('dataformat/entrance.xml') - c = dict({'entrance': self}) + now = datetime.now(timezone.utc) + c = dict({'entrance': self, 'date': now}) content = t.render(c) return (filepath, content, "utf8") @@ -430,7 +433,8 @@ class Entrance(TroggleModel): filepath = os.path.join(settings.ENTRANCEDESCRIPTIONS, self.filename) t = loader.get_template('dataformat/entrance.xml') - c = dict({'entrance': self}) + now = datetime.now(timezone.utc) + c = dict({'entrance': self, 'date': now}) u = t.render(c) writetrogglefile(filepath, u) return diff --git a/core/views/caves.py b/core/views/caves.py index acd75a6..fe85949 100644 --- a/core/views/caves.py +++ b/core/views/caves.py @@ -301,6 +301,7 @@ def caveEntrance(request, slug): def edit_cave(request, path = "", slug=None): '''This is the form that edits all the cave data and writes out an XML file in the :expoweb: repo folder The format for the file being saved is in templates/dataformat/cave.xml + Warning. This uses Django deep magic. It does save the data into into the database directly, not by parsing the file. ''' @@ -343,6 +344,7 @@ def edit_cave(request, path = "", slug=None): ceinst.save() try: cave_file = cave.file_output() + print(cave_file) write_and_commit([cave_file], "Online edit of %s" % cave) # leave other exceptions unhandled so that they bubble up to user interface except PermissionError: @@ -373,6 +375,7 @@ def edit_entrance(request, path = "", caveslug=None, slug=None): '''This is the form that edits the entrance data for a single entrance and writes out an XML file in the :expoweb: repo folder The format for the file being saved is in templates/dataformat/entrance.xml + Warning. This uses Django deep magic. It does save the data into into the database directly, not by parsing the file. ''' diff --git a/templates/dataformat/cave.xml b/templates/dataformat/cave.xml index 314e5db..67534bd 100644 --- a/templates/dataformat/cave.xml +++ b/templates/dataformat/cave.xml @@ -1,5 +1,5 @@ - + @@ -8,7 +8,7 @@ -This file is generated by troggle using the form documented at /handbook/survey/caveentry.html +This file is generated by troggle on {{date}} UTC using the form documented at /handbook/survey/caveentry.html
diff --git a/templates/dataformat/entrance.xml b/templates/dataformat/entrance.xml index 2551a57..1ed4f37 100644 --- a/templates/dataformat/entrance.xml +++ b/templates/dataformat/entrance.xml @@ -1,6 +1,6 @@ - + @@ -12,7 +12,7 @@ -This file is generated by troggle using the form documented at handbook/survey/ententry.html +This file is generated by troggle on {{date}} UTC using the form documented at handbook/survey/ententry.html
{{ entrance.non_public }}{% for slug in entrance.entranceslug_set.all %}