Commit dfc509fe authored by shreyansh's avatar shreyansh

regiter login working

parent bb795629
......@@ -4,23 +4,9 @@ from starlette.applications import Starlette
from starlette.templating import Jinja2Templates
from starlette.responses import JSONResponse, PlainTextResponse
from prediction import predict
import pyrebase
import uvicorn
import json
config = {
"apiKey": "AIzaSyBrnRxGfzyWvLZu9XMUnbZTPpu8NxHBRE0",
"authDomain": "softlab-ba722.firebaseapp.com",
"databaseURL": "https://softlab-ba722.firebaseio.com",
"projectId": "softlab-ba722",
"storageBucket": "softlab-ba722.appspot.com",
"messagingSenderId": "210803257141",
"appId": "1:210803257141:web:f2fcb4e8d166ca9bc4a67c",
"measurementId": "G-L85J7NJJZK"
}
firebase = pyrebase.initialize_app(config)
auth = firebase.auth()
import requests
scopes = [
"https://www.googleapis.com/auth/userinfo.email",
......@@ -34,16 +20,25 @@ authed_session = AuthorizedSession(credentials)
@app.route('/auth',methods=["POST"])
async def basic(request):
async def firebase_login(request):
body = await request.form()
email = body['email']
password = body['password']
request_ref = "https://www.googleapis.com/identitytoolkit/v3/relyingparty/verifyPassword?key=AIzaSyBrnRxGfzyWvLZu9XMUnbZTPpu8NxHBRE0"
headers = {"content-type": "application/json; charset=UTF-8"}
data = json.dumps({"email": email, "password": password, "returnSecureToken": True})
response = requests.post(request_ref, headers=headers, data=data)
if response.status_code!=200:
try:
auth.sign_in_with_email_and_password(email, password)
return templates.TemplateResponse('index.html', {'request': request})
message = json.loads(response._content)['error']['message']
except:
message = 'Please check your credentials'
return templates.TemplateResponse('login.html', {'request': request, 's':message})
message = "Some error Occured."
return templates.TemplateResponse('login.html', {'request': request, 'err_msg':message})
else:
return templates.TemplateResponse('index.html', {'request': request})
@app.route('/registration',methods=["POST"])
async def firebase_register(request):
......@@ -51,39 +46,34 @@ async def firebase_register(request):
email = body['email']
password = body['pass1']
confirm = body['pass2']
if password!=confirm:
message = 'Registration unsuccessful'
return templates.TemplateResponse('register.html', {'request': request, 's':message})
message = 'Password do not match.'
return templates.TemplateResponse('register.html', {'request': request, 'err_msg':message})
request_ref = "https://www.googleapis.com/identitytoolkit/v3/relyingparty/signupNewUser?key=AIzaSyBrnRxGfzyWvLZu9XMUnbZTPpu8NxHBRE0"
headers = {"content-type": "application/json; charset=UTF-8" }
data = json.dumps({"email": email, "password": password, "returnSecureToken": True})
response = requests.post(request_ref, headers=headers, data=data)
if response.status_code!=200:
try:
auth.create_user_with_email_and_password(email, password)
message = 'Registration successful'
message = json.loads(response._content)['error']['message']
except:
message = 'Registration unsuccessful'
return templates.TemplateResponse('register.html', {'request': request, 's':message})
return templates.TemplateResponse('login.html', {'request': request, 's':message})
# @app.route('/register',methods=["POST"])
# async def registration(request):
# body = await request.json()
# email, password = body['email'],body['password']
# json = {
# "email": email,
# "password": password,
# "returnSecureToken": True
# }
# message = "Success, Thanks for your envaluable contribution!"
# response = authed_session.post("https://www.googleapis.com/identitytoolkit/v3/relyingparty/signupNewUser",None,json)
# print(response)
# if response.status_code!=200:
# message = "Oops some error occured please try after some time."
# return PlainTextResponse(message)
message = "Some error Occured."
return templates.TemplateResponse('register.html', {'request': request, 'err_msg':message})
else:
message = "Successfully registered."
return templates.TemplateResponse('login.html', {'request': request, 'err_msg':message})
@app.route('/')
async def login(request):
return templates.TemplateResponse('login.html', {'request': request})
@app.route('/register')
async def login(request):
return templates.TemplateResponse('register.html', {'request': request})
@app.route('/contribute')
async def contrbPage(request):
return templates.TemplateResponse('contribute.html', {'request': request})
......@@ -95,7 +85,6 @@ async def getEssay(request):
data = response.json().values()
return templates.TemplateResponse('topic.html', {'request': request,'essayResponse':data,'topic':prompt})
# app.add_route('/evaluate', predict, methods=["POST"])
@app.route('/evaluate',methods=["POST"])
async def evaluate(request):
body = await request.form()
......@@ -112,7 +101,7 @@ async def evaluate(request):
}
message = "Success, Thanks for your envaluable contribution!"
response = authed_session.post("https://softlab-ba722.firebaseio.com/"+prompt+"/.json",None,json)
print(response)
if response.status_code!=200:
message = "Oops some error occured please try after some time."
return templates.TemplateResponse('thanks.html', {'request': request, 'score':score, 'message':message, 'essay':essay})
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment