Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Space Template Layout Edition #165

Comments

@srenault-meeds
Copy link
Member

srenault-meeds commented Oct 23, 2024

Rationale

Admins can add and edit space templates. Each template is preconfigured with a layout (home) and with a menu (apps).
In order to help our admins customizing their environment, editing each template layout would be more than interesting.

Indeed, that would provide a whole feature of adding / editing templates.
Moreover, saving a space layout and navigation as a template would be a plus so admins can easily catch nice customization and so they can earn in productivity.

1. Functional Requirements

Top User Stories

Adding a template

When adding a template
Then you access the current form to add characteristics, and to preconfigure permissions, access control, creation steps.
Once done, you will be invited to update the default layout and navigation.

image

From there, you can customize the layout of each page, one by one

  • updating apps,
  • adding contents and pref of apps
  • updating sections,
  • customizing their style (page or section or app)
    AND you can add, remove, update nodes / navigation

Each change is saved and stored for the space template.
Indeed, when using this template to create a space, then any preference (layout / nav) is reused so the user can easily create a space as expected.

Editing a template layout

When accessing options of a template
It is possible to edit the layout
Once requested, the navigation drawer is proposed so you can manage nodes and layout.

When saving it, then the template is updated and only new space created using it will get this new layout/navigation.

Precision: Product Templates cannot be edited
image

image

Impacts

Gamification

--

Notifications

--

Analytics

--

Unified Search

--

2. Technical Requirements

Expected Volume & Performance

Security

The Space Templates Management has to be allowed to administrators only. The Pages Content of type SNV/Image/Links has to be re-imported when instantiating a space template for a given space so that all permissions are re-computed switch new space Group identifier.

Extensibility

Study whether it's possible or not to allow to extend the Space Template navigations without having to override the whole space site template.

Configurability

N/A

Upgradability

The already existing Space Templates (prepared with #150) has to use the new strategy of space Layout definition.

Existing Features

N/A

Feature Flags

N/A

Other Non Functional Requirements

N/A

3. Software Architecture

Security

Knowing that SNV/Image/Links portlets are using the contextual information about the current page to check ACL, when instantiating the pages or the portal layouts, the SNV/Image/Links content has to be exported in order to re-import it with the new preferences and contextual information about the current space pages. This strategy already exists and is used in page template duplication process.
For containers attached Backgrounds, its permissions will be set to Everyone in order to allow all spaces to reuse the attached background.

Access

  • The UI will reuse the same Navigation Drawer to display the list of available pages for the space site template
  • The same App and pages will be re-used to manage pages layout

Services & processing

  • A new PortalConfig type will be added in addition to existing ones, of type:
  • The current existing behavior of Site template declaration will be improved to import the group site template rather than reading it from configuration when being instantiated. This will allow to manage the site layout, navigation and pages layout using UI. The import mode strategy on startup has to be preserved as well as any type of sites.

Data and persistence

N/A

@srenault-meeds srenault-meeds moved this from Open to Submitted in MIP Board Oct 23, 2024
@srenault-meeds srenault-meeds moved this from Submitted to Open in MIP Board Oct 23, 2024
@srenault-meeds srenault-meeds moved this from Open to Draft in MIP Board Oct 23, 2024
@margondicco
Copy link

Hello @srenault-meeds

My first feedbacks

1-
In your screenshots, i can see some content (for the stream app, description, administrators, etc.) : just for the example ? Or can we define some default datas in the template

2-
For the function sav as template : i am not confortable with the button in the top bar. IMO it's a secondary functionality. Couldn't we propose an action in the space settings section?

Thank you

@srenault-meeds
Copy link
Member Author

Sorry, I have to review it a little in fact. This is why I removed my last comment.

Regarding the content, only data like links, snv, image and preferences will be kept yes. Not the description IMO. Indeed, this can be too much personalized.

Regarding the option to save it as a template. I am not ok with you solution neither. Indeed, only platform admins can access this option. And some spaces can not provide de settings app (circle template for example).
The other solution I thought about was an option in the spaces management. Still, I found it too much hidden. This is why I proposed this option in the top bar. I will think about it more.

Thanks

@srenault-meeds
Copy link
Member Author

@margondicco ok to check. Thanks

@srenault-meeds srenault-meeds moved this from Draft to Submitted in MIP Board Oct 24, 2024
@margondicco
Copy link

Hello Go Fonc

@boubaker boubaker self-assigned this Oct 25, 2024
@boubaker
Copy link
Member

Ready for Tech review by DAO members (eXo : @rdenarie )

boubaker added a commit to Meeds-io/gatein-portal that referenced this issue Oct 26, 2024
MEED-7669 - Meeds-io/MIPs#165

This change will cleanup Legacy API used to manage group sites using templates handled from source code.
boubaker added a commit to Meeds-io/gatein-portal that referenced this issue Oct 26, 2024
…te - MEED-7669 - Meeds-io/MIPs#165

This change will add APIs to store Group Site Template and allow to instanciate from it.
boubaker added a commit to Meeds-io/gatein-portal that referenced this issue Oct 26, 2024
boubaker added a commit to Meeds-io/perk-store that referenced this issue Oct 26, 2024
exo-swf pushed a commit to Meeds-io/gamification that referenced this issue Nov 4, 2024
exo-swf pushed a commit to Meeds-io/perk-store that referenced this issue Nov 4, 2024
exo-swf pushed a commit to Meeds-io/content that referenced this issue Nov 4, 2024
exo-swf pushed a commit to Meeds-io/task that referenced this issue Nov 4, 2024
exo-swf pushed a commit to Meeds-io/meeds that referenced this issue Nov 4, 2024
…EED-7669 - Meeds-io/MIPs#165 (#2532)

This change will allow to access the group site template through a
dedicated URL in order to allow displaying portlets added into it. This
is a temporary Handler that will be changed once WebUI is cleaned up to
rely on Portlet container directly instead.
exo-swf pushed a commit to Meeds-io/meeds that referenced this issue Nov 4, 2024
…MIPs#165 (#2542)

This change will review the list of Navigations to use the newly
proposed Default Navigation for space Templates, except for "Contribute
Page" in Community Space Template:


![image](https://github.com/user-attachments/assets/6ca194f4-e41e-4595-90ce-4e58bd1379c3)
boubaker added a commit to exoplatform/ecms that referenced this issue Nov 4, 2024
Prior to this change, the ECMS extension addon overrides Portal Service configuration without specifities. This change cleanup the configuration to not override the configuration coming from Meeds package.
boubaker added a commit to exoplatform/agenda that referenced this issue Nov 4, 2024
boubaker added a commit to exoplatform/digital-workplace that referenced this issue Nov 4, 2024
boubaker added a commit to exoplatform/processes that referenced this issue Nov 4, 2024
boubaker added a commit to exoplatform/chat-application that referenced this issue Nov 4, 2024
rdenarie pushed a commit to Meeds-io/notes that referenced this issue Nov 4, 2024
rdenarie pushed a commit to Meeds-io/notes that referenced this issue Nov 4, 2024
…o/MIPs#165 (#1188)

Prior to this change, when the SNV Portlet doesn't have been
initialized/displayed yet in a page, like the default Space Templates,
the 'data.init' preference isn't used to initialize the portlet yet and
thus when duplicating the page template, the 'data.init' has to be
reused instead of generated only when the CMS portlet is initialized.
rdenarie pushed a commit to exoplatform/ecms that referenced this issue Nov 4, 2024
Prior to this change, the ECMS extension addon overrides Portal Service configuration without specifities. This change cleanup the configuration to not override the configuration coming from Meeds package.
rdenarie pushed a commit to exoplatform/chat-application that referenced this issue Nov 4, 2024
rdenarie pushed a commit to exoplatform/digital-workplace that referenced this issue Nov 4, 2024
rdenarie pushed a commit to exoplatform/onlyoffice that referenced this issue Nov 4, 2024
rdenarie pushed a commit to exoplatform/web-conferencing that referenced this issue Nov 4, 2024
rdenarie pushed a commit to exoplatform/processes that referenced this issue Nov 4, 2024
rdenarie pushed a commit to exoplatform/data-upgrade that referenced this issue Nov 4, 2024
…s#165

This will delete an old upgrade plugin used in previous versions of the platform.
@boubaker boubaker removed their assignment Nov 18, 2024
@srenault-meeds
Copy link
Member Author

Documentation updated for editing space template layout and nav

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