/feature add create button in webui

This commit is contained in:
Reena-cell 2022-09-19 12:12:28 +02:00
commit 3a15a47afb
11 changed files with 457 additions and 357 deletions

View File

@ -1,169 +1,170 @@
{% load static %}
{% load i18n %}
{% load static %} {% load i18n %}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="An application consuming the Open Bank Project API to manage consumers, users, customers, metrics and config">
<meta name="author" content="TESOBE, Sebastian Henschel">
<title>{% block page_title %} {% trans "API Manager" %}{% endblock page_title %}</title>
<link rel="icon" type="image/png" href="{% static 'img/favicon.ico' %}" />
<link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet">
<link href="{% static 'css/base.css' %}" rel="stylesheet">
<link href="{% static 'css/jsoneditor.min.css' %}" rel="stylesheet">
<link href="{% static 'css/obpjsoneditor.css' %}" rel="stylesheet">
<!--<link href="{{ override_css_url }}" rel="stylesheet">-->
{% block extracss %}{% endblock extracss %}
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="An application consuming the Open Bank Project API to manage consumers, users, customers, metrics and config">
<meta name="author" content="TESOBE, Sebastian Henschel">
<title>{% block page_title %} {% trans "API Manager" %}{% endblock page_title %}</title>
<link rel="icon" type="image/png" href="{% static 'img/favicon.ico' %}" />
<link href="{% static 'css/bootstrap.min.css' %}" rel="stylesheet">
<link href="{% static 'css/base.css' %}" rel="stylesheet">
<link href="{% static 'css/jsoneditor.min.css' %}" rel="stylesheet">
<link href="{% static 'css/obpjsoneditor.css' %}" rel="stylesheet">
<!--<link href="{{ override_css_url }}" rel="stylesheet">-->
{% block extracss %}{% endblock extracss %}
</head>
<body>
<div class="container">
<div id="header" >
<div id="logo-left" class="logo-box">
<a href="{% url 'home' %}" aria-label="Home Page" id="left-logo"><img src="{{ logo_url }}" alt="brand"></a>
<ul class="nav navbar-nav navbar-right">
<li>
{% if user.is_authenticated %}
<p class="navbar-btn"><span id="navbar-login-username">{{API_USERNAME}}</span>&nbsp;&nbsp;<a
href="/logout" class="btn btn-default">{% trans "Logout" %} </a></p>
{% endif %}
</li>
</ul>
</div>
</div>
</div>
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="{{ API_PORTAL }}" >{% trans "Home" %}</a></li>
{% url "consumers-index" as consumers_index_url %}
<li {% if consumers_index_url in request.path %} class="active"{% endif %}><a href="{{ consumers_index_url }}">{% trans "Consumers" %}</a></li>
{% url "entitlementrequests-index" as entitlementrequests_index_url %}
<li {% if entitlementrequests_index_url in request.path %} class="active"{% endif %}><a href="{{ entitlementrequests_index_url }}">{% trans "Entitlement Requests" %}</a></li>
{% url "users-index" as users_index_url %}
{% url 'my-user-detail' API_USER_ID as url_users_detail %}
{% url "my-user-invitation" as my_user_invitation %}
<li class="dropdown{% if users_index_url in request.path or url_users_detail in request.path or my_user_invitation in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Users" %}</a>
<ul class="dropdown-menu">
<li {% if users_index_url in request.path %} class="active"{% endif %}><a href="{{ users_index_url }}">{% trans "All" %}</a></li><hr class="dropdown-hr">
<li {% ifequal request.path url_users_detail %} class="active" {% endifequal %}><a href="{{ url_users_detail }}">{% trans "My User" %}</a></li><hr class="dropdown-hr">
<li {% ifequal request.path my_user_invitation %} class="active" {% endifequal %}><a href="{{ my_user_invitation }}">{% trans "Invite Developer" %}</a></li>
</ul>
</li>
{% url "api-metrics" as api_metrics_url %}
{% url "connector-metrics" as connector_metrics_url %}
{% url "metrics-summary" as metrics_summary_url %}
<li class="dropdown{% if api_metrics_url in request.path or connector_metrics_url in request.path or metrics_summary_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Metrics" %}</a>
<ul class="dropdown-menu">
<li {% if api_metrics_url in request.path %} class="active"{% endif %}><a href="{{ api_metrics_url }}">{% trans "API Metrics" %}</a></li><hr class="dropdown-hr">
<li {% if connector_metrics_url in request.path %} class="active"{% endif %}><a href="{{ connector_metrics_url }}">{% trans "Connector Metrics" %}</a></li><hr class="dropdown-hr">
<li {% if metrics_summary_url in request.path %} class="active"{% endif %}><a href="{{ metrics_summary_url }}">{% trans "KPI Dashboard" %}</a></li>
</ul>
</li>
{% url "branches_list" as branches_list_url %}
{% url "customers-create" as customers_create_url %}
{% url "atms_create" as atms_create_url %}
{% url "atm-list" as atm_list_url %}
<li class="dropdown{% if customers_create_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Resources" %}</a>
<ul class="dropdown-menu">
<li {% if customers_create_url in request.path %} class="active"{% endif %}><a href="{{ customers_create_url }}">{% trans "Customers" %}</a></li><hr class="dropdown-hr">
<li {% if branches_list_url in request.path %} class="active"{% endif %}><a href="{{ branches_list_url }}">{% trans "Branches" %}</a></li>
<li {% if atms_create_url in request.path %} class="active"{% endif %}><a href="{{ atms_create_url }}">{% trans "ATM Create" %}</a></li>
<li {% if atm_list_url in request.path %} class="active"{% endif %}><a href="{{ atm_list_url }}">{% trans "ATM List" %}</a></li>
</ul>
</li>
{% url "config-index" as config_index_url %}
{% url "webui-index" as webui_props_index_url %}
{% url "methodrouting-index" as methodrouting_index_url %}
{% url "connectormethod" as connectormethod_url %}
{% url "dynamicendpoints-index" as dynamic_endpoints_index_url %}
{% url "apicollections-index" as api_collections_index_url %}
<li class="dropdown{% if config_index_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Configurations" %}</a>
<ul class="dropdown-menu">
<li {% if config_index_url in request.path %} class="active"{% endif %}><a href="{{ config_index_url }}">{% trans "Config" %}</a></li><hr class="dropdown-hr">
<li {% if webui_props_index_url in request.path %} class="active"{% endif %}><a href="{{ webui_props_index_url }}">{% trans "Webui Props" %}</a></li><hr class="dropdown-hr">
<li {% if methodrouting_index_url in request.path %} class="active"{% endif %}><a href="{{ methodrouting_index_url }}">{% trans "Method Routings" %}</a></li><hr class="dropdown-hr">
<li {% if connectormethod_url in request.path %} class="active"{% endif %}><a href="{{ connectormethod_url }}">{% trans "Connector Methods" %}</a></li><hr class="dropdown-hr">
<li {% if dynamic_endpoints_index_url in request.path %} class="active"{% endif %}><a href="{{ dynamic_endpoints_index_url }}">{% trans "Dynamic Endpoints" %}</a></li><hr class="dropdown-hr">
<li {% if api_collections_index_url in request.path %} class="active"{% endif %}><a href="{{ api_collections_index_url }}">{% trans "My API Collections" %}</a></li>
</ul>
</li>
{% if SHOW_API_TESTER %}
<li>
<a href="{{ API_TESTER_URL }}" >{% trans "API Tester" %}</a>
</li>
{% endif %}
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<div id="header">
<div id="logo-left" class="logo-box">
<a href="{% url 'home' %}" aria-label="Home Page" id="left-logo"><img src="{{ logo_url }}" alt="brand"></a>
<ul class="nav navbar-nav navbar-right">
<li>
{% if user.is_authenticated %}
<p class="navbar-btn"><span id="navbar-login-username">{{API_USERNAME}}</span>&nbsp;&nbsp;<a href="/logout" class="btn btn-default">{% trans "Logout" %} </a></p>
{% endif %}
</li>
</ul>
</div>
</div>
{% if messages %}
<div class="container messages">
{% for message in messages %}
<div class="alert alert-dismissible{% ifequal message.tags "error" %} alert-danger{% else %}{% ifequal message.tags "debug" %} alert-info{% else %} alert-{{ message.tags }}{% endifequal %}{% endifequal %}" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">&times;</span></button>
{{ message }}
</div>
{% endfor %}
</div>
{% endif %}
<nav class="navbar navbar-default navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="{{ API_PORTAL }}">{% trans "Home" %}</a></li>
{% url "consumers-index" as consumers_index_url %}
<li {% if consumers_index_url in request.path %} class="active" {% endif %}><a href="{{ consumers_index_url }}">{% trans "Consumers" %}</a></li>
{% url "entitlementrequests-index" as entitlementrequests_index_url %}
<li {% if entitlementrequests_index_url in request.path %} class="active" {% endif %}><a href="{{ entitlementrequests_index_url }}">{% trans "Entitlement Requests" %}</a></li>
{% url "users-index" as users_index_url %} {% url 'my-user-detail' API_USER_ID as url_users_detail %} {% url "my-user-invitation" as my_user_invitation %}
<li class="dropdown{% if users_index_url in request.path or url_users_detail in request.path or my_user_invitation in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Users" %}</a>
<ul class="dropdown-menu">
<li {% if users_index_url in request.path %} class="active" {% endif %}><a href="{{ users_index_url }}">{% trans "All" %}</a></li>
<hr class="dropdown-hr">
<li {% ifequal request.path url_users_detail %} class="active" {% endifequal %}><a href="{{ url_users_detail }}">{% trans "My User" %}</a></li>
<hr class="dropdown-hr">
<li {% ifequal request.path my_user_invitation %} class="active" {% endifequal %}><a href="{{ my_user_invitation }}">{% trans "Invite Developer" %}</a></li>
</ul>
</li>
{% url "api-metrics" as api_metrics_url %} {% url "connector-metrics" as connector_metrics_url %} {% url "metrics-summary" as metrics_summary_url %}
<li class="dropdown{% if api_metrics_url in request.path or connector_metrics_url in request.path or metrics_summary_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Metrics" %}</a>
<ul class="dropdown-menu">
<li {% if api_metrics_url in request.path %} class="active" {% endif %}><a href="{{ api_metrics_url }}">{% trans "API Metrics" %}</a></li>
<hr class="dropdown-hr">
<li {% if connector_metrics_url in request.path %} class="active" {% endif %}><a href="{{ connector_metrics_url }}">{% trans "Connector Metrics" %}</a></li>
<hr class="dropdown-hr">
<li {% if metrics_summary_url in request.path %} class="active" {% endif %}><a href="{{ metrics_summary_url }}">{% trans "KPI Dashboard" %}</a></li>
</ul>
</li>
{% url "branches_list" as branches_list_url %} {% url "customers-create" as customers_create_url %} {% url "atms_create" as atms_create_url %} {% url "atm-list" as atm_list_url %}
<li class="dropdown{% if customers_create_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Resources" %}</a>
<ul class="dropdown-menu">
<li {% if customers_create_url in request.path %} class="active" {% endif %}><a href="{{ customers_create_url }}">{% trans "Customers" %}</a></li>
<hr class="dropdown-hr">
<li {% if branches_list_url in request.path %} class="active" {% endif %}><a href="{{ branches_list_url }}">{% trans "Branches" %}</a></li>
<li {% if atms_create_url in request.path %} class="active" {% endif %}><a href="{{ atms_create_url }}">{% trans "ATM Create" %}</a></li>
<li {% if atm_list_url in request.path %} class="active" {% endif %}><a href="{{ atm_list_url }}">{% trans "ATM List" %}</a></li>
</ul>
</li>
{% url "config-index" as config_index_url %} {% url "webui-index" as webui_props_index_url %} {% url "methodrouting-index" as methodrouting_index_url %} {% url "connectormethod" as connectormethod_url %} {% url "dynamicendpoints-index" as dynamic_endpoints_index_url %} {% url "apicollections-index" as api_collections_index_url %}
<li class="dropdown{% if config_index_url in request.path %} active{% endif %}">
<a href="#" data-toggle="dropdown" class="dropdown-toggle">{% trans "Configurations" %}</a>
<ul class="dropdown-menu">
<li {% if config_index_url in request.path %} class="active" {% endif %}><a href="{{ config_index_url }}">{% trans "Config" %}</a></li>
<hr class="dropdown-hr">
<li {% if webui_props_index_url in request.path %} class="active" {% endif %}><a href="{{ webui_props_index_url }}">{% trans "Webui Props" %}</a></li>
<hr class="dropdown-hr">
<li {% if methodrouting_index_url in request.path %} class="active" {% endif %}><a href="{{ methodrouting_index_url }}">{% trans "Method Routings" %}</a></li>
<hr class="dropdown-hr">
<li {% if connectormethod_url in request.path %} class="active" {% endif %}><a href="{{ connectormethod_url }}">{% trans "Connector Methods" %}</a></li>
<hr class="dropdown-hr">
<li {% if dynamic_endpoints_index_url in request.path %} class="active" {% endif %}><a href="{{ dynamic_endpoints_index_url }}">{% trans "Dynamic Endpoints" %}</a>
</li>
<hr class="dropdown-hr">
<li {% if api_collections_index_url in request.path %} class="active" {% endif %}><a href="{{ api_collections_index_url }}">{% trans "My API Collections" %}</a></li>
</ul>
</li>
{% if SHOW_API_TESTER %}
<li>
<a href="{{ API_TESTER_URL }}">{% trans "API Tester" %}</a>
</li>
{% endif %}
</ul>
</div>
<!--/.nav-collapse -->
</div>
</nav>
</div>
{% if messages %}
<div class="container messages">
{% for message in messages %}
<div class="alert alert-dismissible{% ifequal message.tags " error " %} alert-danger{% else %}{% ifequal message.tags "debug " %} alert-info{% else %} alert-{{ message.tags }}{% endifequal %}{% endifequal %}" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span
aria-hidden="true">&times;</span></button> {
{ message }}
</div>
{% endfor %}
</div>
{% endif %}
<div class="container" id="body-container">
{% block content %}{% endblock content %}
<div class="footer-content-wrapper" data-lift="WebUI.homePage" style = "cursor:pointer">
<span>Language </span>
<span> | </span>
<a id="uk" >EN</a>
<span> | </span>
<a id="es">ES</a>
</div>
</div>
<script>
var currentURL = window.location.href;
const element = document.getElementById('uk')
element.addEventListener("click", () => {
if(currentURL.includes("/es/")){
location.href=currentURL.split("/es/")[0] + "/en/" + currentURL.split("/es/")[1]
}
});
const element1 = document.getElementById('es')
element1.addEventListener("click", () => {
if(currentURL.includes("/en/")){
location.href=currentURL.split("/en/")[0] + "/es/" + currentURL.split("/en/")[1]
}
});
</script>
<footer>
<div class="container">
<p class="text-muted">
<a title="API ROOT" href="{{ API_ROOT }}">API ROOT: {{ API_ROOT }}</a> |
<a title="Open Bank Project" href="https://openbankproject.com">Open Bank Project</a> |
Powered by <a title="TESOBE" href="http://tesobe.com">TESOBE</a> |
<small>Copyright &copy; 2016 - 2020</small>
</p>
</div>
</footer>
<div class="container" id="body-container">
{% block content %}{% endblock content %}
<div class="footer-content-wrapper" data-lift="WebUI.homePage" style="cursor:pointer">
<span>Language </span>
<span> | </span>
<a id="uk">EN</a>
<span> | </span>
<a id="es">ES</a>
</div>
</div>
<script>
var currentURL = window.location.href;
const element = document.getElementById('uk')
element.addEventListener("click", () => {
if (currentURL.includes("/es/")) {
location.href = currentURL.split("/es/")[0] + "/en/" + currentURL.split("/es/")[1]
}
});
const element1 = document.getElementById('es')
element1.addEventListener("click", () => {
if (currentURL.includes("/en/")) {
location.href = currentURL.split("/en/")[0] + "/es/" + currentURL.split("/en/")[1]
}
});
</script>
<footer>
<div class="container">
<p class="text-muted">
<a title="API ROOT" href="{{ API_ROOT }}">API ROOT: {{ API_ROOT }}</a> |
<a title="Open Bank Project" href="https://openbankproject.com">Open Bank Project</a> | Powered by <a title="TESOBE" href="http://tesobe.com">TESOBE</a> |
<small>Copyright &copy; 2016 - 2020</small>
</p>
</div>
</footer>
<script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jquery.tablesorter.min.js' %}"></script>
<script src="{% static 'js/base.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jsoneditor.min.js' %}"></script>
{% block extrajs %}{% endblock extrajs %}
<script type="text/javascript" src="{% static 'js/jquery.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/bootstrap.min.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jquery.tablesorter.min.js' %}"></script>
<script src="{% static 'js/base.js' %}"></script>
<script type="text/javascript" src="{% static 'js/jsoneditor.min.js' %}"></script>
{% block extrajs %}{% endblock extrajs %}
</body>
</html>
</html>

View File

@ -16,11 +16,11 @@
</div>
{% if not user.is_authenticated %}
<div id="login">
<label for="authentication-select"><h2>Authenticate</h2></label>
<label for="authentication-select"><h2>{% trans "Authenticate" %}</h2></label>
<div class="row">
<div class="col-xs-12 col-sm-3">
<select class="form-control" id="authentication-select">
<option value="">Choose ...</option>
<option value="">{% trans "Choose ..." %}</option>
<option value="oauth">OAuth 1/OpenID Connect</option>
<option value="directlogin">DirectLogin</option>
<option value="gatewaylogin">GatewayLogin</option>

View File

@ -10,7 +10,7 @@ dotenv_file = os.path.join(BASE_DIR, ".env")
if os.path.isfile(f"{BASE_DIR}/.env"):
dotenv.load_dotenv(dotenv_file)
# Update secret key
deepl_auth_key = os.environ['auth_key'] # Instead of your actual Auth Key
deepl_auth_key = os.environ['deepl_auth_key'] # Instead of your actual Auth Key
headers = {
'Content-Type': 'application/x-www-form-urlencoded',

View File

@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-09-12 14:29+0200\n"
"POT-Creation-Date: 2022-09-19 11:19+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -54,7 +54,7 @@ msgstr "Creada"
#: apicollections/templates/apicollections/index.html:72
#: dynamicendpoints/templates/dynamicendpoints/index.html:40
#: methodrouting/templates/methodrouting/index.html:129
#: users/templates/users/detail.html:112 webui/templates/webui/index.html:47
#: users/templates/users/detail.html:112 webui/templates/webui/index.html:51
msgid "Delete"
msgstr "Eliminar"
@ -70,231 +70,211 @@ msgstr "francés"
msgid "Spanish"
msgstr "español"
#: atmdetail/forms.py:14 atmdetail/templates/atmsView/atmdetail.html:11
#: atms/forms.py:14 atms/templates/atms/atm_list.html:8
#: atmlist/forms.py:14 atmlist/templates/atmlist/atmlist.html:11
#: atms/forms.py:14
msgid "ATM Id"
msgstr "ID del cajero automático"
#: atmdetail/forms.py:25 atmdetail/templates/atmsView/atmdetail.html:12
#: atms/forms.py:25 atms/templates/atms/atm_list.html:9
#: branches/templates/branches/index.html:161
#: atmlist/forms.py:25 atmlist/templates/atmlist/atmlist.html:12
#: atms/forms.py:25 branches/templates/branches/index.html:161
#: users/templates/users/detail.html:97
#: users/templates/users/invitation.html:22
msgid "Bank Id"
msgstr "Id del banco"
#: atmdetail/forms.py:35 atms/forms.py:35 branches/forms.py:33
#: atmlist/forms.py:35 atms/forms.py:35 branches/forms.py:33
#: consumers/templates/consumers/index.html:58
msgid "Name"
msgstr "Nombre"
#: atmdetail/forms.py:38 atms/forms.py:38
#: atmlist/forms.py:38 atms/forms.py:38
msgid "The name of the ATM"
msgstr "La configuración de la API"
#: atmdetail/forms.py:46 atmdetail/templates/atmsView/atmdetail.html:27
#: atms/forms.py:46 atms/templates/atms/atm_list.html:25 branches/forms.py:43
#: atmlist/forms.py:46 atmlist/templates/atmlist/atmlist.html:27
#: atms/forms.py:46 branches/forms.py:43
#: branches/templates/branches/index.html:176
#: branches/templates/branches/index.html:203
msgid "Address"
msgstr "Dirección"
#: atmdetail/forms.py:56 atms/forms.py:56 branches/forms.py:53
#: atmlist/forms.py:56 atms/forms.py:56 branches/forms.py:53
msgid "Latitude"
msgstr "Latitud"
#: atmdetail/forms.py:67 atms/forms.py:67 branches/forms.py:64
#: atmlist/forms.py:67 atms/forms.py:67 branches/forms.py:64
msgid "Longitude"
msgstr "Longitud"
#: atmdetail/forms.py:78 atms/forms.py:78
#: atmlist/forms.py:78 atms/forms.py:78
msgid "Meta License Id"
msgstr "Meta Licencia"
#: atmdetail/forms.py:89 atms/forms.py:89
#: atmlist/forms.py:89 atms/forms.py:89
msgid "Meta License Name"
msgstr "Nombre de la Licencia"
#: atmdetail/forms.py:100 atms/forms.py:100
#: atmlist/forms.py:100 atms/forms.py:100
msgid "Opening Hours"
msgstr "Horario de atención"
#: atmdetail/forms.py:110 atms/forms.py:110
#: atmlist/forms.py:110 atms/forms.py:110
msgid "Monday"
msgstr "Lunes"
#: atmdetail/forms.py:120 atms/forms.py:120
#: atmlist/forms.py:120 atms/forms.py:120
msgid "Tuesday"
msgstr "Martes"
#: atmdetail/forms.py:130 atms/forms.py:130
#: atmlist/forms.py:130 atms/forms.py:130
msgid "Wednesday"
msgstr "Wednesday"
#: atmdetail/forms.py:140 atms/forms.py:140
#: atmlist/forms.py:140 atms/forms.py:140
msgid "Thursday"
msgstr "Jueves"
#: atmdetail/forms.py:150 atms/forms.py:150
#: atmlist/forms.py:150 atms/forms.py:150
msgid "Friday"
msgstr "Viernes"
#: atmdetail/forms.py:160 atms/forms.py:160
#: atmlist/forms.py:160 atms/forms.py:160
msgid "Saturday"
msgstr "Sábado"
#: atmdetail/forms.py:170 atms/forms.py:170
#: atmlist/forms.py:170 atms/forms.py:170
msgid "Sunday"
msgstr "Sunday"
#: atmdetail/forms.py:180 atms/forms.py:180
#: atmlist/forms.py:180 atms/forms.py:180
msgid "Is Accessible"
msgstr "Producción y validación es"
#: atmdetail/forms.py:189 atms/forms.py:189
#: atmlist/forms.py:189 atms/forms.py:189
msgid "ATM location"
msgstr "Ubicación"
#: atmdetail/forms.py:199 atms/forms.py:199 branches/forms.py:166
#: atmlist/forms.py:199 atms/forms.py:199 branches/forms.py:166
msgid "More information"
msgstr "Más información"
#: atmdetail/forms.py:202 atms/forms.py:202 branches/forms.py:169
#: atmlist/forms.py:202 atms/forms.py:202 branches/forms.py:169
msgid "short walk to the lake from here"
msgstr "corto paseo hasta el lago desde aquí"
#: atmdetail/forms.py:209 atms/forms.py:209
#: atmlist/forms.py:209 atms/forms.py:209
msgid "Deposit Capabilities"
msgstr "Tiene capacidad de depósito"
#: atmdetail/forms.py:218 atms/forms.py:218
#: atmlist/forms.py:218 atms/forms.py:218
msgid "Supported Languages"
msgstr "Idiomas admitidos"
#: atmdetail/forms.py:227 atms/forms.py:227
#: atmlist/forms.py:227 atms/forms.py:227
msgid "Services"
msgstr "Servicios"
#: atmdetail/forms.py:230 atms/forms.py:230
#: atmlist/forms.py:230 atms/forms.py:230
msgid "Service store"
msgstr "Servicios"
#: atmdetail/forms.py:237 atms/forms.py:237 branches/forms.py:146
#: atmlist/forms.py:237 atms/forms.py:237 branches/forms.py:146
#: branches/templates/branches/index.html:209
msgid "Accessible Features"
msgstr "Características accesibles"
#: atmdetail/forms.py:240 atms/forms.py:240
#: atmlist/forms.py:240 atms/forms.py:240
msgid "wheelchair, atm usuable by the visually impaired"
msgstr "Rollstuhl, für Sehbehinderte nutzbar"
#: atmdetail/forms.py:247 atms/forms.py:247
#: atmlist/forms.py:247 atms/forms.py:247
msgid "Supported Currencies"
msgstr "Divisas Soportadas"
#: atmdetail/forms.py:256 atms/forms.py:256
#: atmlist/forms.py:256 atms/forms.py:256
msgid "Write Notes"
msgstr "Notas:"
#: atmdetail/forms.py:265 atms/forms.py:265
#: atmlist/forms.py:265 atms/forms.py:265
msgid "Write location Category"
msgstr "Categorías de ubicación"
#: atmdetail/forms.py:274 atms/forms.py:274
#: atmlist/forms.py:274 atms/forms.py:274
msgid "Minimum Withdrawal"
msgstr "El retiro mínimo"
#: atmdetail/forms.py:284 atms/forms.py:284
#: atmlist/forms.py:284 atms/forms.py:284
msgid "Branch Identification"
msgstr "Identificación de la sucursal"
#: atmdetail/forms.py:287 atms/forms.py:287
#: atmlist/forms.py:287 atms/forms.py:287
msgid "Enter your Branch Identification"
msgstr "Identificación de la sucursal"
#: atmdetail/forms.py:294 atms/forms.py:294
#: atmlist/forms.py:294 atms/forms.py:294
msgid "Site Identification"
msgstr "IDENTIFICACIÓN DEL LUGAR"
#: atmdetail/forms.py:297 atms/forms.py:297
#: atmlist/forms.py:297 atms/forms.py:297
msgid "Enter your Site Identification"
msgstr "IDENTIFICACIÓN DEL LUGAR"
#: atmdetail/forms.py:304 atms/forms.py:304
#: atmlist/forms.py:304 atms/forms.py:304
msgid "Site Name"
msgstr "Nobre del sitio"
#: atmdetail/forms.py:307 atms/forms.py:307
#: atmlist/forms.py:307 atms/forms.py:307
msgid "Enter your Site Name "
msgstr "Nobre del sitio"
#: atmdetail/forms.py:314 atms/forms.py:314
#: atmlist/forms.py:314 atms/forms.py:314
msgid "Cash Withdrawal National fee"
msgstr "Cargo Nacional por Retiro de Efectivo"
#: atmdetail/forms.py:317 atms/forms.py:317
#: atmlist/forms.py:317 atms/forms.py:317
msgid "Cash withdrawal national fee"
msgstr "Cargo Nacional por Retiro de Efectivo"
#: atmdetail/forms.py:324 atms/forms.py:324
#: atmlist/forms.py:324 atms/forms.py:324
msgid "Cash Withdrawal international fee"
msgstr "Cargo internacional por retiro de efectivo"
#: atmdetail/forms.py:327 atms/forms.py:327
#: atmlist/forms.py:327 atms/forms.py:327
msgid "Cash withdrawal international fee"
msgstr "Cargo internacional por retiro de efectivo"
#: atmdetail/forms.py:334 atmdetail/forms.py:337 atms/forms.py:334
#: atmlist/forms.py:334 atmlist/forms.py:337 atms/forms.py:334
#: atms/forms.py:337
msgid "Balance Inquiry Fee"
msgstr "Cargo por consulta de saldo"
#: atmdetail/templates/atmsView/atmdetail.html:2 base/templates/base.html:11
msgid "API Manager"
msgstr "Administrador de API"
#: atmdetail/templates/atmsView/atmdetail.html:2 base/templates/base.html:85
msgid "ATMs Detail"
msgstr "Descripción"
#: atmdetail/templates/atmsView/atmdetail.html:4
msgid "ATMs List"
#: atmlist/templates/atmlist/atmlist.html:2
#: atmlist/templates/atmlist/atmlist.html:4 base/templates/base.html:85
msgid "ATM List"
msgstr "Vista de Cajeros Automáticos"
#: atmdetail/templates/atmsView/atmdetail.html:6
#: atmlist/templates/atmlist/atmlist.html:6
#: users/templates/users/includes/filter_pagination.html:12
msgid "Export CSV"
msgstr "Exportar CSV"
#: atmdetail/templates/atmsView/atmdetail.html:13
#: atms/templates/atms/atm_list.html:10
#: atmlist/templates/atmlist/atmlist.html:13
msgid "ATM Name"
msgstr "Nombre del cajero automático"
#: atmdetail/templates/atmsView/atmdetail.html:14
#: atms/templates/atms/atm_list.html:11
#: atmlist/templates/atmlist/atmlist.html:14
msgid "More info"
msgstr "Más información"
#: atmdetail/templates/atmsView/atmdetail.html:36
#: atms/templates/atms/atm_list.html:63
#: atmlist/templates/atmlist/atmlist.html:36
#: consumers/templates/consumers/index.html:76
#: users/templates/users/index.html:69
msgid "View"
msgstr "Ver"
#: atms/templates/atms/atm_list.html:4 atms/templates/atms/update.html:4
msgid "ATM Detail"
msgstr "Descripción"
#: atms/templates/atms/atm_list.html:12
#: branches/templates/branches/index.html:164
msgid "Update Button"
msgstr "Botón Actualizar"
#: atms/templates/atms/index.html:3 base/templates/base.html:84
msgid "ATMs"
msgstr "Cajeros Automáticos"
msgid "ATM Create"
msgstr "Creada"
#: atms/templates/atms/index.html:250
#: branches/templates/branches/index.html:151
@ -302,11 +282,19 @@ msgstr "Cajeros Automáticos"
msgid "Add"
msgstr "Agregar"
#: atms/templates/atms/update.html:4
msgid "ATM Detail"
msgstr "Descripción"
#: atms/views.py:36 atms/views.py:37 atms/views.py:38 atms/views.py:39
#: atms/views.py:40 atms/views.py:41
msgid "Choose..."
msgstr "Seleccione..."
#: base/templates/base.html:11
msgid "API Manager"
msgstr "Administrador de API"
#: base/templates/base.html:29
msgid "Logout"
msgstr "Cerrar la sesión"
@ -412,17 +400,24 @@ msgstr "Métricas de la API"
msgid "Welcome to API Manager"
msgstr "Bienvenido al Administrador de API"
#: base/templates/home.html:9
msgid ""
"This app gives you access to management functionality for the OBP instance at"
#: base/templates/home.html:9 base/templates/home.html:13
msgid "API Manager allows you to manage some aspects of the OBP instance at "
msgstr ""
"Esta aplicación le brinda acceso a la funcionalidad de administración para "
"la instancia de OBP en"
"El Gestor de la API le permite gestionar algunos aspectos de la instancia "
"OBP en"
#: base/templates/home.html:9
msgid "You have to"
msgid "You have to "
msgstr "Tienes que"
#: base/templates/home.html:9
msgid "login"
msgstr "inicio de sesión"
#: base/templates/home.html:9
msgid "or"
msgstr "Hora"
#: base/templates/home.html:9
msgid "register"
msgstr "Registrarse"
@ -432,12 +427,16 @@ msgid "an account before being able to proceed"
msgstr "una cuenta antes de poder continuar"
#: base/templates/home.html:9
msgid ""
"The logged-in user needs to have specific roles granted to use the "
"functionality."
msgstr ""
"El usuario que inició sesión debe tener roles específicos otorgados para "
"usar la funcionalidad."
msgid "Your access is limited by the Entitlements you have."
msgstr "Su acceso está limitado por los derechos que tiene."
#: base/templates/home.html:19
msgid "Authenticate"
msgstr "Autentificar"
#: base/templates/home.html:23 obp/api.py:170 obp/api.py:178
msgid "Choose ..."
msgstr "Seleccione..."
#: branches/forms.py:13 branches/templates/branches/index.html:160
msgid "Branch Id"
@ -516,6 +515,10 @@ msgstr "Nombre de la sucursal"
msgid "More_info"
msgstr "Más información"
#: branches/templates/branches/index.html:164
msgid "Update Button"
msgstr "Botón Actualizar"
#: branches/templates/branches/index.html:178
msgid "line1"
msgstr "Apartado 1"
@ -1489,10 +1492,6 @@ msgstr "Maximo de llamadas por día"
msgid "Calls per month"
msgstr "llamadas por mes"
#: obp/api.py:170 obp/api.py:178
msgid "Choose ..."
msgstr "Seleccione..."
#: users/forms.py:15 users/templates/users/detail.html:67
#: users/templates/users/detail.html:96
msgid "Role name"
@ -1632,30 +1631,47 @@ msgstr "Países"
msgid "status"
msgstr "Estado"
#: webui/templates/webui/index.html:9
#: webui/templates/webui/index.html:4
msgid "WEBUI"
msgstr "WEBUI"
#: webui/templates/webui/index.html:12
#: webui/templates/webui/index.html:7
msgid "Web UI Props Name"
msgstr "Accesorios webui"
#: webui/templates/webui/index.html:15
#: webui/templates/webui/index.html:11
msgid "Web UI Props Value"
msgstr "Accesorios webui"
#: webui/templates/webui/index.html:18
#: webui/templates/webui/index.html:15
msgid "Web UI Props Id"
msgstr "Accesorios webui"
#: webui/templates/webui/index.html:21
#: webui/templates/webui/index.html:18
msgid "Save Value"
msgstr "Guardar valor"
#: webui/templates/webui/index.html:46
#: webui/templates/webui/index.html:48
msgid "Save"
msgstr "Ahorrar"
#: webui/templates/webui/index.html:54
msgid "Create Locale"
msgstr "Creada"
#~ msgid "ATMs Detail"
#~ msgstr "Descripción"
#~ msgid "ATMs"
#~ msgstr "Cajeros Automáticos"
#~ msgid ""
#~ "The logged-in user needs to have specific roles granted to use the "
#~ "functionality."
#~ msgstr ""
#~ "El usuario que inició sesión debe tener roles específicos otorgados para "
#~ "usar la funcionalidad."
#~ msgid "PDDL"
#~ msgstr "PDDL"

View File

@ -0,0 +1,58 @@
$(document).ready(function ($) {
$(".runner button.forSave").click(function (e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var web_ui_props_value = $(runner).find(".web_ui_props_value").val();
$(".runner button.forSave").attr("disabled", "disabled");
$(".runner button.forDelete").attr("disabled", "disabled");
$.post(
"save/method",
{
web_ui_props_name: web_ui_props_name,
web_ui_props_value: web_ui_props_value,
},
function (response) {
location.reload();
}
);
});
$(".runner button.forDelete").click(function (e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var textArea = runner.find(".web_ui_props_value");
var props_id = $(runner).find(".web_ui_props_id");
var web_ui_props_id = props_id.val();
var webui = $("#webui");
$(".runner button.forSave").attr("disabled", "disabled");
$(".runner button.forDelete").attr("disabled", "disabled");
$.post(
"delete/method",
{
web_ui_props_id: web_ui_props_id,
},
function (response) {
location.reload();
}
);
});
$(".runner button.forCreate").click(function (e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var languages = $(runner).find(".language").val();
if (languages == "es") {
$(runner)
.find(".language_list")
.text("_" + languages);
} else {
$(runner).find(".language_list").text("");
}
});
});

View File

@ -1,102 +1,129 @@
{% extends 'base.html' %}
{% load static i18n %}
{% block page_title %}{{ block.super }} / Users{% endblock page_title %}
{% block content %}
<div id="webui">
<div id="webui_list">
<h1>{% trans "WEBUI" %}</h1>
<div class="row">
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Name" %}:</label> <br>
</div>
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Value" %}:</label> <br>
</div>
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Id" %}:</label> <br>
</div>
<div class="col-sm-12 col-sm-3">
<label class="form-group">{% trans "Save Value" %}:</label> <br>
</div>
{% extends 'base.html' %} {% load static i18n %} {% block page_title %}{{ block.super }} / Users{% endblock page_title %} {% block content %}
<div id="webui">
<div id="webui_list">
<h1>{% trans "WEBUI" %}</h1>
<div class="row">
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Name" %}:</label>
<br />
</div>
<form method="post">
{% csrf_token %}
{% for webui_prop in webui_props %}
<div class="runner">
<div class="row">
<input type="hidden" class="web_ui_props_id" value="{{ webui_prop.web_ui_props_id }}"/>
<div class="col-xs-12 col-sm-3">
<div class="form-group" cols="20" rows="1">
<div class="web_ui_props_name" >{{ webui_prop.name }}</div>
</div>
</div>
<div class="col-xs-12 col-sm-3">
<div class="form-group">
<textarea class="form-control required web_ui_props_value" cols="40"
rows="1">{{ webui_prop.value }}</textarea>
</div>
</div>
<div class="col-xs-12 col-sm-3">
<div class="form-group" cols="1" rows="1"><div class="">{{ webui_prop.web_ui_props_id }}</div></div>
</div>
<div class="col-sm-12 col-sm-3">
<div class="form-group">
<button class="btn btn-primary btn-green forSave">{% trans "Save" %}</button>
<button class="btn btn-primary btn-red forDelete">{% trans "Delete" %}</button>
</div>
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Value" %}:</label>
<br />
</div>
<div class="col-xs-12 col-sm-3">
<label class="form-group">{% trans "Web UI Props Id" %}:</label> <br />
</div>
<div class="col-sm-12 col-sm-3">
<label class="form-group">{% trans "Save Value" %}:</label> <br />
</div>
</div>
<form method="post">
{% csrf_token %} {% for webui_prop in webui_props %}
<div class="runner">
<div class="row">
<input type="hidden" class="web_ui_props_id" value="{{ webui_prop.web_ui_props_id }}" />
<div class="col-xs-12 col-sm-3">
<div class="form-group" cols="20" rows="1">
<div class="web_ui_props_name" style="float: left">
{{ webui_prop.name }}
</div>
<span class="language_list"></span>
</div>
</div>
{% endfor %}
</form>
</div>
<div class="col-xs-12 col-sm-3">
<div class="form-group">
<textarea class="form-control required web_ui_props_value" cols="40" rows="1">
{{ webui_prop.value }}</textarea>
</div>
</div>
<div class="col-xs-12 col-sm-3">
<div class="form-group" cols="1" rows="1">
<div class="">{{ webui_prop.web_ui_props_id }}</div>
</div>
</div>
<div class="col-sm-12 col-sm-3">
<div class="form-group">
<button class="btn btn-primary btn-green forSave">
{% trans "Save" %}
</button>
<button class="btn btn-primary btn-red forDelete">
{% trans "Delete" %}
</button>
<button class="btn btn-primary btn-create forCreate">
{% trans "Create Locale" %}
</button>
<select class="language">
<option value="en">En</option>
<option value="es">Es</option>
</select>
</div>
</div>
</div>
</div>
{% endfor %}
</form>
</div>
{% endblock %}
{% block extrajs %}
<script>
</div>
{% endblock %} {% block extrajs %}
<script>
$(document).ready(function($) {
$('.runner button.forSave').click(function(e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find('.web_ui_props_name').text();
var web_ui_props_value = $(runner).find('.web_ui_props_value').val();
$('.runner button.forSave').attr("disabled", "disabled");
$('.runner button.forDelete').attr("disabled", "disabled");
$.post('save/method', {
'web_ui_props_name': web_ui_props_name,
'web_ui_props_value': web_ui_props_value,
}, function(response) {
location.reload();
$(".runner button.forSave").click(function(e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var web_ui_props_value = $(runner).find(".web_ui_props_value").val();
$(".runner button.forSave").attr("disabled", "disabled");
$(".runner button.forDelete").attr("disabled", "disabled");
$.post(
"save/method", {
web_ui_props_name: web_ui_props_name,
web_ui_props_value: web_ui_props_value,
},
function(response) {
location.reload();
}
);
});
$(".runner button.forDelete").click(function(e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var textArea = runner.find(".web_ui_props_value");
var props_id = $(runner).find(".web_ui_props_id");
var web_ui_props_id = props_id.val();
var webui = $("#webui");
$(".runner button.forSave").attr("disabled", "disabled");
$(".runner button.forDelete").attr("disabled", "disabled");
$.post(
"delete/method", {
web_ui_props_id: web_ui_props_id,
},
function(response) {
location.reload();
}
);
});
$(".runner button.forCreate").click(function(e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find(".web_ui_props_name").text();
var languages = $(runner).find(".language").val();
if (languages == "es") {
$(runner)
.find(".language_list")
.text("_" + languages);
} else {
$(runner).find(".language_list").text("");
}
});
});
</script>
$('.runner button.forDelete').click(function(e) {
e.preventDefault();
var t = $(this);
var runner = t.parent().parent().parent();
var web_ui_props_name = $(runner).find('.web_ui_props_name').text();
var textArea = runner.find('.web_ui_props_value');
var props_id = $(runner).find('.web_ui_props_id');
var web_ui_props_id = props_id.val();
var webui = $('#webui');
$('.runner button.forSave').attr("disabled", "disabled");
$('.runner button.forDelete').attr("disabled", "disabled");
$.post('delete/method', {
'web_ui_props_id': web_ui_props_id,
}, function(response) {
location.reload();
});
});
});
</script>
<!--<script type="text/javascript" src="{% static 'webui/js/webui.js' %}"></script>-->
{% endblock extrajs %}
{% block extracss %}
<link href="{% static 'webui/css/webui.css' %}" rel="stylesheet">
{% endblock extracss %}
{% endblock extrajs %} {% block extracss %}
<link href="{% static 'webui/css/webui.css' %}" rel="stylesheet" /> {% endblock extracss %}

View File

@ -47,9 +47,7 @@ class IndexView(LoginRequiredMixin, FormView):
# }
context.update(response)
except APIError as err:
messages.error(self.request, Exception("The OBP-API server is not running or does not respond properly."
"Please check OBP-API server. "
"Details: " + str(err)))
messages.error(self.request, err)
except BaseException as err:
messages.error(self.request, (Exception("Unknown Error. Details:" + str(err))))
return context