// // 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(); // Clone object first var fourth = dat.clone().fourth().tuesday(); if (Date.compare(dat, fourth) == 1) { 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('dddd, dd.MM.yyyy')); } 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); }