예제 #1
0
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})
예제 #2
0
파일: views.py 프로젝트: mrjd26/bio
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
                                       })
예제 #3
0
파일: auth.py 프로젝트: apit/rinjani
 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)
예제 #4
0
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)
예제 #5
0
 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("/")
예제 #6
0
파일: views.py 프로젝트: mrjd26/bio
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
                                     })
예제 #7
0
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)
예제 #8
0
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)
예제 #9
0
파일: views.py 프로젝트: danlamanna/smack
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 })
예제 #10
0
 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)
예제 #11
0
 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)
예제 #12
0
파일: views.py 프로젝트: ck520702002/iDoNET
	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)
예제 #13
0
파일: web.py 프로젝트: cjlee112/socraticqs
    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()
예제 #14
0
파일: auth.py 프로젝트: apit/rinjani
    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)
예제 #15
0
 def GET(self):
     form = login_form()
     content = 'Login Form'
     return render.login(content, form)
예제 #16
0
 def GET(self):
     return render.login(forms.registration_form(), forms.login_form())
예제 #17
0
파일: views.py 프로젝트: ck520702002/iDoNET
	def get(self, request, *args, **kwargs):
		form = login_form()
		return render(request, 'accounts/login.html', {'form': form})