|
|
@@ -123,14 +123,16 @@ function (angular, app, $, _, kbn, moment, TimeSeries, PanelMeta) {
|
|
|
$scope.render();
|
|
|
};
|
|
|
|
|
|
- $scope.updateTimeRange = function () {
|
|
|
- $scope.range = timeSrv.timeRange();
|
|
|
- $scope.rangeUnparsed = timeSrv.timeRange(false);
|
|
|
-
|
|
|
- $scope.panelMeta.timeInfo = "";
|
|
|
+ $scope.applyPanelTimeOverrides = function() {
|
|
|
+ $scope.panelMeta.timeInfo = '';
|
|
|
|
|
|
// check panel time overrrides
|
|
|
if ($scope.panel.timeFrom) {
|
|
|
+ if (!kbn.isValidTimeSpan($scope.panel.timeFrom)) {
|
|
|
+ $scope.panelMeta.timeInfo = 'invalid time override';
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if (_.isString($scope.rangeUnparsed.from)) {
|
|
|
$scope.panelMeta.timeInfo = "last " + $scope.panel.timeFrom;
|
|
|
$scope.rangeUnparsed.from = 'now-' + $scope.panel.timeFrom;
|
|
|
@@ -139,12 +141,24 @@ function (angular, app, $, _, kbn, moment, TimeSeries, PanelMeta) {
|
|
|
}
|
|
|
|
|
|
if ($scope.panel.timeShift) {
|
|
|
+ if (!kbn.isValidTimeSpan($scope.panel.timeFrom)) {
|
|
|
+ $scope.panelMeta.timeInfo = 'invalid timeshift';
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
var timeShift = '-' + $scope.panel.timeShift;
|
|
|
$scope.panelMeta.timeInfo += ' timeshift ' + timeShift;
|
|
|
$scope.range.from = kbn.parseDateMath(timeShift, $scope.range.from);
|
|
|
$scope.range.to = kbn.parseDateMath(timeShift, $scope.range.to);
|
|
|
+
|
|
|
$scope.rangeUnparsed = $scope.range;
|
|
|
}
|
|
|
+ };
|
|
|
+
|
|
|
+ $scope.updateTimeRange = function () {
|
|
|
+ $scope.range = timeSrv.timeRange();
|
|
|
+ $scope.rangeUnparsed = timeSrv.timeRange(false);
|
|
|
+ $scope.applyPanelTimeOverrides();
|
|
|
|
|
|
if ($scope.panel.maxDataPoints) {
|
|
|
$scope.resolution = $scope.panel.maxDataPoints;
|