1
0
Fork 0
mirror of https://codeberg.org/Mo8it/AdvLabDB.git synced 2024-09-19 18:31:16 +00:00

Send only emails to deactivate_users

This commit is contained in:
Mo 2021-04-17 17:14:23 +02:00
parent 15a9c24cf3
commit 0cec81f76f
2 changed files with 13 additions and 8 deletions

View file

@ -212,10 +212,9 @@ def users():
@app.route("/deactivate_users", methods=["GET"]) @app.route("/deactivate_users", methods=["GET"])
@roles_required("admin") @roles_required("admin")
def deactivate_users(): def deactivate_users():
usersJson = json.loads(request.args.get("json")) usersEmails = json.loads(request.args.get("json"))
deactivatedUsersEmails = [] deactivatedUsersEmails = []
for userJson in usersJson: for email in usersEmails:
email = userJson["email"]
user = User.query.filter(User.email == email).first() user = User.query.filter(User.email == email).first()
if user == current_user: if user == current_user:
flash("You have tried to deactivate yourself as user!", "danger") flash("You have tried to deactivate yourself as user!", "danger")
@ -223,10 +222,11 @@ def deactivate_users():
if user_datastore.deactivate_user(user): if user_datastore.deactivate_user(user):
deactivatedUsersEmails.append(email) deactivatedUsersEmails.append(email)
db.session.commit() db.session.commit()
if deactivatedUsersEmails == []: deactivatedUsersEmailsLen = len(deactivatedUsersEmails)
if deactivatedUsersEmailsLen == 0:
flash(f"No users deactivated!", "warning") flash(f"No users deactivated!", "warning")
else: else:
flash(f"Users with emails {deactivatedUsersEmails} deactivated!", "success") flash(f"{deactivatedUsersEmailsLen} Users with emails {deactivatedUsersEmails} deactivated!", "success")
return redirect(url_for("users")) return redirect(url_for("users"))

View file

@ -14,12 +14,17 @@
{% block scripts %} {% block scripts %}
<script> <script>
var $table = $('#usersTab') let $table = $('#usersTab')
var $button = $('#deactivateUsersButton') let $button = $('#deactivateUsersButton')
$(function() { $(function() {
$button.click(function () { $button.click(function () {
window.location.href = '{{url_for("deactivate_users")}}?json=' + JSON.stringify($table.bootstrapTable('getSelections')) let users = $table.bootstrapTable('getSelections');
let emails = [];
for (var i=0; i<users.length; i++) {
emails.push(users[i]["email"])
}
window.location.href = '{{url_for("deactivate_users")}}?json=' + JSON.stringify(emails);
}) })
}) })
</script> </script>