+++ /dev/null
-<md-dialog class="cpe-dialog" ng-cloak ng-init="dialogState='MAIN'">
- <md-toolbar>
- <div class="md-toolbar-tools">
- <h2>Intranet {{dialogState=='MAIN' ? '- DHCP' : ''}}</h2>
- <span flex></span>
- <md-button class="md-icon-button" aria-label="Close dialog" ng-click="cancel()">
- <i class="icon-remove-sign"></i>
- </md-button>
- </div>
- </md-toolbar>
- <md-dialog-content>
- <div layout="column" ng-cloak>
- <md-content layout-padding ng-show="dialogState=='MAIN'">
- <form id="dnsForm" name="dnsForm" novalidate>
- <div layout="row" id="dnsInputs">
- <md-input-container class="md-block">
- <label>Primary DNS Server</label>
- <input type="text" required name="primaryDns" ng-model="obj.primaryDns" ng-pattern="/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/" />
- <div ng-messages="dnsForm.primaryDns.$error">
- <div ng-message="required">IP is required!</div>
- <div ng-message="pattern">IP is required! (ex. 127.0.0.1)</div>
- </div>
- </md-input-container>
- <md-input-container class="md-block">
- <label>Secondary DNS Server</label>
- <input type="text" required name="secondaryDns" ng-model="obj.secondaryDns" ng-pattern="/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/" />
- <div ng-messages="dnsForm.secondaryDns.$error">
- <div ng-message="required">IP is required!</div>
- <div ng-message="pattern">IP is required! (ex. 127.0.0.1)</div>
- </div>
- </md-input-container>
- <button class="btn btn-info" ng-click="setDNS(obj.primaryDns,obj.secondaryDns)" style="margin:8px"> Set DNS</button>
- </div>
- </form>
- <md-input-container class="complexSelect md-block right" style="margin-top:0">
- <md-select md-container-class="complexSelect" ng-attr-disabled="{{getAvailableNetwork().length ? undefined : 'disabled' }}" name="networks" ng-model="selectedNetworks" md-selected-text="'Enable Networks'" multiple>
- <md-checkbox style="margin: 11px" ng-checked="isAllSelected()" md-indeterminate="isPartialSelected()" ng-click="selectAll()"> Select All</md-checkbox>
- <div class="complexSelectOptions">
- <md-option ng-repeat="u in getAvailableNetwork()" ng-value="u">{{u.cidr}}</md-option>
- </div>
- <md-button class="btn btn-info" ng-click="updateEnabled()" style="background-color: orange;width: 90%;">Apply </md-button>
- </md-select>
- </md-input-container>
-
- <table class="footable table table-striped inner-table">
- <thead>
- <tr>
- <th>Network</th>
- <th>DNS Primary</th>
- <th>DNS Secondary</th>
- <th>Starting IP</th>
- <th>Ending IP</th>
- <th>Static Assignment</th>
- <th class="minimal-width"></th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="u in dhcps">
- <td> {{u.subnet}} </td>
- <td>{{u['dns-servers'][0]['dns-server']}}</td>
- <td>{{u['dns-servers'][1]['dns-server']}}</td>
- <td>{{u['allocate-from']}}</td>
- <td> {{u['allocate-to']}}</td>
- <td> <button type="button" class="btn btn-md btn-info" ng-click="openStaticAssigment(u)"> <i class="icon-tasks"></i> Open</button> </td>
- <td class="minimal-width" style="white-space: nowrap;">
- <button type="button" class="btn btn-md btn-danger" ng-click="removeDhcp(u.subnet)"> <i class="icon-trash"></i> </button>
- </td>
- </tr>
- </tbody>
- </table>
- </md-content>
- <md-content layout-padding ng-if="dialogState=='STATIC'">
- <div layout="row" flex="100">
- <div layout="column">
- <div>DHCP - Assignment</div>
- <div>Subnet {{focusedSubnet.subnet}}</div>
- <div>From {{focusedSubnet['allocate-from']}}, To: {{focusedSubnet['allocate-to']}}</div>
- </div>
- </div>
- <form name="projectForm" novalidate ng-submit="addAllocation(projectForm, obj.mac, obj.ip)">
- <table class="footable table table-striped inner-table">
- <thead>
- <tr>
- <th>Mac</th>
- <th>IP</th>
- <th class="minimal-width"><button type="button" class="btn btn-md btn-info right" ng-disabled="isAddingRow()" ng-click="setAddingRow(true)"> <i class="icon-plus"></i> </button></th>
- </tr>
- </thead>
- <tbody>
- <tr ng-if="isAddingRow()">
- <td style="padding-bottom: 0">
- <md-input-container>
- <input type="text" required name="mac" ng-model="obj.mac" ng-pattern="/\b(?:[0-9a-fA-F][0-9a-fA-F]:){5}[0-9a-fA-F]{2}\b/"/>
- <div ng-messages="projectForm.mac.$error">
- <div ng-message="required">MAC is required!</div>
- <div ng-message="pattern">MAC is required! (ex. AA:BB:CC:DD:EE:FF)</div>
- </div>
- </md-input-container>
- </td>
- <td style="padding-bottom: 0">
- <md-input-container>
- <input type="text" required name="ip" ng-model="obj.ip" ng-pattern="/\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b/" />
- <div ng-messages="projectForm.ip.$error">
- <div ng-message="required">IP is required!</div>
- <div ng-message="pattern">IP is required! (ex. 127.0.0.1)</div>
- </div>
- </md-input-container>
- </td>
- <td class="minimal-width" style="white-space: nowrap;">
- <button type="button" class="btn btn-md btn-danger" ng-click="setAddingRow(false)"> <i class="icon-trash"></i> </button>
- <button type="submit" class="btn btn-md btn-info"> <i class="icon-plus"></i> </button>
- </td>
- </tr>
- <tr ng-repeat="alloc in subnetAllocations | orderBy: 'mac'">
- <td ng-bind="alloc.mac"> </td>
- <td ng-bind="alloc['allocated-ip']"></td>
- <td class="minimal-width" style="white-space: nowrap;">
- <button type="button" class="btn btn-md btn-danger" ng-click="removeAllocation(focusedSubnet.subnet, alloc.mac)"> <i class="icon-trash"></i> </button>
- </td>
- </tr>
- </tbody>
- </table>
- </form>
- </md-content>
- <md-content class="confirmDialog" layout-padding ng-if="dialogState=='CONFIRM'">
- <h2>Are You Sure?</h2>
- <div>
- <p ng-bind="confirmationMsg"></p>
- </div>
- </md-content>
- </div>
- </md-dialog-content>
- <md-dialog-actions layout="row" ng-if="dialogState=='MAIN'">
- <span flex></span>
- <md-button type="button" ng-click="cancel()">OK</md-button>
- </md-dialog-actions>
- <md-dialog-actions layout="row" ng-if="dialogState=='STATIC'">
- <span flex></span>
- <md-button type="button" ng-click="openMain()">Back</md-button>
- </md-dialog-actions>
- <md-dialog-actions layout="row" ng-if="dialogState=='CONFIRM'">
- <span flex></span>
- <md-button type="button" ng-click="back()">Cancel</md-button>
- <md-button type="button" ng-click="confirmed()">OK</md-button>
- </md-dialog-actions>
-</md-dialog>