1 <div ng-controller="epgCtrl" ng-init="init()">
2 <h2 class="text-center">Endpoint groups</h2>
4 <div ng-include src="view_path+'parts/crud.tpl.html'"></div>
6 <section class="formWrapper clearfix" ng-show="internalView.epg">
7 <form name="epgForm" novalidate="novalidate">
8 <i class="icon-remove align-right" ng-click="close()"></i>
10 <div class="rowWrapper">
11 <label class="block basicLabel">Id:</label>
12 <input class="form-control" type="text" ng-model="newEpgObj.id" ng-disabled="internalView.edit !== 'add'"/>
15 <div class="rowWrapper" ng-hide="internalView.edit === 'view' && !newEpgObj['name']">
16 <label class="block basicLabel">Name:
17 <i class="icon-exclamation-sign red" tooltip="{{epgForm.name.$error.required ? 'Required field' : epgForm.name.$error.pattern ? 'Value must start with letter followed by letters and digits without space' : ''}}" ng-show="epgForm.name.$error.required || epgForm.name.$error.pattern"></i>
19 <input class="form-control" type="text" name="name" ng-model="newEpgObj.name" ng-required="true" ng-disabled="internalView.edit === 'view'" ng-pattern="/^[a-zA-Z]([a-zA-Z0-9\-_.])*$/"/>
22 <div class="rowWrapper" ng-hide="internalView.edit === 'view' && !newEpgObj['description']">
23 <label class="block basicLabel">Description:</label>
24 <input class="form-control" type="text" ng-model="newEpgObj.description" ng-disabled="internalView.edit === 'view'"/>
27 <div class="rowWrapper" ng-hide="internalView.edit === 'view' && !newEpgObj['intra-group-policy']">
28 <label class="block basicLabel">Intra group policy:</label>
29 <select class="form-control" ng-model="newEpgObj['intra-group-policy']" ng-options="opt for opt in igpOpts" ng-disabled="internalView.edit === 'view'">
34 <div class="rowWrapper" ng-hide="internalView.edit === 'view' && !newEpgObj['network-domain']">
35 <label class="block basicLabel">Network domain:
36 <i class="icon-exclamation-sign red" tooltip="Invalid pattern" ng-show="epgForm.netDomain.$error.pattern"></i>
38 <input class="form-control" type="text" ng-model="newEpgObj['network-domain']" name="netDomain" ng-pattern="/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/" ng-disabled="internalView.edit === 'view'"/>
41 <div class="rowWrapper" ng-hide="internalView.edit === 'view' && !newEpgObj['parent']">
42 <label class="block basicLabel">Parent:</label>
43 <select class="form-control" ng-model="newEpgObj.parent" ng-options="d.id as getDisplayLabel(d, displayLabel) for d in list">
48 <button class="btn btn-primary col-md-12" ng-click="save()" ng-hide="internalView.edit === 'view'">Save</button>
52 <section class="formWrapper clearfix" ng-show="selectedEpg">
53 <div ng-include src="view_path+'cns.tpl.html'"></div>
56 <section class="formWrapper clearfix" ng-show="selectedEpg">
57 <div ng-include src="view_path+'pns.tpl.html'"></div>
60 <button class="btn btn-primary bottom-buttons full-width wizard-button" ng-click="showWizard('accessModelWizard')"><i class="icon-magic"></i>Access Model Wizard</button>
61 <button class="btn btn-primary col-md-12 bottom-buttons home" ng-click="toggleExpandedMM('main')">Home</button>
62 <button class="btn btn-primary col-md-12 bottom-buttons back" ng-click="setViewExpand('policyRendererView', 'basic', true); setBreadcrumb('l3', null, false);">Back</button>