mirror of https://github.com/rancher/ui.git
64 lines
1.6 KiB
JavaScript
64 lines
1.6 KiB
JavaScript
import { set, get, computed } from '@ember/object';
|
|
import { inject as service } from '@ember/service';
|
|
import Controller from '@ember/controller';
|
|
|
|
const HEADERS = [
|
|
{
|
|
name: 'state',
|
|
sort: ['sortState', 'displayName'],
|
|
searchField: 'displayState',
|
|
translationKey: 'generic.state',
|
|
width: 120
|
|
},
|
|
{
|
|
name: 'name',
|
|
sort: ['displayName'],
|
|
searchField: 'displayName',
|
|
translationKey: 'generic.name',
|
|
|
|
},
|
|
];
|
|
|
|
export default Controller.extend({
|
|
growl: service(),
|
|
settings: service(),
|
|
globalStore: service(),
|
|
modalService: service('modal'),
|
|
headers: HEADERS,
|
|
|
|
refreshing: false,
|
|
|
|
actions: {
|
|
addNewDriver() {
|
|
let newDriver = get(this, 'globalStore').createRecord({
|
|
type: 'kontainerDriver',
|
|
name: null,
|
|
description: null,
|
|
checksum: null,
|
|
url: null,
|
|
active: true,
|
|
});
|
|
|
|
this.get('modalService').toggleModal('modal-edit-driver', newDriver);
|
|
},
|
|
|
|
refreshMetadata() {
|
|
set(this, 'refreshing', true)
|
|
get(this, 'globalStore').rawRequest({
|
|
url: '/v3/kontainerdrivers?action=refresh',
|
|
method: 'POST',
|
|
}).catch((error) => {
|
|
get(this, 'growl').fromError(undefined, error.body.message);
|
|
}).finally(() => set(this, 'refreshing', false));
|
|
},
|
|
},
|
|
|
|
rows: computed('model.drivers.@each.{externalId,id,state,version}', 'model.drivers.content', function() {
|
|
// possibly add some search here
|
|
let drivers = get(this, 'model.drivers.content');
|
|
|
|
return drivers;
|
|
}),
|
|
|
|
});
|