I am a bit reserved about the name though since it drops for this "rendering
cycle" so:
{{groovy}}
println('Hello World!');
if (xcontext.get('runOnce')) {
xcontext.set('runOnce', true);
doc.dropPermissions();
doc.getRenderedContent(doc.getContent());
}
{{/groovy}}
would output:
Hello World!
Hello World!
Which means that doc.dropPermissions() is not entirely accurate since the same document
can get
permissions in the same request cycle. It should really be
renderingCycle.dropPermissions() but that
would make no sense to anyone at all. If anyone can think of a better name I'd be
happy to hear it.
Caleb
On 08/13/2011 02:23 AM, Sergiu Dumitriu wrote:
On 08/10/2011 06:22 AM, Caleb James DeLisle
wrote:
Right now we have dropPermissions which makes a
specific guarantee, there will not be any programming
right for the duration of the request cycle.
Sometimes a user might want to drop permissions for the duration of the document
rendering.
This would mean {{include}} macros, $doc.getRenderedContent() would allow permissions to
be gained back
while the included document was being rendered and after the content of that document is
finished
rendering, the permissions would be returned.
I think it would do more harm than good to break the promise that dropPermissions() makes
so I propose
adding $doc.dropPermissions() to do this.
I think $doc.dropPermissions() vs. $context.dropPermissions() is intuitive and easily
explained but if
anyone has another suggestion for a name, I'd be glad to hear it.
Can you give me a better example, when would doc.dropPermission be
needed and context.dropPermission is too much? How would you get back
rights? And how do you prevent the supposedly sandboxed code from using
the same mechanism to get back the rights?
_______________________________________________
devs mailing list
devs(a)xwiki.org