diff --git a/config.py b/config.py
index d847e0e..1295397 100644
--- a/config.py
+++ b/config.py
@@ -3,3 +3,4 @@ resourcedir = "resources/"
carddir = "cards/"
svgdir = "svgs/"
prettifyHTML = False#requires html5print module, only applies to html processed by airspeed
+svg_page_size = 150
diff --git a/resources/cards/svg.vm b/resources/cards/svg.vm
index 56da4ea..0258f30 100644
--- a/resources/cards/svg.vm
+++ b/resources/cards/svg.vm
@@ -2,7 +2,7 @@
SVG list
-#macro(form)
+#macro(upload_svgs_form)
#end
+#macro(filter_and_collection_forms)
+
+
+ Collections:
+ No collection
+ #foreach($collection in $collections)
+ - $escape_html($collection)
+ #end
+
+#end
#macro(pagination)
-
- #set($self = "svg?")
- #if($current_collection)
- #set($self = "${self}collection=$escape_html($current_collection)&")
- #end
- #if($filter)
- #set($self = "${self}filter=$escape_html($filter)&")
- #end
- #if($page>1)Previous page - #end
- Next page
-
+ #if($has_next || $page>1)
+
+ #set($self = "svg?")
+ #if($current_collection)
+ #set($self = "${self}collection=$escape_html($current_collection)&")
+ #end
+ #if($filter)
+ #set($self = "${self}filter=$escape_html($filter)&")
+ #end
+ #if($page>1)Previous page - #end
+ Page $page
+ #if($has_next)
+ - Next page
+ #end
+
+ #end
#end
Return to cardlist
- #form()
+ #upload_svgs_form()
@@ -69,6 +77,13 @@
#pagination()
-#form()
+
+
+ #upload_svgs_form()
+
+
+ #filter_and_collection_forms()
+
+
Return to cardlist
diff --git a/server.py b/server.py
index 772f641..e688f42 100755
--- a/server.py
+++ b/server.py
@@ -134,8 +134,11 @@ async def svg_list(request, template={}):
if filter:
svgs = [i for i in svgs if filter in i]
+ if len(svgs) > page*config.svg_page_size:
+ has_next = True
+
svgs.sort()
- svgs = svgs[(page-1)*100:page*100]
+ svgs = svgs[(page-1)*config.svg_page_size:page*config.svg_page_size]
return response.html(template["svg.vm"].merge(locals()))