organisation dashboard page

This commit is contained in:
chrisw
2018-02-14 13:08:44 +00:00
parent c1e3658a8f
commit dd2231056d
11 changed files with 144 additions and 47 deletions

View File

@@ -87,6 +87,7 @@ current_service = LocalProxy(partial(_lookup_req_object, 'service'))
# The current organisation attached to the request stack.
current_organisation = LocalProxy(partial(_lookup_req_object, 'organisation'))
def create_app(application):
setup_commands(application)

View File

@@ -3,34 +3,34 @@ from flask import Blueprint
main = Blueprint('main', __name__) # noqa
from app.main.views import ( # noqa
add_service,
api_keys,
choose_service,
code_not_received,
conversation,
dashboard,
email_branding,
feedback,
forgot_password,
inbound_number,
index,
invites,
jobs,
letter_jobs,
manage_users,
new_password,
notifications,
organisations,
platform_admin,
providers,
register,
send,
service_settings,
sign_in,
sign_out,
register,
two_factor,
verify,
send,
add_service,
code_not_received,
jobs,
dashboard,
templates,
service_settings,
forgot_password,
new_password,
styleguide,
templates,
two_factor,
user_profile,
choose_service,
api_keys,
manage_users,
invites,
feedback,
providers,
platform_admin,
letter_jobs,
email_branding,
conversation,
organisations,
notifications,
inbound_number
verify
)

View File

@@ -14,19 +14,38 @@ def organisations():
orgs = organisations_client.get_organisations()
return render_template(
'views/organisations/organisations.html',
'views/organisations/index.html',
organisations=orgs
)
@main.route("/organisation/<org_id>/dashboard", methods=['GET'])
@main.route("/organisations/add", methods=['GET', 'POST'])
@login_required
@user_has_permissions(admin_override=True)
def add_organisation():
form = CreateOrUpdateOrganisation()
if form.validate_on_submit():
organisations_client.create_organisation(
name=form.name.data,
)
return redirect(url_for('.organisations'))
return render_template(
'views/organisations/add-organisation.html',
form=form
)
@main.route("/organisation/<org_id>", methods=['GET'])
@login_required
@user_has_permissions(admin_override=True)
def organisation_dashboard(org_id):
organisation_services = organisations_client.get_organisation_services(org_id)
return render_template(
'views/organisations/organisation-dashboard.html',
'views/organisations/organisation/index.html',
organisation_services=organisation_services
)
@@ -50,26 +69,17 @@ def update_organisation(org_id):
form.name.data = org['name']
return render_template(
'views/organisations/manage-organisation.html',
'views/organisations/organisation/update-organisation.html',
form=form,
organisation=org
)
@main.route("/organisations/add", methods=['GET', 'POST'])
@main.route("/organisation/<org_id>/users", methods=['GET'])
@login_required
@user_has_permissions(admin_override=True)
def add_organisation():
form = CreateOrUpdateOrganisation()
if form.validate_on_submit():
organisations_client.create_organisation(
name=form.name.data,
)
return redirect(url_for('.organisations'))
def organisation_users(org_id):
return render_template(
'views/organisations/manage-organisation.html',
form=form
'views/organisations/organisation/users/index.html',
)

View File

@@ -1,7 +1,7 @@
<nav class="navigation">
<ul>
{% if current_user.has_permissions(admin_override=True, any_=True) %}
<li><a href="{{ url_for('.organisation_dashboard', org_id=current_service.id) }}">Dashboard</a></li>
{% if current_user.has_permissions(admin_override=True) %}
<li><a href="{{ url_for('.organisation_users', org_id=current_org.id) }}">Team members</a></li>
{% endif %}
</ul>
</nav>

View File

@@ -0,0 +1,25 @@
{% extends "views/platform-admin/_base_template.html" %}
{% from "components/page-footer.html" import page_footer %}
{% from "components/textbox.html" import textbox %}
{% block per_page_title %}
Create an organisation
{% endblock %}
{% block service_page_title %}
Create an organisation
{% endblock %}
{% block platform_admin_content %}
<h1 class="heading-large">Create an organisation</h1>
<form method="post">
{{textbox(form.name)}}
{{ page_footer(
'Save',
back_link=url_for('.organisations'),
back_link_text='Back to organisations',
) }}
</form>
{% endblock %}

View File

@@ -3,16 +3,16 @@
{% from "components/textbox.html" import textbox, colour_textbox %}
{% block per_page_title %}
{{ '{} an organisation'.format('Update' if organisation else 'Create')}}
Update an organisation
{% endblock %}
{% block service_page_title %}
{{ '{} an organisation'.format('Update' if organisation else 'Create')}}
Update an organisation
{% endblock %}
{% block platform_admin_content %}
<h1 class="heading-large">{{ '{} an organisation'.format('Update' if organisation else 'Create')}}</h1>
<h1 class="heading-large">Update an organisation</h1>
<form method="post">
{{textbox(form.name)}}
{{ page_footer(

View File

@@ -0,0 +1,17 @@
{% extends "org_template.html" %}
{% block service_page_title %}
Team members
{% endblock %}
{% block maincolumn_content %}
<div class="grid-row bottom-gutter">
<div class="column-two-thirds">
<h1 class="heading-large">
Team members
</h1>
</div>
</div>
{% endblock %}