12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- """List of clients"""
- from flask import render_template, request, flash, redirect, url_for
- from flask_login import current_user, login_required
- from app.developer.base import developer_bp
- from app.extensions import db
- from app.log import LOG
- from app.models import Client
- @developer_bp.route("/", methods=["GET", "POST"])
- @login_required
- def index():
- # delete client
- if request.method == "POST":
- if request.form.get("form-name") == "delete-client":
- client_id = int(request.form.get("client-id"))
- client = Client.get(client_id)
- if client.user_id != current_user.id:
- flash("You cannot remove this client", "warning")
- else:
- client_name = client.name
- client.delete()
- db.session.commit()
- LOG.d("Remove client %s", client)
- flash(f"Client {client_name} has been deleted successfully", "success")
- elif request.form.get("form-name") == "switch-client-publish":
- client_id = int(request.form.get("client-id"))
- client = Client.get(client_id)
- if client.user_id != current_user.id:
- flash("You cannot modify this client", "warning")
- else:
- client.published = not client.published
- db.session.commit()
- LOG.d("Switch client.published %s", client)
- if client.published:
- flash(
- f"Client {client.name} has been published on Discover",
- "success",
- )
- else:
- flash(f"Client {client.name} has been un-published", "success")
- return redirect(url_for("developer.index"))
- clients = Client.filter_by(user_id=current_user.id).all()
- return render_template("developer/index.html", clients=clients)
|