def post(self, request, *args, **kwargs): ret = super(LoggedLoginView, self).post(request, *args, **kwargs) current_user = getattr(request, 'user', None) if request.user.is_authenticated: logger.info( smart_text(u"User {} logged in from {}".format( self.request.user.username, request.META.get('REMOTE_ADDR', None)))) ret.set_cookie('userLoggedIn', 'true') current_user = UserSerializer(self.request.user) current_user = smart_text(JSONRenderer().render(current_user.data)) current_user = urllib.parse.quote('%s' % current_user, '') ret.set_cookie('current_user', current_user, secure=settings.SESSION_COOKIE_SECURE or None) return ret else: if 'username' in self.request.POST: logger.warn( smart_text(u"Login failed for user {} from {}".format( self.request.POST.get('username'), request.META.get('REMOTE_ADDR', None)))) ret.status_code = 401 return ret
def dispatch(self, request, *args, **kwargs): response = super(CompleteView, self).dispatch(request, *args, **kwargs) if self.request.user and self.request.user.is_authenticated(): request_hash = AuthToken.get_request_hash(self.request) try: token = AuthToken.objects.filter(user=request.user, request_hash=request_hash, reason='', expires__gt=now())[0] token.refresh() logger.info( smart_text(u"User {} logged in".format( self.request.user.username))) except IndexError: token = AuthToken.objects.create(user=request.user, request_hash=request_hash) logger.info( smart_text(u"User {} logged in".format( self.request.user.username))) request.session['auth_token_key'] = token.key token_key = urllib.quote('"%s"' % token.key) response.set_cookie('token', token_key) token_expires = token.expires.astimezone(utc).strftime( '%Y-%m-%dT%H:%M:%S') token_expires = '%s.%03dZ' % (token_expires, token.expires.microsecond / 1000) token_expires = urllib.quote('"%s"' % token_expires) response.set_cookie('token_expires', token_expires) response.set_cookie('userLoggedIn', 'true') current_user = UserSerializer(self.request.user) current_user = JSONRenderer().render(current_user.data) current_user = urllib.quote('%s' % current_user, '') response.set_cookie('current_user', current_user) return response
def dispatch(self, request, *args, **kwargs): response = super(CompleteView, self).dispatch(request, *args, **kwargs) if self.request.user and self.request.user.is_authenticated: logger.info(smart_text(u"User {} logged in".format(self.request.user.username))) response.set_cookie('userLoggedIn', 'true') current_user = UserSerializer(self.request.user) current_user = smart_text(JSONRenderer().render(current_user.data)) current_user = urllib.parse.quote('%s' % current_user, '') response.set_cookie('current_user', current_user, secure=settings.SESSION_COOKIE_SECURE or None) return response
def post(self, request, *args, **kwargs): ret = super(LoggedLoginView, self).post(request, *args, **kwargs) current_user = getattr(request, 'user', None) if request.user.is_authenticated: logger.info( smart_text(u"User {} logged in.".format( self.request.user.username))) ret.set_cookie('userLoggedIn', 'true') current_user = UserSerializer(self.request.user) current_user = JSONRenderer().render(current_user.data) current_user = urllib.quote('%s' % current_user, '') ret.set_cookie('current_user', current_user) return ret else: ret.status_code = 401 return ret