]>
git.proxmox.com Git - pve-manager.git/blob - www/manager6/node/Subscription.js
fdcf84bc60547f995bb3b4e8c4d18ca1ddcc092a
1 Ext
.define('PVE.node.SubscriptionKeyEdit', {
2 extend
: 'Proxmox.window.Edit',
4 title
: gettext('Upload Subscription Key'),
11 fieldLabel
: gettext('Subscription Key'),
15 initComponent: function() {
24 Ext
.define('PVE.node.Subscription', {
25 extend
: 'Proxmox.grid.ObjectGrid',
27 alias
: ['widget.pveNodeSubscription'],
29 onlineHelp
: 'getting_help',
32 enableTextSelection
: true,
35 showReport: function() {
38 var getReportFileName = function() {
39 var now
= Ext
.Date
.format(new Date(), 'D-d-F-Y-G-i');
40 return `${me.nodename}-pve-report-${now}.txt`;
43 var view
= Ext
.createWidget('component', {
44 itemId
: 'system-report-view',
48 'font-family': 'monospace',
53 var reportWindow
= Ext
.create('Ext.window.Window', {
54 title
: gettext('System Report'),
62 text
: gettext('Download'),
64 var fileContent
= Ext
.String
.htmlDecode(reportWindow
.getComponent('system-report-view').html
);
65 var fileName
= getReportFileName();
68 if (window
.navigator
.msSaveOrOpenBlob
) {
69 navigator
.msSaveOrOpenBlob(new Blob([fileContent
]), fileName
);
71 var element
= document
.createElement('a');
72 element
.setAttribute('href', 'data:text/plain;charset=utf-8,' +
73 encodeURIComponent(fileContent
));
74 element
.setAttribute('download', fileName
);
75 element
.style
.display
= 'none';
76 document
.body
.appendChild(element
);
78 document
.body
.removeChild(element
);
86 Proxmox
.Utils
.API2Request({
87 url
: '/api2/extjs/nodes/' + me
.nodename
+ '/report',
90 failure: function(response
) {
91 Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
);
93 success: function(response
) {
94 var report
= Ext
.htmlEncode(response
.result
.data
);
101 initComponent: function() {
105 throw "no node name specified";
110 header
: gettext('Type'),
113 header
: gettext('Subscription Key'),
116 header
: gettext('Status'),
118 let message
= me
.getObjectValue('message');
119 return message
? `${v}: ${message}` : v
;
126 header
: gettext('Server ID'),
129 header
: gettext('Sockets'),
132 header
: gettext('Last checked'),
133 renderer
: Proxmox
.Utils
.render_timestamp
,
136 header
: gettext('Next due date'),
139 header
: gettext('Signed/Offline'),
140 renderer
: v
=> v
? gettext('Yes') : gettext('No'),
145 url
: `/api2/json/nodes/${me.nodename}/subscription`,
149 text
: gettext('Upload Subscription Key'),
150 handler
: () => Ext
.create('PVE.node.SubscriptionKeyEdit', {
152 url
: `/api2/extjs/nodes/${me.nodename}/subscription`,
154 destroy
: () => me
.rstore
.load(),
159 text
: gettext('Check'),
160 handler
: () => Proxmox
.Utils
.API2Request({
161 params
: { force
: 1 },
162 url
: `/nodes/${me.nodename}/subscription`,
165 failure
: response
=> Ext
.Msg
.alert(gettext('Error'), response
.htmlStatus
),
166 callback
: () => me
.rstore
.load(),
170 text
: gettext('Remove Subscription'),
171 xtype
: 'proxmoxStdRemoveButton',
172 confirmMsg
: gettext('Are you sure you want to remove the subscription key?'),
173 baseurl
: `/nodes/${me.nodename}/subscription`,
176 callback
: () => me
.rstore
.load(),
180 text
: gettext('System Report'),
181 handler: function() {
182 Proxmox
.Utils
.checked_command(function() { me
.showReport(); });
188 activate
: () => me
.rstore
.load(),