[MGNLPN-266] As a developer, I want to be able to define a component as un-personalizable Created: 27/May/16 Updated: 11/Oct/16 Resolved: 29/Jul/16 |
|
| Status: | Closed |
| Project: | Magnolia Personalization |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 1.3 |
| Type: | Story | Priority: | Neutral |
| Reporter: | Antti Hietala | Assignee: | Roman Kovařík |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Template: |
|
||||||||
| Acceptance criteria: |
Empty
|
||||||||
| Task DoD: |
[ ]*
Doc/release notes changes? Comment present?
[ ]*
Downstream builds green?
[ ]*
Solution information and context easily available?
[ ]*
Tests
[ ]*
FixVersion filled and not yet released
[ ] 
Architecture Decision Record (ADR)
|
||||||||
| Date of First Response: | |||||||||
| Epic Link: | Component P13N | ||||||||
| Sprint: | Kromeriz 54 | ||||||||
| Story Points: | 3 | ||||||||
| Description |
|
Proposal: 1) Add a new property personalizable in the template definition. We already support similar properties deletable, moveable and writable that are specific to component templates and restrict the actions that editors can take on components. This is an existing pattern. Example: my-module/templates/components/textImage.yaml
templateScript: /my-module/components/textImage.ftl
renderType: freemarker
dialog: my-module:components/textImage
personalizable: false
The new property personalizable should be true by default. This means that component personalization is an opt-out feature: a site admin needs to specifically turn the feature off if they don't want to allow component personalization. It also means that an editor can start experimenting with component personalization immediately without having to ask IT to turn the feature on. 2) To restrict personalization of a component in a particular area, add a new permission personalize in the area definition. This is also an existing pattern. We already support the permissions write, move and delete. As a use case, you may want to allow editors to personalize textImage everywhere except in the footer area. Example: Restrict personalization of textImage in the footer area to the superuser role /my-module/templates/pages/home.html (partial fragment)
areas:
footer:
availableComponents:
textImage:
id: mtk:components/textImage
permissions:
personalize:
roles: [superuser]
|
| Comments |
| Comment by Martin Drápela [ 20/Jul/16 ] |
|
1) personalizable property added to component properties in DOC55: https://documentation.magnolia-cms.com/display/DOCS55/Component+definition#Componentdefinition-Componentproperties 2) personalize property added to area permissions in DOC55: https://documentation.magnolia-cms.com/display/DOCS55/Template+availability#Templateavailability-Restrictingcomponentactionsinanareatemplate. |