def login_screen(request): message='' if request.method=='POST': form=login_form(request.POST) if form.is_valid(): 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) return redirect('/') else: message='return a disabled account' #return a 'disabled account' error message else: message='Email or Password incorrect' #return an invalid login error message. else: form = login_form() return render(request,'login.html',{'form':form,'message':message})
def registration(request): """ a view to handle user registration on site ** still needs double user registration error handling ** and forgot password ? functionality Args: None Returns: on valid registration...HttpResponse notifiying user to check for confirmation email """ if request.method == 'POST': form = login_form(request.POST) if form.is_valid(): email = request.POST['email'] password = request.POST['password'] #email verification from google if not mail.is_email_valid(email): # handle a non valid email address here pass else: create_user(email, password) u = User.objects.get(email = email) u.is_active = False u.save() token = uuid.uuid4() token = str(token) v = Verify(email = email, token = token) v.save() sender_address = ('Friendly Media Support' '<*****@*****.**>') subject = 'Confirm your registration' body = ('Thank you fo creating an account!\n' 'Please confirm your email address' 'by clicking on the link below:\n %s' %('https://group-captain.appspot.com/confirmed?' 'email=' + email + '&token=' + token) ) mail.send_mail(sender_address, email, subject, body) return HttpResponse('Thanks! A confirmation email has been ' 'sent to ' + email + '. \n Click the link ' 'in the email to activate your account.') else: form = login_form() return render(request, 'login.html', { 'form': form, 'registration': True })
def get(self): if self.get_current_user(): self.set_flash("You're already logged in") self.redirect("/") return next = self.get_argument('next', '/dashboard') self.render("login-form", f=login_form(), next=next)
def login(): from forms import login_form form = login_form(request.form) if request.method == 'POST' and form.validate(): user = form.get_user() login_user(user) return redirect(url_for('index')) return render_template("login.html", form=form)
def POST(self): user_data = web.input() form = forms.registration_form() if not form.validates(): return render.login(form, forms.login_form()) user = User(user_data.full_name, user_data.email, user_data.password) web.ctx.orm.add(user) web.ctx.orm.commit() raise web.seeother("/")
def auth_login(request): """ site email & password login handling Args: None Returns: my_account view on success or error messages """ message='' if request.method == 'POST': form = login_form(request.POST) if form.is_valid(): email = request.POST['email'] password = request.POST['password'] user = authenticate( email = email, password = password ) if user is not None: if user.is_active: login( request, user ) return redirect('/my_account/') else: message = ('disabled account or email confimation needed: ' '\n click the link sent to ' + email + ' to activate' '\n your account.') #return a 'disabled account' error message else: message = 'Email or Password incorrect' #return an invalid login error message. else: form = login_form() return render(request,'login.html',{ 'form': form, 'message': message, 'registration': False })
def login(): form = login_form() if form.validate_on_submit(): if form.email.data == "*****@*****.**" and form.password.data == "1234": flash('You are logged in!', 'success') return redirect(url_for('home')) else: flash("Login failed, check username and password", 'danger') return render_template("login.html", title="Login", form=form)
def login(): f_login = login_form() logined = False if f_login.validate_on_submit(): username = request.form.get('username') password = request.form.get('password') if 'username' not in session: session['username'] = username logined = True return redirect('/') return render_template('login.html', f_login=f_login, logined=logined)
def login_view(request): if request.method == "POST": form = login_form(request.POST) if form.is_valid(): #import pdb;pdb.set_trace() user = authenticate(username=request.POST["email_address"], password=request.POST["password"]) if user is not None: if user.is_active: login(request, user) return HttpResponseRedirect('/') else: pass else: # invalid login pass else: form = login_form() return render(request, "login.djhtml", { "form": form })
def GET(self): user_data = web.input() form = forms.login_form() if not form.validates(): return render.login(forms.registration_form(), form) user = User.authenticate(user_data.email, user_data.password) if user is not None: session = Session(user.id) session.save() web.seeother("/account") else: form.note = "There is no such email and password in our database" return render.login(forms.registration_form(), form)
def POST(self): form = login_form() if not form.validates(): content = 'login error' return render.login(content, form) else: i = web.input() user = User(db) results = user.login(i.username, i.password) if results: for user in results: print user.username session.user_id = user.id return render.index() else: content = 'login failure' return render.login(content, form)
def post(self, request, *args, **kwargs): form = login_form(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: # the password verified for the user if user.is_active: django_login(request, user) return redirect("/") else: html = get_alert_box("哈囉你還沒被啟用",request) return HttpResponse(html) else: # the authentication system was unable to verify the username and password html = get_alert_box("哈囉你還沒申請吧",request) return HttpResponse(html)
def __init__(self, questionFile, enableMathJax=True, registerAll=False, adminIP='127.0.0.1', monitorClass=TrivialMonitor, mathJaxPath='/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML', configPath='cp.conf', rootPath='', shutdownFunc=None, **kwargs): if configPath: self.app = cherrypy.tree.mount(self, '/', configPath) try: cherrypy.config.update(self.app.config['global']) except KeyError: pass self.enableMathJax = enableMathJax if enableMathJax: if configPath and mathJaxPath is not None and \ mathJaxPath.startswith('/') and \ not check_static_path(self.app.config, mathJaxPath): warnings.warn('''mathJaxPath %s not accessible. Check config. Falling back to MathJax CDN...''' % mathJaxPath) mathJaxPath = None if mathJaxPath is None: # fallback to MathJax CDN mathJaxPath = 'http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML' webui.Document._defaultHeader = '''<script type="text/javascript" src="%s"> </script> ''' % mathJaxPath self.adminIP = adminIP self.root = rootPath self.shutdownFunc = shutdownFunc self.courseDB = CourseDB(questionFile, enableMath=enableMathJax, **kwargs) self._registerHTML = forms.register_form() self.registerAll = registerAll self._loginHTML = forms.login_form() self._reloadHTML = redirect(rootPath + '/index') self.questions = {} if questionFile: self.serve_question(self.courseDB.questions[0]) self.monitor = monitorClass()
def post(self): username = self.get_argument('username', '') password_hashed = hashlib.sha1(self.get_argument('password', '')).hexdigest() f = login_form() user = User.one({'username': username, 'password_hashed': password_hashed}) f.add_notnull_validator(user, "The username or password you entered is incorrect") next = self.get_argument('next', '/dashboard') if f.validates(Storage(self.get_arguments())): if user.status != 'active': self.set_flash(self._("Your login has been disabled/deleted. Please contact admin.")) self.redirect("/") return expire = 14 if self.get_argument('rememberme',None) else None self.set_secure_cookie("username", username, expire) from datetime import datetime user.last_login = datetime.now() user.save() self.redirect(next) else: self.render("login-form", f=f, next=next)
def GET(self): form = login_form() content = 'Login Form' return render.login(content, form)
def GET(self): return render.login(forms.registration_form(), forms.login_form())
def get(self, request, *args, **kwargs): form = login_form() return render(request, 'accounts/login.html', {'form': form})