JSFiddle - React, Tailwind, and code Playground
by srikar7
HTML
<script src="http://underscorejs.org/underscore.js"></script>
<script src="http://code.jquery.com/jquery-2.1.0.js"></script>
<!-- Provide the URL to visualize.js -->
<script src="http://localhost:8081/jasperserver-pro/client/visualize.js"></script>
<div id="main"></div>
JavaScript
visualize({
auth: {
name: "joeuser",
password: "joeuser",
organization: "organization_1"
}
}, function (v) {
var reportOptions = collectReportProperties({
resource: "/public/Samples/Reports/AccountList",
linkOptions: {
beforeRender: function (linkToElemPairs) {
linkToElemPairs.forEach(showCursor);
},
events: {
"click": function (ev, link) {
if (link.type == "ReportExecution") {
openInNewTab({
resource: link.parameters._report,
params: convertToReportParams(link.parameters)
});
}
console.log(link);
}
}
},
error: function (err) {
alert(err.message);
}
});
v("#main").report(reportOptions);
function collectReportProperties(reportProperties) {
var newProperties = findReportProperties(location.href);
reportProperties = _.extend(reportProperties, newProperties);
console.log('Report Properties:', reportProperties);
return reportProperties;
}
function convertToReportParams(linkParams){
return _.chain(linkParams)
.pairs()
.map(function (pair){
var key = pair[0],
val = pair[1];
if (!_.isArray(val)){
return [key, [val]];
}
return pair;
})
.object()
.value();
}
function findReportProperties(url) {
var parser = document.createElement('a');
parser.href = url;
var urlParams = parser.search,
result = {};
if (urlParams) {
result = paramsFromUrlQueryParams(urlParams);
}
return result;
...