Commit 7da57e0a by Mitsuhiro Tanda

align refresh interval

parent 0da41688
...@@ -65,11 +65,17 @@ define([ ...@@ -65,11 +65,17 @@ define([
} }
}; };
this.setAutoRefresh = function (interval) { this.setAutoRefresh = function (interval, align) {
this.dashboard.refresh = interval; this.dashboard.refresh = interval;
if (interval) { if (interval) {
var _i = kbn.interval_to_ms(interval); var _i = kbn.interval_to_ms(interval);
this.start_scheduled_refresh(_i); var wait_ms = 0;
if (align) {
wait_ms = _i - (Date.now() % _i);
}
$timeout(function () {
self.start_scheduled_refresh(_i);
}, wait_ms);
} else { } else {
this.cancel_scheduled_refresh(); this.cancel_scheduled_refresh();
} }
......
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
<div class="gf-form max-width-28"> <div class="gf-form max-width-28">
<select ng-model="ctrl.refresh.value" class="gf-form-input input-medium" ng-options="f.value as f.text for f in ctrl.refresh.options"></select> <select ng-model="ctrl.refresh.value" class="gf-form-input input-medium" ng-options="f.value as f.text for f in ctrl.refresh.options"></select>
</div> </div>
<editor-checkbox text="Align" model="ctrl.refresh.align"></editor-checkbox>
<div class="gf-form"> <div class="gf-form">
<button type="submit" class="btn gf-form-btn btn-secondary" ng-click="ctrl.applyCustom();" ng-disabled="!timeForm.$valid">Apply</button> <button type="submit" class="btn gf-form-btn btn-secondary" ng-click="ctrl.applyCustom();" ng-disabled="!timeForm.$valid">Apply</button>
</div> </div>
......
...@@ -109,7 +109,7 @@ export class TimePickerCtrl { ...@@ -109,7 +109,7 @@ export class TimePickerCtrl {
applyCustom() { applyCustom() {
if (this.refresh.value !== this.dashboard.refresh) { if (this.refresh.value !== this.dashboard.refresh) {
this.timeSrv.setAutoRefresh(this.refresh.value); this.timeSrv.setAutoRefresh(this.refresh.value, this.refresh.align);
} }
this.timeSrv.setTime(this.timeRaw, true); this.timeSrv.setTime(this.timeRaw, true);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment