mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2025-12-15 10:37:07 +00:00
new report for Lost entrances
This commit is contained in:
@@ -266,6 +266,9 @@ class Entrance(TroggleModel):
|
||||
|
||||
def __str__(self):
|
||||
return str(self.slug)
|
||||
|
||||
def name(self):
|
||||
return str(self.slug)[5:]
|
||||
|
||||
def single(self, station):
|
||||
if not station:
|
||||
|
||||
@@ -167,7 +167,10 @@ def padnumber(x):
|
||||
def numericalcmp(x, y):
|
||||
return cmp(padnumber(x), padnumber(y))
|
||||
|
||||
|
||||
def entKey(e):
|
||||
k = caveKey(e.firstcave())
|
||||
return k
|
||||
|
||||
def caveKey(c):
|
||||
"""This function goes into a lexicographic sort function, and the values are strings,
|
||||
but we want to sort numerically on kataster number before sorting on unofficial number.
|
||||
@@ -239,6 +242,26 @@ def entranceindex(request):
|
||||
{"entrances": ents},
|
||||
)
|
||||
|
||||
def entrancetags(request):
|
||||
ents = list(Entrance.objects.all())
|
||||
ents1623 = []
|
||||
for e in ents:
|
||||
if e.slug[:4] == "1623":
|
||||
if e.firstcave().kataster_number:
|
||||
if int(e.firstcave().kataster_number) < 35:
|
||||
continue
|
||||
if e.best_station():
|
||||
continue
|
||||
if e.findability != "S": # it says we do not have coordinates
|
||||
ents1623.append(e)
|
||||
ents1623.sort(key=entKey)
|
||||
|
||||
return render(
|
||||
request,
|
||||
"entrancetags.html",
|
||||
{"entrances": ents1623},
|
||||
)
|
||||
|
||||
|
||||
def cave3d(request, cave_id=""):
|
||||
"""This is used to create a download url in templates/cave.html if anyone wants to download the .3d file
|
||||
|
||||
59
templates/entrancetags.html
Normal file
59
templates/entrancetags.html
Normal file
@@ -0,0 +1,59 @@
|
||||
{% extends "cavebase.html" %}
|
||||
|
||||
|
||||
{% block title %}Entrance Tag Status{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<style>
|
||||
table, th, td {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
</style>
|
||||
<h1>Entrance Tag Status</h1>
|
||||
<p>
|
||||
This list excludes those entrances with valid coordinates (which may or may not have tags), irrespective of the "findability" value. <br />
|
||||
[Many entrances have out-dated settings for "findability".]
|
||||
<h2>1623</h2>
|
||||
<table>
|
||||
<theader>
|
||||
<tr><th width="16">Entrance</th><th width="16">Cave</th><th width="2">Find..</th><th width="2">Mark</th><th width="40%">Marking & <em>Location</em></th></tr>
|
||||
</theader>
|
||||
<tbody>
|
||||
<ul>
|
||||
{% for entrance in entrances %}
|
||||
<tr><td>
|
||||
{% if entrance.best_station %}
|
||||
<a href="/stations#{{ entrance.best_station }}">{% endif %}
|
||||
{{ entrance.name }}</a></td>
|
||||
<td>{% for cave in entrance.cavelist %}<a href="{{ cave.url }}">{{ cave.number }}</a>{% endfor %}</td>
|
||||
|
||||
<td>{% if entrance.findability%}
|
||||
{% if entrance.lat %}<a href="{{ entrance.firstcave.url }}">{% endif %}
|
||||
|
||||
{{ entrance.get_findability_display}}</a>
|
||||
|
||||
{% endif %}
|
||||
</td>
|
||||
<td id="{{ entrance.best_station }}">
|
||||
{% if entrance.marking%}
|
||||
<a href="https://www.openstreetmap.org/?mlat={{ entrance.lat|floatformat:7}}&mlon={{entrance.long|floatformat:7}}">
|
||||
{{ entrance.get_marking_display }}</a>
|
||||
{% endif %}
|
||||
</td>
|
||||
|
||||
<td>
|
||||
<font color="blue"> {{ entrance.firstcave.official_name|safe }}</font><br />
|
||||
{% if entrance.marking_comment%}{{ entrance.marking_comment|safe }}<br />{% endif %}
|
||||
<em>
|
||||
{{ entrance.location_description|safe }}</em>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</ul>
|
||||
|
||||
|
||||
|
||||
{% endblock %}
|
||||
2
urls.py
2
urls.py
@@ -18,6 +18,7 @@ from troggle.core.views.caves import (
|
||||
edit_cave,
|
||||
edit_entrance,
|
||||
entranceindex,
|
||||
entrancetags,
|
||||
expo_kml,
|
||||
expo_kmz,
|
||||
get_entrances,
|
||||
@@ -157,6 +158,7 @@ trogglepatterns = [
|
||||
path('caveslist', caveslist, name="caveslist"),
|
||||
|
||||
path('entrances', entranceindex, name="entranceindex"),
|
||||
path('enttags', entrancetags, name="entrancetags"),
|
||||
|
||||
re_path(r'^admin/doc/', include('django.contrib.admindocs.urls')), # needs docutils Python module (http://docutils.sf.net/).
|
||||
path('admin/', admin.site.urls), # includes admin login & logout urls & /admin/jsi18n/ NOTE TERMINAL SLASH
|
||||
|
||||
Reference in New Issue
Block a user