暂无描述

registro-run.py 3.1KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. from flask import Flask, render_template, jsonify, session, request
  2. from flask import escape, redirect
  3. import json, os
  4. import estudiante, madre, admin, enfermera, facultad, curso
  5. from authlib import *
  6. app = Flask(__name__)
  7. secret = os.open("secret").read()
  8. print(secret)
  9. @app.route('/', methods=['GET', 'POST'])
  10. def index():
  11. # return "Hello, World!"
  12. print(session)
  13. auth = Auth(session)
  14. if not auth.checkAuth():
  15. return render_template("login.html")
  16. print(session["gallitosccom"],session["id"], session["email"])
  17. print("Enfermera", auth.checkRole("enfermera"))
  18. print("Estudiante", auth.checkRole("estudiante"))
  19. print("Admin", auth.checkRole("admin"))
  20. print("Facultad", auth.checkRole("facultad"))
  21. print("Madre", auth.checkRole("madre"))
  22. print(session)
  23. return render_template("listuser.html", tipo="enfermera", admin=1)
  24. @app.route('/login', methods=['POST'])
  25. def do_login():
  26. auth = Auth(session)
  27. if not (request.form['password'] and request.form["username"]):
  28. return render_template('login.html')
  29. username = "%s" % escape(request.form["username"])
  30. password = escape(request.form["password"])
  31. #
  32. if auth.do_login(username, password):
  33. # Mandar al dashboard
  34. return redirect("/")
  35. # Algo esta mal Mandar al login.
  36. return render_template('login.html')
  37. @app.route("/logout")
  38. def logout():
  39. Auth(session).do_logout()
  40. return render_template('login.html')
  41. @app.route('/view/list/<tipo>/', methods=['GET', 'POST'])
  42. def viewlist(tipo):
  43. if tipo == "curso":
  44. return render_template("formacurso.html")
  45. return render_template("listuser.html", tipo=tipo, admin=1)
  46. @app.route('/list/<tipo>/', methods=['GET', 'POST'])
  47. def list(tipo):
  48. if tipo in ["enfermera", "admin", "estudiante", "madre", "facultad", "curso"]:
  49. return jsonify(globals()[tipo].list())
  50. @app.route('/forma/<accion>/<tipo>/', methods=['GET', 'POST'])
  51. @app.route('/forma/<accion>/<tipo>/<id>', methods=['GET', 'POST'])
  52. def formas(accion,tipo,id=None):
  53. if not tipo in ["enfermera", "admin", "estudiante", "madre", "facultad"]:
  54. return # Redirigirlo a una pagina de errorCallback
  55. if not accion in ["edit", "add"]:
  56. return # Redirigirlo a una pagina de errorCallback
  57. return render_template('forma.html', tipo=tipo, accion=accion, id=id)
  58. @app.route('/formaDatos/<accion>/<tipo>/', methods=['GET', 'POST'])
  59. @app.route('/formaDatos/<accion>/<tipo>/<id>', methods=['GET', 'POST'])
  60. def formaEst(accion, tipo, id=None):
  61. # data = json.loads('formaEstudiantes.json')
  62. #getattr(globals()["enfermera"], "list")()
  63. if not tipo in ["enfermera", "admin", "estudiante", "madre", "facultad"]:
  64. return # Redirigirlo a una pagina de errorCallback
  65. if not accion in ["edit", "add"]:
  66. return # Redirigirlo a una pagina de errorCallback
  67. return jsonify(getattr(globals()[tipo], accion)())
  68. @app.route('/dashAdmin', methods=['GET', 'POST'])
  69. def dashAdmin():
  70. # data = json.loads('formaEstudiantes.json')
  71. return {}
  72. app.secret_key = os.urandom(52)
  73. if __name__ == "__main__":
  74. app.run(host='0.0.0.0', port=9000, debug=True)