From 6ddfb2b1c1b586ed5513d20a0bdc3554920808fe Mon Sep 17 00:00:00 2001 From: KF7EEL Date: Mon, 10 May 2021 12:17:15 -0700 Subject: [PATCH] add db location --- user_managment/app.py | 109 +++++++++++++++--- .../templates/flask_user_layout.html | 2 + 2 files changed, 96 insertions(+), 15 deletions(-) diff --git a/user_managment/app.py b/user_managment/app.py index 1416491..36f087f 100644 --- a/user_managment/app.py +++ b/user_managment/app.py @@ -44,7 +44,7 @@ class ConfigClass(object): SECRET_KEY = 'Change me' # Flask-SQLAlchemy settings - SQLALCHEMY_DATABASE_URI = 'sqlite:///mmdvm_users.sqlite' # File-based SQL database + SQLALCHEMY_DATABASE_URI = db_location # File-based SQL database SQLALCHEMY_TRACK_MODIFICATIONS = False # Avoids SQLAlchemy warning # Flask-User settings @@ -176,7 +176,7 @@ def create_app(): #content = Markup('The HTML String') #user_id = request.args.get('user_id') u = current_user - print(u.username) +## print(u.username) id_dict = ast.literal_eval(u.dmr_ids) #u = User.query.filter_by(username=user).first() ## print(user_id) @@ -216,22 +216,101 @@ def create_app(): ## """) content = 'Mem only' return render_template('flask_user_layout.html', markup_content = content, logo = logo) + + # The Admin page requires an 'Admin' role. - @app.route('/admin') + @app.route('/admin', methods=['POST', 'GET']) @roles_required('Admin') # Use of @roles_required decorator def admin_page(): - return render_template_string(""" - {% extends "flask_user_layout.html" %} - {% block content %} -

{%trans%}Admin Page{%endtrans%}

-

{%trans%}Register{%endtrans%}

-

{%trans%}Sign in{%endtrans%}

-

{%trans%}Home Page{%endtrans%} (accessible to anyone)

-

{%trans%}Member Page{%endtrans%} (login_required: member@example.com / Password1)

-

{%trans%}Admin Page{%endtrans%} (role_required: admin@example.com / Password1')

-

{%trans%}Sign out{%endtrans%}

- {% endblock %} - """) + #print(request.args.get('callsign')) +## if request.method == 'POST' and request.form.get('callsign'): +## #result = request.json +## callsign = request.form.get('callsign') +## u = User.query.filter_by(username=callsign).first() +## content = u.dmr_ids + if request.method == 'POST' and request.args.get('callsign') and request.form.get('user_status'): + edit_user = User.query.filter(User.username == request.args.get('callsign')).first() + if request.form.get('user_status') == "True": + edit_user.is_actived = 1 + if request.form.get('user_status') == "False": + edit_user.is_actived = 0 +## content = edit_user.is_active + db.session.commit() + + elif request.method == 'POST' and request.form.get('callsign') and not request.form.get('user_status'): # and request.form.get('user_status') : + callsign = request.form.get('callsign') + u = User.query.filter_by(username=callsign).first() + content = ''' +
+ + + + + + + + + + + + +
+

+
+
+ + + +

 

+''' + else: + content = ''' + + + + + + +
+ + + + + + + + + + + + +
+

+
+
+

 

+''' + # content = 'no found' +## return render_template_string(""" +## {% extends "flask_user_layout.html" %} +## {% block content %} +##

{%trans%}Admin Page{%endtrans%}

+##

{%trans%}Register{%endtrans%}

+##

{%trans%}Sign in{%endtrans%}

+##

{%trans%}Home Page{%endtrans%} (accessible to anyone)

+##

{%trans%}Member Page{%endtrans%} (login_required: member@example.com / Password1)

+##

{%trans%}Admin Page{%endtrans%} (role_required: admin@example.com / Password1')

+##

{%trans%}Sign out{%endtrans%}

+## {% endblock %} +## """) + + return render_template('flask_user_layout.html', markup_content = Markup(content), logo = logo) + + def authorized_peer(peer_id): try: diff --git a/user_managment/templates/flask_user_layout.html b/user_managment/templates/flask_user_layout.html index 01bea3c..3e82da4 100644 --- a/user_managment/templates/flask_user_layout.html +++ b/user_managment/templates/flask_user_layout.html @@ -39,8 +39,10 @@ Home + {% if not call_or_get(current_user.is_authenticated) %} Register Sign in + {% endif %} {% if call_or_get(current_user.is_authenticated) %} View Passphrase(s) Edit {{ current_user.username or current_user.email }}