Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from flask import Flask, render_template, request, redirect, url_for, flash, make_response
- import json
- app = Flask(__name__)
- class Account:
- def __init__(self, email, username, password):
- self.email = email
- self.username = username
- self.password =password
- @app.route('/')
- def index():
- url_for('logout')
- return render_template('index.html')
- @app.route('/')
- def getPasswordFromCookies():
- print (request.cookies.get('password'))
- return request.cookies.get('password')
- @app.route('/')
- def getPasswordFromDatabase():
- acc = open("accounts/" + str(request.cookies.get('username')) + ".json", "r+")
- print (json.loads(acc.read())['password'] )
- return json.loads(acc.read())['password']
- @app.route('/')
- def getUsernameFromDatabase():
- acc = open("accounts/" + str(request.cookies.get('username')) +".json", "r+")
- print( json.loads(acc.read())['username'])
- return json.loads(acc.read())['username']
- @app.route('/signup', methods = ['GET', 'POST'])
- def signup():
- print("deez1")
- if request.method == "POST":
- print("Deez2")
- email = request.form.get("email")
- username = request.form.get("username")
- password = request.form.get("pwd")
- try:
- open("accounts/" + str(username) + ".json", "r+")
- #go to page that says you already have an account
- #return redirect(url_for('index'))
- except:
- pass
- accountinfo = open("accounts/" + str(username) + ".json", "w")
- accountinfo.write(json.dumps(Account(email, username, password).__dict__))
- #return accountinfo.read()
- return url_for('index')
- return render_template('signup.html')
- @app.route('/login', methods = ['GET', 'POST'])
- def login():
- if request.method == "POST":
- username = request.form.get('username')
- password = request.form.get("pwd")
- try:
- account = open("accounts/" + str(username) + ".json", "r+")
- if username == json.loads(account)['username'] and password == json.loads(account)['password']:
- resp = make_response(render_template(url_for('index')))
- resp.set_cookie('username', username)
- resp.set_cookie('password', password)
- return resp
- else:
- print("nay")
- except:
- return url_for('signup')
- finally:
- return redirect(url_for('index'))
- return render_template('login.html')
- @app.route('/')
- def logout():
- resp = make_response(render_template(url_for('index')))
- resp.set_cookie('username', '', expires=0)
- resp.set_cookie('password', '', expires=0)
- return resp
- @app.route('/')
- @app.context_processor
- def thingys():
- def loginthingy():
- if url_for('getPasswordFromCookies') == url_for('getPasswordFromDatabase'):
- return "<button id = \"loginbutton\" >Logged in as {{url_for(\'getUsernameFromDatabase\')}}</button>"
- else:
- print("Access Denied")
- return " <a href=\"{{url_for('login')}}\"><button id = \"loginbutton\" >Log In</button></a>"
- def signupthingy():
- if url_for('getPasswordFromCookies') == url_for('getPasswordFromDatabase'):
- return "<a href=\"{{url_for('logout')}}\"><button id = \"signupbutton\" >Log Out</button></a>"
- else:
- print("Access Denied")
- return "<a href=\"{{url_for('login')}}\"><button id = \"loginbutton\" >Log In</button></a>"
- return dict(loginthingy=loginthingy(), signupthingy=signupthingy())
- #@app.route('/', methods = ['POST'])
- #def loginaccount():
- # @app.route('/', methods = ['POST'])
- # def makeaccount():
- # print("Acount.Make")
- # if request.method == "POST":
- # email = request.form.get("email")
- # username = request.form.get("username")
- # password = request.form.get("pwd")
- # try:
- # open("accounts/" + str(email) + ".json", "r+")
- # #go to page that says you already have an account
- # #return redirect(url_for('index'))
- # except:
- # pass
- # accountinfo = open("accounts/" + str(email) + ".json", "w")
- # accountinfo.write(json.dumps(Account(email, username, password).__dict__))
- # #return accountinfo.read()
- # return "Deez"#redirect(url_for('index'))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement