
template-application-angular.ui.perspectives.views.report.bar.controller.js.template Maven / Gradle / Ivy
#set($dollar = '$' )
angular.module('page', []);
angular.module('page')
.factory('$messageHub', [function(){
var messageHub = new FramesMessageHub();
var message = function(evtName, data){
#if($includeLaunchpad)
messageHub.post({data: data}, '${projectName}.${perspectiveName}.${name}.' + evtName);
#else
messageHub.post({data: data}, '${launchpadName}.${perspectiveName}.${name}.' + evtName);
#end
};
var on = function(topic, callback){
messageHub.subscribe(callback, topic);
};
return {
message: message,
on: on,
onEntityRefresh: function(callback) {
#if($includeLaunchpad)
on('${projectName}.${perspectiveName}.${name}.refresh', callback);
#else
on('${launchpadName}.${perspectiveName}.${name}.refresh', callback);
#end
},
#foreach ($property in $properties)
#if($property.widgetType == "DROPDOWN" && $property.relationshipEntityName != "")
on${property.relationshipEntityName}Modified: function(callback) {
#if($includeLaunchpad)
on('${projectName}.${perspectiveName}.${property.relationshipEntityName}.modified', callback);
#else
on('${launchpadName}.${perspectiveName}.${property.relationshipEntityName}.modified', callback);
#end
},
#end
#end
messageEntityModified: function() {
message('modified');
}
};
}])
.controller('PageController', function ($scope, $http, $messageHub) {
var api = '../../../../../../../../services/v3/js/${projectName}/api/${perspectiveName}/${name}.js';
$scope.load = function() {
$http.get(api)
.success(function(data) {
var chartTicks = [];
#foreach ($property in $properties)
#if(!$foreach.isFirst())
var chartData${foreach.index} = [];
#end
#end
for (var i = 0; i < data.length; i ++) {
#foreach ($property in $properties)
#if($foreach.isFirst())
chartTicks.push(data[i].${property.name});
#else
chartData${foreach.index}.push(data[i].${property.name});
#end
#end
}
$.jqplot.config.enablePlugins = true;
$.jqplot('chart', [#foreach ($property in $properties)#if(!$foreach.isFirst())chartData${foreach.index}#if($foreach.hasNext), #end#end#end], {
animate: !$.jqplot.use_excanvas,
seriesDefaults: {
renderer: $.jqplot.BarRenderer,
pointLabels: {
show: true
}
},
axes: {
xaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
ticks: chartTicks
}
},
highlighter: {
show: false
}
});
});
};
$scope.load();
$messageHub.onEntityRefresh($scope.load);
});
© 2015 - 2025 Weber Informatics LLC | Privacy Policy