hmm i think i know what happen, there is a major difference between
velocity and other script languages binding: the VelocityContext is
filled at request startup and ScriptContext is filled the first time
it's used, so the first time a groovy macro is used for example.
So in groovy macro "doc" binding is provided by looking at the context
each time a groovy macro is executed. That is to make sure the binding
is properly synchronized with the context.
Only real solution i can see is to fix
http://jira.xwiki.org/jira/browse/XWIKI-4262 (and have the proper
current document in the context instead of the current hack) and
provide a $context.macro.document (this should be done anyway even
before XWIKI-4262 is fixed since it's part of the macro informations).
Asiri in the meantime i think you should set "sdoc" in context instead
of "doc". I far as i can see in the code hasProgrammingRights do the
following:
* try sdoc content author
* if no sdoc try doc content author
* if no doc try current user
On Fri, Mar 19, 2010 at 16:20, Alaina <xwiki(a)ursus.otherinbox.com> wrote:
On Fri, Mar 19, 2010 at 7:52 AM, Asiri Rathnayake
<asiri.rathnayake(a)gmail.com> wrote:
Can you try something like:
{{groovy}}
def currentDoc = xcontext.vcontext.doc;
{{/groovy}}
(in macro code)
I'm just guessing, need to investigate later.
- Asiri
Hi Asiri,
Thanks, I tried your suggestion, it works as intended.
--Alaina
_______________________________________________
users mailing list
users(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
--
Thomas Mortagne