<!--
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.
-->

<div id="opennebula_config_collapse" class="config-vim row">
    <div class="col-lg-6">
        <div class="row ">
            <div class="form-group">
                <label for="ov_sdn_ctrl" class="col-sm-4 control-label">SDN Controller</label>
                <div class="col-sm-6 input-group input-group-sm">
                    <input disabled class="form-control config-input" id="ov_sdn_ctrl" name="config_sdn_controller"
                           placeholder="sdn_controller">
                </div>
            </div>
        </div>
        <div class="row">
            <div class="form-group">
                <label for="ov_sdn_port_map" class="col-sm-4 control-label">SDN Port Mapping</label>
                <div class="col-sm-6 input-group input-group-sm">
                    <input disabled class="form-control config-input" id="ov_sdn_port_map"
                           name="config_sdn_port_mapping"
                           placeholder="sdn_port_mapping">
                </div>
            </div>
        </div>
        <div class="row">
            <div class="form-group">
                <label for="ov_vim_network_name" class="col-sm-4 control-label">VIM network name</label>
                <div class="col-sm-6 input-group input-group-sm">
                    <input disabled class="form-control config-input" id="ov_vim_network_name"
                           name="config_vim_network_name"
                           placeholder="vim_network_name">
                </div>
            </div>
        </div>
    </div>
</div>