]> git.proxmox.com Git - proxmox-widget-toolkit.git/blob - node/TimeView.js
use eslint and execute as check target
[proxmox-widget-toolkit.git] / node / TimeView.js
1 Ext.define('Proxmox.node.TimeView', {
2 extend: 'Proxmox.grid.ObjectGrid',
3 alias: ['widget.proxmoxNodeTimeView'],
4
5 initComponent: function() {
6 let me = this;
7
8 if (!me.nodename) {
9 throw "no node name specified";
10 }
11
12 let tzoffset = new Date().getTimezoneOffset()*60000;
13 let renderlocaltime = function(value) {
14 let servertime = new Date((value * 1000) + tzoffset);
15 return Ext.Date.format(servertime, 'Y-m-d H:i:s');
16 };
17
18 let run_editor = function() {
19 let win = Ext.create('Proxmox.node.TimeEdit', {
20 nodename: me.nodename,
21 });
22 win.show();
23 };
24
25 Ext.apply(me, {
26 url: "/api2/json/nodes/" + me.nodename + "/time",
27 cwidth1: 150,
28 interval: 1000,
29 run_editor: run_editor,
30 rows: {
31 timezone: {
32 header: gettext('Time zone'),
33 required: true,
34 },
35 localtime: {
36 header: gettext('Server time'),
37 required: true,
38 renderer: renderlocaltime,
39 },
40 },
41 tbar: [
42 {
43 text: gettext("Edit"),
44 handler: run_editor,
45 },
46 ],
47 listeners: {
48 itemdblclick: run_editor,
49 },
50 });
51
52 me.callParent();
53
54 me.on('activate', me.rstore.startUpdate);
55 me.on('deactivate', me.rstore.stopUpdate);
56 me.on('destroy', me.rstore.stopUpdate);
57 },
58 });