Uploaded image for project: 'XWiki Platform'
  1. XWiki Platform
  2. XWIKI-15676

Have the panel list contain UIX IDs instead of page references

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Minor
    • Resolution: Won't Fix
    • Affects Version/s: 9.11
    • Fix Version/s: None
    • Component/s: Panels
    • Labels:
      None
    • Difficulty:
      Unknown
    • Documentation:
      N/A
    • Documentation in Release Notes:
      N/A
    • Similar issues:

      Description

      Right now the panel list in the Admin UI contains a list of panel page references. However this has a design drawback: it forces implementations of UIExtension to constrain their UIX ID to contain page references. However it's possible to implement UIExtensions that are linked to a wiki page.

      Thus the idea is to make the panel list contain a list of UIX IDs in the form

      [<namespace>]:<uix id>

      (where namespace is the wiki id in practice and when not specified, it means the current wiki)

      This is backward compatible and allows to not be dependent on implementations in wiki pages.

      Technically it means the following for the implementation of AbstractPanelsUIExtensionManager:

      • if the UIExtension is a WikiUIExtension: then extract the wiki id from the DocumentReference, and append with the UIExtension#getId() and compare with the panel list item value.
      • if the UIExtension is not a WikiUIExtension: get the Wiki CM and look for a UIExtension.class component that have the ID.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                vmassol Vincent Massol
                Reporter:
                vmassol Vincent Massol
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: