[pve-devel] [PATCH manager 1/2] ui: tasks: add actioncolumn to open task

Aaron Lauterer a.lauterer at proxmox.com
Mon Nov 11 16:43:12 CET 2024



On  2024-11-11  16:12, Dominik Csapak wrote:
> one comment inline:
> 
> On 11/11/24 15:45, Aaron Lauterer wrote:
>> Many (new) users don't realize that the task view can be used to open
>> the task details.
>> By adding a small action column we can have a button to open the task as
>> well, next to double clicking it.
>>
>> Signed-off-by: Aaron Lauterer <a.lauterer at proxmox.com>
>> ---
>> Since the record is fetched quite differently than in the regular
>> handler, and we don't necessarily have a selection on the right row at
>> this point, I opted to create the window right in the dedicated handler.
>>
>> The other sensible approach would be to factor out the window opening
>> from `run_task_viewer` into a new function. But since that function
>> would just open the window I decided against it.
>>
>> Not sure if we want the above explanation in the commit msg. If so, feel
>> free to put it there when applying the patch.
>>
>> Regarding the icon: I went with the chevron-right as this is what we use
>> in the UI of the backup server. Alternatively the `fa-eye` might also be
>> fitting.
>>
>>   www/manager6/dc/Tasks.js | 20 ++++++++++++++++++++
>>   1 file changed, 20 insertions(+)
>>
>> diff --git a/www/manager6/dc/Tasks.js b/www/manager6/dc/Tasks.js
>> index 2001bf76..43d0dace 100644
>> --- a/www/manager6/dc/Tasks.js
>> +++ b/www/manager6/dc/Tasks.js
>> @@ -127,6 +127,26 @@ Ext.define('PVE.dc.Tasks', {
>>               return Proxmox.Utils.format_task_status(value);
>>               },
>>           },
>> +        {
>> +            xtype: 'actioncolumn',
>> +            width: 30,
>> +            align: 'center',
>> +            tooltip: gettext('Actions'),
>> +            items: [
>> +            {
>> +                iconCls: 'fa fa-chevron-right',
>> +                tooltip: gettext('Show Task'),
>> +                handler: function(grid, rowIndex, colIndex) {
>> +                    let rec = grid.getStore().getAt(rowIndex);
>> +                    Ext.create('Proxmox.window.TaskViewer', {
>> +                    autoShow: true,
>> +                    upid: rec.data.upid,
>> +                    endtime: rec.data.endtime,
>> +                    });
> 
> we should probably use the record that is given as (6th) parameter
> (see https://docs.sencha.com/extjs/7.0.0/classic/ 
> Ext.grid.column.Action.html#cfg-handler)
> 
> since i'm not sure if filtering/sorting messes with the rowIndex vs 
> store index,
> also it's one line less code

good catch. I'll send a v2.

> 
>> +                },
>> +            },
>> +            ],
>> +        },
>>           ],
>>           listeners: {
>>           itemdblclick: run_task_viewer,
> 
> 





More information about the pve-devel mailing list