mirror of
https://github.com/OpenBankProject/API-Manager.git
synced 2026-02-06 15:06:48 +00:00
Merge pull request #79 from PengfeiLi0218/master
https://github.com/OpenBankProject/API-Manager/pull/67
This commit is contained in:
commit
c8d8c89b04
@ -261,7 +261,7 @@ EXCLUDE_URL_PATTERN = []
|
||||
# App Name to aggregate metrics
|
||||
API_EXPLORER_APP_NAME = 'xxx'
|
||||
|
||||
|
||||
VERIFY = True if API_HOST.startswith("https") else False
|
||||
|
||||
|
||||
|
||||
|
||||
@ -51,11 +51,13 @@
|
||||
<li{% if metrics_summary_url in request.path %} class="active"{% endif %}><a href="{{ metrics_summary_url }}">KPI Dashboard</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{% url "branches_list" as branches_list_url %}
|
||||
{% url "customers-create" as customers_create_url %}
|
||||
<li class="dropdown{% if customers_create_url in request.path %} active{% endif %}">
|
||||
<a href="#" data-toggle="dropdown" class="dropdown-toggle">Resources</a>
|
||||
<ul class="dropdown-menu">
|
||||
<li{% if customers_create_url in request.path %} class="active"{% endif %}><a href="{{ customers_create_url }}">Customers</a></li>
|
||||
<li{% if branches_list_url in request.path %} class="active"{% endif %}><a href="{{ branches_list_url }}">Branches</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
{% url "config-index" as config_index_url %}
|
||||
|
||||
268
apimanager/branches/forms.py
Normal file
268
apimanager/branches/forms.py
Normal file
@ -0,0 +1,268 @@
|
||||
"""
|
||||
Forms of branches app
|
||||
"""
|
||||
|
||||
from django import forms
|
||||
|
||||
import random
|
||||
|
||||
|
||||
class CreateBranchForm(forms.Form):
|
||||
|
||||
branch_id = forms.CharField(
|
||||
label='Branch Id',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'branch-id-{}'.format(random.randint(1,1000)),
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
initial='branch-id-{}'.format(random.randint(1,1000)),
|
||||
)
|
||||
|
||||
bank_id = forms.ChoiceField(
|
||||
label='Bank',
|
||||
widget=forms.Select(
|
||||
attrs={
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
choices=[],
|
||||
)
|
||||
name = forms.CharField(
|
||||
label='Name',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'The name of the branch',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=True
|
||||
)
|
||||
address_line1 = forms.CharField(
|
||||
label='address_line1',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'No 1 the Road',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_line2 = forms.CharField(
|
||||
label='address_line2',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'The Place',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_line3 = forms.CharField(
|
||||
label='address_line3',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'The Hill',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_city = forms.CharField(
|
||||
label='city',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'Berlin',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_county = forms.CharField(
|
||||
label='county',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'String',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_state = forms.CharField(
|
||||
label='state',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'Brandenburg',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_postcode = forms.CharField(
|
||||
label='state',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': '13359',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
address_country_code = forms.CharField(
|
||||
label='country_code',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'DE',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False
|
||||
)
|
||||
|
||||
location_latitude = forms.FloatField(
|
||||
label='Latitude',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 37.0,
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
location_longitude = forms.FloatField(
|
||||
label='Longitude',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 110.0,
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
meta_license_id = forms.CharField(
|
||||
label='meta_license_id',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'PDDL',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
meta_license_name = forms.CharField(
|
||||
label='meta_license_name',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'Open Data Commons Public Domain Dedication and License',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
lobby = forms.CharField(
|
||||
label='Lobby',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'None',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
drive_up = forms.CharField(
|
||||
label='Drive Up',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'None', # noqa
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
branch_routing_scheme = forms.CharField(
|
||||
label='Branch Routing Scheme',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'OBP',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
branch_routing_address = forms.CharField(
|
||||
label='Branch Routing Address',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': '123abc',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
is_accessible = forms.CharField(
|
||||
label='is accessible',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'true',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
accessibleFeatures = forms.CharField(
|
||||
label='Accessible Features',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'wheelchair, atm usuable by the visually impaired',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
branch_type = forms.CharField(
|
||||
label='Branch type',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'Full service store',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
more_info = forms.CharField(
|
||||
label='More information',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'short walk to the lake from here',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
phone_number = forms.CharField(
|
||||
label='Mobile Phone Number',
|
||||
widget=forms.TextInput(
|
||||
attrs={
|
||||
'placeholder': 'E.g. +49 123 456 78 90 12',
|
||||
'class': 'form-control',
|
||||
}
|
||||
),
|
||||
required=False,
|
||||
)
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
kwargs.setdefault('label_suffix', '')
|
||||
super(CreateBranchForm, self).__init__(*args, **kwargs)
|
||||
18
apimanager/branches/static/branches/css/branches.css
Normal file
18
apimanager/branches/static/branches/css/branches.css
Normal file
@ -0,0 +1,18 @@
|
||||
#branches_list div {
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
/* The actual popup (appears on top) */
|
||||
.popuptext {
|
||||
width: 250px;
|
||||
background-color: #555;
|
||||
color: #fff;
|
||||
text-align: left;
|
||||
border-radius: 6px;
|
||||
padding: 8px 0;
|
||||
z-index: 1;
|
||||
/*bottom: 125%;*/
|
||||
top:100%
|
||||
left: 50%;
|
||||
margin-left: -80px;
|
||||
}
|
||||
5
apimanager/branches/static/branches/js/branches.js
Normal file
5
apimanager/branches/static/branches/js/branches.js
Normal file
@ -0,0 +1,5 @@
|
||||
$(document).ready(function($) {
|
||||
$('#info').click(function() {
|
||||
alert("Hello World")
|
||||
});
|
||||
});
|
||||
215
apimanager/branches/templates/branches/index.html
Normal file
215
apimanager/branches/templates/branches/index.html
Normal file
@ -0,0 +1,215 @@
|
||||
{% extends 'base.html' %}
|
||||
{% load static %}
|
||||
|
||||
{% block page_title %}{{ block.super }} / Branches{% endblock page_title %}
|
||||
|
||||
{% block content %}
|
||||
<div id="branches_list">
|
||||
<h1>Branches</h1>
|
||||
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
{% if form.non_field_errors %}
|
||||
<div class="alert alert-danger">
|
||||
{{ form.non_field_errors }}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.branch_id.errors %}<div class="alert alert-danger">{{ form.branch_id.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.branch_id.label_tag }}
|
||||
{{ form.branch_id }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.bank_id.errors %}<div class="alert alert-danger">{{ form.bank_id.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.bank_id.label_tag }}
|
||||
{{ form.bank_id }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.name.errors %}<div class="alert alert-danger">{{ form.name.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.name.label_tag }}
|
||||
{{ form.name }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_city.errors %}<div class="alert alert-danger">{{ form.address_city.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_city.label_tag }}
|
||||
{{ form.address_city }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.location_latitude.errors %}<div class="alert alert-danger">{{ form.location_latitude.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.location_latitude.label_tag }}
|
||||
{{ form.location_latitude }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.location_longitude.errors %}<div class="alert alert-danger">{{ form.location_longitude.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.location_longitude.label_tag }}
|
||||
{{ form.location_longitude }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.meta_license_name.errors %}<div class="alert alert-danger">{{ form.meta_license_name.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.meta_license_name.label_tag }}
|
||||
{{ form.meta_license_name }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.branch_routing_scheme.errors %}<div class="alert alert-danger">{{ form.branch_routing_scheme.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.branch_routing_scheme.label_tag }}
|
||||
{{ form.branch_routing_scheme }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.branch_routing_address.errors %}<div class="alert alert-danger">{{ form.branch_routing_address.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.branch_routing_address.label_tag }}
|
||||
{{ form.branch_routing_address }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.is_accessible.errors %}<div class="alert alert-danger">{{ form.is_accessible.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.is_accessible.label_tag }}
|
||||
{{ form.is_accessible }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.accessibleFeatures.errors %}<div class="alert alert-danger">{{ form.accessibleFeatures.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.accessibleFeatures.label_tag }}
|
||||
{{ form.accessibleFeatures }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.branch_type.errors %}<div class="alert alert-danger">{{ form.branch_type.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.branch_type.label_tag }}
|
||||
{{ form.branch_type }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.more_info.errors %}<div class="alert alert-danger">{{ form.more_info.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.more_info.label_tag }}
|
||||
{{ form.more_info }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.phone_number.errors %}<div class="alert alert-danger">{{ form.phone_number.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.phone_number.label_tag }}
|
||||
{{ form.phone_number }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-12 hidden-xs">
|
||||
<div class="form-group">
|
||||
<button type="submit" class="btn btn-primary btn-green">Add</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<div class="table-responsive">
|
||||
<table class="table table-hover tablesorter" id="branches-list">
|
||||
<thead>
|
||||
<th>Branch Id</th>
|
||||
<th>Bank Id</th>
|
||||
<th>Branch Name</th>
|
||||
<th>More_info</th>
|
||||
<th>Update Button</th>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for branch in branches_list %}
|
||||
{% url 'branches_update' branch.id branch.bank_id as url_branch_update %}
|
||||
<tr data-branch-id="{{ branch.id }}">
|
||||
<td>{{ branch.id }}</td>
|
||||
<td>{{ branch.bank_id }}</td>
|
||||
<td>{{ branch.name }}</td>
|
||||
<td>
|
||||
<div class="popuptext">
|
||||
<ul>
|
||||
<li>Address:
|
||||
<ul>
|
||||
<li>line1: {{branch.address.line_1}}</li>
|
||||
<li>line2: {{branch.address.line_2}}</li>
|
||||
<li>line3: {{branch.address.line_3}}</li>
|
||||
<li>city: {{branch.address.city}}</li>
|
||||
<li>county: {{branch.address.county}}</li>
|
||||
<li>state: {{branch.address.state}}</li>
|
||||
<li>postcode: {{branch.address.postcode}}</li>
|
||||
<li>country_code: {{branch.address.country_code}}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Location:
|
||||
<ul>
|
||||
<li>latitude: {{branch.location.latitude}}</li>
|
||||
<li>longitude: {{branch.location.longitude}}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Meta License:
|
||||
<ul>
|
||||
<li>id: {{branch.meta.license.id}}</li>
|
||||
<li>name: {{branch.meta.license.name}}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Branch Routing
|
||||
<ul>
|
||||
<li>Scheme: {{branch.branch_routing.scheme}}</li>
|
||||
<li>Address: {{branch.branch_routing.address}}</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Branch Type: {{branch.branch_type}}</li>
|
||||
<li>More Info: {{branch.more_info}}</li>
|
||||
<li>Phone Number: {{branch.phone_number}}</li>
|
||||
</ul>
|
||||
</div>
|
||||
</td>
|
||||
<td><a href="{{ url_branch_update }}" class="btn btn-primary">Update</a></td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
||||
{% block extrajs %}
|
||||
{% comment %}
|
||||
<script type="text/javascript" src="{% static 'branches/js/branches.js' %}"></script>
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
{% endcomment %}
|
||||
{% endblock extrajs %}
|
||||
|
||||
|
||||
{% block extracss %}
|
||||
<link href="{% static 'branches/css/branches.css' %}" rel="stylesheet">
|
||||
{% endblock extracss %}
|
||||
167
apimanager/branches/templates/branches/update.html
Normal file
167
apimanager/branches/templates/branches/update.html
Normal file
@ -0,0 +1,167 @@
|
||||
{% extends 'base.html' %}
|
||||
{% load static %}
|
||||
|
||||
{% block page_title %}{{ block.super }} / Branches{% endblock page_title %}
|
||||
|
||||
{% block content %}
|
||||
<div id="branches">
|
||||
<h1>Update Branch</h1>
|
||||
<h2>{{ bank_id }} : {{ branch_id }}</h2>
|
||||
<form method="post">
|
||||
{% csrf_token %}
|
||||
{% if form.non_field_errors %}
|
||||
<div class="alert alert-danger">
|
||||
{{ form.non_field_errors }}
|
||||
</div>
|
||||
{% endif %}
|
||||
<div class="row" style="display: None">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.bank_id.errors %}<div class="alert alert-danger">{{ form.bank_id.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.bank_id.label_tag }}
|
||||
{{ form.bank_id }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.branch_id.errors %}<div class="alert alert-danger">{{ form.branch_id.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.branch_id.label_tag }}
|
||||
{{ form.branch_id }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.name.errors %}<div class="alert alert-danger">{{ form.name.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.name.label_tag }}
|
||||
{{ form.name }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_line1.errors %}<div class="alert alert-danger">{{ form.address_line1.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_line1.label_tag }}
|
||||
{{ form.address_line1 }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_line2.errors %}<div class="alert alert-danger">{{ form.address_line2.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_line2.label_tag }}
|
||||
{{ form.address_line2 }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_line3.errors %}<div class="alert alert-danger">{{ form.address_line3.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_line3.label_tag }}
|
||||
{{ form.address_line3 }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_city.errors %}<div class="alert alert-danger">{{ form.address_city.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_city.label_tag }}
|
||||
{{ form.address_city }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_state.errors %}<div class="alert alert-danger">{{ form.address_state.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_state.label_tag }}
|
||||
{{ form.address_state }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_postcode.errors %}<div class="alert alert-danger">{{ form.address_postcode.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_postcode.label_tag }}
|
||||
{{ form.address_postcode }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.address_country_code.errors %}<div class="alert alert-danger">{{ form.address_country_code.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.address_country_code.label_tag }}
|
||||
{{ form.address_country_code }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.location_latitude.errors %}<div class="alert alert-danger">{{ form.location_latitude.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.location_latitude.label_tag }}
|
||||
{{ form.location_latitude }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.location_longitude.errors %}<div class="alert alert-danger">{{ form.location_longitude.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.location_longitude.label_tag }}
|
||||
{{ form.location_longitude }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.meta_license_id.errors %}<div class="alert alert-danger">{{ form.meta_license_id.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.meta_license_id.label_tag }}
|
||||
{{ form.meta_license_id }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.meta_license_name.errors %}<div class="alert alert-danger">{{ form.meta_license_name.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.meta_license_name.label_tag }}
|
||||
{{ form.meta_license_name }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.lobby.errors %}<div class="alert alert-danger">{{ form.lobby.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.lobby.label_tag }}
|
||||
{{ form.lobby }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-xs-12 col-sm-4">
|
||||
{% if form.drive_up.errors %}<div class="alert alert-danger">{{ form.drive_up.errors }}</div>{% endif %}
|
||||
<div class="form-group">
|
||||
{{ form.drive_up.label_tag }}
|
||||
{{ form.drive_up }}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<input type="submit" value="Update" class="btn btn-primary" />
|
||||
</form>
|
||||
</div>
|
||||
{% endblock content %}
|
||||
|
||||
{% block extrajs %}
|
||||
{% comment %}
|
||||
<script type="text/javascript" src="{% static 'branches/js/branches.js' %}"></script>
|
||||
<script type="text/javascript">
|
||||
</script>
|
||||
{% endcomment %}
|
||||
{% endblock extrajs %}
|
||||
|
||||
|
||||
{% block extracss %}
|
||||
<link href="{% static 'branches/css/branches.css' %}" rel="stylesheet">
|
||||
{% endblock extracss %}
|
||||
|
||||
17
apimanager/branches/urls.py
Normal file
17
apimanager/branches/urls.py
Normal file
@ -0,0 +1,17 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
URLs for metrics app
|
||||
"""
|
||||
|
||||
from django.conf.urls import url
|
||||
|
||||
from .views import IndexBranchesView, UpdateBranchesView
|
||||
|
||||
urlpatterns = [
|
||||
url(r'^$',
|
||||
IndexBranchesView.as_view(),
|
||||
name='branches_list'),
|
||||
url(r'^update/(?P<branch_id>[0-9\w\@\.\+-]+)/bank/(?P<bank_id>[0-9\w\@\.\+-]+)/$',
|
||||
UpdateBranchesView.as_view(),
|
||||
name='branches_update')
|
||||
]
|
||||
@ -33,7 +33,7 @@ class IndexView(LoginRequiredMixin, TemplateView):
|
||||
try:
|
||||
urlpath = '/entitlement-requests'
|
||||
entitlement_requests = api.get(urlpath)
|
||||
if 'code' in entitlement_requests and entitlement_requests['code']==403:
|
||||
if 'code' in entitlement_requests and entitlement_requests['code']>=400:
|
||||
messages.error(self.request, entitlement_requests['message'])
|
||||
entitlement_requests=[]
|
||||
else:
|
||||
@ -41,6 +41,7 @@ class IndexView(LoginRequiredMixin, TemplateView):
|
||||
entitlement_requests = FilterTime(context, self.request.GET, 'created') \
|
||||
.apply(entitlement_requests)
|
||||
entitlement_requests = self.scrub(entitlement_requests)
|
||||
entitlement_requests = sorted(entitlement_requests, key=lambda k: k['created'], reverse=True)
|
||||
except APIError as err:
|
||||
messages.error(self.request, err)
|
||||
except:
|
||||
|
||||
@ -53,9 +53,9 @@ class API(object):
|
||||
time_start = time.time()
|
||||
try:
|
||||
if payload:
|
||||
response = session.request(method, url, json=payload, verify=False)
|
||||
response = session.request(method, url, json=payload, verify=settings.VERIFY)
|
||||
else:
|
||||
response = session.request(method, url, verify=False)
|
||||
response = session.request(method, url, verify=settings.VERIFY)
|
||||
except ConnectionError as err:
|
||||
raise APIError(err)
|
||||
time_end = time.time()
|
||||
|
||||
@ -35,7 +35,7 @@ class OAuthAuthenticator(Authenticator):
|
||||
)
|
||||
try:
|
||||
url = settings.API_HOST + settings.OAUTH_TOKEN_PATH
|
||||
response = session.fetch_request_token(url, verify=False)
|
||||
response = session.fetch_request_token(url, verify=settings.VERIFY)
|
||||
except (ValueError, TokenRequestDenied, ConnectionError) as err:
|
||||
raise AuthenticatorError(err)
|
||||
else:
|
||||
|
||||
@ -6,6 +6,6 @@ App config for users app
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class UsersConfig(AppConfig):
|
||||
"""Config for users"""
|
||||
name = 'users'
|
||||
class BranchesConfig(AppConfig):
|
||||
"""Config for branches"""
|
||||
name = 'branches'
|
||||
|
||||
@ -56,7 +56,7 @@ class IndexView(LoginRequiredMixin, TemplateView):
|
||||
try:
|
||||
urlpath = '/entitlements'
|
||||
entitlements = api.get(urlpath)
|
||||
if 'code' in entitlements and entitlements['code']==400:
|
||||
if 'code' in entitlements and entitlements['code']>=400:
|
||||
messages.error(self.request, entitlements['message'])
|
||||
else:
|
||||
for entitlement in entitlements['list']:
|
||||
@ -166,7 +166,7 @@ class DetailView(LoginRequiredMixin, FormView):
|
||||
try:
|
||||
urlpath = '/users/user_id/{}'.format(self.kwargs['user_id'])
|
||||
user = self.api.get(urlpath)
|
||||
if 'code' in user and user['code']==403:
|
||||
if 'code' in user and user['code']>=400:
|
||||
messages.error(self.request, user['message'])
|
||||
else:
|
||||
context['form'].fields['user_id'].initial = user['user_id']
|
||||
@ -210,17 +210,17 @@ class MyDetailView(LoginRequiredMixin, FormView):
|
||||
'role_name': data['role_name'],
|
||||
}
|
||||
entitlement = self.api.post(urlpath, payload=payload)
|
||||
if entitlement['code']==201:
|
||||
if 'code' in entitlement and entitlement['code'] >= 400:
|
||||
messages.error(self.request, entitlement['message'])
|
||||
else:
|
||||
msg = 'Entitlement with role {} has been added.'.format(entitlement['role_name'])
|
||||
messages.success(self.request, msg)
|
||||
else:
|
||||
messages.error(self.request, entitlement['message'])
|
||||
self.success_url = self.request.path
|
||||
except APIError as err:
|
||||
messages.error(self.request, err)
|
||||
return super(MyDetailView, self).form_invalid(form)
|
||||
except:
|
||||
messages.error(self.request, 'Unknown Error')
|
||||
except Exception as err:
|
||||
messages.error(self.request, 'Unknown Error. {}'.format(err))
|
||||
return super(MyDetailView, self).form_invalid(form)
|
||||
else:
|
||||
return super(MyDetailView, self).form_valid(form)
|
||||
@ -236,7 +236,7 @@ class MyDetailView(LoginRequiredMixin, FormView):
|
||||
context['form'].fields['user_id'].initial = user['user_id']
|
||||
except APIError as err:
|
||||
messages.error(self.request, err)
|
||||
except:
|
||||
except Exception as err:
|
||||
messages.error(self.request, 'Unknown Error')
|
||||
|
||||
context.update({
|
||||
@ -255,7 +255,7 @@ class DeleteEntitlementView(LoginRequiredMixin, View):
|
||||
urlpath = '/users/{}/entitlement/{}'.format(
|
||||
kwargs['user_id'], kwargs['entitlement_id'])
|
||||
result = api.delete(urlpath)
|
||||
if result is not None and 'code' in result and result['code']==400:
|
||||
if result is not None and 'code' in result and result['code']>=400:
|
||||
messages.error(request, result['message'])
|
||||
else:
|
||||
msg = 'Entitlement with role {} has been deleted.'.format(
|
||||
|
||||
Loading…
Reference in New Issue
Block a user