]>
git.proxmox.com Git - pve-manager.git/blob - www/new/node/ServiceView.js
1 Ext
.define('PVE.node.ServiceView', {
2 extend
: 'Ext.grid.GridPanel',
4 alias
: ['widget.pveNodeServiceView'],
6 initComponent : function() {
9 var nodename
= me
.pveSelNode
.data
.node
;
11 throw "no node name specified";
13 var rstore
= Ext
.create('PVE.data.UpdateStore', {
15 storeid
: 'pve-services',
16 model
: Ext
.define('pve-services', {
17 extend
: 'Ext.data.Model',
18 fields
: [ 'service', 'name', 'desc', 'state' ],
19 idProperty
: 'service',
22 url
: "/api2/json/nodes/" + nodename
+ "/services",
27 var store
= Ext
.create('PVE.data.DiffStore', { rstore
: rstore
});
29 var service_cmd = function(cmd
) {
30 var sm
= me
.getSelectionModel();
31 var rec
= sm
.getLastSelected();
32 PVE
.Utils
.API2Request({
33 url
: "/nodes/" + nodename
+ "/services/" + rec
.data
.service
,
34 params
: { command
: cmd
},
36 failure: function(response
, opts
) {
37 Ext
.Msg
.alert('Error', response
.htmlStatus
);
40 success: function(response
, opts
) {
46 var start_btn
= new Ext
.Button({
54 var stop_btn
= new Ext
.Button({
62 var restart_btn
= new Ext
.Button({
66 service_cmd("restart");
70 var set_button_status = function() {
71 var sm
= me
.getSelectionModel();
72 var rec
= sm
.getLastSelected();
77 restart_btn
.disable();
80 var service
= rec
.data
.service
;
81 var state
= rec
.data
.state
;
82 if (service
== 'apache' ||
83 service
== 'pvecluster' ||
84 service
== 'pvedaemon') {
85 if (state
== 'running') {
90 restart_btn
.disable();
94 if (state
== 'running') {
100 restart_btn
.disable();
106 me
.mon(store
, 'datachanged', set_button_status
);
108 me
.mon(rstore
, 'load', function(s
, records
, success
) {
110 me
.setLoading("Data load error");
113 me
.setLoading(false);
120 tbar
: [ start_btn
, stop_btn
, restart_btn
],
135 header
: 'Description',
141 selectionchange
: set_button_status
,
142 show
: rstore
.startUpdate
,
143 hide
: rstore
.stopUpdate
,
144 destroy
: rstore
.stopUpdate
,