admin: Make propagation time smarter
continuous-integration/drone/push Build is running
Details
continuous-integration/drone/push Build is running
Details
This commit is contained in:
parent
2cd40e64ab
commit
5e4c14c634
|
@ -578,10 +578,14 @@ angular.module("FICApp")
|
|||
$scope.saveSettings();
|
||||
});
|
||||
}
|
||||
$scope.updateActivateTime = function() {
|
||||
$rootScope.settings.activateTime = this.config.activateTime;
|
||||
}
|
||||
$scope.updActivateTime = function(modulo) {
|
||||
var ts = Math.floor((new Date(this.config.end) - Date.now()) / (60000 * modulo)) * (60000 * modulo);
|
||||
var ts = Math.floor((new Date(this.config.end) - Date.now() - (60000 * modulo / 2)) / (60000 * modulo)) * (60000 * modulo);
|
||||
var d = new Date(this.config.end) - ts;
|
||||
this.config.activateTime = new Date(d).toISOString();
|
||||
this.updateActivateTime();
|
||||
}
|
||||
$scope.reset = function(type) {
|
||||
var txts = {
|
||||
|
|
|
@ -125,6 +125,23 @@ angular.module("FICApp")
|
|||
}
|
||||
}
|
||||
})
|
||||
.filter("timer", function() {
|
||||
return function(input) {
|
||||
input = Math.floor(input / 1000);
|
||||
var res = ""
|
||||
|
||||
if (input >= 3600) {
|
||||
res += Math.floor(input / 3600) + ":";
|
||||
input = input % 3600;
|
||||
}
|
||||
if (input >= 60) {
|
||||
res += Math.floor(input / 60) + "'";
|
||||
input = input % 60;
|
||||
}
|
||||
|
||||
return res + (input>9?input:"0"+input) + '"';
|
||||
}
|
||||
})
|
||||
.filter("since", function() {
|
||||
return function(passed) {
|
||||
if (passed < 120000) {
|
||||
|
@ -261,6 +278,19 @@ angular.module("FICApp")
|
|||
}
|
||||
|
||||
$rootScope.timeProgression = 1 - remain / ($rootScope.settings.end - $rootScope.settings.start);
|
||||
$rootScope.timeRemaining = remain;
|
||||
|
||||
if ($rootScope.settings.activateTime) {
|
||||
var now = new Date();
|
||||
var actTime = new Date($rootScope.settings.activateTime);
|
||||
|
||||
if (actTime > now)
|
||||
$rootScope.activateTimeCountDown = actTime - now;
|
||||
else
|
||||
$rootScope.activateTimeCountDown = null;
|
||||
} else {
|
||||
$rootScope.activateTimeCountDown = null;
|
||||
}
|
||||
|
||||
remain = remain / 1000;
|
||||
|
||||
|
|
|
@ -96,7 +96,7 @@
|
|||
<div class="col">
|
||||
<div class="input-group" style="margin-top: 5px;">
|
||||
<div class="input-group-prepend">
|
||||
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><span class="glyphicon glyphicon-record" aria-hidden="true"></span> Propager plus tard</button>
|
||||
<button class="btn btn-sm btn-outline-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" ng-class="{'btn-outline-secondary': !activateTimeCountDown, 'btn-warning': activateTimeCountDown && config.activateTime == settings.activateTime, 'btn-outline-warning': config.activateTime && config.activateTime != settings.activateTime}"><span class="glyphicon glyphicon-record" aria-hidden="true"></span> Propager plus tard</button>
|
||||
<div class="dropdown-menu">
|
||||
<a class="dropdown-item" ng-click="updActivateTime(2)">modulo 2 minutes</a>
|
||||
<a class="dropdown-item" ng-click="updActivateTime(5)">modulo 5 minutes</a>
|
||||
|
@ -104,10 +104,17 @@
|
|||
<a class="dropdown-item" ng-click="updActivateTime(15)">modulo 15 minutes</a>
|
||||
<a class="dropdown-item" ng-click="updActivateTime(20)">modulo 20 minutes</a>
|
||||
<a class="dropdown-item" ng-click="updActivateTime(30)">modulo 30 minutes</a>
|
||||
<a class="dropdown-item" ng-click="updActivateTime(60)">modulo 60 minutes</a>
|
||||
<a class="dropdown-item" ng-click="updActivateTime(90)">modulo 90 minutes</a>
|
||||
<a class="dropdown-item" ng-click="config.activateTime = '0001-01-01T00:00:00Z'" ng-show="activateTimeCountDown">annuler la propagation</a>
|
||||
</div>
|
||||
</div>
|
||||
<input type="text" class="form-control form-control-sm" id="activateTime" ng-model="config.activateTime">
|
||||
<input type="text" class="form-control form-control-sm" id="activateTime" ng-model="config.activateTime" ng-change="updateActivateTime()">
|
||||
</div>
|
||||
<small ng-if="activateTimeCountDown">
|
||||
Propagation dans : {{ activateTimeCountDown | timer }}
|
||||
Il restera : {{ timeRemaining - activateTimeCountDown | timer }}
|
||||
</small>
|
||||
</div>
|
||||
<div class="col text-right">
|
||||
<button type="submit" class="btn btn-success"><span class="glyphicon glyphicon-save" aria-hidden="true"></span> Propager ces paramètres</button>
|
||||
|
|
Loading…
Reference in New Issue