For me what is good with ON DEMAND is exactly what you don't like
about ON DEMAND :)
* you don't pollute anyone when you save (same as USER)
* since you won't see the result right away you have to think about
scopes and which one you want. What made you send this mail in the
first place is people (and here it's core team devs so not really the
beginner contrib extension author kind) keeping the default GLOBAL
without really thinking about it because it was working for them and
the exact same thing will happen with USER until someone has to report
to them it does not work
On Sat, Feb 10, 2018 at 12:07 PM, Vincent Massol <vincent(a)massol.net> wrote:
General pros of cons for visibility of any
component-based xobject (IMO):
* ONDEMAND
** (-) Hardest to use since it requires scripting. Lowest on usability score. Should be
reserved for very special use cases.
* USER
** (+) Safe since only the current user sees it
** (+) Usable since works OOB and for all users with any permissions
** (-) User may believe it works for everyone but other users won’t see it
* WIKI
** (+) Works for everyone on the wiki
** (-) Everyone sees the change you make and you cannot validate it before making it
visible to all
** (-) Requires Admin rights and thus may not work
** (-) Fragile: If a user without admin rights resave the page it breaks it
* GLOBAL
** (+) Works for everyone on the farm
** (-) Everyone (including subwikis) sees the change you make and you cannot validate it
before making it visible to all
** (-) Requires PR and thus may not work.
** (-) Not very usable: For example will fail for local admins
** (-) Very fragile: If a user without PR resave the page it breaks it
** (-) Very fragile: If a local admin upgrades his wiki and a new version of the page is
available, then it breaks the feature
I’m still hesitating between USER and WIKI but I think USER is the best, at least until
we have dynamic defaults (in which case WIKI could be a good default, and if the user
doesn’t have Admin rights, then don’t allow him to save the page by having a verification
check + make USER the default if user doesn’t have Admin right).
Thanks
-Vincent
On 9 Feb 2018, at 18:15, Vincent Massol
<vincent(a)massol.net> wrote:
Hi,
Right now we have:
xclass.addStaticListField(TranslationDocumentModel.TRANSLATIONCLASS_PROP_SCOPE,
"Scope",
"GLOBAL|WIKI|USER|ON_DEMAND”);
However for wiki macros for example we have:
xclass.addStaticListField(MACRO_VISIBILITY_PROPERTY, "Macro visibility", 1,
false,
"Current User|Current Wiki|Global", ListClass.DISPLAYTYPE_SELECT,
PROPERTY_PIPE);
The rationale is that it’s safe to use USER first to try out and then to extend to Wiki
or Global if it’s working fine.
So I’d suggest to change the default visibility for wiki translations to USER and more
generally to do this for all component-based xobjects.
WDYT?
Thanks
-Vincent