summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorexpo <expo@expobox.potato.hut>2012-08-05 19:26:24 +0200
committerexpo <expo@expobox.potato.hut>2012-08-05 19:26:24 +0200
commited1d273e034b8042cc2bd09eecf307cd48966a0f (patch)
tree35d46352e01869e25b8ae94ba5b4f59d08893c0d
parent9654e5da1c8f1b455f4f5795b315851bf6fa2cea (diff)
downloadtroggle-ed1d273e034b8042cc2bd09eecf307cd48966a0f.tar.gz
troggle-ed1d273e034b8042cc2bd09eecf307cd48966a0f.tar.bz2
troggle-ed1d273e034b8042cc2bd09eecf307cd48966a0f.zip
Fixed cave order
-rw-r--r--core/views_caves.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/core/views_caves.py b/core/views_caves.py
index d8ced23..90b6f5e 100644
--- a/core/views_caves.py
+++ b/core/views_caves.py
@@ -21,14 +21,26 @@ def getCave(cave_id):
cave = Cave.objects.get(unofficial_number=cave_id)
return cave
+def pad5(x):
+ return "0" * (5 -len(x.group(0))) + x.group(0)
+def padnumber(x):
+ return re.sub("\d+", pad5, x)
+def numericalcmp(x, y):
+ return cmp(padnumber(x), padnumber(y))
+
+
+
def caveCmp(x, y):
if x.kataster_number:
if y.kataster_number:
- return cmp(x.kataster_number, y.kataster_number)
+ return numericalcmp(x.kataster_number, y.kataster_number)
else:
return -1
else:
- return 1
+ if y.kataster_number:
+ return 1
+ else:
+ return numericalcmp(x.unofficial_number, y.unofficial_number)
def caveindex(request):
caves = Cave.objects.all()