X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=manifold%2Fmanifoldapi.py;h=6639d484cf2ed6bfe96cd5dc53bfd325b34adecf;hb=bd8ad6aafd20775cf6884faa98cadf30839cc032;hp=a80a220c770a5382f7150a2bebac1ba089b48056;hpb=ea102d533c62de817826a08aab357d5f19405360;p=myslice.git diff --git a/manifold/manifoldapi.py b/manifold/manifoldapi.py index a80a220c..6639d484 100644 --- a/manifold/manifoldapi.py +++ b/manifold/manifoldapi.py @@ -132,9 +132,14 @@ def _execute_query(request, query, manifold_api_session_auth): print "-"*80 result = manifold_api.forward(query.to_dict()) if result['code'] == 2: + # this is gross; at the very least we need to logout() + # but most importantly there is a need to refine that test, since + # code==2 does not necessarily mean an expired session # XXX only if we know it is the issue del request.session['manifold'] - raise Exception, 'Error running query: %r' % result + # Flush django session + request.session.flush() + #raise Exception, 'Error running query: %r' % result if result['code'] == 1: print "WARNING" @@ -147,6 +152,7 @@ def _execute_query(request, query, manifold_api_session_auth): def execute_query(request, query): if not 'manifold' in request.session or not 'auth' in request.session['manifold']: + request.session.flush() raise Exception, "User not authenticated" manifold_api_session_auth = request.session['manifold']['auth'] return _execute_query(request, query, manifold_api_session_auth)