コード例 #1
0
    def test_login_form_validation_for_blank_items(self):
        email_blank_form = LoginForm(
            data={'email': '', 'password': self.valid_password}
        )
        self.assertFalse(email_blank_form.is_valid())

        password_blank_form = LoginForm(
            data={'email': self.valid_email, 'password': ''}
        )
        self.assertFalse(password_blank_form.is_valid())
コード例 #2
0
ファイル: tests.py プロジェクト: imxiaohui/django-todolist-1
 def test_empty_password(self):
     form = LoginForm({'username': '******', 'password': ''})
     self.assertFalse(form.is_valid())
     self.assertEqual(
         form.errors,
         {'password': [u'This field is required.']}
     )
コード例 #3
0
ファイル: tests.py プロジェクト: SushiTee/teerace
	def test_wrong_username(self):
		data = self.data
		data['username'] = '******'
		form = LoginForm(data)
		self.assertFalse(form.is_valid())
		self.assertEqual(form.errors['__all__'],
			["Invalid username and/or password"])
コード例 #4
0
ファイル: views.py プロジェクト: harshalgalgale/leaflet-1
def login_request(request):
    if request.user.is_authenticated():
        return reverse(index)
    if request.method == 'POST':
        form = LoginForm(request.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:
                login(request, user)
                return redirect(reverse('create'))
            else:
                # Invalid User or Pass
                messages.add_message(request, ERROR, 'You have provided invalid login information.')
                return render(request, 'login.html', {
                    'form':form
                })
        else:
            # Blank
            messages.add_message(request, ERROR, 'Please enter correct login information.')
            return render(request, 'login.html', {
                'form':form
            })
    else:
        # No POST, Show Form
        messages.add_message(request, INFO, 'Please login below.')
        return render(request, 'login.html', {
            'form':LoginForm(),
        })
コード例 #5
0
ファイル: views.py プロジェクト: maximeloizeau/absences
def login(request):
	template = 'accounts/login.html'
	if request.user.is_authenticated():
		return HttpResponseRedirect(reverse('accounts:index'))
	else:
		if request.method == 'POST':
			form = LoginForm(request.POST)
			if form.is_valid():
				username = request.POST['login']
				password = request.POST['password']
				user = auth.authenticate(username=username, password=password)
				if user is not None:
					auth.login(request, user)					
					return HttpResponseRedirect(reverse('saisie:index'))
				else:
					return render(request, template, {
						'form': form,
						'error': 'La connexion a échouée.',
					})
			else:
				return render(request, template, {
					'form': form,
					'error': 'Veuillez remplir tous les champs correctement.',
				})
		else:
			form = LoginForm()

	return render(request, template, {
		'form': form,
	})
コード例 #6
0
ファイル: views.py プロジェクト: lbedford/accounts
def login(request):
  """Login. Looks up by username or email address."""
  if request.user.is_authenticated():
    return HttpResponseRedirect(reverse('index'))
  next_url = None
  if request.method == 'POST':
    form = LoginForm(request.POST)
    if form.is_valid():
      user = auth.authenticate(username=request.POST['username'],
                               password=request.POST['password'])
      if not user:
        try:
          email_user = User.objects.get(
              email__exact=request.POST['username'])
          user = auth.authenticate(username=email_user.username,
                                   password=request.POST['password'])
        except User.DoesNotExist:
          user = None
      if user:
        if user.is_active:
          auth.login(request, user)
          if 'next' in request.POST:
            return HttpResponseRedirect(request.POST['next'])
          else:
            return HttpResponseRedirect(reverse('index'))
        else:
          form.errors['username'] = '******'
      else:
        form.errors['username'] = (
            'username or email address not found and/or password wrong')
  else:
    form = LoginForm()
    next_url = urllib.unquote_plus(request.GET.get('next', '')).decode('utf8')
  return render(request, 'accounts/login.html', {'login_form': form,
                                                 'next': next_url})
コード例 #7
0
def signin(request):
	error = []
	if request.user.is_authenticated():
		return HttpResponseRedirect('/profile/')
	if request.method =="POST":
		form = LoginForm(request.POST) #pass the form the request.post values
		if form.is_valid():
			username = form.cleaned_data['username']
			password = form.cleaned_data['password']
			userprofile = authenticate(username=username, password=password) #if passwords are valid
			if userprofile is not None: #if all went well
				if userprofile.is_active:
					login(request, userprofile) #login the request as this particular user
					return HttpResponseRedirect('/a/profile/')
				else:
					errors.append('User %s is disabled' % userprofile.username)
			else:
				error.append('Username and password combination did not match.')
				return render_to_response('accounts/login.html', {'form':form, 'error':error}, context_instance=RequestContext(request)) #wrong credentials, go back and look at errors
		else:
			return render_to_response('accounts/login.html', {'form':form}, context_instance=RequestContext(request))
				
			
			
			
	else:
		""" nothing has been done, show the form"""
		form = LoginForm()
		context = {'form': form, 'errors':error,}
		return render_to_response('accounts/login.html', context, context_instance=RequestContext(request))
コード例 #8
0
def view_account(request):
    if request.method != 'POST':
        return HttpResponse(json.dumps({'success': False, 'message': 'POST requests only'}), mimetype='application/json')
    form = LoginForm(request.POST)

    if not form.is_valid():
        return HttpResponse(json.dumps({'success': False, 'message': form.errors}), mimetype='application/json')

    email = form.cleaned_data.get('email', None)
    password = form.cleaned_data.get('password', None)
    create = form.cleaned_data.get('create', False)

    if email is None or password is None:
        return HttpResponse(json.dumps({'success': False, 'message': 'Missing required parameters email or password'}), mimetype='application/json')

    user = accounts.user_for_email(email)
    success_message = 'Login Successful'
    if user is None and create is True:
        success_message = 'Account Creation Successful'
        user = PushUser.objects.create_user(username=email, email=email, password=password)

    user = authenticate(username=email, password=password)
    if user is not None:
        if user.is_active:
            login(request, user)
            return HttpResponse(json.dumps({'success': True, 'message': success_message}), mimetype='application/json')
    return HttpResponse(json.dumps({'success': False, 'message': 'Invalid Login'}), mimetype='application/json')
コード例 #9
0
ファイル: views.py プロジェクト: andruwwwka/super5
class LoginView(TemplateView):
    template_name = "signin.html"

    def __init__(self):
        super(LoginView, self).__init__()
        self.form = LoginForm()

    def get_context(self, request, *args, **kwargs):
        context = {
            'form': self.form
        }
        return context

    def get(self, request, *args, **kwargs):
        return self.render_to_response(self.get_context(request))

    def post(self, request, *args, **kwargs):
        self.form = LoginForm(request.POST)
        if self.form.is_valid():
            self.form.save()
            user = auth.authenticate(
                email=self.form.user.email,
                password=self.form.str_password
            )
            auth.login(request, user)
            del request.POST['email']
            del request.POST['password']
            return redirect('index_page')
        else:
            return self.render_to_response(self.get_context(request))
コード例 #10
0
ファイル: views.py プロジェクト: SushiTee/teerace
def login(request):
	if request.user.is_authenticated():
		return redirect(reverse('home'))

	_request = None
	if request.method == 'POST':
		_request = request.POST.copy()
	else:
		_request = request.GET.copy()

	next_uri = _request.get('next', get_config('LOGIN_REDIRECT_URL',
		reverse('home')))
	# rescuing poor users from infinite redirection loop
	if next_uri == get_config('LOGIN_URL', reverse('login')):
		next_uri = get_config('LOGIN_REDIRECT_URL', reverse('home'))

	login_form = LoginForm()

	if request.method == 'POST':
		login_form = LoginForm(request.POST)
		if login_form.is_valid() and login_form.user:
			auth_login(request, login_form.user)
			messages.success(request, "Hello, {0}.".format(login_form.user))
			badges.possibly_award_badge("logged_in",
				user=login_form.user)
			return redirect(next_uri)

	return {
		'login_form': login_form,
		'next': next_uri,
	}
コード例 #11
0
ファイル: views.py プロジェクト: rogilesor/myBlog
def mylogin(request):
	form = LoginForm(request.POST or None)
	
	if form.is_valid():
		username = form.cleaned_data['username']
		password = form.cleaned_data['password']
		
		try :
			the_user = MyUser.objects.get(username=username)
			user = authenticate(username=the_user.username,password=password)
		except :
			user = None

		if user is not None:

			# user = authenticate(username=the_user.username,password=password)

			if user.is_active:
				login(request,user)
				messages.success(request, 'Vous êtes maintenant connecté')	

			else:
				messages.success(request, "Votre compte est en attente d'activation")
				pass
		else:
			return redirect('/register/')

	context = {'form':form}
	return render(request,"registration/login.html",context)
コード例 #12
0
ファイル: views.py プロジェクト: scotfu/M
def loginview(request):
    if request.method == 'POST':
        form=LoginForm(request.POST)
        session_cart=getCart(request)
        try:
            next= request.POST['next']
        except:
            next='/'
        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)
                    user_cart=getCart(request)
                    cartMerge(user_cart, session_cart)
                    request.session['cart']={}
                    return HttpResponseRedirect(next)
    else:
        if '_auth_user_id' in request.session:
            return HttpResponseRedirect('/')
        else:
            form=LoginForm()
            try:
                next= request.GET['next']
            except:
                next='/'
    return render_to_response('login_form.html',
            {'form': form,
            'next': next},
             context_instance=RequestContext(request))
コード例 #13
0
ファイル: views.py プロジェクト: ariel17/servertail
def login(request):
    login_form = LoginForm()
    register_form = RegistrationForm()
    
    next = request.REQUEST.get('next', settings.LOGIN_REDIRECT_URL)
    # Special case next urls that will lead us into redirect loops
    if next == settings.LOGIN_URL:
        next = settings.LOGIN_REDIRECT_URL
    
    if 'kind' in request.POST:
        if request.POST['kind'] == 'register':
            register_form = RegistrationForm(request.POST)
            if register_form.is_valid():
                _backend_hackend(request, register_form.save())
                return HttpResponseRedirect(next)
        elif request.POST['kind'] == 'login':
            login_form = LoginForm(request.POST)
            if login_form.is_valid() and login_form.user:
                _backend_hackend(request, login_form.user)
                return HttpResponseRedirect(next)
    context = {
        'login_form': login_form,
        'register_form': register_form,
        'next': next,
    }
    return render_to_response('accounts/login.html', context,
        context_instance=RequestContext(request))
コード例 #14
0
ファイル: tests.py プロジェクト: imxiaohui/django-todolist-1
 def test_too_long_username(self):
     form = LoginForm(self.too_long_username)
     self.assertFalse(form.is_valid())
     self.assertEqual(
         form.errors,
         {'username': [u'Ensure this value has at most 64' +
                       ' characters (it has 65).']}
     )
コード例 #15
0
ファイル: views.py プロジェクト: bloodpet/PalsUnli
def login(request, template_name='signin.html'):
    if request.GET.get('next', None):
        request.session['POST_AUTH_URL'] = request.GET.get('next')
    if 'POST' == request.method:
        form = LoginForm(data=request.POST)
        if form.is_valid():
            auth.login(request, form.get_user())
            if request.session.test_cookie_worked():
                request.session.delete_test_cookie()
            if form.cleaned_data['keep_signed_in']:
                # Sessions expire in about ten years.
                request.session.set_expiry(datetime.timedelta(3650))
            else:
                # Session expires when user closes browser.
                request.session.set_expiry(0)
            if request.GET.get('ajax'):
                pass
                '''
                from utils import json
                return HttpResponse(
                    json.get_json(
                        request,
                        200,
                        ugettext(u'Login successful.'),
                        dict()
                    ),
                    content_type=json.get_response_mimetype(request)
                )
                '''
            else:
                return accounts.post_auth_redirect(request)
        else:
            if request.GET.get('ajax'):
                pass
                '''
                from utils import json
                return HttpResponse(
                    json.get_json(
                        request,
                        403,
                        ugettext(u'Authentication Failed. Access forbidden.'),
                        dict()
                    ),
                    content_type=json.get_response_mimetype(request)
                )
                '''
    else:
        form = LoginForm()

    context = dict(
        form=form
    )

    return render_to_response(
        template_name,
        context,
        context_instance=RequestContext(request)
    )
コード例 #16
0
ファイル: views.py プロジェクト: BetaDesign/clutch
def login(request):
    login_form = LoginForm(request.POST or None)
    if login_form.is_valid():
        _backend_hackend(request, login_form.user)
        return HttpResponseRedirect(request.REQUEST.get('next', '/'))
    context = {
        'login_form': login_form,
    }
    return TemplateResponse(request, 'accounts/login.html', context)
コード例 #17
0
ファイル: views.py プロジェクト: chicanymous/migrawatch-mono
	def post(self, request):
		form = LoginForm(request.POST)
		if form.is_valid():
			user = form.get_user()
			if not user:
				return redirect('login')
			login(request, user)
			return redirect('dashboard:home')
		else:
			context = {'form': form}
			return render(request, 'dashboard/utility/login.html', context)
コード例 #18
0
ファイル: views.py プロジェクト: flysmoke/ijizhang
def login(request):
    '''登陆视图'''
    template_var={}
    form = LoginForm()    
    if request.method == 'POST':
        form=LoginForm(request.POST.copy())
        if form.is_valid():
            _login(request,form.cleaned_data["username"],form.cleaned_data["password"])
            return HttpResponseRedirect("/")
    template_var["form"]=form        
    return render_to_response("accounts/login.html",template_var,context_instance=RequestContext(request))
コード例 #19
0
ファイル: views.py プロジェクト: am1ty9d9v/Django-auth-app
def login(request):
	
	# Checking for the sesion, if exists then redirect to the profile page
	try:
		if request.session['username']:
			username = request.session['username']
			return HttpResponseRedirect('/accounts/profile/%s' % username)
	except KeyError:
		pass
		msg_on_email_not_match = ""
		msg_on_password_not_match = ""
		email_id_from_login_form = ""
		if request.method == 'POST':
			form = LoginForm(request.POST)
			if form.is_valid():
				email_id_from_login_form = form.cleaned_data['email_id']
				password_from_login_form = form.cleaned_data['password']
				email_id_to_be_match = ""
				password_to_be_match = ""
				username = ""
				password_match = False
				
				users = User.objects.filter(email = email_id_from_login_form)
				for user in users:
					email_id_to_be_match = user.email
					password_to_be_match = user.password
					
					password_match = check_password(password_from_login_form, password_to_be_match)
					username = user.username
				
				
				if email_id_from_login_form == email_id_to_be_match:
					if password_match == True:
						# url = reverse('profile', kwargs = {'username': username})
						
						request.session['username'] = username
												
						# write code here to update the last_login time
						users = User.objects.filter(email = email_id_to_be_match).update(last_login = datetime.datetime.now())
						return HttpResponseRedirect('/accounts/profile/%s' % username)
					else:
						msg_on_password_not_match = "Entered password is incorrect"
						return render_to_response('registration/login.html', {'msg_on_password_not_match':msg_on_password_not_match,
																			'msg_on_email_not_match':msg_on_email_not_match,
																			'email_id_from_login_form':email_id_from_login_form,
																			}, context_instance = RequestContext(request))
				else:
					msg_on_email_not_match = "Email Id is not registered with us"
					return render_to_response('registration/login.html', {'msg_on_password_not_match':msg_on_password_not_match,
																			'msg_on_email_not_match':msg_on_email_not_match,
																			'email_id_from_login_form':email_id_from_login_form,
																			}, context_instance = RequestContext(request))
	return render_to_response('registration/login.html', {}, context_instance = RequestContext(request))
コード例 #20
0
ファイル: views.py プロジェクト: p2pu/mentor
def login(request):
    '''Login form'''
    form = LoginForm()
    if request.method == "POST":
        form = LoginForm(request.POST)
        if form.is_valid():
            if form.authenticate(request) == True:
                if request.GET.get('next'):
                    return redirect(request.GET['next'])                        
                return redirect('project_category')
            else:
                form.errors['authenticate'] = "Whoops, wrong email and password!"
    return direct_to_template(request, 'login_form.html', locals())
コード例 #21
0
def login(request):
    # get next parameter
    next = request.REQUEST.get('next', settings.LOGIN_REDIRECT_URL)

    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            user = form.save()
            auth_login(request, user)
            return redirect(next)
    else:
        form = LoginForm()
    return render(request, 'accounts/login.html', {'form': form, 'next': next})
コード例 #22
0
ファイル: views.py プロジェクト: gojohnkevin/mondentisteapp
 def post(self, request, *args, **kwargs):
     destination = request.POST.get('next', reverse('home'))
     form = LoginForm(request.POST)
     if form.is_valid():
         user = form.user
         auth.login(request, user)
         return HttpResponseRedirect(destination)
     else:
         response = self.render_to_response(self.get_context_data(**{
                         'login_form': form
                     }), status=401)
         response['auth-response'] = 'authError'
         return response
コード例 #23
0
ファイル: forms_tests.py プロジェクト: ygrass/handsome
    def test_clean(self):
        """
        Raise ValidationError if username or password doesn't match
        """
        # add test User account
        user = UserFactory()
        user.set_password('123')
        user.save()

        # incorrect username
        data = {'username': '******', 'password': '******'}
        form = LoginForm(data)
        self.assertFalse(form.is_valid())

        # incorrect password
        data = {'username': user.username, 'password': '******'}
        form = LoginForm(data)
        self.assertFalse(form.is_valid())

        # valid account
        data = {'username': user.username, 'password': '******'}
        form = LoginForm(data)
        self.assertTrue(form.is_valid())
コード例 #24
0
ファイル: views.py プロジェクト: fakegermano/webponto
def user_login(request):
    context = RequestContext(request)
    successfull = False
    logged = False
    if request.user.is_authenticated():
        logged = True;
    # if http is post take form data and login
    if request.method == 'POST':
        # get form data
        login_form = LoginForm(data=request.POST)
        if login_form.is_valid():
            ra = request.POST['ra']
            password = request.POST['password']
            user = None
            flag = False
            try:
                username = UserProfile.objects.get(ra=ra).user.username
                user = authenticate(username=username, password=password)
            except UserProfile.DoesNotExist:
                login_form._errors['inexistente'] = login_form.error_class([u'Ra inexistente'])
                flag = True
            finally:
                # pass into django authentication
                # if returned object from authenticate is not none (found the user)
                if user:
                    #checks if account was disabled
                    if user.is_active:
                        login(request, user)
                        # log the user in and successfull is set
                        successfull = True
                    else:
                        # error messages for the form
                        login_form._errors['desabilitada'] = login_form.error_class([u'Sua conta foi desabilitada, '
                                                                                     u'entre com contato com o '
                                                                                     u'administrador'])
                elif not flag:
                    # error messages for the form
                    login_form._errors['invalidos'] = login_form.error_class([u'Login ou senha invalidos'])

        else:
            # errors on the form validation
            pass
    else:
        # generates a blank unbound form
        login_form = LoginForm()
    template = 'accounts/login.html'
    return render(request, template, {'login_form': login_form,
                                         'successfull': successfull,
                                         'logged': logged})
コード例 #25
0
ファイル: views.py プロジェクト: demonkit/framework_test
def login_page(request):
    if request.method == 'POST':
        redirect_to = request.REQUEST.get(REDIRECT_FIELD_NAME, '/')
        login_form = LoginForm(request.POST)
        if login_form.is_valid():
            login(request, login_form.get_user())
            print redirect_to
            return HttpResponseRedirect(redirect_to)
    login_form = LoginForm()
    return render_to_response("login_page.html", context_instance=RequestContext(
                request, {
                    "action": "login",
                    "form": login_form,
                    "errors": login_form.errors.values()
                }))
コード例 #26
0
ファイル: user.py プロジェクト: wei576262547/devops
def login(request):
    if request.method == 'POST':
        loginform = LoginForm(request, request.POST)
        if loginform.is_valid():
            user = loginform.get_user()
            if user is not None:
                auth_login(request, user)
                return HttpResponseRedirect(reverse('index'))
            print('bb')
        print('cc')
    else:
        loginform = LoginForm()
        print('aa')
        user = None
    return render(request, 'account/login.html', {'form': loginform})
コード例 #27
0
ファイル: views.py プロジェクト: umpatel2618/final_project
 def post(self, request):
     form1 = LoginForm(data=request.POST)
     if form1.is_valid():
         print('isvalid')
         username = form1.cleaned_data.get('username')
         password = form1.cleaned_data.get('password')
         user = authenticate(username=username, password=password)
         if user is not None:
             login(request, user)
             return redirect('index')
         else:
             messages.error(
                 request, 'User Not Found please Enter Valid data' +
                 str(form1.errors))
     return render(request, 'accounts/login.html', {'form': form1})
コード例 #28
0
ファイル: views.py プロジェクト: MiuNottingham/Miunottingham
def login_for_medal(request):
    form = LoginForm(request.POST)
    if form.is_valid():
        message = form.cleaned_data['message']
        if message == 'Login successful':
            user = form.cleaned_data['user']
            request.session['is_login'] = True
            request.session['user_name'] = user.username
            request.session['user_id'] = user.id
            data = {}
            data['status'] = 'SUCCESS'
        else:
            data = {}
            data['status'] = 'ERROR'
        return JsonResponse(data)
コード例 #29
0
    def post(self, request, *args, **kwargs):
        form = LoginForm(request.POST)
        if form.is_valid():
            cd = form.cleaned_data
            user = authenticate(request,
                                username=cd['username'],
                                password=cd['password'])
            if user is None:
                return HttpResponse('Неправильный логин и/или пароль')
            if not user.is_active:
                return HttpResponse('Ваш аккаунт заблокирован')
            login(request, user)
            return HttpResponse('Добро пожаловать! Успешный вход')

        return render(request, 'accounts/login.html', {'form': form})
コード例 #30
0
ファイル: views.py プロジェクト: AllenYoungChina/trip
def user_login(request):
    """ 用户登录 """
    if request.method == 'POST':
        form = LoginForm(data=request.POST)
        if form.is_valid():
            form.do_login(request=request)
            print('表单验证通过')
            return redirect(to='/accounts/user/info')
        else:
            print(form.errors)
    else:
        form = LoginForm()
    return render(request, 'user_login.html', {
        'form': form
    })
コード例 #31
0
ファイル: views.py プロジェクト: JeromeLier/sblog
def login(request):
    if request.method == 'GET':
        form = LoginForm()
        return render_to_response('login.html', RequestContext(request, {'form': form}))
    else:
        print "in post"
        form = LoginForm(request.POST)
        if form.is_valid():
            result = validate_login(request, form.cleaned_data["username"], form.cleaned_data["password"])
            if result:
                return HttpResponseRedirect("/simpleblog/bloglist")
            else:
                return render_to_response('login.html', RequestContext(request, {'form': form ,'password_is_wrong':True}))
        else:
            return render_to_response('login.html', RequestContext(request, {'form': form}))
コード例 #32
0
 def post(self, request):
     form = LoginForm(request.POST)
     if form.is_valid():
         cd = form.cleaned_data
         user = authenticate(username=cd['email'], password=cd["password"])
         if user is not None:
             if user.is_active:
                 login(request, user)
                 return redirect("landing_page")
             else:
                 return HttpResponse("Konto jest zablokowane")
         else:
             return redirect("register")
     else:
         return render(request, "registration/login.html", {"form": form})
コード例 #33
0
ファイル: views.py プロジェクト: atuljain/Dashboard
def login_user(request):
    """
        Function is used for login the registered user in the Peekhi.
    """

    if request.user.is_authenticated():
        return redirect(reverse('profiles_list'))

    if request.method == "POST":
        form = LoginForm(request.POST)

        if form.is_valid():
            user_obj = User.objects.get(email=form.cleaned_data['email'])
            user = authenticate(username=user_obj.username, password=form.cleaned_data['password'])

            if user:

                if user.is_active:
                    login(request, user)

                    return redirect(request.GET.get('next') or reverse('profiles_list'))

                messages.add_message(request, messages.ERROR, "Please check your email and verify the email address to log on to 64 bit Consultants.")

                return redirect(reverse('login_user'))

            error_message = "Email Id and password did't match."

            return render_to_response("accounts/login_user.html",{
                "form": form,
                "error_message": error_message,
                "current": "login",
                "next": request.POST.get('next', '')
            }, context_instance=RequestContext(request))

        return render_to_response("accounts/login_user.html",{
            "form": form,
            "current": "login",
            "next": request.POST.get('next', '')
        }, context_instance=RequestContext(request))
    else:
        form = LoginForm()

        return render_to_response("accounts/login_user.html", {
            "form": form,
            "current": "login",
            "next": request.GET.get('next', '')
        }, context_instance=RequestContext(request))
コード例 #34
0
ファイル: views.py プロジェクト: demonkit/framework_test
def login_page(request):
    if request.method == 'POST':
        redirect_to = request.REQUEST.get(REDIRECT_FIELD_NAME, '/')
        login_form = LoginForm(request.POST)
        if login_form.is_valid():
            login(request, login_form.get_user())
            print redirect_to
            return HttpResponseRedirect(redirect_to)
    login_form = LoginForm()
    return render_to_response("login_page.html",
                              context_instance=RequestContext(
                                  request, {
                                      "action": "login",
                                      "form": login_form,
                                      "errors": login_form.errors.values()
                                  }))
コード例 #35
0
def user_login(request):
    """ 用户登录 """
    if request.method == 'POST':
        # Form表单默认属性顺序(self, data=None, files=None, auto_id='id_%s', prefix=None,
        #                  initial=None, error_class=ErrorList, label_suffix=None,
        #                  empty_permitted=False, field_order=None, use_required_attribute=None, renderer=None):
        form = LoginForm(data=request.POST)
        if form.is_valid():
            form.do_login(request)
            print('表单验证通过')
            return redirect('/accounts/user/info/')
        else:
            print(form.errors)
    else:
        form = LoginForm()
    return render(request, 'user_login.html', {'form': form})
コード例 #36
0
ファイル: views.py プロジェクト: CliffordKasera/w2w
def login_user(request):
    if request.method == "POST":
        form = LoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data["email"]
            password = form.cleaned_data["password"]
            user = authenticate(email=email, password=password)
            if user is not None:
                login(request, user)
                return redirect("/")
            else:
                form.add_error(field=None, error=INVALID_LOGIN_ERROR)
    else:
        form = LoginForm()

    return render(request, "accounts/login.html", {"form": form})
コード例 #37
0
def login_view(request):
    if request.method == "POST":
        form = LoginForm(request.POST)
        if form.is_valid():
            user = authenticate(username=request.POST["username"],
                                password=request.POST["password"])
            if user is not None:
                if user.is_active:
                    login(request, user)
                    return redirect("lists:index")
        else:
            return render(request, "accounts/login.html", {"form": form})
    else:
        return render(request, "accounts/login.html", {"form": LoginForm()})

    return redirect("lists:index")
コード例 #38
0
ファイル: views.py プロジェクト: aufimtsev/CTFBoard
def log_in(request):
    args = {}
    args.update(csrf(request))
    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)
            login(request, user)
            return redirect('/')
    elif request.method == "GET":
        form = LoginForm()
    args.update({'form': form})
    return render(request, 'accounts/login.html', args)
コード例 #39
0
def login(request):
    form = LoginForm(request.POST or None)
    if request.method == "POST":
        if form.is_valid():
            username = form.cleaned_data.get('username')
            password = form.cleaned_data.get('password')
            try:
                user = UserProfile.objects.get(email=username,
                                               password=password)
                request.session['username'] = user.email
                return redirect("/products")
            except:
                return HttpResponse("<p>Login failed</p>")

    context = {'form': form}
    return render(request, 'front/login.html', context)
コード例 #40
0
def sign_in(request):
    if request.user.is_authenticated():
        return HttpResponseRedirect(reverse("home"))
    else:
        form = LoginForm()
        if request.method == "POST":
            form = LoginForm(request.POST)
            if form.is_valid():
                data = form.cleaned_data
                user = authenticate(email=data.get("email"), password=data.get("password"))
                if user:
                    login(request, user)
                    return HttpResponseRedirect(reverse("home"))
                else:
                    print("sorry")
        return render(request, "login.html", {"form": form})
コード例 #41
0
ファイル: views.py プロジェクト: Kirill67tyar/task-media
def login_user(request):
    # if not request.user.is_authenticated:
    form = LoginForm(request.POST or None)
    if form.is_valid():
        data = form.cleaned_data
        email = data['email']
        password = data['password']
        user = authenticate(request, email=email, password=password)
        login(request, user)
        return redirect(reverse('image_app:check'))
    return render(request,
                  'accounts/login_or_register.html',
                  context={
                      'form': form,
                      'login_t_f': True,
                  })
コード例 #42
0
def login_view(request):
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            user = authenticate(username=request.POST['username'],
                                password=request.POST['password'])
            if user is not None:
                if user.is_active:
                    login(request, user)
                    return redirect('lists:alllist')
        else:
            return render(request, 'accounts/login.html', {'form': form})
    else:
        return render(request, 'accounts/login.html', {'form': LoginForm()})

    return redirect('lists:alllist')
コード例 #43
0
def login_page(request):
    if request.user.is_authenticated:
        return redirect('/')
    else:
        if request.method == 'POST':
            form = LoginForm(request.POST)
            if form.is_valid():
                email = form.cleaned_data.get("email")
                password = form.cleaned_data.get("password")
                user = authenticate(request, email=email, password=password)
                if user is not None:
                    login(request, user)
                    return redirect('/')
        else:
            form = LoginForm()
    return render(request, "accounts/login_page.html", {'form': form})
コード例 #44
0
def fast_login_view(request):
    user = request.user
    if user.is_authenticated:
        return HttpResponseRedirect('/')
    form = LoginForm(request.POST or None)
    if form.is_valid():
        username = form.cleaned_data.get('username')
        raw_password = form.cleaned_data.get('password')
        user = authenticate(username=username, password=raw_password)
        if user:
            login(request, user)
        else:
            messages.warning(request, 'The password or the email is wrong.')
    else:
        messages.warning(request, 'Something is wrong, try again.')
    return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
コード例 #45
0
def fast_login_view(request):
    user = request.user
    if user.is_authenticated:
        return HttpResponseRedirect('/')
    form = LoginForm(request.POST or None)
    if form.is_valid():
        username = form.cleaned_data.get('username')
        raw_password = form.cleaned_data.get('password')
        user = authenticate(username=username, password=raw_password)
        if user:
            login(request, user)
        else:
            messages.warning(request, 'Ο κωδικός ή το email είναι λάθος.')
    else:
        messages.warning(request, 'Κάτι πήγε λάθος')
    return HttpResponseRedirect(request.META.get('HTTP_REFERER'))
コード例 #46
0
def login_view(request):
    if request.method == 'POST':
        form = LoginForm(data=request.POST)
        if form.is_valid():
            user = form.get_user()
            login(request, user)

            if 'next' in request.POST:
                return redirect(request.POST.get('next'))
            else:
                return redirect('accounts:view_profile')
    else:
        form = LoginForm()

    context = {'form': form}

    return render(request, 'accounts/login.html', context)
コード例 #47
0
ファイル: views.py プロジェクト: sonhaechang/church
def login(request):
    if request.method == 'POST':
        # 로그인 성공 후 이동할 URL. 주어지지 않으면 None
        next = request.GET.get('next')

        form = LoginForm(request=request, data=request.POST)
        if form.is_valid():
            user = form.get_user()
            # Django의 auth앱에서 제공하는 login함수를 실행해 앞으로의 요청/응답에 세션을 유지한다
            django_login(request, user)
            # next가 존재하면 해당 위치로, 없으면 Post목록 화면으로 이동
            return redirect(next if next else 'profile')
        # 인증에 실패하면 login_form에 non_field_error를 추가한다
        form.add_error(None, '아이디 또는 비밀번호가 올바르지 않습니다')
    else:
        form = LoginForm()
    return render(request, 'accounts/login_form.html', {'form': form})
コード例 #48
0
def login(request):
    form = LoginForm()
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            username = data['username']
            password = data['password']
            user = authenticate(username=username, password=password)

            if user:
                auth_login(request, user)
                return redirect('post:index')

    context = {'form': form}

    return render(request, 'accounts/login.html', context)
コード例 #49
0
 def post(self, request):
     form = LoginForm(data=request.POST)
     if form.is_valid():
         user = form.get_user()
         remember_me = form.data.get('remember_me', 'off')
         if remember_me == 'on':
             request.session.set_expiry(0)
         login(request, user)
         data = {'message': 'Success'}
         response = JsonResponse(data)
         response.status_code = 200
         return response
     else:
         data = form.errors
         response = JsonResponse(data, safe=False)
         response.status_code = 400
         return response
コード例 #50
0
def app_login(request, template_name='accounts/login2.html'):
    context = RequestContext(request)
    title = 'Login Page'
    form = LoginForm(request.POST or None)
    if request.POST and form.is_valid():
        user = form.login(request)
        if user:
            login(request, user)
            if user.is_staff:
                return HttpResponseRedirect('/admin/')
            else:
                return HttpResponseRedirect(reverse_lazy('dashboard'))
        else:
            messages.error(request, 'Wrong Username or Password')
    else:
        form = LoginForm()
    return render(request, template_name, locals(), context)
コード例 #51
0
ファイル: views.py プロジェクト: dmrlittle/krishna
def login(request):
    if request.user.is_authenticated:
        return redirect('chat:pilot')
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            email = form.cleaned_data['email'].lower().strip()
            password = form.cleaned_data['password']
            user = authenticate(email=email, password=password)
            if user is not None:
                auth_login(request, user)
                return redirect('chat:pilot')
    else:
        form = LoginForm()

    context = {'form': form}
    return render(request, 'accounts/login.html', context)
コード例 #52
0
def sign_in(request):
    if request.user.is_authenticated():
        return HttpResponseRedirect(reverse('all_articles'))
    else:
        form = LoginForm()
        if request.method == 'POST':
            form = LoginForm(request.POST)
            if form.is_valid():
                data = form.cleaned_data
                user = authenticate(email=data.get("email"),
                                    password=data.get("password"))
                if user:
                    login(request, user)
                    return HttpResponseRedirect(reverse("all_articles"))
                else:
                    print("sorry")
        return render(request, 'sign-in.html', {'form': form})
コード例 #53
0
    def post(self, request, *args, **kwargs):
        form = LoginForm(request.POST)
        if form.is_valid():
            cleanedData = form.cleaned_data
            user = authenticate(request,
                                username=cleanedData['username'],
                                password=cleanedData['password'])
            if user is None:
                return HttpResponse('Wrong login and/or password')

            if not user.is_active:
                return HttpResponse('Your account is forbidden')

            login(request, user)
            return HttpResponse('Welcome! Authenticated successful')

        return render(request, 'accounts/login.html', {'form': form})
コード例 #54
0
ファイル: views.py プロジェクト: davebland/ci-django-app
def login(request):
    if request.user.is_authenticated:
        return redirect(reverse('index'))
    if request.method == "POST":
        form = LoginForm(request.POST)
        if form.is_valid():
            user = auth.authenticate(username=request.POST['username'],
                                     password=request.POST['password'])
            if user:
                auth.login(user=user, request=request)
                messages.success(request, "Successfully logged in")
                return redirect(reverse('index'))
            else:
                form.add_error(None, "Incorrect Login")
    else:
        form = LoginForm()
    return render(request, 'login.html', {"login_form": form})
コード例 #55
0
ファイル: views.py プロジェクト: YuliyaZhdanova/module12
    def post(self, request, *args, **kwargs):
        form = LoginForm(request.POST)
        if form.is_valid():
            cd = form.cleaned_data
            user = authenticate(
                request, username=cd["username"], password=cd["password"]
            )
            if user is None:
                return HttpResponse("Invalid login")

            if not user.is_active:
                return HttpResponse("Disabled account")

            login(request, user)
            return HttpResponse("Welcome! Authenticated successfully")

        return render(request, "accounts/login.html", {"form": form})
コード例 #56
0
ファイル: views.py プロジェクト: sagar-code/django-projects
def login_view(request):
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            user = authenticate(username=form.cleaned_data['username'],
                                password=form.cleaned_data['password'])
            if user:
                login(request, user)
                return redirect('/accounts/profile')
            else:
                print('Auth Credential is not found.')
    elif request.method == 'GET':
        if request.user.is_authenticated:
            return redirect('/accounts/profile')
        form = LoginForm()

    return render(request, 'accounts/login.html', {'form': form})
コード例 #57
0
ファイル: views.py プロジェクト: kaigikinyua/tools
 def post(self, request):
     u = LoginForm(request.POST)
     response = None
     if (u.is_valid()):
         user = u.cleaned_data
         authenticated = authenticate(username=user["username"],
                                      password=user["password"])
         if (authenticated != None):
             login(request, authenticated)
             response = redirect("userpage")
         else:
             response = render(request, "accounts\login.html",
                               {"error": "Incorrect credentials"})
     else:
         response = render(request, "accounts\login.html",
                           {"error": "Please fill in all the fields"})
     return response
コード例 #58
0
ファイル: views.py プロジェクト: hornafricinc/girltalk
def process_admin_signin(request):
    if request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid():
            user = authenticate(username=form.cleaned_data['username'],
                                password=form.cleaned_data['password1'])
            if user is not None:
                if user.is_superuser == True:
                    login(request, user)
                    return redirect('system_admin:admin_dash')
                else:
                    messages.error(request, "Wrong Login Credentials")
            else:
                messages.error(request, 'Wrong username or Password')
    else:
        form = LoginForm()
    return render(request, 'sys_admin/login.html', {'form': form})
コード例 #59
0
ファイル: views.py プロジェクト: supelec-rezo/webldap
def login(request, redirect_field_name = REDIRECT_FIELD_NAME):
    redirect_to = request.REQUEST.get(redirect_field_name, '/account/')

    if request.method == 'POST':
        form = LoginForm(request.POST)
        
        if form.is_valid():
            try:
                uid = form.cleaned_data['uid']
                passwd = form.cleaned_data['passwd']

                bind_dict = {
                    'NAME': 'ldap://ldap.rez-gif.supelec.fr/',
                    'USER': '******' % uid,
                    'PASSWORD': passwd,
                    'CACERT': None,
                    'STARTTLS': False
                }

                # Connects with a default databaseobject (see helpers)
                db = LdapDatabase(bind_dict)
        
            except InvalidCredentials:
                request.flash['error'] = "Vos identifiants sont incorrects."
        
            except ServerDown:
                request.flash['error'] = "Le serveur LDAP est injoignable."

            except ConnectionError:
                request.flash['error'] = "Une erreur indéterminée s'est produite lors de la connexion."
        
            else:
                request.session['ldap_connected'] = True
                request.session['ldap_uid'] = uid
                request.session['ldap_passwd'] = passwd

                request.flash['success'] = "Authentification réussie."
                return HttpResponseRedirect(redirect_to)
    
    else:
        form = LoginForm(label_suffix='')

    vars = { 'form': form, redirect_field_name: redirect_to }
    vars.update(csrf(request))

    return render_to_response('login.html', vars, context_instance=RequestContext(request))
コード例 #60
0
ファイル: views.py プロジェクト: fastprint/fastprint
def signlogup(request):
    data = get_global_data(request)
    data['message'] = False
    if request.user.is_authenticated():
        return HttpResponseRedirect('/profile/')
    elif request.method == 'POST':
        form = LoginForm(request.POST)
        if form.is_valid() and 'password' in request.POST:
            username = request.POST['username']
            password = request.POST['password']
            user = authenticate(username=username, password=password)
            if user is not None:
                if user.is_active:
                    request.session.set_expiry(60*60*24*365)
                    login(request, user)
                    return HttpResponseRedirect('/profile/')

                else:
                    data['message'] = 'Эккаунт заблокирован'
            else:
                data['message'] = 'Неправильная пара логин/пароль'

        elif 'username' in request.POST:
            username = request.POST['username']
            try:
                user = User.objects.create_user(username, username, username)
                user.is_active = False
                user.is_staff = False
                activate_code = md5.new(username).hexdigest()
                send_html_mail('Activation letter', username, {'name': username, 'code': activate_code}, 'emails/activate_letter.html', sender='*****@*****.**')
                user.save()
                profile = Profile(user = user, phone = '+7 ')
                profile.save()
                return { 'message': 'Спасибо за регистрацию. Вам выслано письмо с инструкциями по активации эккаунта.' }
            except:
                if User.objects.get(username=username) is not None:
                    data['message'] = 'Пользователь с таким e-mail уже зарегистрирован'
                else:
                    data['message'] = 'Неизвестная ошибка при добавлении пользователя. Обратитесь в поддержку'

    else:
        form = LoginForm()

    data['login_form'] = form
    return data