Broken prefix list page web UI
Check out nipap-demo.spritelink.net - I'm just getting a big ugly error message: "undefined".

I ran nipapd with -d -f and it appears to work OK.

Could this be that the web-UI expects the interpretation result to look differently? 

diff --git a/nipap-www/nipapwww/controllers/xhr.py b/nipap-www/nipapwww/controllers/xhr.py
index 27fd7bf8..96e141ee 100644
--- a/nipap-www/nipapwww/controllers/xhr.py
+++ b/nipap-www/nipapwww/controllers/xhr.py
@@ -109,6 +109,12 @@ class XhrController(BaseController):
             result = VRF.smart_search(request.params['query_string'],
                 search_options, extra_query
                 )
+            # Remove error key in result from backend as it interferes with the
+            # error handling of the web interface.
+            # TODO: Reevaluate how to deal with different types of errors; soft
+            # errors like query string parser errors and hard errors like lost
+            # database.
+            del result['error']
         except NipapError, e:
             return json.dumps({'error': 1, 'message': e.args, 'type': type(e).__name__})
 
@@ -233,6 +239,12 @@ class XhrController(BaseController):
             result = Pool.smart_search(request.params['query_string'],
                 search_options
                 )
+            # Remove error key in result from backend as it interferes with the
+            # error handling of the web interface.
+            # TODO: Reevaluate how to deal with different types of errors; soft
+            # errors like query string parser errors and hard errors like lost
+            # database.
+            del result['error']
         except NipapError, e:
             return json.dumps({'error': 1, 'message': e.args, 'type': type(e).__name__})
 
@@ -496,6 +508,12 @@ class XhrController(BaseController):
         try:
             result = Prefix.smart_search(request.params['query_string'],
                 search_options, extra_query)
+            # Remove error key in result from backend as it interferes with the
+            # error handling of the web interface.
+            # TODO: Reevaluate how to deal with different types of errors; soft
+            # errors like query string parser errors and hard errors like lost
+            # database.
+            del result['error']
         except NipapError, e:
             return json.dumps({'error': 1, 'message': e.args, 'type': type(e).__name__})
 
['nipap-www/nipapwww/controllers/xhr.py']