mirror of
https://expo.survex.com/repositories/troggle/.git
synced 2025-12-16 14:17:08 +00:00
QMs now have working url to survexfile & tick description
This commit is contained in:
@@ -272,14 +272,12 @@ def cavepage(request, karea, subpath):
|
||||
r = rendercave(request, cave, cave.slug())
|
||||
return r
|
||||
except NoReverseMatch:
|
||||
raise
|
||||
except:
|
||||
raise
|
||||
message = f'Failed to render cave: {kpath} (it does exist and is unique) because of a Django URL resolution error. Check urls.py.'
|
||||
return render(request,'errors/generic.html', {'message': message})
|
||||
|
||||
# return rendercave(request, cave, cave.slug(), cave_id=cave_id)
|
||||
|
||||
except:
|
||||
# anything else is a new problem. Add in specific error messages here as we discover new types of error
|
||||
raise
|
||||
|
||||
def caveEntrance(request, slug):
|
||||
try:
|
||||
cave = Cave.objects.get(caveslug__slug = slug)
|
||||
@@ -482,6 +480,7 @@ def qm(request,cave_id,qm_id,year,grade=None, blockname=None):
|
||||
|
||||
290 has several QMS with the same number, grade, year (2108) and first 8 chars of the survexblock. This crashes things.
|
||||
'''
|
||||
|
||||
year=int(year)
|
||||
|
||||
if blockname == '':
|
||||
@@ -492,12 +491,13 @@ def qm(request,cave_id,qm_id,year,grade=None, blockname=None):
|
||||
qm=manyqms.get(number=qm_id,expoyear=year)
|
||||
return render(request,'qm.html', {'qm': qm})
|
||||
except QM.DoesNotExist:
|
||||
raise
|
||||
#raise
|
||||
return render(request,'errors/badslug.html', {'badslug': f'{cave_id=} {year=} {qm_id=} {blockname=}'})
|
||||
|
||||
else:
|
||||
try:
|
||||
qmslug = f'{cave_id}-{year}-{blockname=}{qm_id}{grade}'
|
||||
print(f'{qmslug=}')
|
||||
c=getCave(cave_id)
|
||||
manyqms=c.get_QMs()
|
||||
qmqs=manyqms.filter(expoyear=year, blockname=blockname, number=qm_id, grade=grade)
|
||||
@@ -509,15 +509,16 @@ def qm(request,cave_id,qm_id,year,grade=None, blockname=None):
|
||||
else:
|
||||
qm=qmqs.get(expoyear=year, blockname=blockname, number=qm_id, grade=grade)
|
||||
if qm:
|
||||
print(qm, f'{qmslug=}:{cave_id=} {year=} {qm_id=} {blockname=} {qm.expoyear=}')
|
||||
print(qm, f'{qmslug=}:{cave_id=} {year=} {qm_id=} {blockname=} {qm.expoyear=} {qm.completion_description=}')
|
||||
return render(request,'qm.html', {'qm': qm})
|
||||
else:
|
||||
raise
|
||||
#raise
|
||||
return render(request,'errors/badslug.html', {'badslug': f'{cave_id=} {year=} {qm_id=} {blockname=}'})
|
||||
except MultipleObjectsReturned:
|
||||
raise
|
||||
message = f'Multiple QMs with the same cave, year, number, grade AND first 8 chars of the survexblock name. (Could be caused by incomplete databasereset). Fix this in the survex file(s). {cave_id=} {year=} {qm_id=} {blockname=}'
|
||||
return render(request,'errors/generic.html', {'message': message})
|
||||
except QM.DoesNotExist:
|
||||
raise
|
||||
#raise
|
||||
return render(request,'errors/badslug.html', {'badslug': f'{cave_id=} {year=} {qm_id=} {blockname=}'})
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user