parent
0c18d665e5
commit
17a7627814
3 changed files with 52 additions and 10 deletions
@ -0,0 +1,46 @@ |
|||||||
|
//
|
||||||
|
// Generate vor.md from vor.txt by including missing date entries if required
|
||||||
|
//
|
||||||
|
|
||||||
|
require('./static/js/datejs/date-de-DE.js'); |
||||||
|
Date.i18n.setLanguage('de-DE'); |
||||||
|
var fs = require('fs'); |
||||||
|
var fileNameTxt = 'vor.txt'; |
||||||
|
var fileNameMd = 'vor.md'; |
||||||
|
try { |
||||||
|
var text = fs.readFileSync(fileNameTxt).toString(); |
||||||
|
} catch (err) { |
||||||
|
console.log('Problem with reading '+fileNameTxt); |
||||||
|
} |
||||||
|
const lines = text.split('\n').filter(function(e){return e}); |
||||||
|
var vor = '| | | | \n|:------|:------|:------|\n'; |
||||||
|
var dat = Date.today(); |
||||||
|
if (dat.fourth().tuesday() <= dat) { |
||||||
|
dat = (1).months().fromNow(); |
||||||
|
dat = dat.fourth().tuesday(); |
||||||
|
} |
||||||
|
for (const line of lines) { |
||||||
|
if (line.length > 0) { |
||||||
|
let seg = line.split('|').filter(function(e){return e}); |
||||||
|
let segTrim = []; |
||||||
|
for (s of seg) { |
||||||
|
segTrim.push(s.trim()); |
||||||
|
} |
||||||
|
// See if date present, if not, generate it and insert it at the beginning
|
||||||
|
if (segTrim.length == 2) { |
||||||
|
segTrim.unshift(dat.toString('D')); |
||||||
|
} else { |
||||||
|
// Hack: add time for UTC offset calculation
|
||||||
|
dat = Date.parse(segTrim[0]+' 03:00'); |
||||||
|
} |
||||||
|
let lineNew = '| ' + segTrim.join(' | ') + ' |\n'; |
||||||
|
vor += lineNew; |
||||||
|
// Calc next fourth Tuesday
|
||||||
|
dat = dat.addMonths(1).fourth().tuesday(); |
||||||
|
} |
||||||
|
} |
||||||
|
try { |
||||||
|
var of = fs.writeFileSync(fileNameMd, vor); |
||||||
|
} catch (err) { |
||||||
|
console.log('Problem with writing '+fileNameMd); |
||||||
|
} |
Loading…
Reference in new issue