On 01/08/2015 03:15 AM, Bryn Jeffries wrote: > I have a custom groovy script at DemoSpace.StudiesJSON that generates JSON of > the form: > { > "totalrows": 5, > "matchingtags": {}, > "tags" : [], > "offset": 1, > "reqNo": 0, > "returnedrows": 1, > "rows": [{"doc_viewable":true,"study_id":3,"study_name":"My > Study","description":"A test study"}] > } > > This is then called from a LiveTable macro as > {{velocity}} > #set($columns = ["study_name", "description", "study_id"]) > #set($options = { > "resultPage":"DemoSpace.StudiesJSON" > }) > #set($columnsProperties = { > "study_name" : { "type" : "text", "displayName": "Study Name", > "filterable": false }, > "description" : { "type" : "text", "displayName": "Description", > "filterable": false }, > "study_id" : { "type" : "text", "displayName": "Study ID", "filterable": > false } > }) > #livetable("studyTable" $columns $columnsProperties $options) > {{/velocity}} > > What I'd really like is to put links into each row, for instance replacing > each entry in the first ("Study Name") column with a link of the form > [[${study_name}>>StudyDetails?study_id=${study_id}]]. Is there a way to do > this? I've tried generating a link in the JSON but the query strings seem to > get corrupted and the link is lost in any case within the actual LiveTable. >
I think you can do the following here: - change the JSON script generating the results so that "study_name" contains the HTML you want, like: > "rows": [{"doc_viewable":true,"study_id":3,"study_name":"<a href=\"/xwiki/bin/view/StudySpace/StudyDetails?study_id=3\">My Study</a>","description":"A test study"}] - then set the columnsProperty for study_name to html: > #set($columnsProperties = { > "study_name" : { "type" : "html", ... For a list of accepted options see here: http://extensions.xwiki.org/xwiki/bin/view/Extension/Livetable+Macro#HParameter24columnsProperties Alternatively you could add your own "LiveTableRow renderer" in JavaScript, as explained in the "All Attachments" example on the same page: http://extensions.xwiki.org/xwiki/bin/view/Extension/Livetable+Macro#HAllAttachments However this is a "all or nothing" solution - you will need to render all columns in the JavaScript, not only the ones you want to customize. I would only use this solution if the first option is not sufficient for some reason. Cheers Clemens > Thanks, > > Bryn > _______________________________________________ > users mailing list > users@xwiki.org > http://lists.xwiki.org/mailman/listinfo/users > _______________________________________________ users mailing list users@xwiki.org http://lists.xwiki.org/mailman/listinfo/users