aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/tools/request.py
diff options
context:
space:
mode:
Diffstat (limited to 'mediagoblin/tools/request.py')
-rw-r--r--mediagoblin/tools/request.py17
1 files changed, 5 insertions, 12 deletions
diff --git a/mediagoblin/tools/request.py b/mediagoblin/tools/request.py
index ae372c92..ee342eae 100644
--- a/mediagoblin/tools/request.py
+++ b/mediagoblin/tools/request.py
@@ -15,7 +15,7 @@
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import logging
-from mediagoblin.db.util import ObjectId, InvalidId
+from mediagoblin.db.models import User
_log = logging.getLogger(__name__)
@@ -25,21 +25,14 @@ def setup_user_in_request(request):
Examine a request and tack on a request.user parameter if that's
appropriate.
"""
- if not request.session.has_key('user_id'):
+ if 'user_id' not in request.session:
request.user = None
return
- try:
- oid = ObjectId(request.session['user_id'])
- except InvalidId:
- user = None
- else:
- user = request.db.User.find_one({'_id': oid})
+ request.user = User.query.get(request.session['user_id'])
- if not user:
+ if not request.user:
# Something's wrong... this user doesn't exist? Invalidate
# this session.
_log.warn("Killing session for user id %r", request.session['user_id'])
- request.session.invalidate()
-
- request.user = user
+ request.session.delete()