So if I put XWiki.XWikiRights_56_users on the request and there's no
rights object what do you do? Create an object with number 0? Create
an object with number 56? And if you want to add a new object how
would you know the object number to put on the request so that you
don't update existing objects instead?

The current behaviour is this:

1) You ask the system to add a new object (i.e. allocate an object
number) using the object add action, possibly passing property values
like this

XWiki.XWikiRights_users = XWiki.Me

2) You use the allocated number to update the object, passing property
values like this

XWiki.XWikiRights_N_users = XWiki.Me

where N is the allocated object number.

What you want is to do this in a single step, but you won't
know/control if the object is added or updated.

Thanks,
Marius

On Thu, Apr 10, 2014 at 11:36 AM, Jean SIMARD <[email protected]> wrote:
> Hi devs,
>
> In XWiki, if you send a POST request at the following URL
> ('MySpace.MyPage' is a document that doesn't exist at the moment)
>
> /bin/save/MySpace/MyPage
>
> with the following HTTP parameters:
>
> * template=MySpace.MyTemplate
> * XWiki.XWikiRights_0_users=XWiki.Me
> * <others parameters>
>
> with 'MySpace.MyTemplate' a template document and 'XWiki.Me' a user of
> the wiki.
>
> 2 cases:
>
> 1. If 'MySpace.MyTemplate' contains a 'XWiki.XWikiRights' object, then
> the resulting document 'MySpace.MyPage' will have this object with its
> property 'users' initialize with the value 'XWiki.Me' (see HTTP
> parameters)
> 2. If 'MySpace.MyTemplate' does not contain a 'XWiki.XWikiRights'
> object, the resulting document 'MySpace.MyPage' will not contain it
> either
>
> ### PROPOSAL
> Create automatically the objects if they don't exist in the template
> document.
> ###
>
> To make it possible, it seems that we would need to refactor the method
> 'readObjectsFromForm(EditForm, XWikiContext)' in the
> 'com.xpn.xwiki.doc.XWikiDocument' class.  And probably modify also the
> 'getObject(String)' from 'com.xpn.xwiki.web.EditForm' class.
>
> 2 things to take care:
> * It seems there is no unit test for these methods.
> * May this proposal be a security problem?
>
> WDYT?
> --
> Jean
>
> _______________________________________________
> devs mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/devs
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to