Merge branch 'develop' into feat2240-host-view

pull/2255/head
Chaim Lev-Ari 2018-09-30 09:12:01 +03:00
commit fabaae66c2
10 changed files with 48 additions and 6 deletions

View File

@ -72,6 +72,7 @@ function ($state, ContainerService, ModalService, Notifications, HttpRequestHelp
Notifications.success(successMessage, container.Names[0]);
})
.catch(function error(err) {
errorMessage = errorMessage + ':' + container.Names[0];
Notifications.error('Failure', err, errorMessage);
})
.finally(function final() {

View File

@ -0,0 +1,12 @@
angular.module('portainer.app').controller('EndpointItemController', [
function EndpointItemController() {
var ctrl = this;
ctrl.editEndpoint = editEndpoint;
function editEndpoint(event) {
event.stopPropagation();
ctrl.onEdit(ctrl.model.Id);
}
}
]);

View File

@ -21,8 +21,16 @@
</span>
</span>
<span class="small">
Group: {{ $ctrl.model.GroupName }}
<span>
<span class="small">
Group: {{ $ctrl.model.GroupName }}
</span>
<button
ng-if="$ctrl.isAdmin"
class="btn btn-link btn-xs"
ng-click="$ctrl.editEndpoint($event)"><i class="fa fa-pencil-alt"></i>
</button>
</span>
</div>

View File

@ -2,6 +2,9 @@ angular.module('portainer.app').component('endpointItem', {
templateUrl: 'app/portainer/components/endpoint-list/endpoint-item/endpointItem.html',
bindings: {
model: '<',
onSelect: '<'
}
onSelect: '<',
onEdit: '<',
isAdmin:'<'
},
controller: 'EndpointItemController'
});

View File

@ -11,6 +11,8 @@ angular.module('portainer.app').component('endpointList', {
endpoints: '<',
dashboardAction: '<',
snapshotAction: '<',
showSnapshotAction: '<'
showSnapshotAction: '<',
editAction: '<',
isAdmin:'<'
}
});

View File

@ -24,6 +24,8 @@
ng-repeat="endpoint in $ctrl.endpoints | filter:$ctrl.state.textFilter"
model="endpoint"
on-select="$ctrl.dashboardAction"
on-edit="$ctrl.editAction"
is-admin="$ctrl.isAdmin"
></endpoint-item>
<div ng-if="!$ctrl.endpoints" class="text-center text-muted">
Loading...

View File

@ -25,7 +25,7 @@ function TemplateCreateRequest(model) {
this.Image = model.Image;
this.Registry = model.Registry.URL;
this.Command = model.Command;
this.Network = model.Network;
this.Network = model.Network && model.Network.Name;
this.Privileged = model.Privileged;
this.Interactive = model.Interactive;
this.RestartPolicy = model.RestartPolicy;

View File

@ -44,6 +44,8 @@
dashboard-action="goToDashboard"
show-snapshot-action="!applicationState.application.authentication || isAdmin"
snapshot-action="triggerSnapshot"
edit-action="goToEdit"
is-admin="isAdmin"
></endpoint-list>
</div>
</div>

View File

@ -62,6 +62,12 @@ function ($q, $scope, $state, Authentication, EndpointService, EndpointHelper, G
});
}
$scope.goToEdit = goToEdit;
function goToEdit(id) {
$state.go('portainer.endpoints.endpoint', { id: id });
}
function initView() {
$scope.isAdmin = Authentication.getUserDetails().role === 1;

View File

@ -38,6 +38,12 @@ function ($q, $scope, $state, $transition$, TemplateService, TemplateHelper, Net
)
})
.then(function success(data) {
var template = data.template;
if (template.Network) {
template.Network = _.find(data.networks, function(o) { return o.Name === template.Network; });
} else {
template.Network = _.find(data.networks, function(o) { return o.Name === 'bridge'; });
}
$scope.categories = TemplateHelper.getUniqueCategories(data.templates);
$scope.template = data.template;
$scope.networks = data.networks;