184981f0aSGunnar Mills<loader loading="loading"></loader>
2cd789508SIftekharul Islam<div id="configuration-network">
3cd789508SIftekharul Islam  <div class="row column">
451946552SMichael Davis    <h1>BMC network settings</h1>
5cd789508SIftekharul Islam  </div>
6a960c8c7SMichael Davis  <form class="net-config__form" role="form" action="">
71ffa209eSDerick Montague    <fieldset class="net-config__fieldset row column">
81ffa209eSDerick Montague      <legend class="column small-12 page-header h2">
91ffa209eSDerick Montague        Common settings
101ffa209eSDerick Montague      </legend>
111ffa209eSDerick Montague      <div class="net-config__fieldset-content">
1251946552SMichael Davis        <div class="column small-12 large-3">
132a489554SIftekharul Islam          <label for="net-config__mac">Hostname</label>
14309e06abSGunnar Mills          <input id="net-config__mac" type="text" ng-model="hostname" />
152a489554SIftekharul Islam        </div>
162a489554SIftekharul Islam        <div class="column small-12 large-3">
1751946552SMichael Davis          <label for="netinterface-select">Network interface</label>
18a960c8c7SMichael Davis          <div id="netinterface-select" class="dropdown__wrapper">
191ffa209eSDerick Montague            <button type="button" class="dropdown__button"
201ffa209eSDerick Montague              ng-click="networkDevice = !networkDevice">{{selectedInterface}}</button>
21a960c8c7SMichael Davis            <ul class="dropdown__list inline" ng-show="networkDevice">
222a489554SIftekharul Islam              <li ng-repeat="interface_id in network.interface_ids">
232a489554SIftekharul Islam                <button type="button" ng-click="selectInterface(interface_id);">{{interface_id}}</button>
24a960c8c7SMichael Davis              </li>
25a960c8c7SMichael Davis            </ul>
26a960c8c7SMichael Davis          </div>
27a960c8c7SMichael Davis        </div>
2851946552SMichael Davis        <div class="column small-12 large-3">
292a489554SIftekharul Islam          <label for="net-config__host">MAC address</label>
302a489554SIftekharul Islam          <input id="net-config__host" type="text" ng-model="interface.MACAddress" />
31a960c8c7SMichael Davis        </div>
3251946552SMichael Davis        <div class="column small-12 large-3">
33e9f5fe77SGunnar Mills          <label for="net-config__domain">Default Gateway</label>
34067a1cd1Sbeccabroek          <input id="net-config__domain" type="text" ng-model="defaultGateway" />
35a960c8c7SMichael Davis        </div>
36a960c8c7SMichael Davis      </div>
371ffa209eSDerick Montague    </fieldset>
381ffa209eSDerick Montague    <fieldset class="net-config__fieldset row column">
391ffa209eSDerick Montague      <legend class="column small-12 page-header h2">
401ffa209eSDerick Montague        IPV4 settings
411ffa209eSDerick Montague      </legend>
421ffa209eSDerick Montague      <div class="net-config__fieldset-content">
43a960c8c7SMichael Davis        <div class="row column">
44a960c8c7SMichael Davis          <label class="control-radio" for="dhcp-address">Obtain an IP address automatically using DHCP
451ffa209eSDerick Montague            <input type="radio" name="ip-address" id="dhcp-address" ng-checked="true" ng-model="interface.DHCPEnabled"
461ffa209eSDerick Montague              ng-value="true">
47a960c8c7SMichael Davis            <span class="control__indicator control__indicator-on"></span>
48a960c8c7SMichael Davis          </label>
49a960c8c7SMichael Davis        </div>
50a960c8c7SMichael Davis        <div class="row column">
51a960c8c7SMichael Davis          <label class="control-radio" for="static-ip-address">Assign a static IP address
521ffa209eSDerick Montague            <input type="radio" name="ip-address" id="static-ip-address" ng-model="interface.DHCPEnabled"
531ffa209eSDerick Montague              ng-value="false" />
54a960c8c7SMichael Davis            <span class="control__indicator control__indicator-on"></span>
55a960c8c7SMichael Davis          </label>
56a960c8c7SMichael Davis        </div>
57971ac1aaSbeccabroek        <div class="row column network-config__ipv4-wrap">
581ffa209eSDerick Montague          <fieldset class="net-config__fieldset net-config__static-ip-wrap" ng-repeat="ipv4 in interface.ipv4.values track by $index">
59971ac1aaSbeccabroek            <div class="column small-12 large-3">
601ffa209eSDerick Montague              <label for="ipv4-address-{{$index+1}}">IPV4 address</label>
611ffa209eSDerick Montague              <input id="ipv4-address-{{$index+1}}" ng-change="ipv4.updateAddress = true" type="text"
621ffa209eSDerick Montague                ng-disabled="interface.DHCPEnabled" ng-model="ipv4.Address" />
63a960c8c7SMichael Davis            </div>
64971ac1aaSbeccabroek            <div class="column small-12 large-3">
651ffa209eSDerick Montague              <label for="ipv4-gateway-{{$index+1}}">Gateway</label>
661ffa209eSDerick Montague              <input id="ipv4-gateway-{{$index+1}}" ng-change="ipv4.updateGateway = true" type="text"
671ffa209eSDerick Montague                ng-disabled="interface.DHCPEnabled" value="" ng-model="ipv4.Gateway" />
68a960c8c7SMichael Davis            </div>
696549114eSGunnar Mills            <!-- This netmask prefix length max only works with IPV4 -->
70971ac1aaSbeccabroek            <div class="column small-12 large-6">
711ffa209eSDerick Montague              <label for="ipv4-prefix-{{$index+1}}">Netmask Prefix Length</label>
721ffa209eSDerick Montague              <input id="ipv4-prefix-{{$index+1}}" class="column small-6" ng-change="ipv4.updatePrefix = true"
731ffa209eSDerick Montague                type="number" min="1" max="32" step="1" ng-disabled="interface.DHCPEnabled"
741ffa209eSDerick Montague                ng-model="ipv4.PrefixLength" />
750769609dSDixsie Wolmers              <button type="button" class="btn  btn-tertiary network-config_remove-button" ng-click="removeIpv4Address($index)">Remove</button>
76a960c8c7SMichael Davis            </div>
77a960c8c7SMichael Davis          </fieldset>
781a0e7d06Sbeccabroek          <div class="row column">
791a0e7d06Sbeccabroek            <div class="column small-12">
80c86ce3c9SYoshie Muranaka              <button type="button" class="btn  btn-primary" ng-click="addIpv4Field()">Add IPV4 address</button>
811a0e7d06Sbeccabroek            </div>
821a0e7d06Sbeccabroek          </div>
83971ac1aaSbeccabroek        </div>
8451946552SMichael Davis      </div>
851ffa209eSDerick Montague    </fieldset>
861ffa209eSDerick Montague    <fieldset class="net-config__fieldset row column">
871ffa209eSDerick Montague      <legend class="column small-12 page-header h2">
881ffa209eSDerick Montague        DNS settings
891ffa209eSDerick Montague      </legend>
901ffa209eSDerick Montague      <div class="net-config__fieldset-content">
910646782dSGunnar Mills        <!-- Call Nameservers "DNS Servers" on the GUI -->
921ffa209eSDerick Montague        <div class="net-config__static-ip-wrap" ng-repeat="dns in interface.Nameservers track by $index">
93cff61508Sbeccabroek          <div class="column small-12">
94bc3ab72cSGunnar Mills            <label for="net-config__prime-dns{{$index+1}}">DNS Server {{$index+1}}</label>
951ffa209eSDerick Montague            <input id="net-config__prime-dns{{$index+1}}" class="network-input column small-6 large-4 inline"
961ffa209eSDerick Montague              type="text" ng-model="dns" ng-blur="interface.Nameservers[$index] = dns" set-focus-on-new-input />
970769609dSDixsie Wolmers            <button type="button" class="btn  btn-tertiary  network-config_remove-button" ng-click="removeDNSField($index)">Remove</button>
98cff61508Sbeccabroek          </div>
991ffa209eSDerick Montague        </div>
100971ac1aaSbeccabroek        <div class="row column">
1011a0e7d06Sbeccabroek          <div class="column small-12">
102c86ce3c9SYoshie Muranaka            <button type="button" class="btn  btn-primary dns_add" ng-click="addDNSField()">Add DNS server</button>
1031a0e7d06Sbeccabroek          </div>
10451946552SMichael Davis        </div>
1051ffa209eSDerick Montague      </div>
10651946552SMichael Davis    </fieldset>
107c86ce3c9SYoshie Muranaka    <div class="row column">
108c86ce3c9SYoshie Muranaka      <div class="network-config__submit-wrapper column">
109c86ce3c9SYoshie Muranaka        <div class="float-right">
110c86ce3c9SYoshie Muranaka          <button type="button" class="btn  btn-secondary" ng-click="refresh()">Cancel</button>
111c86ce3c9SYoshie Muranaka          <button type="button" class="btn  btn-primary" ng-click="confirmSettings=true;">Save settings</button>
112c86ce3c9SYoshie Muranaka        </div>
113c86ce3c9SYoshie Muranaka      </div>
114a960c8c7SMichael Davis    </div>
115a960c8c7SMichael Davis  </form>
116cd789508SIftekharul Islam</div>
117d0dbe3b3Sbeccabroek<div class="modal-overlay" tabindex="-1" ng-class="{'active': confirmSettings}"></div>
1181ffa209eSDerick Montague<section class="modal" aria-hidden="true" aria-labelledby="modalTitle" aria-describedby="modalDescription" role="dialog"
1191ffa209eSDerick Montague  ng-class="{'active': confirmSettings}">
120d01504cfSGunnar Mills  <div class="modal__tftp-unreachable" role="document">
1211ffa209eSDerick Montague    <div class="screen-reader-offscreen modal-description">Change network settings</div>
1221ffa209eSDerick Montague    <!-- accessibility only; used for screen readers -->
123d01504cfSGunnar Mills    <div class="page-header">
124*86c0b94bSDerick Montague      <icon file="icon-warning.svg" aria-hidden="true"></icon><span class="accessible-text" role="alert">Warning</span>
125edf1ab46Sbeccabroek      <h3 class="modal-title inline">Change network settings</h3>
126d01504cfSGunnar Mills    </div>
127d01504cfSGunnar Mills    <div class="modal__content">
128d01504cfSGunnar Mills      <p>Changing network settings may cause the system to become unavailable (e.g. changing the BMC IP address).
129d01504cfSGunnar Mills        Proceed with caution and make note of any new settings that may affect connectivity.</p>
130d01504cfSGunnar Mills    </div>
131d01504cfSGunnar Mills    <div class="modal__button-wrapper">
132c86ce3c9SYoshie Muranaka      <button class="btn btn-secondary" ng-click="confirmSettings=false;">Cancel</button>
133c86ce3c9SYoshie Muranaka      <button class="btn btn-primary" ng-click="setNetworkSettings()">Continue</button>
134d01504cfSGunnar Mills    </div>
135d01504cfSGunnar Mills  </div>
136d01504cfSGunnar Mills</section>