mirror of
https://github.com/Sebclem/hassio-nextcloud-backup.git
synced 2024-11-22 17:22:58 +01:00
🔨 Check cron settings before saving it
This commit is contained in:
parent
e407c23b89
commit
c2e8c08cb8
@ -8,6 +8,8 @@ const settingsTools = require('../tools/settingsTools');
|
|||||||
|
|
||||||
const hassioApiTools = require('../tools/hassioApiTools');
|
const hassioApiTools = require('../tools/hassioApiTools');
|
||||||
|
|
||||||
|
const cronTools = require('../tools/cronTools');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -123,8 +125,17 @@ router.get('/backup-settings', function(req, res, next){
|
|||||||
|
|
||||||
router.post('/backup-settings', function(req, res, next){
|
router.post('/backup-settings', function(req, res, next){
|
||||||
//TODO check if config is valid
|
//TODO check if config is valid
|
||||||
settingsTools.setSettings(req.body);
|
if(cronTools.checkConfig(req.body)){
|
||||||
res.send(200);
|
settingsTools.setSettings(req.body);
|
||||||
|
res.send();
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
res.status(400);
|
||||||
|
res.send();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
@ -0,0 +1,37 @@
|
|||||||
|
|
||||||
|
|
||||||
|
function checkConfig(conf) {
|
||||||
|
if (conf.cron_base != null) {
|
||||||
|
if (conf.cron_base == '1' || conf.cron_base == '2' || conf.cron_base == '3') {
|
||||||
|
if (conf.cron_hour != null && conf.cron_hour.match(/\d\d:\d\d/)) {
|
||||||
|
if (conf.cron_base == '1')
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (conf.cron_base == '2') {
|
||||||
|
if (conf.cron_weekday != null && conf.cron_weekday >= 0 && conf.cron_weekday <= 6)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( conf.cron_base == '3'){
|
||||||
|
if (conf.cron_month_day != null && conf.cron_month_day >= 1 && conf.cron_month_day <= 28)
|
||||||
|
return true;
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(conf.cron_base == '0')
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
exports.checkConfig = checkConfig;
|
Loading…
Reference in New Issue
Block a user