from django.contrib.auth.models import User
-from manifold.manifoldapi import ManifoldAPI, ManifoldResult
+from manifold.manifoldapi import ManifoldAPI, ManifoldException, ManifoldResult
from manifold.core.query import Query
# Name my backend 'ManifoldBackend'
auth = {'AuthMethod': 'password', 'Username': username, 'AuthString': password}
api = ManifoldAPI(auth)
-#old # Authenticate user and get session key
-#old # the new API would expect Get('local:session') instead
-#old session_result = api.GetSession()
-#old session = session_result.ok_value()
-#old if not session:
-#old print "GetSession failed",session_result.error()
-#old return
-#old print 'DEALING with session',session
-#old #self.session = session
-#old # Change GetSession() at some point to return expires as well
-#old expires = time.time() + (24 * 60 * 60)
-
sessions_result = api.forward(Query.create('local:session').to_dict())
print "result"
sessions = sessions_result.ok_value()
return
print "first", sessions
session = sessions[0]
- print "SESSION=", session
# Change to session authentication
api.auth = {'AuthMethod': 'session', 'session': session['session']}
print "PERSON=", person
request.session['manifold'] = {'auth': api.auth, 'person': person, 'expires': session['expires']}
+ except ManifoldException, e:
+ print "ManifoldBackend.authenticate caught ManifoldException, returning corresponding ManifoldResult"
+ return e.manifold_result
except Exception, e:
print "E: manifoldbackend", e
import traceback