Ejemplo n.º 1
0
 def authenticate(self, name, password):
     user = None
     try:
         user = get_user(name)
     except UserException:
         pass
     if user:
         raise UserException('User "%s" is already logged in' % (name))
     database.authenticate(name, password)
     self.authenticated(name)
Ejemplo n.º 2
0
def login():
    if request.method == "GET":
        if request.args.get("msg") == None:
            return render_template("login.html")
        else:
            msg=request.args.get("msg")
            return render_template("login.html", msg=msg)
    else:
        email = request.form['email']
        pword = request.form['pword']

        if email == '':
            return render_template("login.html", msg = 'Please enter your email')
        if pword == '':
            return render_template("login.html", msg = 'Please enter your password')

        m = sha256()
        m.update(pword)
        passwordHash = m.hexdigest()

        if database.authenticate(email, passwordHash):
            session['email'] = email
            if session['email'] + siteAdminEmailService == siteAdmin:
                # Site admins may not have "@stuy.edu" emails
                session['email'] = email # + siteAdminEmailService
                return redirect(url_for('admin'))
            # request.args.get'next') ==> doesn't redirect to home, but last active page
            return redirect(request.args.get('next') or url_for('home')) #redirect still internal server error

        return render_template("login.html", msg = 'Incorrect email/password combination. If you have not activated your account, please check your email for an activation link.')
Ejemplo n.º 3
0
def do_login():
    # Reconnect if we timed out
    database.connect(main.data)
    if database.authenticate(request.form['username'],
                             request.form['password']):
        session['logged_in'] = True
        return home()
    return render_template('/login.html',
                           msg="Incorrect username or password.")
Ejemplo n.º 4
0
def login():
    try:
        email = str(request.form['email'])
        password = str(request.form['password'])
        if (db.authenticate(email, password)):
            user_tokens[email] = ''.join(
                [random.choice('0123456789abcdef') for n in xrange(30)])
            return jsonify(token=user_tokens[email], result=1)
        else:
            return jsonify(result=0)
    except Exception:
        return jsonify(result=0)
Ejemplo n.º 5
0
async def authenticate(websocket, dbFileName, data):
    channels = data["channels"];
    for channel in channels:
        channel["id"] = bytes.fromhex(channel["id"])

    success = database.authenticate(dbFileName, channels)
    if success == False or connections.anyActive(channels) == True:
        await respond(websocket, data, {'status': 'failed'});   
    else:
        connections.remember(websocket, channels);
        await respond(websocket, data, {'status': 'success'});
    return success
Ejemplo n.º 6
0
def login():
	if (request.method == "GET"):
		return render_template("login.html")
	else:
		username = request.form["username"]
		password = request.form["password"]
		session['username'] = request.form["username"]
        if (database.authenticate(username, password)):
            session['user']=username
            return redirect(url_for(""))
        else:
            error = "Your Username or Password is incorrect. Please try again."
            return render_template("login.html", problem = error )
Ejemplo n.º 7
0
def login():
    if request.method == "GET":
        if session.get('user') != None:
            return redirect("/")
        else:
            return render_template("/login.html", current_user=None)
    else:
        username = request.form.get("login")
        if (database.authenticate(username, request.form.get("password"))):
            session['user'] = username
            session.permanent = True
            app.permanent_session_lifetime = timedelta(minutes=60)
            return redirect("/")
        else:
            error = "Incorrect username and/or password"
            return render_template("login.html", current_user=None, error=error)
Ejemplo n.º 8
0
def login():
    if request.method == "GET":
        if session.get('user') != None:
            return redirect("/")
        else:
            return render_template("/login.html", current_user = None)
    else:
        username = request.form.get("login")
        if (database.authenticate(username, request.form.get("password"))):
            session['user'] = username
            session.permanent = True
            app.permanent_session_lifetime = timedelta(minutes = 60);
            return redirect("/")
        else:
            error = "Incorrect username and/or password"
            return render_template("login.html", current_user = None, error = error)
Ejemplo n.º 9
0
async def authenticate(websocket, dbFileName, message):
    channels = message["channels"]
    for channel in channels:
        channel["id"] = bytes.fromhex(channel["id"])

    authInformation = database.authenticate(dbFileName, channels)
    success = all([info["authSuccess"] for info in authInformation])
    #activeSession = connections.activeSession(channels)
    anyActive = connections.anyActive(channels)
    # more flexibility possible, but good enough for now
    if success == False or anyActive == True:
        await messages.respond(websocket, message, {'status': 'failed'})
    else:
        connections.remember(websocket, message["channels"])
        await messages.respond(websocket, message, {'status': 'success'})
        """await websocket.send(json.dumps({
Ejemplo n.º 10
0
async def sendMessage(websocket, dbFileName, data):
    authInformation = database.authenticate(dbFileName, [data])
    success = all([info["authSuccess"] for info in authInformation])
    if success:
        receiverClient = connections.getClient(data["to"])
        request = {
            'message': 'new message',
            'from': data["id"],
            'to': data["to"],
            'message': data["message"]
        }

        if receiverClient is not None:
            await receiverClient.send(
                json.dumps({
                    'requestToken': generateRequestToken(),
                    **request
                }))
Ejemplo n.º 11
0
 def authenticate_client(self):
    request = conn.recv(1024)
    request = json.loads(request.decode("utf-8"))
    if request["action"] == "CREATE":
       print("Creating User")
       if request["username"] in database.users:
          response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"], "message":"User already exists"}
          conn.send(json.dumps(response).encode("utf-8"))
          return False
       if len(request["username"]) == 0:
          response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"], "message":"username cannot be empty"}
          conn.send(json.dumps(response).encode("utf-8"))
          return False
       if len(request["password"]) == 0:
          response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"], "message":"password cannot be empty"}
          conn.send(json.dumps(response).encode("utf-8"))
          return False
       if len(request["email"]) == 0:
          response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"], "message":"email cannot be empty"}
          conn.send(json.dumps(response).encode("utf-8"))
          return False
       if database.create_user(request):
          self.username=request["username"]
          response = {"action":"RESP", "good":"True", "reqnum":request["reqnum"]}
          conn.send(json.dumps(response).encode("utf-8"))
          return True
    if not request["action"] == "AUTH":
       response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"]}
       conn.send(json.dumps(response).encode("utf-8"))
       return False
    if not database.authenticate(request["username"], request["password"]):
       response = {"action":"RESP", "good":"False", "reqnum":request["reqnum"]}
       conn.send(json.dumps(response).encode("utf-8"))
       return False
    self.username = request["username"]
    response = {"action":"RESP", "good":"True", "reqnum":request["reqnum"]}
    conn.send(json.dumps(response).encode("utf-8"))
    return True
Ejemplo n.º 12
0
"""
Here users can sign up for the system, provided they
have the access code which is in the application console.
In case the user somehow (it does happen) gets to the register 
page while being logged in, we'll take them back to the login page.
"""


@app.route('/register')
def register():
    if session.get('logged_in'):
        return render_template('/index.html')
    return render_template('/register.html')


"""
Actually login to the database.
This is the actual URI to which we send a POST
request with some login details. We then hash the
password using passlib and execute a SQL query to compare
the two sets of credentials. This process is handled by
database.authenticate(). 
If we verify the login has been successful and the sets of credentials
match, we set the local logged_in session variable to True.
"""


@app.route('/login', methods=['POST'])
def do_login():
    # Reconnect if we timed out
    database.connect(main.data)
Ejemplo n.º 13
0
""" some simple example code for writing to data base, requires pymongo."""

import flipp
import database
import location_services

user = ''
passwd = ''
URI = ''

# connect to remote db
client = database.authenticate(user, passwd, URI)
# points to parse_flyer_json collection in database
db_collection = client.miser.price_data

lat = 40.111
lng = -88.22
store_list = location_services.find_nearby(lat, lng, 5000)

# for store in store_list:
#     print(store)

# gets current flyer data for urbana walmart
store_name = 'Walmart'
zip = '61801'
state = 'il'

flipp_url = 'https://backflipp.wishabi.com/flipp/items/search'
r = flipp.get_flyer_pricing_json(flipp_url, store_name, zip, state)
r = flipp.parse_flyer_json(r)