mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Closes #250
This commit is contained in:
parent
05b15c4605
commit
43dc74df4d
@ -716,8 +716,7 @@ angular.module('kibana.services', [])
|
|||||||
dashboard: angular.toJson(save)
|
dashboard: angular.toJson(save)
|
||||||
});
|
});
|
||||||
|
|
||||||
request = type === 'temp' ? request.ttl(ttl) : request;
|
request = type === 'temp' && ttl ? request.ttl(ttl) : request;
|
||||||
|
|
||||||
|
|
||||||
// TOFIX: Implement error handling here
|
// TOFIX: Implement error handling here
|
||||||
return request.doIndex(
|
return request.doIndex(
|
||||||
|
@ -2,28 +2,28 @@
|
|||||||
<h5>Allow saving to</h5>
|
<h5>Allow saving to</h5>
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Export </label><input type="checkbox" ng-model="panel.save.local" ng-checked="panel.save.local">
|
<label class="small">Export</label><input type="checkbox" ng-model="panel.save.local" ng-checked="panel.save.local">
|
||||||
</div>
|
</div>
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Defaults </label><input type="checkbox" ng-model="panel.save.default" ng-checked="panel.save.default">
|
<label class="small">Defaults</label><input type="checkbox" ng-model="panel.save.default" ng-checked="panel.save.default">
|
||||||
</div>
|
</div>
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Gist </label><input type="checkbox" ng-model="panel.save.gist" ng-checked="panel.save.gist">
|
<label class="small">Gist <i class="icon-question-sign" bs-tooltip="'Requires your domain to be OAUTH registered with Github'"></i></label><input type="checkbox" ng-model="panel.save.gist" ng-checked="panel.save.gist">
|
||||||
</div>
|
</div>
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Elasticsearch </label><input type="checkbox" ng-model="panel.save.elasticsearch" ng-checked="panel.save.elasticsearch">
|
<label class="small">Elasticsearch</label><input type="checkbox" ng-model="panel.save.elasticsearch" ng-checked="panel.save.elasticsearch">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<h5>Allow loading from</h5>
|
<h5>Allow loading from</h5>
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Local file </label><input type="checkbox" ng-model="panel.load.local" ng-checked="panel.load.local">
|
<label class="small">Local file</label><input type="checkbox" ng-model="panel.load.local" ng-checked="panel.load.local">
|
||||||
</div>
|
</div>
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Gist </label><input type="checkbox" ng-model="panel.load.gist" ng-checked="panel.load.gist">
|
<label class="small">Gist</label><input type="checkbox" ng-model="panel.load.gist" ng-checked="panel.load.gist">
|
||||||
</div>
|
</div>
|
||||||
<div class="span2">
|
<div class="span2">
|
||||||
<label class="small"> Elasticsearch </label><input type="checkbox" ng-model="panel.load.elasticsearch" ng-checked="panel.load.elasticsearch">
|
<label class="small">Elasticsearch</label><input type="checkbox" ng-model="panel.load.elasticsearch" ng-checked="panel.load.elasticsearch">
|
||||||
</div>
|
</div>
|
||||||
<div class="span3" ng-show="panel.load.elasticsearch">
|
<div class="span3" ng-show="panel.load.elasticsearch">
|
||||||
<label class="small">ES list size</label><input class="input-mini" type="number" ng-model="panel.elasticsearch_size">
|
<label class="small">ES list size</label><input class="input-mini" type="number" ng-model="panel.elasticsearch_size">
|
||||||
@ -31,11 +31,14 @@
|
|||||||
</div>
|
</div>
|
||||||
<h5>Sharing</h5>
|
<h5>Sharing</h5>
|
||||||
<div class="row-fluid">
|
<div class="row-fluid">
|
||||||
<div class="span3" >
|
<div class="span2" >
|
||||||
<label class="small">Allow Sharing</label><input type="checkbox" ng-model="panel.temp" ng-checked="panel.temp">
|
<label class="small">Allow Sharing</label><input type="checkbox" ng-model="panel.temp" ng-checked="panel.temp">
|
||||||
</div>
|
</div>
|
||||||
<div class="span8" ng-show="panel.temp">
|
<div class="span2" ng-show="panel.temp">
|
||||||
<label class="small">Shared Link TTL (examples: 1m,1d,1w,30d)</label><input class="input-small" type="text" ng-model="panel.temp_ttl">
|
<label class="small">TTL</label><input type="checkbox" ng-model="panel.ttl_enable" ng-checked="panel.temp">
|
||||||
|
</div>
|
||||||
|
<div class="span5" ng-show="panel.temp && panel.ttl_enable">
|
||||||
|
<label class="small">TTL Duration <i class="icon-question-sign" bs-tooltip="'Elasticsearch date math, eg: 1m,1d,1w,30d'"></i></label><input class="input-small" type="text" ng-model="panel.temp_ttl">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
@ -21,6 +21,7 @@
|
|||||||
* hide_control :: Upon save, hide this panel
|
* hide_control :: Upon save, hide this panel
|
||||||
* elasticsearch_size :: show this many dashboards under the ES section in the load drop down
|
* elasticsearch_size :: show this many dashboards under the ES section in the load drop down
|
||||||
* temp :: Allow saving of temp dashboards
|
* temp :: Allow saving of temp dashboards
|
||||||
|
* ttl :: Enable setting ttl.
|
||||||
* temp_ttl :: How long should temp dashboards persist
|
* temp_ttl :: How long should temp dashboards persist
|
||||||
|
|
||||||
*/
|
*/
|
||||||
@ -48,6 +49,7 @@ angular.module('kibana.dashcontrol', [])
|
|||||||
hide_control: false,
|
hide_control: false,
|
||||||
elasticsearch_size: 20,
|
elasticsearch_size: 20,
|
||||||
temp: true,
|
temp: true,
|
||||||
|
ttl_enable: true,
|
||||||
temp_ttl: '30d'
|
temp_ttl: '30d'
|
||||||
};
|
};
|
||||||
_.defaults($scope.panel,_d);
|
_.defaults($scope.panel,_d);
|
||||||
@ -83,7 +85,11 @@ angular.module('kibana.dashcontrol', [])
|
|||||||
};
|
};
|
||||||
|
|
||||||
$scope.elasticsearch_save = function(type,ttl) {
|
$scope.elasticsearch_save = function(type,ttl) {
|
||||||
dashboard.elasticsearch_save(type,($scope.elasticsearch.title || dashboard.current.title),ttl).then(
|
dashboard.elasticsearch_save(
|
||||||
|
type,
|
||||||
|
($scope.elasticsearch.title || dashboard.current.title),
|
||||||
|
($scope.panel.ttl_enable ? ttl : false)
|
||||||
|
).then(
|
||||||
function(result) {
|
function(result) {
|
||||||
if(!_.isUndefined(result._id)) {
|
if(!_.isUndefined(result._id)) {
|
||||||
$scope.alert('Dashboard Saved','This dashboard has been saved to Elasticsearch as "' +
|
$scope.alert('Dashboard Saved','This dashboard has been saved to Elasticsearch as "' +
|
||||||
|
Loading…
Reference in New Issue
Block a user