forked from Github-Mirrors/canaille
admin views have its own blueprint
This commit is contained in:
parent
d839dd763d
commit
3804a2a4b0
11 changed files with 38 additions and 33 deletions
|
@ -4,10 +4,7 @@ import os
|
|||
from logging.config import dictConfig
|
||||
|
||||
import canaille.account
|
||||
import canaille.admin.authorizations
|
||||
import canaille.admin.clients
|
||||
import canaille.admin.mail
|
||||
import canaille.admin.tokens
|
||||
import canaille.admin
|
||||
import canaille.configuration
|
||||
import canaille.consents
|
||||
import canaille.groups
|
||||
|
@ -216,16 +213,11 @@ def setup_blueprints(app):
|
|||
app.url_map.strict_slashes = False
|
||||
|
||||
app.register_blueprint(canaille.account.bp)
|
||||
app.register_blueprint(canaille.admin.bp, url_prefix="/admin")
|
||||
app.register_blueprint(canaille.groups.bp, url_prefix="/groups")
|
||||
app.register_blueprint(canaille.oauth.bp, url_prefix="/oauth")
|
||||
app.register_blueprint(canaille.consents.bp, url_prefix="/consent")
|
||||
app.register_blueprint(canaille.well_known.bp, url_prefix="/.well-known")
|
||||
app.register_blueprint(canaille.admin.tokens.bp, url_prefix="/admin/token")
|
||||
app.register_blueprint(
|
||||
canaille.admin.authorizations.bp, url_prefix="/admin/authorization"
|
||||
)
|
||||
app.register_blueprint(canaille.admin.clients.bp, url_prefix="/admin/client")
|
||||
app.register_blueprint(canaille.admin.mail.bp, url_prefix="/admin/mail")
|
||||
|
||||
|
||||
def create_app(config=None, validate=True):
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
from flask import Blueprint
|
||||
|
||||
from . import authorizations
|
||||
from . import clients
|
||||
from . import mail
|
||||
from . import tokens
|
||||
|
||||
bp = Blueprint("admin", __name__)
|
||||
|
||||
bp.register_blueprint(tokens.bp, url_prefix="/token")
|
||||
bp.register_blueprint(authorizations.bp, url_prefix="/authorization")
|
||||
bp.register_blueprint(clients.bp, url_prefix="/client")
|
||||
bp.register_blueprint(mail.bp, url_prefix="/mail")
|
|
@ -4,7 +4,7 @@ from flask import Blueprint
|
|||
from flask_themer import render_template
|
||||
|
||||
|
||||
bp = Blueprint("admin_authorizations", __name__)
|
||||
bp = Blueprint("authorizations", __name__)
|
||||
|
||||
|
||||
@bp.route("/")
|
||||
|
|
|
@ -15,7 +15,7 @@ from flask_wtf import FlaskForm
|
|||
from werkzeug.security import gen_salt
|
||||
|
||||
|
||||
bp = Blueprint("admin_clients", __name__)
|
||||
bp = Blueprint("clients", __name__)
|
||||
|
||||
|
||||
@bp.route("/")
|
||||
|
@ -179,7 +179,7 @@ def add(user):
|
|||
"success",
|
||||
)
|
||||
|
||||
return redirect(url_for("admin_clients.edit", client_id=client_id))
|
||||
return redirect(url_for("admin.clients.edit", client_id=client_id))
|
||||
|
||||
|
||||
@bp.route("/edit/<client_id>", methods=["GET", "POST"])
|
||||
|
@ -251,4 +251,4 @@ def client_delete(client_id):
|
|||
"success",
|
||||
)
|
||||
client.delete()
|
||||
return redirect(url_for("admin_clients.index"))
|
||||
return redirect(url_for("admin.clients.index"))
|
||||
|
|
|
@ -15,7 +15,7 @@ from wtforms.validators import DataRequired
|
|||
from wtforms.validators import Email
|
||||
|
||||
|
||||
bp = Blueprint("admin_mails", __name__)
|
||||
bp = Blueprint("mails", __name__)
|
||||
|
||||
|
||||
class MailTestForm(FlaskForm):
|
||||
|
|
|
@ -4,7 +4,7 @@ from flask import Blueprint
|
|||
from flask_themer import render_template
|
||||
|
||||
|
||||
bp = Blueprint("admin_tokens", __name__)
|
||||
bp = Blueprint("tokens", __name__)
|
||||
|
||||
|
||||
@bp.route("/")
|
||||
|
|
|
@ -22,8 +22,8 @@
|
|||
</thead>
|
||||
{% for authorization in authorizations %}
|
||||
<tr>
|
||||
<td><a href="{{ url_for('admin_authorizations.view', authorization_id=authorization.oauthCode) }}">{{ authorization.oauthCode }}</a></td>
|
||||
<td><a href="{{ url_for('admin_clients.edit', client_id=authorization.oauthClientID) }}">{{ authorization.oauthClientID }}</a></td>
|
||||
<td><a href="{{ url_for('admin.authorizations.view', authorization_id=authorization.oauthCode) }}">{{ authorization.oauthCode }}</a></td>
|
||||
<td><a href="{{ url_for('admin.clients.edit', client_id=authorization.oauthClientID) }}">{{ authorization.oauthClientID }}</a></td>
|
||||
<td>{{ authorization.oauthSubject }}</td>
|
||||
<td>{{ authorization.issue_date }}</td>
|
||||
</tr>
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
{% block content %}
|
||||
|
||||
<div class="ui segment">
|
||||
<a class="ui primary button" href="{{ url_for('admin_clients.add') }}">{% trans %}Add client{% endtrans %}</a>
|
||||
<a class="ui primary button" href="{{ url_for('admin.clients.add') }}">{% trans %}Add client{% endtrans %}</a>
|
||||
</div>
|
||||
|
||||
<table class="ui table">
|
||||
|
@ -27,7 +27,7 @@
|
|||
{% for client in clients %}
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{{ url_for('admin_clients.edit', client_id=client.oauthClientID) }}">
|
||||
<a href="{{ url_for('admin.clients.edit', client_id=client.oauthClientID) }}">
|
||||
{% if client.oauthLogoURI %}
|
||||
<img class="ui avatar image" src="{{ client.oauthLogoURI }}" alt="Client logo">
|
||||
{% else %}
|
||||
|
@ -35,7 +35,7 @@
|
|||
{% endif %}
|
||||
</a>
|
||||
</td>
|
||||
<td><a href="{{ url_for('admin_clients.edit', client_id=client.oauthClientID) }}">{{ client.oauthClientName }}</a></td>
|
||||
<td><a href="{{ url_for('admin.clients.edit', client_id=client.oauthClientID) }}">{{ client.oauthClientName }}</a></td>
|
||||
<td><a href="{{ client.oauthClientURI }}">{{ client.oauthClientURI }}</a></td>
|
||||
<td>{% if client.issue_date %}{{ client.issue_date }}{% endif %}</td>
|
||||
</tr>
|
||||
|
|
|
@ -36,8 +36,8 @@
|
|||
<div class="item">
|
||||
<div class="right floated content">
|
||||
<div class="ui buttons">
|
||||
<a class="ui button" href="{{ url_for("admin_mails.password_init_txt") }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin_mails.password_init_html") }}">HTML</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.password_init_txt") }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.password_init_html") }}">HTML</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="middle aligned content">
|
||||
|
@ -48,8 +48,8 @@
|
|||
<div class="item">
|
||||
<div class="right floated content">
|
||||
<div class="ui buttons">
|
||||
<a class="ui button" href="{{ url_for("admin_mails.password_reset_txt") }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin_mails.password_reset_html") }}">HTML</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.password_reset_txt") }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.password_reset_html") }}">HTML</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="middle aligned content">
|
||||
|
@ -60,8 +60,8 @@
|
|||
<div class="item">
|
||||
<div class="right floated content">
|
||||
<div class="ui buttons">
|
||||
<a class="ui button" href="{{ url_for("admin_mails.invitation_txt", uid=user.uid, email=user.mail[0]) }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin_mails.invitation_html", uid=user.uid, email=user.mail[0]) }}">HTML</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.invitation_txt", uid=user.uid, email=user.mail[0]) }}">TXT</a>
|
||||
<a class="ui button" href="{{ url_for("admin.mails.invitation_html", uid=user.uid, email=user.mail[0]) }}">HTML</a>
|
||||
</div>
|
||||
</div>
|
||||
<div class="middle aligned content">
|
||||
|
|
|
@ -22,8 +22,8 @@
|
|||
</thead>
|
||||
{% for token in tokens %}
|
||||
<tr>
|
||||
<td><a href="{{ url_for('admin_tokens.view', token_id=token.oauthAccessToken) }}">{{ token.oauthAccessToken }}</a></td>
|
||||
<td><a href="{{ url_for('admin_clients.edit', client_id=token.oauthClientID) }}">{{ token.oauthClientID }}</a></td>
|
||||
<td><a href="{{ url_for('admin.tokens.view', token_id=token.oauthAccessToken) }}">{{ token.oauthAccessToken }}</a></td>
|
||||
<td><a href="{{ url_for('admin.clients.edit', client_id=token.oauthClientID) }}">{{ token.oauthClientID }}</a></td>
|
||||
<td>{{ token.oauthSubject }}</td>
|
||||
<td>{{ token.issue_date }}</td>
|
||||
</tr>
|
||||
|
|
|
@ -64,19 +64,19 @@
|
|||
<i class="settings icon"></i>
|
||||
Admin
|
||||
<div class="menu">
|
||||
<a class="item" href="{{ url_for('admin_clients.index') }}">
|
||||
<a class="item" href="{{ url_for('admin.clients.index') }}">
|
||||
<i class="plug icon"></i>
|
||||
{% trans %}Clients{% endtrans %}
|
||||
</a>
|
||||
<a class="item" href="{{ url_for('admin_tokens.index') }}">
|
||||
<a class="item" href="{{ url_for('admin.tokens.index') }}">
|
||||
<i class="key icon"></i>
|
||||
{% trans %}Tokens{% endtrans %}
|
||||
</a>
|
||||
<a class="item" href="{{ url_for('admin_authorizations.index') }}">
|
||||
<a class="item" href="{{ url_for('admin.authorizations.index') }}">
|
||||
<i class="user secret icon"></i>
|
||||
{% trans %}Codes{% endtrans %}
|
||||
</a>
|
||||
<a class="item" href="{{ url_for('admin_mails.mail_index') }}">
|
||||
<a class="item" href="{{ url_for('admin.mails.mail_index') }}">
|
||||
<i class="user mail icon"></i>
|
||||
{% trans %}Emails{% endtrans %}
|
||||
</a>
|
||||
|
|
Loading…
Reference in a new issue