def login(request, user, passed_2fa=None, after_2fa=None, organization_id=None): """ This logs a user in for the sesion and current request. If 2FA is enabled this method will start the MFA flow and return False as required. If `passed_2fa` is set to `True` then the 2FA flow is set to be finalized (user passed the flow). If the session has already resolved MFA in the past, it will automatically detect it from the session. Optionally `after_2fa` can be set to a URL which will be used to override the regular session redirect target directly after the 2fa flow. Returns boolean indicating if the user was logged in. """ has_2fa = Authenticator.objects.user_has_2fa(user) if passed_2fa is None: passed_2fa = ( request.session.get(MFA_SESSION_KEY, '') == six.text_type(user.id) ) if has_2fa and not passed_2fa: request.session['_pending_2fa'] = [user.id, time(), organization_id] if after_2fa is not None: request.session['_after_2fa'] = after_2fa request.session.modified = True return False # TODO(dcramer): this needs to be bound based on MFA options if passed_2fa: request.session[MFA_SESSION_KEY] = six.text_type(user.id) request.session.modified = True mfa_state = request.session.pop('_pending_2fa', ()) if organization_id is None and len(mfa_state) == 3: organization_id = mfa_state[2] # Check for expired passwords here after we cleared the 2fa flow. # While this means that users will have to pass 2fa before they can # figure out that their passwords are expired this is still the more # reasonable behavior. # # We also rememebr _after_2fa here so that we can continue the flow if # someone does it in the same browser. if user.is_password_expired: raise AuthUserPasswordExpired(user) # If there is no authentication backend, just attach the first # one and hope it goes through. This apparently is a thing we # have been doing for a long time, just moved it to a more # reasonable place. if not hasattr(user, 'backend'): user.backend = settings.AUTHENTICATION_BACKENDS[0] _login(request, user) if organization_id: mark_sso_complete(request, organization_id) log_auth_success(request, user.username, organization_id) return True
def login(request): """ log in function used and return to the home page if it success or log in page if it fail. """ redirect_to = request.POST.get('next', request.GET.get('next', '/')) if request.POST and 'username' in request.POST and 'password' in request.POST: username = request.POST['username'].lower() password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: _login(request, user) messages.add_message(request, messages.INFO, _('Vous êtes désormais connecté.')) return HttpResponseRedirect(redirect_to) else: messages.add_message( request, messages.ERROR, _('Impossible de vous connecter, vous \ êtes inactif. Vérifiez vos emails afin de valider votre compte.' )) else: messages.add_message(request, messages.ERROR, _('Impossible de se connecter.')) return render(request, 'profile/login.html', locals())
def login(request, user): from django.contrib.auth import login as _login # 1) get old session key session_key = request.session.session_key # 2) get old search state search_state = None if "search_state" in request.session: search_state = request.session["search_state"] # 3) login and get new session key _login(request, user) # 4) transfer search_state to new session if found if search_state: search_state.set_logged_in() request.session["search_state"] = search_state # 5) send signal with old session key as argument logging.debug("logged in user %s with session key %s" % (user.username, session_key)) # todo: move to auth app try: from django.contrib.auth import signals signals.user_logged_in.send(request=request, user=user, session_key=session_key, sender=None) except ImportError: # django < 1.3 does not have this signal pass
def register(request): if request.method == "POST": form = RegisterForm(request.POST) if form.is_valid(): # if request.POST["password"] != request.POST["password2"]: # # return render(request, 'blog/food-index.html', {'register_form': form}) print("username", request.POST["username"]) User = get_user_model() # because you changed your user model see AUTH_USER_MODEL in settings.py user = User.objects.create_user(request.POST["username"], request.POST["email"], request.POST["password"]) user.first_name = request.POST["first_name"] user.last_name = request.POST["last_name"] user.save() _login(request, user) return HttpResponseRedirect('/') else: form = RegisterForm() return render(request, 'blog/register_form.html', {'register_form': form})
def login(request, user, passed_2fa=False, after_2fa=None): """This logs a user in for the sesion and current request. If 2FA is enabled this method will start the 2FA flow and return False, otherwise it will return True. If `passed_2fa` is set to `True` then the 2FA flow is set to be finalized (user passed the flow). Optionally `after_2fa` can be set to a URL which will be used to override the regular session redirect target directly after the 2fa flow. """ has_2fa = Authenticator.objects.user_has_2fa(user) if has_2fa and not passed_2fa: request.session['_pending_2fa'] = [user.id, time.time()] if after_2fa is not None: request.session['_after_2fa'] = after_2fa return False request.session.pop('_pending_2fa', None) # If there is no authentication backend, just attach the first # one and hope it goes through. This apparently is a thing we # have been doing for a long time, just moved it to a more # reasonable place. if not hasattr(user, 'backend'): user.backend = settings.AUTHENTICATION_BACKENDS[0] _login(request, user) log_auth_success(request, user.username) return True
def signup(request): """ This view lets any unauthenticated user to create a User account. """ if request.user.is_authenticated: return redirect('task_manager:index') else: if request.method == 'POST': form = SignUpForm(request.POST) if form.is_valid(): # If form is valid, save and login the user and redirect to index page user = form.save() _login(request, user) return redirect('task_manager:index') else: # Form is not valid, send back to signup page with error messages return render(request, 'task_manager/signup.html', { 'user': request.user, 'form': form }) else: form = SignUpForm() return render(request, 'task_manager/signup.html', { 'user': request.user, 'form': form })
def register(request): """ Sign up a user :param request: :return: """ if request.method == "POST": form = RegistrationForm(request.POST) phone = request.POST.get("phone") if form.is_valid(): user = form.save(commit=False) user.email = form.cleaned_data.get("username") user.set_password(form.cleaned_data.get("password1")) user.is_active = False user.save() profile = Profile.objects.create(user=user, telephone_number=phone) profile.save() url_name = "authentication:activate_user" activation_link = generate_activation_url(request, user, url_name) message_body = constants.ACCOUNT_ACTIVATION_MESSAGE.format( activation_link=activation_link) mailing_list = [user.email] send_mail("FreshCollections", message_body, "*****@*****.**", mailing_list) user.backend = "authentication.backend.EmailAuthBackend" _login( request, user) # , backend="authentication.backend.EmailAuthBackend") next_url = request.GET.get("next") return redirect("authentication:registration_success") else: import pdb pdb.set_trace() return redirect("authentication:auth_get")
def login(request): if request.method == 'GET': context = { 'next': request.GET.get('next'), 'error':'', } return render(request,'login.html', context) elif request.method == 'POST': param = request.POST username = param.get('username') password = param.get('password') next_ = param.get('next') user = authenticate(username=username, password=password) if user is not None: _login(request, user) if next_!='None' and next_: respond = redirect(next_) else: respond = redirect('user_mode_dashboard') else: return render( request,'login.html', {'error':'Incorrect login'} ) return respond
def login(request, user): from django.contrib.auth import login as _login from askbot.models import signals #1) get old session key session_key = request.session.session_key #2) get old search state search_state = None if 'search_state' in request.session: search_state = request.session['search_state'] #3) login and get new session key _login(request, user) #4) transfer search_state to new session if found if search_state: search_state.set_logged_in() request.session['search_state'] = search_state #5) send signal with old session key as argument logging.debug('logged in user %s with session key %s' % (user.username, session_key)) #todo: move to auth app signals.user_logged_in.send(request=request, user=user, session_key=session_key, sender=None)
def login(request, user=None, next=None): """ Authenticate and login a user, returning the homepage or a redirect(next) url :param request: :param user: :param next: :return: """ if user: _login(request, user) if next: return redirect(next) else: return redirect("home") if request.method == "POST": form = LoginForm(request.POST) if form.is_valid(): username = form.cleaned_data.get("username") password = form.cleaned_data.get("password") user = authenticate(username=username, password=password) next_url = next or request.GET.get('next') if user is not None: _login(request, user) if next_url: return redirect(next_url) else: return redirect("home") else: messages.error(request, "Invalid username or password!") return redirect("authentication:auth_get") return redirect("authentication:auth_get")
def login(request): if request.method == 'GET': context = { 'next': request.GET.get('next'), 'error': '', } return render(request, 'login.html', context) elif request.method == 'POST': param = request.POST username = param.get('username') password = param.get('password') next_ = param.get('next') user = authenticate(username=username, password=password) if user is not None: _login(request, user) if next_ != 'None' and next_: respond = redirect(next_) else: respond = redirect('dashboard') else: return render( request, 'login.html', {'error': 'Incorrect login'} ) return respond
def login(request): # If is the user already logged in? if request.user.is_authenticated(): messages.error(request, msg.users_login_error) messages.info(request, msg.users_already_logged_in) return HttpResponseRedirect(reverse("home")) if request.method == 'POST': username = request.POST['username'] password = request.POST['pwd'] user = authenticate(username = username, password = password) if user is not None: if user.is_active: _login(request, user) messages.success(request, msg.users_login_success) messages.info(request, msg.users_login_success_info) next = "" if 'next' in request.GET: next = request.GET['next'] if next == "" or next == "/": return HttpResponseRedirect(reverse("home")) else: return HttpResponseRedirect(next) else: messages.error(request, msg.users_login_error) messages.info(request, msg.users_invalid) return HttpResponseRedirect(reverse("users:login")) boardlist = Board.objects.all() return render(request, "users/login.html", {'boardlist' : boardlist})
def register(request): username = request.POST['username'] email = request.POST['email'] password = request.POST['password'] new_user = User.objects.create_user(username, email, password) _login(request, new_user) return HttpResponseRedirect(reverse('notes_app:index'))
def login(request,user): from django.contrib.auth import login as _login from askbot.models import signals #1) get old session key session_key = request.session.session_key #2) get old search state search_state = None if 'search_state' in request.session: search_state = request.session['search_state'] #3) login and get new session key _login(request,user) #4) transfer search_state to new session if found if search_state: search_state.set_logged_in() request.session['search_state'] = search_state #5) send signal with old session key as argument logging.debug('logged in user %s with session key %s' % (user.username, session_key)) #todo: move to auth app signals.user_logged_in.send( request = request, user = user, session_key=session_key, sender=None )
def form_valid(self, form): valid = super().form_valid(form) username, password = form.cleaned_data.get( 'username'), form.cleaned_data.get('password1') new_user = authenticate(username=username, password=password) _login(self.request, new_user) return valid
def login(request): # If the user is already logged in, redirect them back. if request.user.is_authenticated: return redirect_next(request) # Get the Firebase ID token from the POST request. id_token = request.POST.get("firebase_idtoken") # Show the login dialog if no ID token was given. if not id_token: return render(request, "authentication/login.html") # Force re-login if the ID token is invalid or has been revoked. try: claims = FirebaseAuth.verify_id_token(id_token, check_revoked=True) except: return redirect_login(request) # Force re-login for incomplete authentications over five minutes old. if time() - claims["auth_time"] >= 5 * 60: return redirect_login(request) # Validate the session with Firebase. validate_session(request, id_token) # Authenticate with Django and log the user in. user = authenticate(request) if user: _login(request, user) return redirect_next(request) else: # Force re-login if user authentication with Django failed. return redirect_login(request)
def activation(request, action_key): """ Activates user based on activation key Activate user - set is_active to true """ try: # активация или восстановление пароля action = ActionRecord.objects.get(action_key=action_key) if action.action_type == 'R': action_type = 'reset_password' else: action_type = 'activate' user = authenticate(activation_key=action_key, action=action_type) if not user: # action key does not exist or expired return HttpResponseForbidden(u'Запись о регистрации не найдена или просрочена. \ Чтобы получить код активации регистрации заново, пройдите по <a href="%s">ссылке</a>.' % reverse('resend_activation_code')) except ActionRecord.DoesNotExist: return HttpResponseForbidden(u'Запись о регистрации не найдена или просрочена. \ Чтобы получить код активации регистрации заново, пройдите по <a href="%s">ссылке</a>.' % reverse('resend_activation_code')) _login(request, user) # перелинковка в зависимости от активации или восстановления пароля if action.action_type == 'R': messages.success(request, u'Новый пароль был выслан на Вашу почту') _logout(request) return HttpResponseRedirect('/') else: return HttpResponseRedirect('/')
def login(request): """ View for processing user login """ if request.user.is_authenticated(): return redirect(r('core:home')) if request.method == 'GET': context = {} if 'signup_username' in request.session: context['signup_username'] = request.session.pop('signup_username') return render(request, 'login.html', context) try: user = User.objects.get( Q(username=request.POST['username']) | Q(email=request.POST['username'])) except User.DoesNotExist: return render(request, 'login.html', {'result': 'loginerror'}) if user.check_password(request.POST['password']): user.backend = 'django.contrib.auth.backends.ModelBackend' _login(request, user) session_time = 60 * 60 * 1 # 1 hour timeout # if user marks remember me checkbox, add a lot of hours to its session if request.POST.get('remember-me') == 'on': session_time *= 10000000 request.session.set_expiry(session_time) return redirect(request.GET.get('next', r('core:home'))) else: return render(request, 'login.html', {'result': 'loginerror'})
def post(self, request): username_or_email = request.POST.get('username') password = request.POST.get('password') if not username_or_email: return self._render(request, username=username_or_email, error='A username or email is required.') username_or_email = username_or_email.lower() try: if '@' in username_or_email: u = User.objects.get(email__iexact=username_or_email) else: u = User.objects.get(username__iexact=username_or_email) except User.DoesNotExist: return self._render(request, username=username_or_email, error='Unknown username or email.') user = authenticate(username=u.username, password=password) if user is None: return self._render(request, username=username_or_email, error='Unknown account or incorrect password.') elif not user.is_active: return self._render(request, username=username_or_email, error='This account is disabled.') # If we got this far, login the request _login(request, user) # If ?next is present and valid, redirect there, otherwise # we default to the dashboard. next_page = get_next_page(request) if next_page: return HttpResponseRedirect(next_page) else: return redirect('static:dashboard')
def login(request): """ View for processing user login """ if request.user.is_authenticated(): return redirect(r('core:home')) if request.method == 'GET': context = {} if 'signup_username' in request.session: context['signup_username'] = request.session.pop('signup_username') return render(request, 'login.html', context) try: user = User.objects.get(Q(username=request.POST['username']) | Q(email=request.POST['username'])) except User.DoesNotExist: return render(request, 'login.html', {'result': 'loginerror'}) if user.check_password(request.POST['password']): user.backend = 'django.contrib.auth.backends.ModelBackend' _login(request, user) session_time = 60 * 60 * 1 # 1 hour timeout # if user marks remember me checkbox, add a lot of hours to its session if request.POST.get('remember-me') == 'on': session_time *= 10000000 request.session.set_expiry(session_time) return redirect(request.GET.get('next', r('core:home'))) else: return render(request, 'login.html', {'result': 'loginerror'})
def ssl_auth(request): """ SSL certificate authentication. """ ssl_auth_form = SSLCertLoginForm(request.POST) if not ssl_auth_form.is_valid(): return HttpResponseBadRequest('400 Bad Request') session = ssl_auth_form.cleaned_data['session'] next_uri = ssl_auth_form.cleaned_data['login_uri'] user = authenticate(request=request) if user and user.is_active: _login(request, user) init_otp(request) if request.user.is_verified(): # OTP disabled next_uri = ssl_auth_form.cleaned_data['next'] else: messages.error(request, 'Certificate authentication failed') # so, django will always start a new session for us. we need to copy # the data to the original session and preferably flush the new one. session.update(request.session) # always logout automatically from SSL-based auth # it's easy enough to log back in anyway if 'openid_request' in session: session['auto_logout'] = True session.save() request.session.flush() return redirect(next_uri)
def login(request): """ the user can login with either the username or password behind the scenes we always use the username """ if request.GET.get('next'): request.session['next'] = request.GET.get('next') next = request.session.get('next', reverse('home')) if request.method == 'POST': username = request.POST['username'] password = request.POST['password'] if '@' in username and '.' in username: # username is an email, find the real username try: user = User.objects.get(email=username) username = user.username except: pass # if not found the authenticate will not work user = authenticate(username=username, password=password) if user is not None and user.is_active: _login(request, user) messages.success(request, 'Bem-vindo!') request.session['next'] = None return redirect(next) else: messages.error(request, 'Usuário ou senha inválidos') return redirect(reverse('login')) return render(request, 'front/auth/login.html', {'title': 'Login'})
def ssl_auth(request): """ SSL certificate authentication. """ ssl_auth_form = SSLCertLoginForm(request.POST) if not ssl_auth_form.is_valid(): return HttpResponseBadRequest('400 Bad Request') session_id = cipher.decrypt( base64.b64decode(ssl_auth_form.cleaned_data['session_id']), 32) next_uri = ssl_auth_form.cleaned_data['login_uri'] user = authenticate(request=request) if user and user.is_active: _login(request, user) init_otp(request) if request.user.is_verified(): # OTP disabled next_uri = ssl_auth_form.cleaned_data['next'] else: messages.error(request, 'Certificate authentication failed') # so, django will always start a new session for us. we need to copy # the data to the original session and preferably flush the new one. session = SessionStore(session_key=session_id) session.update(request.session) # always logout automatically from SSL-based auth # it's easy enough to log back in anyway if 'openid_request' in session: session['auto_logout'] = True session.save() request.session.flush() return redirect(next_uri)
def get(self, request, provider_name): if 'error' in request.GET: return redirect(reverse('login')) provider_name = provider_name.lower() client = self._get_oauth2_client(request, provider_name) try: # Retrieve the state saved in step 1. client.oauthsession._state, next = \ request.session.pop('oauth2_state_%s' % provider_name) except KeyError: return HttpResponseBadRequest('Missing state') client.oauthsession.token = token = client.fetch_token( request.build_absolute_uri()) uid, email, name, size, used = client.get_profile() if request.user.is_authenticated(): user = request.user else: try: # Try to fetch the user and log them in. user = User.objects.get(storages__attrs__uid=uid) except User.DoesNotExist: try: user = User.objects.create_user(email=email, full_name=name) except IntegrityError: return HttpResponseBadRequest('User already registered ' '-- login and try again.') else: # TODO: send new user a welcome email. pass # If the token exists, update it. Otherwise create it. try: try: storage = Storage.objects.get(user=user, type=client.TYPE, attrs__uid=uid) except Storage.DoesNotExist: storage = Storage(user=user, type=client.TYPE) storage.attrs = {'uid': uid} client.initialize(storage) storage.auth = token storage.size = size storage.used = used storage.save() except IntegrityError: return HttpResponseBadRequest('Cloud already registered to user') _login(request, user) if not next: next = reverse('ui:new') return redirect(next)
def login(request, user): from django.contrib.auth import login as _login from forum.models import user_logged_in #custom signal #1) get old session key session_key = request.session.session_key #2) login and get new session key _login(request, user) #3) send signal with old session key as argument user_logged_in.send(user=user, session_key=session_key, sender=None)
def login(request: HttpRequest): if request.method == 'POST': form = AuthenticationForm(request, request.POST) if not form.is_valid(): return render(request, 'login.html', {'form': form}) _login(request, form.get_user()) return redirect('/') form = AuthenticationForm() return render(request, 'login.html', {'form': form})
def login(request): username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username,password=password) if user: _login(request,user) return redirect(request.META.get('HTTP_REFERER')) else: raise Http404('用户不存在')
def login(request,user): from django.contrib.auth import login as _login from forum.models import user_logged_in #custom signal #1) get old session key session_key = request.session.session_key #2) login and get new session key _login(request,user) #3) send signal with old session key as argument user_logged_in.send(user=user,session_key=session_key,sender=None)
def view_user(request, name_user): profile = request.user.get_profile() if not profile.user.is_superuser: raise Http404 _logout(request) user_obj_temp = User.objects.get(username=name_user) user_obj = authenticate(username=user_obj_temp.username, password=user_obj_temp.password) _login(request, user_obj) return HttpResponseRedirect(reverse('service_choice'))
def login(request): if request.method == "POST": username = request.POST['username'] password = request.POST['password'] user = _authenticate(request, username=username, password=password) if user is not None: _login(request, user) return HttpResponseRedirect(reverse("index")) else: return render(request, "registration/login.html")
def login(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is None: messages.error(request, 'Bad credentials.') return HttpResponseRedirect("/") _login(request, user) return HttpResponseRedirect("/dashboard")
def auth(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: _login(request, user) return HttpResponseRedirect("http://118.123.6.162:48000/info/") else: hit = "error" return render(request, 'login.html', {'hit': hit })
def login(request, user): """ 登录,在原功能上加入了记录ip地址的功能 """ from accounts.utils import get_client_ip user.ip_address = get_client_ip(request) user.save() from django.contrib.auth import login as _login _login(request, user)
def login(req): msg = '' if req.method == 'POST': u = authenticate(username=req.POST['username'],password=req.POST['password']) if u != None: _login(req,u) return HttpResponseRedirect('/account/') else: msg = 'Invalid credentials' return render(req, 'account/login.html', {'msg':msg})
def login(request): if request.method == "POST": username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user: if user.is_active: _login(request, user) return redirect(reverse("index")) return render(request, "login.html")
def login(request): if request.method == 'POST': print(request.POST) data = json.loads(request.body) user = authenticate(username=data['username'], password=data['password']) if not user: return HttpResponse("Bad Cridential") else: _login(request, user) return HttpResponse('Success :)')
def register(request): if request.method == 'GET': return render(request, 'register.html', {'error': ''}) elif request.method == 'POST': param = request.POST username = param.get('email') firstname = param.get('firstname') lastname = param.get('lastname') email = param.get('email') ssh = param.get('ssh') password = param.get('password') repassword = param.get('repassword') if not username or not firstname or not lastname: return render(request, 'register.html', {'error': 'Please fill out all required fields'}) if not email: return render(request, 'register.html', {'error': 'Please fill out address'}) if repassword != password: return render(request, 'register.html', {'error': 'Password not same'}) try: verify_email(email) except ValidationError as e: return render(request, 'register.html', {'error': e.message}) if User.objects.filter(username=username).exists(): return render(request, 'register.html', {'error': 'Username Exists'}) elif User.objects.filter(email=email).exists(): return render(request, 'register.html', {'error': 'Email Exists'}) else: my_user = None try: my_user = AppUser.objects.create_user( email, password, firstname=firstname, lastname=lastname, ssh=ssh, ) except ValidationError as e: return render(request, 'register.html', {'error': 'Not a valid SSH'}) verify_url = reverse('verify', kwargs={'verifycode':my_user.verifycode}) msg = ''' Hi, {0} {1}: Thank you for using AppBooster. Here is your verification url: {2} Best, AppBooster '''.format(firstname, lastname, request.build_absolute_uri(verify_url),) send_mail('Purdue AppBooster Verification', msg, '*****@*****.**', [email,]) user = authenticate(username=username, password=password) _login(request, user) respond = redirect('dashboard') return respond else: return render(request, 'register.html', {'error': ''})
def login(request): if request.user.is_authenticated(): return HttpResponseRedirect('/') if request.method == 'POST': form = AuthenticationForm(data=request.POST) if form.is_valid(): _login(request, form.user_cache) return HttpResponseRedirect('/') else: form = AuthenticationForm() return render_to_response('login.html')
def login(request): if request.method == "POST": form = AuthenticationForm(request, data=request.POST) if form.is_valid(): _login(request, form.get_user()) return HttpResponseRedirect("/") else: form = AuthenticationForm() context = { 'form': form, } return render(request, 'home.html', context=context)
def login(request): """Login view.""" email = request.POST['email'] password = request.POST['password'] user = authenticate(request, username=email, password=password) if user: _login(request, user, backend=BACKEND) messages.success(request, 'Vous êtes connecté.') return redirect("/") else: messages.error(request, 'Email ou mot de passe incorrect.') return redirect('/')
def login(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user is not None: _login(request, user) return redirect(home) else: return render(request, 'login.html') elif request.method == 'GET': return render(request, 'login.html')
def auth(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) result = Result() if user: _login(request=request, user=user) result.code = Consts.SUCCESS_CODE else: result.code = Consts.FAILED_CODE result.msg = Consts.LOGIN_FAILED_MSG return HttpResponse(json.dumps(result.to_dict()), content_type="application/json")
def register(request): try: username = request.POST["username"] password1 = request.POST["password1"] password2 = request.POST["password2"] if not username or not password1 or password1 != password2: return HttpResponseRedirect(reverse("login")) user = User.objects.create_user(username, "", password1) _login(request, user) return HttpResponseRedirect(reverse("index")) except: return HttpResponseRedirect(reverse("login"))
def login(request): # import ipdb; ipdb.set_trace() form = EmailUsernameAuthenticationForm(request.POST or None) # form = AuthenticationForm(request.POST or None) if not request.user.is_authenticated: if request.method == 'POST': if form.is_valid(): username = form.cleaned_data['username'] password = form.cleaned_data['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: _login(request, user) if (request.user.profile.type == Profile.CLIENT_USER): if request.user.profile.company_group is None: logout(request) messages.error( request, 'Usuário cliente não tem empresa associada.' ) return redirect(resolve_url('account:login')) # enviar para paginas de clientes messages.success( request, 'seja bem vindo, <strong>{}</strong>'.format( user.profile.full_name.title())) return redirect(resolve_url('cliente:ticket_list')) else: # enviar para pgina de usario da servigraf messages.success( request, 'seja bem vindo, <strong>{}</strong>'.format( user.profile.full_name.title())) return redirect(resolve_url('core:home')) else: error = 'O usuario {0}/{1} encontra-se desativado.'.format( user.username, user.email) form.add_error(None, error) else: # messages.error(request, 'Não é possivel fazer o login') error = 'Por favor, entre com um usuário e senha corretos. \ Note que ambos os campos diferenciam maiúsculas e minúsculas.' form.add_error(None, error) form.add_error('username', 'verifique o usuário e tente novamente') form.add_error('password', 'verifique o password e tente novamente') return render(request, 'login.html', {'form': form})
def login(request, user): from django.contrib.auth import login as _login # get old session key session_key = request.session.session_key # login and get new session key _login(request, user) # send signal with old session key as argument logging.debug("logged in user %s with session key %s" % (user.username, session_key)) # todo: move to auth app user_logged_in.send(request=request, user=user, session_key=session_key, sender=None)
def login(request, user, passed_2fa=False): has_2fa = Authenticator.objects.user_has_2fa(user) if has_2fa and not passed_2fa: request.session['_pending_2fa'] = [user.id, time.time()] else: # If there is no authentication backend, just attach the first # one and hope it goes through. This apparently is a thing we # have been doing for a long time, just moved it to a more # reasonable place. if not hasattr(user, 'backend'): user.backend = settings.AUTHENTICATION_BACKENDS[0] _login(request, user) log_auth_success(request, user.username)
def login(request,user): from django.contrib.auth import login as _login from forum.models import user_logged_in #custom signal if settings.USE_EXTERNAL_LEGACY_LOGIN == True: EXTERNAL_LOGIN_APP.api.login(request,user) #1) get old session key session_key = request.session.session_key #2) login and get new session key _login(request,user) #3) send signal with old session key as argument user_logged_in.send(user=user,session_key=session_key,sender=None)
def loginPost(request): if logged_in(request): return user(request, request.user.id) else: username = request.POST['username'] password = request.POST['password'] try_user = _authenticate(username=username, password=password) print(try_user) if user is not None: _login(request, try_user) return user(request, try_user.id) else: return render(request, 'routine/login.html', {"error":"Zugangsdaten falsch"})
def login(request): if request.method == "POST": form = AuthenticationForm(request.POST) if (form.is_valid()): username = form.cleaned_data.get('username') password = form.cleaned_data.get('password') user = authenticate(username=username, password=password) _login(request, user) return redirect("") else: # return render(request, 'registration/login.html') form = AuthenticationForm() return render(request, 'registration/login.html', {'form': form})
def signup(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): user = form.save() user.backend = 'django.contrib.auth.backends.ModelBackend' _login(request, user) request.session.set_expiry(0) return redirect(user) else: form = UserCreationForm() return render(request, 'registration/signup.html', {'form': form})
def register(request): if request.method == 'GET': return render(request,'register.html', {'error':''}) elif request.method == 'POST': param = request.POST username = param.get('username') firstname = param.get('firstname') lastname= param.get('lastname') email = param.get('email') password = param.get('password') repassword = param.get('repassword') invite_code = param.get('invitation') if not invite_code: return render(request,'register.html', {'error':'Please fill out the invitation code'}) try: invitation = Invitation.objects.get(code=invite_code) if invitation.used: return render(request,'register.html', {'error':'Used invitation code'}) invitation.used = True invitation.save() except: return render(request,'register.html', {'error':'Incorrect invitation code'}) if not username or not firstname or not lastname: return render(request,'register.html', {'error':'Please fill out all required fields'}) if not email: return render(request,'register.html', {'error':'Please fill out address'}) if repassword != password: return render(request,'register.html', {'error':'Password not same'}) try: validate_email(email) except ValidationError: return render(request,'register.html', {'error':'Please use correct email'}) if User.objects.filter(username = username).exists(): return render(request,'register.html', {'error':'Username Exists'}) elif User.objects.filter(email = email).exists(): return render(request,'register.html', {'error':'Email Exists'}) else: my_user = MyUser.objects.create_user( username, email, password, firstname, lastname ) user = my_user.user user = authenticate(username=username, password=password) _login(request, user) respond = redirect('user_mode_dashboard') return respond else: return render(request,'register.html', {'error':''})
def login(request): form = LoginForm(request.POST or None) if form.is_valid(): user = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password']) if user is not None: if user.is_active: _login(request,user) return redirect('index') else: form.add_error('username', u'帐号被锁定请联系管理员!') else: form.add_error('username', u'帐号不存在,请再次输入!') return render(request, 'defaults/login.html',{'form':form})
def ad_login_check(request): if request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user is not None: _login(request, user) messages.info(request, '登录成功') return HttpResponseRedirect(reverse('society:ad_index')) else: messages.info(request, '用户名或密码错误') return render(request, 'society/backstage/admin_login.html') else: return redirect('society:ad_login')
def post(self, request): first_name = request.POST.get('first_name') last_name = request.POST.get('last_name') email = request.POST.get('email') username = request.POST.get('username') password = request.POST.get('password') password_confirm = request.POST.get('password_confirm') from_landing = bool(request.GET.get('from_landing', False)) from_tutorial = bool(request.GET.get('from_tutorial', False)) try: validate.name(first_name, last_name) validate.email(email) validate.username(username) validate.password(password, confirm_value=password_confirm) except ValidationError as e: return self._render(request, { 'first_name': first_name, 'last_name': last_name, 'email': email, 'username': username, 'error': ' '.join(e.messages) }) # If we got this far, create the account and authenticate the user user = User.objects.create( first_name=first_name, last_name=last_name, email=email, username=username ) user.set_password(password) user.save() _login(request, authenticate(username=username, password=password)) next_page = get_next_page(request) if from_landing: redirect_to = reverse('docs:quickstart') elif from_tutorial: redirect_to = reverse('docs:quickstart') + '#download-sandbox' elif next_page: redirect_to = next_page else: redirect_to = reverse('static:dashboard') # We need an interstitial redirect so that we can do mixpanel.alias() # at the correct time. return render(request, 'accounts/redirect.html', { 'redirect_to': redirect_to })
def login(request): form = LoginForm(request.POST or None) print request.GET.get('next', 'GET') print request.POST.get('next', 'POST') if form.is_valid(): print form.cleaned_data user = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password']) if user and user.is_active: _login(request,user) return redirect('home') else: form.add_error('username', errors.LOGIN_USER_NOEXIST) return render(request, 'login.html',{'form': form})
def login(request): username = request.POST['username'] password = request.POST['password'] user = authenticate(username=username, password=password) if user is not None: if user.is_active: _login(request, user) # redirect to a success page. else: # Return a 'disabled account' error message pass else: pass # Return an 'invalid login' error message. return HttpResponseRedirect(request.POST.get('next', '/'))
def login(request): template_name = 'login.html' if request.user.is_authenticated(): return redirect('core:home') if request.method == 'POST': form = LoginForm(data=request.POST) if form.is_valid(): _login(request, form.get_user()) return redirect('core:home') else: return render(request, template_name, {"form": form}) return render(request, template_name, {"form": LoginForm()})