Hi, Vincent: Please don't be mad at me. I think it's a cool trick. But I don't think rendering ascii graph into bitmap will add too much information. And ordinary users will still find it hard to use.
How about embedding a AJAX or flash based graphics editor? I know there are some good ones, but I don't know whether there are some open source alternatives. Here are some live demos: http://www.lucidchart.com/documents/demo http://www.drawanywhere.com/demo.aspx And the best one: http://www.gliffy.com/ which requires an account. On Mon, Dec 7, 2009 at 4:11 AM, Vincent Massol <[email protected]> wrote: > Hi, > > Part I > ===== > > I've started implementing a Ditaa Macro over the weekend ( > http://ditaa.sourceforge.net/ > ) but we need an Action to return the Ditaa-generated image file. > For the chart macro we're using the charting action but I think we can > make this generic and instead introduce a tmp (or temp or tmpresource > or ...) action instead that would return any resource located in the > xwiki temporary directory. > > For ex: > /xwiki/bin/tmp/SomeResource > > would return SomeResource found in > container.getApplicationContext().getTemporaryDirectory(). > > Part II > ===== > > The only thing to be careful about is to not be able to read what's > for another user and for which you don't have access to see it. For > example an image generated by the chart macro for a page for which the > user doesn't have view rights. This can be partially solved by > ensuring that file names include a generated token. However the pb is > that this token cannot be unique since, for ex, generated image need > to be shared to anyone having the rights to view a page. > > <brainstomring mode> > > A solution I see would be to include the "rights" to check + the full > page name in the URL, in addition to the resource. For example: > > /xwiki/bin/tmp/view/wiki:Space.Page/SomeResource > > A more generic solution would be to add a notion of Check Handler, > i.e. code that would perform the check. For example in the previous > solution it's not possible to check for 2 permissions, nor any complex > scheme. This would mean something like: > > /xwiki/bin/tmp/<check handler name>/<resource name>?<check params> > > Ex: /xwiki/bin/tmp/simple/SomeResource? > checkPermission="view"&checkDocument="wiki:Space.Page" > > Implementation: A component with a role hint of "simple" would be > looked-up and the check logic delegated to it. > > However someone could use a some check for a resource that wasn't > meant to be used for that resource. > > Thus the check and its params should probably instead be included in > the resource name with some algorithm instead. Thus the solution maybe > to have a high level API to create a resource name and that API would > take a Check Handler hint + some arbitrary params and that API would > generate a resource name with these added. For ex something like:: > "SomeResource-simple-view-wiki:Space.Page" (or any other format). > > Another solution would be to follow a completely different direction > and for example to introduce a new XDOM representation for a TMP- > image, i.e. in addition to URLImage and DocumentImage, to add a > TemporaryImage implementation. > > </brainstomring mode> > > WDYT about these 2 ideas and especially about Part I since I would > need that sooner rather than later to implement the Ditaa macro, and > Part II is already a problem today. > > Thanks > -Vincent > > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs > -- -- Zhaolin Feng -- www.mapbar.com -- Currahee! We stand alone together! _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

