示例#1
0
 def POST(self):
     try:
         model.login(web.input())
         raise web.seeother(helper.site_url())
     except ValueError as e:
         web.ctx.session.flash = "Invalid login"
         raise web.seeother(helper.site_url("/login"))
示例#2
0
def run():
    while True:
        choice = view.main_menu()
        if choice == "3":  #Exit
            return
        elif choice == "1":  #Create Account
            view.create_account()
            fname = view.first_name()
            lname = view.last_name()
            pin = view.choose_pin()
            initial = float(view.deposit_initial())
            #Create new account then display
            view.new_account(model.create_account(fname, lname, pin, initial))

        elif choice == "2":  #log in
            account_num, pin = view.login()
            #Check if login info is correct
            if model.login(account_num, pin) == False:
                view.bad_login()
            else:
                #Login Menu - Check Balance, Withdraw, Deposit, Open Savings Account
                info = model.login(account_num, pin)
                view.welcome(account_num, info)
                while True:
                    choice = view.login_menu()
                    if choice == "1":
                        view.check_balance(info)
                    elif choice == "2":
                        login_withdrawal(account_num)  #see line 58
                    elif choice == "3":
                        num = view.deposit()
                        new_balance = model.deposit(num, account_num)
                        view.deposit_new_balance(num, new_balance)
                    elif choice == "4":
                        from_account, to_account, amount = view.transfer()

                        #Add " account" at the end of the string so it matches the key in the dictionary
                        from_account = from_account + " account"
                        to_account = to_account + " account"
                        #convert amount value from string to float
                        amount = float(amount)

                        info = model.transfer(from_account, to_account, amount,
                                              account_num)
                        view.transfer_new_balance(info, from_account,
                                                  to_account)
                    elif choice == "5":
                        yesorno, deposit = view.create_savings()
                        model.open_savings(yesorno, float(deposit),
                                           account_num)
                        view.savings_opened(float(deposit))
                    elif choice == "6":
                        view.signout()
                        return
        else:
            view.bad_input()
示例#3
0
 def POST(self):
     postdata = web.input()
     username = web.net.websafe(postdata.username)
     password = web.net.websafe(postdata.password)
     if model.login(username, password):
         return render.clients(model.get_clients())
     return render.error()
    def on_btLogin_clicked(self, widget):
        #recuperation des entrees dans le grid
        print(self.gridpane.get_child_at(1, 0).get_text())
        print(self.gridpane.get_child_at(1, 1).get_text())

        login = self.gridpane.get_child_at(1, 0).get_text()
        pwd = self.gridpane.get_child_at(1, 1).get_text()

        results = model.login(login, pwd)
        if results:
            dialog = Gtk.MessageDialog(self, 0, Gtk.MessageType.INFO,
                                       Gtk.ButtonsType.OK, "You are login")
            dialog.format_secondary_text("Thank you")
            dialog.run()
            print("Info dialog Closed")

            dialog.destroy()
            #Anruf des neuen Fenster
            win = GridWindow()
            win.close()

            import myLogbuch
        else:
            dialog = Gtk.MessageDialog(
                self, 0, Gtk.MessageType.INFO, Gtk.ButtonsType.OK,
                "Login oder Password was not recognise !")
            dialog.format_secondary_text("Please try again")
            dialog.run()
            print("Info dialog Closed")

            dialog.destroy()
示例#5
0
def list_users():
    print("list of users")
    if request.get_cookie("username", secret='m14AGroup6'):
        username = request.get_cookie("username", secret='m14AGroup6')
        return model.overview_messages(username)
    else:
        return model.login()
示例#6
0
def list_users():
    print("list of users")
    if request.get_cookie("username", secret='houdini+stockfish'):
        username = request.get_cookie("username", secret='houdini+stockfish')
        return model.overview_messages(username)
    else:
        return model.login()
示例#7
0
def loginGET(environ, start_response):
    unfromated_cookie = environ.get("HTTP_COOKIE", "")
    cookie = SimpleCookie()
    cookie.load(unfromated_cookie)
    cookies = {}
    for key, morsel in cookie.items():
        cookies[key] = morsel.value

    passw = cookies['passw']
    uname = cookies['uname']
    passw = decript(passw)
    login_status = login(uname, passw)
    if login_status == 1:
        start_response('200 OK', [('Content-text', 'text/plain')])
        encoded_jwt = jwt.encode({
            'uname': uname,
            'iat': datetime.utcnow()
        },
                                 'secret',
                                 algorithm='HS256')
        yield encoded_jwt
    elif login_status == 2:
        start_response('401 Unauthorized', [('Content-text', 'text/plain')])
        message = {"message": "Bad username or password"}
        yield json.dumps(message).encode('utf-8')
    elif login_status == 3:
        start_response("500 Internal Server Error",
                       [('Content-text', 'text/plain')])
        message = {"message": "Databease problem"}
        yield json.dumps(message).encode('utf-8')
示例#8
0
def login():
    if request.get_cookie("username", secret='houdini+stockfish'):
        username = request.get_cookie("username", secret='houdini+stockfish')
        return model.homepage(username)
    else:
        print("going to login")
        return model.login()
示例#9
0
def start_menu():
    # Start menu (create account, log in, exit)
    start_done = False
    while not start_done:
        user_input = view.start_menu()
        if user_input == "1":
            username, password = view.create_account_menu()
            status = model.create_account(username, password)
            print(status)
            if "Success" in status:
                start_done = True
                exit = view.wait("main menu")
                return username
            else:
                exit = view.wait("previous menu")
        elif user_input == "2":
            username, password = view.login_menu()
            status = model.login(username, password)
            print(status)
            if "Success" in status:
                start_done = True
                exit = view.wait("main menu")
                return username
            else:
                exit = view.wait("previous menu")
        elif user_input == "3":
            status = view.exit_message()
            start_done = True
            print(status)
            return "exit"
示例#10
0
def login():
    if request.get_cookie("username", secret='m14AGroup6'):
        username = request.get_cookie("username", secret='m14AGroup6')
        return model.homepage(username)
    else:
        print("going to login")
        return model.login()
示例#11
0
def login():
    if 'user_email' in session:
        mode = model.getMode(session['user_email'])
        print type(mode)
        if (mode == 0):
            name, roll_no = model.getUserNamePassword(session['user_email'])
            return render_template("home.html", username=name, rollNo=roll_no)
        name = getMess(session['user_email'])
        return render_template("Admin_Main.html", username=name)
    else:
        if request.method == "POST":
            res, msg, mode = model.login(request.form)
            if msg == "1":
                session['user_email'] = request.form['user_email']
                if mode != 0:
                    # session['user_email'] = request.form['user_email']
                    name = getMess(session['user_email'])
                    return render_template('Admin_Main.html', username=name)
                else:
                    # session['user_email'] = request.form['user_email']
                    name, roll_no = model.getUserNamePassword(
                        session['user_email'])
                    return render_template("home.html",
                                           username=name,
                                           rollNo=roll_no)
            elif msg == "0":
                msg = "Invalid Credentials! Try Again"
            elif msg == "-1":
                msg = "Unexpected Error in login operation"
            return render_template("index.html", message=msg)
        else:
            msg = ""
            return render_template("index.html", message=msg)
示例#12
0
 def POST(self):
     postdata=web.input()  
     username=web.net.websafe(postdata.username)  
     password=web.net.websafe(postdata.password) 
     if model.login(username, password) :
         return render.clients(model.get_clients())
     return render.error() 
示例#13
0
def unit_add():
    if request.get_cookie("username"):
        username = request.get_cookie("username", secret='m14AGroup6')
        unit_add = html.escape(request.forms.get('unit'))
        if len(unit_add) != 8:
            return model.error()
        return model.addUnit(unit_add, username)
    else:
        return model.login()
示例#14
0
def topic(subject, value):
    if request.get_cookie("username", secret='m14AGroup6'):
        title = html.escape(request.forms.get('title'))
        if len(title) > 100:
            return model.error("Length Error")
        username = request.get_cookie("username", secret='m14AGroup6')
        return model.content(subject, title, username)
    else:
        return model.login()
示例#15
0
def login():   
    model.connect_to_db()
    email = request.args.get('email')
    password = request.args.get('password')  
    title = model.get_all_posts()

    if model.login(email, password):
        return render_template('recent_posts.html', title=title)
    else:
        return redirect("/")
示例#16
0
def view_chat(user):
    print("view chat")
    if request.get_cookie("username", secret='m14AGroup6'):
        username = request.get_cookie("username", secret='m14AGroup6')
        user_to_chat = html.escape(request.forms.get("message_user"))
        if len(user_to_chat) > 10:
            return model.error("Length Error")
        return model.get_messages(username, user_to_chat)
    else:
        return model.login()
示例#17
0
 def POST(self):
     form = web.input()
     user = model.login(form['username'], form['password'],
                        form['usertype'])
     if user:
         # 设置cookie
         web.setcookie('uid', str(user['uid']), 3600)
         return render.index(user,
                             datetime.datetime.now().strftime('%Y-%m'))
     else:
         return render.error('登录验证失败,请检查帐号和密码是否正确')
示例#18
0
def process_login():
    submitted_email = request.form.get('email')
    submitted_password = request.form.get('password')
    
    user_id = model.login(submitted_email, submitted_password)
    if user_id:
        session['session_user_id'] = user_id 
        return redirect(url_for("index"))
    else:
        flash("Username or password incorect.")
        return redirect(url_for("process_login"))
示例#19
0
 def post(self, *args, **kwargs):
     act = self.get_argument('id')
     pwd = self.get_argument('pwd')
     if model.login(act, pwd):
         logger = logging.getLogger('web')
         logger.info('post [login] user_act:%s' % act)
         user = model.find_user_by_account(act)
         new_movies = self.recommend(user)
         self.set_secure_cookie('user', str(user[0]))
         self.render('index1.html', rec_movies=new_movies)
     else:
         self.render('login.html')
示例#20
0
def new_message():
    print("Enter controller for messages post")
    if request.get_cookie("username", secret='m14AGroup6'):
        username = request.get_cookie("username", secret='m14AGroup6')
        user_to_chat = html.escape(request.forms.get("message_user"))
        message = html.escape(request.forms.get("message"))
        if len(message) > 100 or len(user_to_chat) > 10:
            return model.error("Length Error")
        print("Going to model")
        return model.new_message(username, user_to_chat, message)
    else:
        return model.login()
示例#21
0
def add_comment(subject, value):
    if request.get_cookie("username", secret='m14AGroup6'):
        comment = html.escape(request.forms.get("comment"))
        username = request.get_cookie("username", secret='m14AGroup6')
        title = html.escape(request.forms.get("title"))
        unit = html.escape(request.forms.get("unit"))
        if len(title) > 100 or len(username) > 10 or len(comment) > 250:
            return model.error("Length Error")
        if unit != subject:
            return model.error("Length Error")
        return model.new_comment(subject, title, comment, username)
    else:
        return model.login()
示例#22
0
def login():

    if (request.method == 'POST'):
        name = request.form['username']
        password = request.form['password']

        if (mod.login(name, password) == 1):
            return "correct"
        else:
            return "incorrect"

    else:
        return render_template("login.html")
示例#23
0
 def post(self, *args, **kwargs):
     logger = logging.getLogger('web')
     req_type = self.get_argument('reqType')
     if req_type == 'alterPwd':
         act = self.get_argument('account')
         oldpwd = self.get_argument('oldpwd')
         if model.login(act, oldpwd):
             logger.info('post [alterPwd] user_act:%s' % act  )
             newpwd = self.get_argument('newpwd')
             model.alter_pwd(act, newpwd)
             self.get()
         else:
             self.render('alterPwd.html')
示例#24
0
文件: app.py 项目: kezike17/hashtag
def login():
    error = None
    if request.method == 'POST':
        username= str(request.form['username'])
        password= str(request.form['password'])
        user = model.login(username, password)
        if user == None:
            error = 'Invalid Credentials. Please try again.'
        else:
            session['user'] = user
            session['logged_in'] = True
            return redirect(url_for('home'))
    return render_template('login.html', error=error)
示例#25
0
def get_post(subject):
    if request.get_cookie("username", secret='m14AGroup6'):
        title = html.escape(request.forms.get('title'))
        if len(title) > 100:
            return model.error("Length Error")
        content = html.escape(request.forms.get('content'))
        print(content)
        if len(content) > 250:
            return model.error("Length Error")
        username = request.get_cookie("username", secret='m14AGroup6')
        return model.new_post(subject, title, content, username)
    else:
        return model.login()
示例#26
0
def post_login(req):
    data = yield from parse_request_body(req)
    if type(data) is not dict: return data

    username = data['username']
    password = data['password']
    res = yield from model.login(username, password)
    
    if 'err' in res:
        if res['err'] == const.INCORRECT_PASSWORD:
            return web.Response(status=403, body=bytes(json.dumps(const.USER_AUTH_FAIL), 'utf-8'))

    resp = {'user_id':res['userid'], 'username':username, 'access_token':res['token']}
    return web.Response(body=bytes(json.dumps(resp), 'utf-8'))
示例#27
0
def initialmenu():
    while True:
        view.show_initalmenu()
        selection = view.get_input()
        print(selection)
        if selection == '1':
            new_Firstname = view.get_FirstName()
            new_LastName = view.get_LastName()
            new_pin = view.get_pin()
            newaccount = model.create_account(new_Firstname, new_LastName,
                                              new_pin)
            model.save(newaccount)

        elif selection == '2':
            clientcheck = view.clientcheck()
            accountcheck = int(view.accountcheck())
            pin = int(view.pincheck())
            model.login(clientcheck, accountcheck, pin)
            mainmenu(clientcheck, accountcheck)

        elif selection == '3':
            pass
        else:
            view.bad_input()
示例#28
0
def actually_login_page():
    """Makes post requests to get user input to log into account. """

    email_in = request.form.get("email")
    password_in = request.form.get("password")

    login = model.login(email_in,password_in)

    flash (login)
    if login != "Yay!":
        return redirect(url_for("display_login_page"))
    else:
        session['email'] = email_in
        session['logged_in'] = True
        session['default_setting'] = model.session.query(model.User).filter_by(email=email_in).first().settings
        return redirect(url_for("random_meal"))
示例#29
0
 def POST(self):
     form = web.input()
     users = list(model.login(form['username'], form['password'], form['usertype']))
     if len(users)==1:
         session.login = 1
         session.uid = users[0]['uid']
         usertype = users[0]['usertype']
         if usertype=='administrator':
             session.privilege = 1
         elif usertype=='manager':
             session.privilege = 2
         elif usertype=='organizer':
             session.privilege = 3
         raise web.seeother('/index')
     else:
         render = create_render(0)
         return render.error('登录验证失败,请检查帐号和密码是否正确')
def login():
    model.connect_to_db()
    error = None
    if request.method == 'GET':
        name = request.args.get("name")
        password = request.args.get("password")
        user = model.login(name, password)
        print user
        if user == "NO":
            return render_template('login.html', error=error)
        if request.args.get('name') != user.name:
            error = 'Invalid username'
        elif request.args.get('password') != user.password:
            error = 'Invalid password'
        else:
            # session['logged in'] = True
            # flash('You are now logged in.')
            return redirect("/get_user?id="+str(user.idnum))
    return render_template('login.html', error=error)
示例#31
0
 def POST(self):
     form = web.input()
     users = list(
         model.login(form['username'], form['password'], form['usertype']))
     if len(users) == 1:
         session.login = 1
         session.uid = users[0]['uid']
         usertype = users[0]['usertype']
         if usertype == 'administrator':
             session.privilege = 1
         elif usertype == 'manager':
             session.privilege = 2
         elif usertype == 'organizer':
             session.privilege = 3
         render = create_render(session.privilege)
         return render.index(users[0],
                             datetime.datetime.now().strftime('%Y-%m'))
     else:
         return render.error('登录验证失败,请检查帐号和密码是否正确')
示例#32
0
def post_login(req):
    data = yield from parse_request_body(req)
    if type(data) is not dict: return data

    username = data['username']
    password = data['password']
    res = yield from model.login(username, password)

    if 'err' in res:
        if res['err'] == const.INCORRECT_PASSWORD:
            return web.Response(status=403,
                                body=bytes(json.dumps(const.USER_AUTH_FAIL),
                                           'utf-8'))

    resp = {
        'user_id': res['userid'],
        'username': username,
        'access_token': res['token']
    }
    return web.Response(body=bytes(json.dumps(resp), 'utf-8'))
示例#33
0
    def login(self):
        try:
            name, password = model.login()
            print(name, password)
            if name == self.login_name.text and password == self.password.text:
                self.manager.current = "main_screen"
                self.password.text, self.login_name.text = "", ""
                print("User logged in")
            else:
                print("Login failure")
                pop_error = ErrorPopup()
                pop_error.title = "Login failure"
                pop_error.ids.error.text = "Failed to login.Check credentials"
                pop_error.open()

        except sqlite3.OperationalError as err:
            pop_error = ErrorPopup()
            pop_error.title = "Login failure"
            pop_error.ids.error.text = err.message + " .Failed to login user"
            pop_error.open()
示例#34
0
def actually_change_pw():
    """Uses post requests to change the user password """

    password_check = request.form.get("oldpassword")
    password_in = request.form.get("newpassword")
    password_in2 = request.form.get("checknewpassword")

    #check old password
    login = model.login(session['email'],password_check)
    if login != "Yay!":
        flash ("Incorrect Password")
        return redirect(url_for("display_change_pw"))
    else:
        if password_in!=password_in2:
            flash ("New Password Does Not Match")
            return redirect(url_for("display_change_pw"))
        else:
            password_in_s_h = sha256_crypt.encrypt(password_in)
            updatepw = model.change_pw(session['email'],password_in_s_h)
            flash (updatepw)
            return redirect(url_for("show_account_page"))
示例#35
0
def login():
    """Logt de gebruiker in."""

    # Als de gebruiker via POST kwam.
    if request.method == "POST":
        username = request.form.get("username")
        password = request.form.get("password")

        # De gebruiker wordt hier ingelogd.
        log = model.login(username, password)

        # Excuses returnen als gebruikersnaam/wachtwoord fout is.
        if log == False:
            return apology("Invalid username or password.")

        # Gebruiker naar homepagina sturen.
        else:
            return redirect(url_for("homepage"))

    # Als de gebruiker via GET de route bereikt heeft.
    else:
        return render_template("login.html")
def login_menu():
    while True:
        view.print_login_menu()
        choice = view.login_menu_prompt().strip()
        if choice not in ("1", "2", "3"):
            view.bad_login_input()
            return login_menu()
        elif choice == "3":
            view.goodbye()
            return None  # return None for quit

        elif choice == "1":
            create_account()
            """ TODO: prompt for firstname, lastname, and pin, and confirm pin
            create the account and then tell the user what their new account number is """

        elif choice == "2":
            """ TODO: prompt functions to ask for account and PIN, use try, except
            to check for bad login """
            account = view.login_account_num()
            pin = view.login_pin()
            account_data = model.login(account, pin)
            return main_menu(account_data)
示例#37
0
def login_or_register():
    bad_input = True
    while bad_input:
        user_input = view.login_or_register()
        acceptable_inputs = ['L','R']
        if user_input.upper() in acceptable_inputs:
            if user_input.upper() == 'L':
                login_username, login_password = view.login()
                if login_username is False or login_password is False:
                    print("Your login attempt failed. The username/password is not up to par...")
                    break
                login_attempt_return_message, username_in_db, user_id = model.login(login_username, login_password)
                if login_attempt_return_message is not False:
                    print("Welcome '{}', you are logged in!".format(username_in_db))
                    menu_after_login(login_username, user_id)
                    break
                else:
                    print("Your login attempt failed. The username/password does not exist...")
                    break

            elif user_input.upper() == 'R':
                register_username, register_password = view.register()
                if register_username is False or register_password is False:
                    print("Your registration attempt failed. The username/password is not up to par...")
                    break
                perm = view.admin_perm()
                register_attempt = model.register(register_username,register_password,perm)
                if register_attempt:
                    print("\nRegistration successful!")
                    continue
                else:
                    print('Registration attempt broken')
            else:
                print('login/register question broken')
        else:
            print('Hmm.. Invalid option')
示例#38
0
 def testShouldReturnFillOUtAllFieldsPw2(self):
     """ test log in where not everything is entered: PW"""
     self.assertEqual(model.login("testemail", ""), "Fill Out All Fields")
示例#39
0
 def testShouldReturnYay(self):
     """ test successful log in"""
     password = "******"
     email = "*****@*****.**"
     self.assertEqual(model.login(email, password), "Yay!")
示例#40
0
 def testShouldReturnIncorrectPassword(self):
     """test an incorrect password """
     self.assertEqual(model.login("*****@*****.**", "wrongpw"), "Incorrect Password")
示例#41
0
 def testShouldReturnEmailDoesNotExist(self):
     """test with wrong email """
     self.assertEqual(model.login("*****@*****.**", "julie"), "Email does not exist")