admin: can force page regeneration
This commit is contained in:
parent
318bc4bc4d
commit
17f51f5e7b
@ -22,7 +22,7 @@ func getSettings(_ httprouter.Params, body []byte) (interface{}, error) {
|
|||||||
if settings.ExistsSettings(path.Join(TeamsDir, settings.SettingsFile)) {
|
if settings.ExistsSettings(path.Join(TeamsDir, settings.SettingsFile)) {
|
||||||
return settings.ReadSettings(path.Join(TeamsDir, settings.SettingsFile))
|
return settings.ReadSettings(path.Join(TeamsDir, settings.SettingsFile))
|
||||||
} else {
|
} else {
|
||||||
return settings.FICSettings{time.Unix(0,0), time.Unix(0,0), fic.FirstBlood, fic.SubmissionCostBase, false, false, false, true, true}, nil
|
return settings.FICSettings{time.Unix(0,0), time.Unix(0,0), time.Unix(0,0), fic.FirstBlood, fic.SubmissionCostBase, false, false, false, true, true}, nil
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -228,6 +228,10 @@ angular.module("FICApp")
|
|||||||
$location.url("/");
|
$location.url("/");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
$scope.regenerate = function() {
|
||||||
|
this.config.generation = (new Date()).toISOString();
|
||||||
|
$scope.saveSettings();
|
||||||
|
}
|
||||||
$scope.launchChallenge = function() {
|
$scope.launchChallenge = function() {
|
||||||
var ts = Date.now() - Date.now() % 60000;
|
var ts = Date.now() - Date.now() % 60000;
|
||||||
var d = new Date(ts + 120000);
|
var d = new Date(ts + 120000);
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
<h2>Paramètres</h2>
|
<h2>Paramètres<a ng-click="regenerate()" class="pull-right btn btn-info" role="button"><span class="glyphicon glyphicon-refresh" aria-hidden="true"></span> Regénérer les fichiers statiques</a></h2>
|
||||||
|
|
||||||
<form ng-submit="saveSettings()" class="form-horizontal well">
|
<form ng-submit="saveSettings()" class="form-horizontal well">
|
||||||
|
|
||||||
|
<input type="hidden" class="form-control" id="lastRegeneration" ng-model="config.generation">
|
||||||
|
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<label for="startTime" class="col-sm-2 control-label">Début du challenge</label>
|
<label for="startTime" class="col-sm-2 control-label">Début du challenge</label>
|
||||||
<div class="col-sm-8">
|
<div class="col-sm-8">
|
||||||
|
@ -43,8 +43,12 @@ func watchsubdir(watcher *fsnotify.Watcher, pathname string) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var lastRegeneration time.Time
|
||||||
|
|
||||||
func reloadSettings(config settings.FICSettings) {
|
func reloadSettings(config settings.FICSettings) {
|
||||||
if fic.PartialValidation != config.PartialValidation || fic.UnlockedChallenges != !config.EnableExerciceDepend || fic.FirstBlood != config.FirstBlood || fic.SubmissionCostBase != config.SubmissionCostBase {
|
if lastRegeneration != config.Generation || fic.PartialValidation != config.PartialValidation || fic.UnlockedChallenges != !config.EnableExerciceDepend || fic.FirstBlood != config.FirstBlood || fic.SubmissionCostBase != config.SubmissionCostBase {
|
||||||
|
lastRegeneration = config.Generation
|
||||||
|
|
||||||
fic.PartialValidation = config.PartialValidation
|
fic.PartialValidation = config.PartialValidation
|
||||||
fic.UnlockedChallenges = !config.EnableExerciceDepend
|
fic.UnlockedChallenges = !config.EnableExerciceDepend
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@ const SettingsFile = "settings.json"
|
|||||||
type FICSettings struct {
|
type FICSettings struct {
|
||||||
Start time.Time `json:"start"`
|
Start time.Time `json:"start"`
|
||||||
End time.Time `json:"end"`
|
End time.Time `json:"end"`
|
||||||
|
Generation time.Time `json:"generation"`
|
||||||
|
|
||||||
FirstBlood float64 `json:"firstBlood"`
|
FirstBlood float64 `json:"firstBlood"`
|
||||||
SubmissionCostBase float64 `json:"submissionCostBase"`
|
SubmissionCostBase float64 `json:"submissionCostBase"`
|
||||||
|
Loading…
Reference in New Issue
Block a user