Minor tweak to has_navigation filter to silence all errors and return False.
authorStephen Burrows <stephen.r.burrows@gmail.com>
Wed, 9 Feb 2011 21:59:20 +0000 (16:59 -0500)
committerStephen Burrows <stephen.r.burrows@gmail.com>
Wed, 9 Feb 2011 21:59:20 +0000 (16:59 -0500)
contrib/shipherd/templatetags/shipherd.py

index 98e3e6b..fa4ec3e 100644 (file)
@@ -84,13 +84,16 @@ def recursenavigation(parser, token):
 
 @register.filter
 def has_navigation(node, key=None):
-       nav = node.navigation
-       if key is not None:
-               if key in nav and bool(node.navigation[key]):
-                       return True
-               elif key not in node.navigation:
-                       return False
-       return bool(node.navigation)
+       try:
+               nav = node.navigation
+               if key is not None:
+                       if key in nav and bool(node.navigation[key]):
+                               return True
+                       elif key not in node.navigation:
+                               return False
+               return bool(node.navigation)
+       except:
+               return False
 
 
 @register.filter