Commit dfc509fe authored by shreyansh's avatar shreyansh

regiter login working

parent bb795629
...@@ -4,23 +4,9 @@ from starlette.applications import Starlette ...@@ -4,23 +4,9 @@ from starlette.applications import Starlette
from starlette.templating import Jinja2Templates from starlette.templating import Jinja2Templates
from starlette.responses import JSONResponse, PlainTextResponse from starlette.responses import JSONResponse, PlainTextResponse
from prediction import predict from prediction import predict
import pyrebase
import uvicorn import uvicorn
import json import json
import requests
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()
scopes = [ scopes = [
"https://www.googleapis.com/auth/userinfo.email", "https://www.googleapis.com/auth/userinfo.email",
...@@ -34,16 +20,25 @@ authed_session = AuthorizedSession(credentials) ...@@ -34,16 +20,25 @@ authed_session = AuthorizedSession(credentials)
@app.route('/auth',methods=["POST"]) @app.route('/auth',methods=["POST"])
async def basic(request): async def firebase_login(request):
body = await request.form() body = await request.form()
email = body['email'] email = body['email']
password = body['password'] 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: try:
auth.sign_in_with_email_and_password(email, password) message = json.loads(response._content)['error']['message']
return templates.TemplateResponse('index.html', {'request': request})
except: except:
message = 'Please check your credentials' message = "Some error Occured."
return templates.TemplateResponse('login.html', {'request': request, 's':message}) return templates.TemplateResponse('login.html', {'request': request, 'err_msg':message})
else:
return templates.TemplateResponse('index.html', {'request': request})
@app.route('/registration',methods=["POST"]) @app.route('/registration',methods=["POST"])
async def firebase_register(request): async def firebase_register(request):
...@@ -51,39 +46,34 @@ async def firebase_register(request): ...@@ -51,39 +46,34 @@ async def firebase_register(request):
email = body['email'] email = body['email']
password = body['pass1'] password = body['pass1']
confirm = body['pass2'] confirm = body['pass2']
if password!=confirm: if password!=confirm:
message = 'Registration unsuccessful' message = 'Password do not match.'
return templates.TemplateResponse('register.html', {'request': request, 's':message}) 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: try:
auth.create_user_with_email_and_password(email, password) message = json.loads(response._content)['error']['message']
message = 'Registration successful'
except: except:
message = 'Registration unsuccessful' message = "Some error Occured."
return templates.TemplateResponse('register.html', {'request': request, 's':message}) return templates.TemplateResponse('register.html', {'request': request, 'err_msg':message})
return templates.TemplateResponse('login.html', {'request': request, 's':message}) else:
message = "Successfully registered."
return templates.TemplateResponse('login.html', {'request': request, 'err_msg':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)
@app.route('/') @app.route('/')
async def login(request): async def login(request):
return templates.TemplateResponse('login.html', {'request': 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') @app.route('/contribute')
async def contrbPage(request): async def contrbPage(request):
return templates.TemplateResponse('contribute.html', {'request': request}) return templates.TemplateResponse('contribute.html', {'request': request})
...@@ -95,7 +85,6 @@ async def getEssay(request): ...@@ -95,7 +85,6 @@ async def getEssay(request):
data = response.json().values() data = response.json().values()
return templates.TemplateResponse('topic.html', {'request': request,'essayResponse':data,'topic':prompt}) return templates.TemplateResponse('topic.html', {'request': request,'essayResponse':data,'topic':prompt})
# app.add_route('/evaluate', predict, methods=["POST"])
@app.route('/evaluate',methods=["POST"]) @app.route('/evaluate',methods=["POST"])
async def evaluate(request): async def evaluate(request):
body = await request.form() body = await request.form()
...@@ -112,7 +101,7 @@ async def evaluate(request): ...@@ -112,7 +101,7 @@ async def evaluate(request):
} }
message = "Success, Thanks for your envaluable contribution!" message = "Success, Thanks for your envaluable contribution!"
response = authed_session.post("https://softlab-ba722.firebaseio.com/"+prompt+"/.json",None,json) response = authed_session.post("https://softlab-ba722.firebaseio.com/"+prompt+"/.json",None,json)
print(response)
if response.status_code!=200: if response.status_code!=200:
message = "Oops some error occured please try after some time." message = "Oops some error occured please try after some time."
return templates.TemplateResponse('thanks.html', {'request': request, 'score':score, 'message':message, 'essay':essay}) 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