Hi everyone,
I’m currently working on Loading... and in order to fix it properly I’d like to know what we want exactly in the notifications emails to display the hierarchy of pages.
So right now, as described in the ticket, the hierarchy of pages in notifications emails is displaying without taking into account common ancestors, outside of direct parents.
It means that if an email contains event for following pages: Space1.Page1, Space1.Page2, Space1.Page1.SubPage
The hierarchy will appear like this:
- Page1
--- SubPage
- Page2
No information is given in the table of contents displaying the hierarchy that Page1 and Page2 belongs to the same space.
Now, since @caubin was saying in the ticket it was a regression compared to the old WatchList notifications emails, I checked those emails. It appears that back then the mails were not displaying the full hierarchy, but it was using the dot notation of references.
So in my example it would have appeared like that:
- Space1.Page1
--- Space1.Page1.SubPage
- Space1.Page2
Advantage of that solution is that it allows a compact display, compared to a full hierarchy when it can become very long with a lot of nested spaces.
Now, another possibility would be to not use the dots notation, but display a hierarchy with holes when there’s more than XX levels of nested spaces. For example, if we say no more than 2 levels of nested spaces and we have changes in `xwiki:Foo.Space1.Other.Bar.Page1`, `xwiki:Foo.Space1.Other.Bar.Page2`, `xwiki:Bar.WebHome` the hierarchy could be displayed like this:
xwiki
- Foo
--- ...
------ Bar
-------- Page1
-------- Page2
- Bar
Here Space1 and Other subspaces are hidden, but the advantage is that it’s visually either to understand that the dot notation, without crowding too much the hierarchy.
So I think we have 4 possibilities to solve this:
- we don’t change anything, and we keep a flat hierarchy without displaying common ancestors (current situation)
- we display a full hierarchy with all nodes
- we display the hierarchy using the dot notation: common ancestor nodes won’t be displayed unless they have changes too
- we display a hierarchy with all nodes using holes to limit the number of displayed hierarchy (which could be configured)
I’m +1 for 3 and 4 on my side, with maybe a slight preference for 4, even if it’s probably more complex to implement.
WDYT?
