]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/node/ServiceView.js
1 Ext
.define('PVE.node.ServiceView', {
2 extend
: 'Ext.grid.GridPanel',
4 alias
: ['widget.pveNodeServiceView'],
6 onlineHelp
: 'pve_service_daemons',
8 initComponent : function() {
11 var nodename
= me
.pveSelNode
.data
.node
;
13 throw "no node name specified";
16 var rstore
= Ext
.create('PVE.data.UpdateStore', {
18 storeid
: 'pve-services' + nodename
,
19 model
: 'pve-services',
22 url
: "/api2/json/nodes/" + nodename
+ "/services"
26 var store
= Ext
.create('PVE.data.DiffStore', {
28 sortAfterUpdate
: true,
37 var service_cmd = function(cmd
) {
38 var sm
= me
.getSelectionModel();
39 var rec
= sm
.getSelection()[0];
40 PVE
.Utils
.API2Request({
41 url
: "/nodes/" + nodename
+ "/services/" + rec
.data
.service
+ "/" + cmd
,
43 failure: function(response
, opts
) {
44 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
47 success: function(response
, opts
) {
49 var upid
= response
.result
.data
;
51 var win
= Ext
.create('PVE.window.TaskProgress', {
59 var start_btn
= new Ext
.Button({
60 text
: gettext('Start'),
67 var stop_btn
= new Ext
.Button({
68 text
: gettext('Stop'),
75 var restart_btn
= new Ext
.Button({
76 text
: gettext('Restart'),
79 service_cmd("restart");
83 var set_button_status = function() {
84 var sm
= me
.getSelectionModel();
85 var rec
= sm
.getSelection()[0];
90 restart_btn
.disable();
93 var service
= rec
.data
.service
;
94 var state
= rec
.data
.state
;
95 if (service
== 'pveproxy' ||
96 service
== 'pvecluster' ||
97 service
== 'pvedaemon') {
98 if (state
== 'running') {
100 restart_btn
.enable();
103 restart_btn
.disable();
107 if (state
== 'running') {
109 restart_btn
.enable();
113 restart_btn
.disable();
119 me
.mon(store
, 'refresh', set_button_status
);
121 PVE
.Utils
.monStoreErrors(me
, rstore
);
126 tbar
: [ start_btn
, stop_btn
, restart_btn
],
129 header
: gettext('Name'),
135 header
: gettext('Status'),
141 header
: gettext('Description'),
142 renderer
: Ext
.String
.htmlEncode
,
148 selectionchange
: set_button_status
,
149 activate
: rstore
.startUpdate
,
150 destroy
: rstore
.stopUpdate
158 Ext
.define('pve-services', {
159 extend
: 'Ext.data.Model',
160 fields
: [ 'service', 'name', 'desc', 'state' ],
161 idProperty
: 'service'