Saving a Dashboard Template on the Server-Side
Our sample projects and report templates can help you learn the basics of working with our products.When the user saves in the designer, the dashboard is sent to the server, where the
Persist the template in the event.
How it works. The designer round-trips the dashboard through the PHP event, so user edits are stored wherever your application chooses.
onSaveReport event decides how to store it.Persist the template in the event.
$designer->onSaveReport = function (StiReportEventArgs $args) {
$name = strlen($args->fileName) > 0 ? $args->fileName : 'Dashboard.mrt';
$result = file_put_contents("../reports/$name", $args->getReportJson());
return $result === false
? StiResult::getError('Save failed.')
: StiResult::getSuccess("Saved to '$name'.");
};
$designer->process();
$designer->report = $report;onSaveReport— fires when the user saves;$args->getReportJson()is the edited dashboard as JSON.file_put_contents(..., $args->getReportJson())— write the dashboard back to the server's reports folder.
How it works. The designer round-trips the dashboard through the PHP event, so user edits are stored wherever your application chooses.