mirror of https://github.com/grafana/grafana
parent
7cd663bbe8
commit
ad7a1e15b4
@ -0,0 +1,74 @@ |
||||
<div class="modal-body"> |
||||
|
||||
<div class="modal-header"> |
||||
<h2 class="modal-header-title"> |
||||
<i class="fa fa-cloud-upload"></i> |
||||
<span class="p-l-1">Export Dashboard</span> |
||||
</h2> |
||||
|
||||
<a class="modal-header-close" ng-click="dismiss();"> |
||||
<i class="fa fa-remove"></i> |
||||
</a> |
||||
</div> |
||||
|
||||
<div class="modal-content" ng-cloak> |
||||
<p> |
||||
Exporting will export a cleaned sharable dashboard that can be imported |
||||
into another Grafana instance. |
||||
</p> |
||||
|
||||
<h3 class="section-heading"> |
||||
Options |
||||
</h3> |
||||
|
||||
<div class="gf-form-group"> |
||||
<div class="gf-form"> |
||||
<label class="gf-form-label width-8">Title</label> |
||||
<input type="text" class="gf-form-input" ng-model="ctrl.dash.title" ng-change="ctrl.titleChanged()"> |
||||
<label class="gf-form-label text-success" ng-show="ctrl.dash.title"> |
||||
<i class="fa fa-check"></i> |
||||
</label> |
||||
</div> |
||||
<div class="gf-form gf-form--grow"> |
||||
<label class="gf-form-label width-8">Description</label> |
||||
<input type="text" class="gf-form-input" ng-model="ctrl.dash.description" ng-change="ctrl.titleChanged()"> |
||||
<label class="gf-form-label text-success" ng-show="ctrl.dash.description"> |
||||
<i class="fa fa-check"></i> |
||||
</label> |
||||
</div> |
||||
</div> |
||||
|
||||
<h3 class="section-heading"> |
||||
Dashboard data sources |
||||
</h3> |
||||
|
||||
<div class="gf-form-group"> |
||||
<div class="gf-form-inline" ng-repeat="input in ctrl.dash.__inputs"> |
||||
<div class="gf-form width-25"> |
||||
<label class="gf-form-label width-8">Name</label> |
||||
<input type="text" class="gf-form-input" ng-model="input.name"> |
||||
<label class="gf-form-label text-success" ng-show="input.name"> |
||||
<i class="fa fa-check"></i> |
||||
</label> |
||||
</div> |
||||
<div class="gf-form width-25"> |
||||
<label class="gf-form-label width-8">Description</label> |
||||
<input type="text" class="gf-form-input" ng-model="input.desc"> |
||||
<label class="gf-form-label text-success" ng-show="input.desc"> |
||||
<i class="fa fa-check"></i> |
||||
</label> |
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
<div class="gf-form-button-row"> |
||||
<button type="button" class="btn gf-form-btn width-10 btn-success" ng-click="ctrl.export()"> |
||||
<i class="fa fa-download"></i> Export |
||||
</button> |
||||
<a class="btn btn-link" ng-click="dismiss()">Cancel</a> |
||||
</div> |
||||
|
||||
</div> |
||||
</div> |
||||
</div> |
||||
|
||||
@ -0,0 +1,40 @@ |
||||
///<reference path="../../../headers/common.d.ts" />
|
||||
|
||||
import kbn from 'app/core/utils/kbn'; |
||||
import coreModule from 'app/core/core_module'; |
||||
import appEvents from 'app/core/app_events'; |
||||
import config from 'app/core/config'; |
||||
import _ from 'lodash'; |
||||
|
||||
import {DashboardExporter} from './exporter'; |
||||
|
||||
export class DashExportCtrl { |
||||
dash: any; |
||||
exporter: DashboardExporter; |
||||
|
||||
/** @ngInject */ |
||||
constructor(private backendSrv, dashboardSrv, datasourceSrv, $scope) { |
||||
this.exporter = new DashboardExporter(datasourceSrv); |
||||
|
||||
var current = dashboardSrv.getCurrent().getSaveModelClone(); |
||||
|
||||
this.exporter.makeExportable(current).then(dash => { |
||||
$scope.$apply(() => { |
||||
this.dash = dash; |
||||
}); |
||||
}); |
||||
} |
||||
|
||||
} |
||||
|
||||
export function dashExportDirective() { |
||||
return { |
||||
restrict: 'E', |
||||
templateUrl: 'public/app/features/dashboard/export/export_modal.html', |
||||
controller: DashExportCtrl, |
||||
bindToController: true, |
||||
controllerAs: 'ctrl', |
||||
}; |
||||
} |
||||
|
||||
coreModule.directive('dashExportModal', dashExportDirective); |
||||
@ -1,10 +1,10 @@ |
||||
///<reference path="../../headers/common.d.ts" />
|
||||
///<reference path="../../../headers/common.d.ts" />
|
||||
|
||||
import config from 'app/core/config'; |
||||
import angular from 'angular'; |
||||
import _ from 'lodash'; |
||||
|
||||
import {DynamicDashboardSrv} from './dynamic_dashboard_srv'; |
||||
import {DynamicDashboardSrv} from '../dynamic_dashboard_srv'; |
||||
|
||||
export class DashboardExporter { |
||||
|
||||
Loading…
Reference in new issue