Skip to content

Fixes #29233: Add recent activity table in global parameters details - #7352

Open
P4uline wants to merge 4 commits into
Normation:branches/rudder/9.2from
P4uline:ust_29233/add_recent_activity_tab_in_global_parameters_detail_page
Open

Fixes #29233: Add recent activity table in global parameters details#7352
P4uline wants to merge 4 commits into
Normation:branches/rudder/9.2from
P4uline:ust_29233/add_recent_activity_tab_in_global_parameters_detail_page

Conversation

@P4uline

@P4uline P4uline commented Jul 29, 2026

Copy link
Copy Markdown
Contributor

@P4uline

P4uline commented Jul 29, 2026

Copy link
Copy Markdown
Contributor Author

PR updated with a new commit

@P4uline

P4uline commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

PR rebased

@P4uline
P4uline force-pushed the ust_29233/add_recent_activity_tab_in_global_parameters_detail_page branch from f2869be to 73a8588 Compare July 30, 2026 08:13
@P4uline
P4uline force-pushed the ust_29233/add_recent_activity_tab_in_global_parameters_detail_page branch from 73a8588 to d84551d Compare July 30, 2026 08:16
…etails

Fixes #29233: Add recent activity table in global parameters details
@P4uline

P4uline commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

PR updated with a new commit

…eters details

Fixes #29233: Add recent activity table in global parameters details
@P4uline

P4uline commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

PR updated with a new commit

…l parameters details

Fixes #29233: Add recent activity table in global parameters details
@P4uline

P4uline commented Jul 30, 2026

Copy link
Copy Markdown
Contributor Author

PR updated with a new commit

@P4uline
P4uline marked this pull request as ready for review July 31, 2026 12:48

@skaerg skaerg left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

eventually (not in this PR of course), the entire global properties table to be migrated to Elm, so that usages of datatable can be removed from this page as well.

we could start by also migrating the rest of the content of the dropdown (i.e. the description field) so that it can be part of the same Elm app as the recent activity table, and, eventually, the entire table of global properties could be migrated to Elm.

we cannot migrate the entire global properties table right now with the current Table module of the Elm library, because some key features of the global properties table would be missing :

  • each row, when clicked, opens a new pane that contains the description and recent activity table of the given global property. the row can be clicked again to collapse the pane.
  • when the details pane is open, there is a small downwards triangle on the bottom of the row :
Image
  • the current global properties table allows the user to only display a certain number of entries (i.e. paging)
Image

do you see any other features that must be added to the Table module before the global properties table can be migrated to Elm @clarktsiory ?

};

function fnFormatActivity(id) {
// FIXME : add some CSS for activity table from elm app

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

indeed, i think the CSS should be modified : i think the table should have a border and empty space all around it in order to separate it from the rest

Image

did you have other ideas @P4uline ?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's acceptable that you modify it in another PR, that's a kind of iterative fix/improvement you can do in alpha

)}.row(this).child(fnFormatDetails(jsid), color + ' parametersDescription details').show();
)}.row(this);

const globalPropertyName = jTr.find('td.name').find('b').html();

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it would be nice to fetch the name of the property in a more robust way eventually.
fetching the name of the property in this way would not be necessary had the entire global properties table been contained in a single Elm app, but migrating it to Elm is not really feasible with the current state of the Rudder.Table module as it does not support many of the key features of the properties table.

in the meantime, do you see a cleaner way of fetching the property name @clarktsiory @RaphaelGauthier ?

@clarktsiory clarktsiory Aug 3, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I completely agree that it's not ideal to rely on potentially unstable CSS selectors (such as b) to find the name of the global property... The current td.name looks fine to me, but I'd prefer directly find('td.name').text() with further sanitization.

As for a cleaner way to do that, I don't know any other solution than CSS selectors at this level...

@clarktsiory

Copy link
Copy Markdown
Contributor

Global properties are indeed specific, and as you reported need some additional table features:

  • collapsible per-row content
  • pagination

There are also other tables that would need these in order to be migrated in Elm (for example change logs).

But the UI may also need to be revised: it has quite diverged from the node and group properties UI (which are the same Elm app). I'd favor consistency with other "properties UI" to plain migration of an "old UI".

So, I don't think we should prioritize having a "generic table", to having "consistent properties UI across webapp". This should be discussed with @RaphaelGauthier

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants