Visualize: search in report and zoom in/out
Visualize: search in report and scale
by Pavel Savushchyk
HTML
<script src='http://172.19.1.122:8080/trunk/client/visualize.js?_opt=false'></script>
<input id="search-query" type="input" />
<button id="search-button">Search</button>
<button id="zoom_in">+</button>
<button id="zoom_out">-</button>
<!--Provide container to render your visualization-->
<div id="container"></div>
CSS
.jr_search_result {
background-color: green;
}
JavaScript
visualize({
auth: {
name: "superuser",
password: "superuser"
}
}, function (v) {
var scale_index=1;
//render report from provided resource
var report = v.report({
resource: "/public/Samples/Reports/ProfitDetailReport",
error: handleError,
container: "#container"
});
$("#zoom_in").click(function () {
report.scale(scale_index+=0.1).run();
})
$("#zoom_out").click(function () {
report.scale(scale_index-=0.1).run();
})
$("#search-button").click(function () {
var sObj = {
"text": $("#search-query").val()
};
report.search(sObj)
.done(function (results) {
if (results.length > 0) {
for (var i = 0; i < results.length; i++) {
console.log("found " + results[i].hitCount + " results on page: #" + results[i].page);
}
report.pages(results[0].page).run().done(function (data) {
console.log(data);
});
} else {
console.log("The search did not return any results!");
}
})
.fail(handleError);
});
//show error
function handleError(err) {
alert(err.message);
}
});