mirror of
				https://git.proxmox.com/git/proxmox-backup
				synced 2025-11-02 15:18:42 +00:00 
			
		
		
		
	orient on PVE, the ones for Updates, ServerStatus, should by self-explanatory. Services is in PVE named "System", but reusing that cogs icon makes similar sense here too, and seems in line with search result of a "service icons" query. Syslog is the same as our general log icon, but as we also use this normally for worker task logs and that is present here too, I changed the worker task log icon to the alternative list, which resembles a task view window - so IMO even better than before. Sync that change also into the always present tasks button at the top right. Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
		
			
				
	
	
		
			93 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
Ext.define('PBS.TaskButton', {
 | 
						|
    extend: 'Ext.button.Button',
 | 
						|
    alias: 'widget.pbsTaskButton',
 | 
						|
 | 
						|
    config: {
 | 
						|
	badgeText: '0',
 | 
						|
	badgeCls: '',
 | 
						|
    },
 | 
						|
 | 
						|
    iconCls: 'fa fa-list-alt',
 | 
						|
    userCls: 'pmx-has-badge',
 | 
						|
    text: gettext('Tasks'),
 | 
						|
 | 
						|
    setText: function(value) {
 | 
						|
	let me = this;
 | 
						|
	me.realText = value;
 | 
						|
	let badgeText = me.getBadgeText();
 | 
						|
	let badgeCls = me.getBadgeCls();
 | 
						|
	let text = `${value} <span class="pmx-button-badge ${badgeCls}">${badgeText}</span>`;
 | 
						|
	return me.callParent([text]);
 | 
						|
    },
 | 
						|
 | 
						|
    getText: function() {
 | 
						|
	let me = this;
 | 
						|
	return me.realText;
 | 
						|
    },
 | 
						|
 | 
						|
    setBadgeText: function(value) {
 | 
						|
	let me = this;
 | 
						|
	me.badgeText = value.toString();
 | 
						|
	return me.setText(me.getText());
 | 
						|
    },
 | 
						|
 | 
						|
    setBadgeCls: function(value) {
 | 
						|
	let me = this;
 | 
						|
	let res = me.callParent([value]);
 | 
						|
	let badgeText = me.getBadgeText();
 | 
						|
	me.setBadgeText(badgeText);
 | 
						|
	return res;
 | 
						|
    },
 | 
						|
 | 
						|
    handler: function() {
 | 
						|
	let me = this;
 | 
						|
	if (me.grid.isVisible()) {
 | 
						|
	    me.grid.setVisible(false);
 | 
						|
	} else {
 | 
						|
	    me.grid.showBy(me, 'tr-br');
 | 
						|
	}
 | 
						|
    },
 | 
						|
 | 
						|
    initComponent: function() {
 | 
						|
	let me = this;
 | 
						|
 | 
						|
	me.grid = Ext.create({
 | 
						|
	    xtype: 'pbsRunningTasks',
 | 
						|
	    title: '',
 | 
						|
	    hideHeaders: false,
 | 
						|
	    floating: true,
 | 
						|
 | 
						|
	    width: 600,
 | 
						|
 | 
						|
	    bbar: [
 | 
						|
		'->',
 | 
						|
		{
 | 
						|
		    xtype: 'button',
 | 
						|
		    text: gettext('Show All Tasks'),
 | 
						|
		    handler: function() {
 | 
						|
			var mainview = me.up('mainview');
 | 
						|
			mainview.getController().redirectTo('pbsServerAdministration:tasks');
 | 
						|
			me.grid.hide();
 | 
						|
		    },
 | 
						|
		},
 | 
						|
	    ],
 | 
						|
 | 
						|
	    listeners: {
 | 
						|
		'taskopened': function() {
 | 
						|
		    me.grid.hide();
 | 
						|
		},
 | 
						|
	    },
 | 
						|
	});
 | 
						|
	me.callParent();
 | 
						|
	me.mon(me.grid.getStore().rstore, 'load', function(store, records, success) {
 | 
						|
	    if (!success) return;
 | 
						|
 | 
						|
	    let count = records.length;
 | 
						|
	    let text = count > 99 ? '99+' : count.toString();
 | 
						|
	    let cls = count > 0 ? 'active': '';
 | 
						|
	    me.setBadgeText(text);
 | 
						|
	    me.setBadgeCls(cls);
 | 
						|
	});
 | 
						|
    },
 | 
						|
});
 |