| <div class="container"> |
| |
| <h1>WS-BPEL Process Models</h1> |
| |
| <div class="panel panel-default"> |
| <!-- Default panel contents --> |
| |
| <table class="table table-condensed"> |
| <thead> |
| <tr> |
| <th></th> |
| <th>Process name</th> |
| <th>Status</th> |
| <th>Active</th> |
| <th tooltip-append-to-body="true" tooltip="Completed OK">Completed</th> |
| <th tooltip-append-to-body="true" tooltip="Completed with fault">Failed</th> |
| <th tooltip-append-to-body="true" tooltip="Suspended via a breakpoint or user intervention">Suspended</th> |
| <th>Terminated</th> |
| <th>Action</th> |
| </tr> |
| </thead> |
| <tbody ng-repeat="package in packages"> |
| <tr ng-if="!packages.length"> |
| <td colspan="10" ng-if="!packages.length"> |
| <h4 class="text-center">No instances found.</h4> |
| </td> |
| </tr> |
| <tr class="active"> |
| <td colspan="8">{{package.name}} <span class="label label-info" ng-if="package.version">Version {{package.version}}</span></td> |
| <td><div ng-controller="ProcessActionsController"> |
| <button type="button" class="btn btn-danger btn-xs" ng-really-message="Are you sure?" ng-really-click="undeployPackage(package.packageId)"> |
| <span class="glyphicon glyphicon-remove"></span> Undeploy |
| </button></div> |
| </td> |
| </tr> |
| <tr ng-repeat="process in package.processes"> |
| <td></td> |
| <td data-toggle="tooltip" title="{{process.nameFull}}"><a href="#/processes/{{process.pid}}">{{process.nameShort}}</a></td> |
| <td><span class="label ng-class: 'label-process-' + (process.status | lowercase);">{{process.status}}</span></td> |
| <td>{{process.stats.active}} <span ng-if="process.stats.inrecovery > 0" class="badge" tooltip="Instances waiting for manual recovery"><i class="fa fa-exclamation-circle"></i> {{process.stats.inrecovery}}</span></td> |
| <td>{{process.stats.completed}}</td> |
| <td>{{process.stats.failed}}</td> |
| <td>{{process.stats.suspended}}</td> |
| <td>{{process.stats.terminated}}</td> |
| <td><div ng-include="'app/process/processactionbuttons.html'"></div></td> |
| </tr> |
| </tbody> |
| </table> |
| </div> |
| |
| <div class="panel panel-default"> |
| <div class="panel-heading"> |
| <h3 class="panel-title">Upload a process model</h3> |
| </div> |
| <div class="panel-body"> |
| <form name="uploadForm"> |
| <div ng-class="{'has-error': uploadForm.$touched && !uploadForm.packageName.$valid}" class="form-group"> |
| <label for="packageName">Package Name</label> |
| <input type="text" class="form-control" id="packageName" name="packageName" ng-model="upload.packageName" placeholder="Package Name" required> |
| </div> |
| <div ng-class="{'has-error': uploadForm.touched && !uploadForm.file.$valid}"class="form-group"> |
| <label for="file">Process Package</label> |
| <div class="input-group"> |
| <span class="input-group-btn"> |
| <span class="btn btn-default btn-file"> |
| Browse… <input type="file" name="file" id="file" ng-model="upload.file" accept="application/zip" base-sixty-four-input required> |
| </span> |
| </span> |
| <input type="text" class="form-control" ng-model="upload.file.filename" readonly> |
| </div> |
| <span class="help-block"> |
| Select ODE deployment packages (.zip files containing all process artifacts at the root level) |
| </span> |
| </div> |
| <button type="submit" class="btn btn-primary" ng-click="uploadPackage()" ng-disabled="!uploadForm.$valid">Upload</button> |
| </div> |
| </form> |
| </div> |
| </div> |