Advertisement
Guest User

Untitled

a guest
May 14th, 2018
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.36 KB | None | 0 0
  1. from flask import Flask, render_template
  2. from flask_cors import CORS
  3.  
  4. app = Flask(__name__)
  5. CORS(app)
  6.  
  7.  
  8. '''
  9. def checkUser(email, password)
  10. return db.users.find_one({'email':email, 'password':password}).count() > 0
  11. def hashpass(password, password_user)
  12. return bcrypt.hashpw(password.encode('utf-8'), password_user)
  13. '''
  14. @app.route('/login', methods=['POST'])
  15. def login():
  16. users = db.users
  17. req_json = request.get_json()
  18. check_email = users.find_one({'email': req_json['email']})
  19. if checkUser(req_json['email'], hashpass(req_json['password'], check_email['password']))
  20. return json.dumps({"success": True})
  21. return json.dumps({"success":False})
  22.  
  23. @app.route('/register', methods=['POST'])
  24. def register():
  25. users = db.users
  26. req_json = request.get_json()
  27. existing_email = users.find_one({'email': req_json['email']})
  28. if existing_email is None:
  29. hashed_password = bcrypt.hashpw(req_json['password'].encode('utf-8'), bcrypt.gensalt())
  30. users.insert({'firstName':req_json['firstName'],
  31. 'lastName':req_json['lastName'],
  32. 'birthDay':req_json['birthDay'],
  33. 'password':hashed_password,
  34. 'place':req_json['place'],
  35. 'female':req_json['female'],
  36. 'male':req_json['male'],
  37. 'email':req_json['email'],
  38. 'admin':False})
  39. return json.dumps({"success":True})
  40. return json.dumps({"success":False})
  41.  
  42. @app.route('/checkAdmin', methods=['POST'])
  43. def checkAdmin():
  44. users = db.users
  45. req_json = request.get_json()
  46. user = users.find_one({"email":req_json['email']})
  47. if checkUser(req_json['email'], hashpass(req_json['password'], user['password']))
  48. if user['admin'] == True:
  49. return json.dumps({"success":True})
  50. return json.dumps({"success":False})
  51.  
  52. @app.route('/getUserInfo', methods=['POST'])
  53. def getUserInfo():
  54. users = db.users
  55. req_json = request.get_json()
  56. who = users.find_one({"_id":ObjectId(req_json['id']), "email":req_json['email']})
  57. if who:
  58. answer = {"firstName":who['firstName'], "lastName":who['lastName'], "birthDay":who['birthDay'],
  59. "place":who['place'], "female": who['female'], "male": who['male'], "email":who['email'], "admin":who['admin']}
  60. return json.dumps({"success":True, "info":answer})
  61. return json.dumps({"success":False})
  62.  
  63. @app.route('/changeEmail', methods=['POST'])
  64. def changeEmail():
  65. users = db.users
  66. req_json = request.get_json()
  67. user = users.find_one({"email":req_json['oldEmail']})
  68. if checkUser(req_json['oldEmail'], hashpass(req_json['password'], user['password']))
  69. users.update_one({"email":user['email']},{'$set': {'email':req_json['newEmail']}})
  70. return json.dumps({"success":True})
  71. return json.dumps({"success":False})
  72.  
  73. @app.route('/changePassword', methods=['POST'])
  74. def changePassword():
  75. users = db.users
  76. req_json = request.get_json()
  77. user = users.find_one({"email":req_json['email']})
  78. if checkUser(req_json['email'], hashpass(req_json['oldPassword], user['password']))
  79. newHashedPassword = bcrypt.hashpw(req_json['newPassword'].encode('utf-8'),
  80. bcrypt.gensalt())
  81. users.update_one({"email":user['email']},{'$set': {'password':newHashedPassword}})
  82. return json.dumps({"success":True})
  83. return json.dumps({"success":False})
  84.  
  85. @app.route('/changePlace', methods=['POST'])
  86. def changePale():
  87. users = db.users
  88. req_json = request.get_json()
  89. user = users.find_one({"email":req_json['email']})
  90. if checkUser(req_json['email'], hashpass(req_json['password'], user['password']))
  91. users.update_one({"email":user['email']},{'$set': {'place':req_json['place']}})
  92. return json.dumps({"success":True})
  93. return json.dumps({"success":False})
  94.  
  95. @app.route('/changeBirthday', methods=['POST'])
  96. def changeBirthday():
  97. users = db.users
  98. req_json = request.get_json()
  99. user = users.find_one({"email":req_json['email']})
  100. if checkUser(req_json['email'], hashpass(req_json['password'], user['password']))
  101. users.update_one({"email":user['email']},{'$set': {'birthDay':req_json['birthDay']}})
  102. return json.dumps({"success":True}
  103. return json.dumps({"success":False})
  104.  
  105. @app.route('/changeName', methods=['POST'])
  106. def changeName():
  107. users = db.users
  108. req_json = request.get_json()
  109. user = users.find_one({"email":req_json['email']})
  110. if checkUser(req_json['email'], hashpass(req_json['password'], user['password']))
  111. users.update_one({"email":user['email']},{'$set': {'firstName':req_json['firstName'], 'lastName':req_json['lastName']}})
  112. return json.dumps({"success":True}
  113. return json.dumps({"success":False})
  114.  
  115. @app.route('/changeEmailPage')
  116. def abc4():
  117. return render_template('changeEmail.html')
  118.  
  119. @app.route('/getUserInfoPage')
  120. def abc3():
  121. return render_template('getUserInfo.html')
  122.  
  123. @app.route('/loginPage')
  124. def abc():
  125. return render_template('index.html')
  126.  
  127. @app.route('/registerPage')
  128. def abc2():
  129. return render_template('register.html')
  130.  
  131. if __name__ == "__main__":
  132. app.secret_key = 'webdevbypalacze'
  133. app.run(host='0.0.0.0', port=5000, threaded=True, debug=True)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement