tweaked the web page first -- in process

This commit is contained in:
hongwei1 2019-08-13 11:38:28 +02:00
parent 24ed62c879
commit 39c7a8cd8e
2 changed files with 37 additions and 29 deletions

View File

@ -8,6 +8,7 @@
<div id="webui_list">
<h1>WEBUI</h1>
{# <form method="post" action="{% url 'webui:webui-index' %}">#}
<form method="post">
{% csrf_token %}
{% if form.non_field_errors %}
@ -18,27 +19,33 @@
<div class="row">
<div class="col-xs-12 col-sm-4">
{% if form.webui_props_name.errors %}<div class="alert alert-danger">{{ form.webui_props_name.errors }}</div>{% endif %}
<div class="form-group">
{{ form.webui_props_name.label_tag }}
{{ form.webui_props_name }}
</div>
<label class="form-group" >Web UI Props Name:</label> <br>
</div>
<div class="col-xs-12 col-sm-4">
{% if form.webui_props_value.errors %}<div class="alert alert-danger">{{ form.webui_props_value.errors }}</div>{% endif %}
<div class="form-group">
{{ form.webui_props_value.label_tag }}
{{ form.webui_props_value }}
</div>
<label class="form-group" >Web UI Props Value:</label> <br>
</div>
<div class="col-sm-12 col-sm-4">
<div class="form-group">
<label >Save Value:</label> <br>
<button type="submit" class="btn btn-primary btn-green">Save</button>
</div>
<label class="form-group" >Save Value:</label> <br>
</div>
</div>
{% for webui_prop in webui_props %}
<div class="row">
<div class="col-xs-12 col-sm-4">
<div class="form-group" name="webui_props_value" cols="20" rows="1" id="id_webui_props_key"><strong>{{ webui_prop.name }}</strong></div>
</div>
<div class="col-xs-12 col-sm-4">
<div class="form-group">
<textarea name="webui_props_value" cols="40" rows="1" class="form-control" id="id_webui_props_value">{{ webui_prop.value }}</textarea>
</div>
</div>
<div class="col-sm-12 col-sm-4">
<div class="form-group">
<button type="submit" class="btn btn-primary btn-green">Save</button>
</div>
</div>
</div>
{% endfor %}
</form>
</div>

View File

@ -35,33 +35,34 @@ class IndexView(LoginRequiredMixin, FormView):
def get_context_data(self, **kwargs):
context = super(IndexView, self).get_context_data(**kwargs)
webui_props = []
api = API(self.request.session.get('obp'))
urlpath = '/management/webui_props?active=true'
try:
response = api.get(urlpath)
except APIError as err:
messages.error(self.request, err)
except:
messages.error(self.request, 'Unknown Error')
webui_props = response["webui_props"]
context.update({'webui_props': webui_props})
return context
def get_form(self, *args, **kwargs):
form = super(IndexView, self).get_form(*args, **kwargs)
# Cannot add api in constructor: super complains about unknown kwarg
fields = form.fields
form.api = self.api
try:
fields['webui_props_name'].initial = ""
fields['webui_props_value'].initial = ""
except APIError as err:
messages.error(self.request, APIError(Exception("OBP-API server is not running or do not response properly. "
"Please check OBP-API server. Details: " + str(err))))
except Exception as err:
messages.error(self.request, "Unknown Error. Details: "+ str(err))
return form
def form_valid(self, form):
try:
# TODO, need to be fixed later.
data = form.cleaned_data
urlpath = '/management/webui_props'
payload = {
"name" : data["webui_props_name"],
"value" : data["webui_props_value"]
"name" : "1",
"value" : "2"
}
result = self.api.post(urlpath, payload=payload)
except APIError as err: