blob: caf32b79fbd0fc01ca052ccb8039dd6cf64801e1 [file] [log] [blame]
<!--
Copyright 2019 ETSI
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
{% extends "base.html" %}
{% load get %}
{% load staticfiles %}
{% block head_block %}
{{ block.super }}
{% endblock %}
{% block title_header_big %}
{{ block.super }}
{% endblock %}
{% block left_sidebar %}
{% include 'osm/osm_project_left_sidebar.html' %}
{% endblock %}
{% block breadcrumb_body %}
{{ block.super }}
<li><a href="{% url 'vims:list' %}">VIMS</a></li>
{% endblock %}
{% block content_body %}
{{ block.super }}
<div class="row">
<div class="col-md-12">
<form action='{% url "vims:create" %}' method="post">
{% csrf_token %}
<div class="box">
<div class="box-header with-border">
<h3 class="box-title">NEW VIM ACCOUNT</h3>
<div class="box-tools">
</div>
</div>
<div class="box-body">
<div class="row">
<div class="col-lg-6">
<div class="row">
<div class="form-group">
<label for="name" class="col-sm-3 control-label">Name*</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="name" name="name" placeholder="VIM name"
required>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="vim_type" class="col-sm-3 control-label">Type*</label>
<div class="col-sm-6 input-group input-group-sm">
<select id="vim_type" name="vim_type" class="form-control"
onchange="toggleConfig(this)">
<option value="openvim">OpenVIM</option>
<option value="openstack">Openstack</option>
<option value="vmware">VMware vCD</option>
<option value="aws">AWS</option>
<option value="opennebula">OpenNebula</option>
</select>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="vim_url" class="col-sm-3 control-label">VIM URL*</label>
<div class="col-sm-6 input-group input-group-sm">
<input type="url" class="form-control" id="vim_url" name="vim_url"
placeholder="VIM URL" required>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="vim_user" class="col-sm-3 control-label">VIM Username*</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="vim_user" name="vim_user"
placeholder="VIM Username" required>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="vim_password" class="col-sm-3 control-label">VIM Password*</label>
<div class="col-sm-6 input-group input-group-sm">
<input type="password" class="form-control" id="vim_password"
name="vim_password" placeholder="VIM Password" required>
</div>
</div>
</div>
</div>
<div class="col-lg-6">
<div class="row">
<div class="form-group">
<label for="vim_tenant_name" class="col-sm-3 control-label">Tenant name*</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="vim_tenant_name" name="vim_tenant_name"
placeholder="Tenant name" required>
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="description" class="col-sm-3 control-label">Description</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="description" name="description"
placeholder="Description">
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="schema_type" class="col-sm-3 control-label">Schema Type</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="schema_type" name="schema_type"
placeholder="Schema Type">
</div>
</div>
</div>
<div class="row">
<div class="form-group">
<label for="schema_version" class="col-sm-3 control-label">Schema
Version</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="schema_version" name="schema_version"
placeholder="Schema Version">
</div>
</div>
</div>
</div>
</div>
<div id="config" class="panel box">
<a data-toggle="collapse" data-parent="#accordion" href="#config_collapse"
aria-expanded="false" class="collapsed" style="color:black">
<h5 class="box-title" style="background-color:#f7f7f7; text-align: center;">
CONFIG PARAMETERS
</h5>
</a>
<div id="config_collapse" class="panel-collapse collapse ">
{% include 'config/openvim.html' %}
{% include 'config/openstack.html' %}
{% include 'config/vmware.html' %}
{% include 'config/aws.html' %}
{% include 'config/opennebula.html' %}
<div class="row">
<div class="col-lg-6">
<div class="row ">
<div class="form-group">
<label for="additional_conf" class="col-sm-4 control-label">Additional configuration</label>
<div class="col-sm-6 input-group input-group-sm">
<input class="form-control" id="additional_conf"
name="additional_conf"
placeholder='{ "key1": [...], "key2": {}, "key3": "" }'>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="box-footer">
<button onclick="location.href='{% url 'vims:list' %}'" class="btn btn-default pull-left">Back to
VIM Accounts
</button>
<button class="btn btn-primary pull-right">Create</button>
</div>
</div>
</form>
</div>
</div>
{% endblock %}
{% block resource_block %}
{{ block.super }}
<!-- Utility JS -->
<script>
$(document).ready(function () {
toggleConfig(document.getElementById("vim_type"));
});
function toggleConfig(element){
$('.config-vim').hide();
$('.config-input').prop('disabled', true);
var type_selected = element.options[element.selectedIndex].value;
console.log("type selected: " + type_selected);
var div_config_index = type_selected + '_config_collapse';
$('#'+div_config_index).show();
$('#'+div_config_index+' .config-input').prop('disabled', false);
}
</script>
{% endblock %}
{% block footer %}
{% include "footer.html" %}
{% endblock %}