controllers.js 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /*jshint globalstrict:true */
  2. /*global angular:true */
  3. 'use strict';
  4. angular.module('kibana.controllers', [])
  5. .controller('DashCtrl', function($scope, $rootScope, ejsResource, timer) {
  6. $scope.config = config;
  7. if (Modernizr.localstorage && !(_.isUndefined(localStorage['dashboard']))) {
  8. $scope.dashboards = JSON.parse(localStorage['dashboard']);
  9. } else {
  10. $scope.dashboards = dashboards;
  11. }
  12. var ejs = $scope.ejs = ejsResource(config.elasticsearch);
  13. $scope.toggle_row = function(row) {
  14. $scope.$broadcast('toggle_row',row)
  15. row.collapse = row.collapse ? false : true;
  16. }
  17. $scope.export = function() {
  18. var blob = new Blob([angular.toJson($scope.dashboards)], {type: "application/json;charset=utf-8"});
  19. saveAs(blob, $scope.dashboards.title+"-"+new Date().getTime());
  20. }
  21. $scope.default = function() {
  22. if (Modernizr.localstorage) {
  23. localStorage['dashboard'] = angular.toJson($scope.dashboards);
  24. alert($scope.dashboards.title + " has been set as your default dashboard")
  25. } else {
  26. alert("Sorry, your browser is too old for this functionality");
  27. }
  28. }
  29. });