SFC topology
[groupbasedpolicy.git] / groupbasedpolicy-ui / module / src / main / resources / gbp / resolved-policy / rule-sidepanel.tpl.html
index c4ce92ede940fa1f845c888ed9ec690992f10036..93ff7186e2f6f523db200bba294aaecb70703730 100644 (file)
-<md-content>
-       breadcrumb
-       <md-divider></md-divider>
-       <md-subheader class="md-primary">Rule info</md-subheader>
+<md-content flex>
        <div layout="row" class="layout-padding-lr15 layout-row">
-           <span flex="50" class="flex-50"><strong>Rule name</strong></span>
-           <span flex="" class="ng-binding flex">{{sidePanelObject.name}}</span>
+               <ul class="breadcrumbs">
+                       <li class="breadcrumb" ng-click="deselectContract()" role="button">Contracts</li>
+                       <li class="breadcrumb"><i class="material-icons">keyboard_arrow_right</i></li>
+                       <li class="breadcrumb" ng-click="openSidePanelTpl('contract')" role="button">{{selectedNode['contract-id']}}</li>
+                       <li class="breadcrumb"><i class="material-icons">keyboard_arrow_right</i></li>
+                       <li class="breadcrumb" ng-click="openSidePanelTpl('subject')" role="button">{{subjectIndex}}</li>
+                       <li class="breadcrumb"><i class="material-icons">keyboard_arrow_right</i></li>
+                       <li class="breadcrumb">{{selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].name}}</li>
+               </ul>
        </div>
-       <div layout="row" class="layout-padding-lr15 layout-row">
-           <span flex="50" class="flex-50"><strong>Order</strong></span>
-           <span flex="" class="ng-binding flex">{{sidePanelObject.order}}</span>
+       <md-divider></md-divider>
+       <md-divider></md-divider>
+       <md-subheader class="md-primary">Rule info</md-subheader>
+       <div layout="row" class="layout-padding-lr15 layout-row layout-padding-b15">
+           <span flex="50" class="flex-50"><strong>Resolved rule name</strong></span>
+           <span flex="" class="ng-binding flex">{{selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].name}}</span>
        </div>
        <md-divider></md-divider>
-       <md-subheader class="md-primary">Action refs ({{sidePanelObject['action-ref'].length}})</md-subheader>
-    <md-list>
-       <ng-repeat ng-repeat="ref in sidePanelObject['action-ref']">
-               <md-list-item ng-click="toggleExpanded(ref)">
-                       {{ref.name}}
-                       <md-content ng-show="ref.expanded" class="md-whiteframe-2dp ng-scope flex layout-margin">
-                               <div layout="row" class="layout-row">
-                               <span flex="50" class="flex-50"><strong>Name</strong></span>
-                                       <span flex class="ng-binding flex">{{ref.name}}</span>
-                               </div>
-                               <div layout="row" class="layout-row">
-                               <span flex="50" class="flex-50"><strong>Order</strong></span>
-                                       <span flex class="ng-binding flex">{{ref.order}}</span>
-                               </div>
-                       </md-content>
-               </md-list-item>
-       </ng-repeat>
+       <md-subheader class="md-primary">
+               <div layout="row" class="layout-row">
+                       <span>Actions ({{selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].action.length}})</span>
+                       <span ng-if="selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].action.length">
+               </span>
+       </div>
+       </md-subheader>
+    <md-list class="expander">
+               <md-list-item class="md-3-line" layout="row"
+                                         ng-repeat="action in selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].action">
+                       <div layout-padding flex="10">
+                               <h3>{{action.order}}</h3>
+                               <md-tooltip md-direction="right">
+                                       Order
+                               </md-tooltip>
+                       </div>
+                       <div class="md-list-item-text" flex>
+                               <h3>{{action.name}}</h3>
+                               <p>Action definition ID: {{action['action-definition-id']}} </p>
+                               <p>Name: {{action.name}} </p>
+                       </div>
+                       <div ng-if="action['action-definition-id'] === 'Action-Chain'" flex="10">
+                               <md-button class="md-icon-button" ng-click="openSfcDialog(action.name)">
+                                       <md-icon>visibility</md-icon>
+                               </md-button>
+                       </div>
+               </md-list-item>
     </md-list>
        <md-divider></md-divider>
-       <md-subheader class="md-primary">Classifier refs ({{sidePanelObject['classifier-ref'].length}})</md-subheader>
-    <md-list>
-       <ng-repeat ng-repeat="ref in sidePanelObject['classifier-ref']">
-               <md-list-item ng-click="toggleExpanded(ref)">
-                       {{ref.name}}
-                       <md-content ng-show="ref.expanded" class="md-whiteframe-2dp ng-scope flex layout-margin">
-                               <div layout="row" class="layout-row">
-                               <span flex="50" class="flex-50"><strong>Instance name</strong></span>
-                                       <span flex class="ng-binding flex">{{ref['instance-name']}}</span>
-                               </div>
-                               <div layout="row" class="layout-row">
-                               <span flex="50" class="flex-50"><strong>Connection tracking</strong></span>
-                                       <span flex class="ng-binding flex">{{ref['connection-tracking']}}</span>
-                               </div>
-                               <div layout="row" class="layout-row">
-                               <span flex="50" class="flex-50"><strong>Direction</strong></span>
-                                       <span flex class="ng-binding flex">{{ref.direction}}</span>
-                               </div>
+       <md-subheader class="md-primary">
+               <div layout="row" class="layout-row">
+                       <span>Classifiers ({{selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].classifier.length}})</span>
+                       <span class="flex" flex></span>
+                       <span ng-if="selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].classifier.length">
+                               <md-button class="md-button md-primary md-button md-ink-ripple expand-button" type="button" ng-click="expandAll(selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].classifier)" aria-label="Expand all">
+                           <i class="fa fa-expand ng-scope"></i>
+                               <div class="md-ripple-container"></div>
+                               <md-tooltip md-direction="bottom">
+                                       Expand all
+                               </md-tooltip>
+                       </md-button>
+                       <md-button class="md-button md-primary md-button md-ink-ripple expand-button" type="button" ng-click="collapseAll(selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].classifier)" aria-label="Collapse all">
+                                       <i class="fa fa-compress ng-scope"></i>
+                           <div class="md-ripple-container"></div>
+                               <md-tooltip md-direction="bottom">
+                                       Collapse all
+                               </md-tooltip>
+                       </md-button>
+               </span>
+       </div>
+       </md-subheader>
+    <md-list class="expander">
+       <ng-repeat ng-repeat="classifier in selectedNode.subjects[subjectIndex]['resolved-rule'][0][ruleIndex].classifier">
+               <md-list-item ng-click="toggleExpanded(classifier)">
+                       {{classifier.name}}
+                       <md-content ng-show="classifier.expanded" class="md-whiteframe-2dp ng-scope layout-margin">
+                               <div flex>
+                                       <div layout="row" class="layout-row">
+                                       <span flex="50" class="flex-50"><strong>Classifier definition ID</strong></span>
+                                               <span flex class="ng-binding flex">{{classifier['classifier-definition-id']}}</span>
+                                               </div>
+                                       <div layout="row" class="layout-row">
+                                       <span flex="50" class="flex-50"><strong>Name</strong></span>
+                                               <span flex class="ng-binding flex">{{classifier.name}}</span>
+                                               </div>
+                                       <div layout="row" class="layout-row">
+                                       <span flex="50" class="flex-50"><strong>Connection tracking</strong></span>
+                                               <span flex class="ng-binding flex">{{classifier['connection-tracking']}}</span>
+                                               </div>
+                                       <div layout="row" class="layout-row">
+                                       <span flex="50" class="flex-50"><strong>Direction</strong></span>
+                                               <span flex class="ng-binding flex">{{classifier.direction}}</span>
+                                               </div>
+                                       <md-subheader class="md-primary">Parameters ({{classifier['parameter-value'].length}})</md-subheader>
+                                       <div layout="row" class="layout-row" ng-repeat="param in classifier['parameter-value']">
+                                       <span flex="50" class="flex-50"><strong>{{param.name}}</strong></span>
+                                               <span flex class="ng-binding flex">{{param['int-value']}}</span>
+                                               </div>
+                                       </div>
                        </md-content>
                </md-list-item>
        </ng-repeat>
     </md-list>
-</md-content>
\ No newline at end of file
+</md-content>