MediaWiki:Common.js: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Yanosz (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
K (3rd week canceled due to Corona as well) |
||
(25 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
DATE_CONFIG = [ | const DATE_CONFIG = [ | ||
{ | { | ||
week: 1, // 1st week | week: 1, // 1st week | ||
day: 4, // Thursday | day: 4, // Thursday | ||
text: ' | text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' | ||
/* //Corona }, { | |||
week: 2, //2nd week | week: 2, //2nd week | ||
day: 4, // Thursday | day: 4, // Thursday | ||
text: ' | text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' | ||
}, { | }, { | ||
week: 3, // 3rd week | week: 3, // 3rd week | ||
day: 4, // Thursday | day: 4, // Thursday | ||
text: ' | text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' | ||
*/ // Corona | |||
} | } | ||
]; | ]; | ||
function | const upcomingDates = function(){ | ||
var ret = ""; | |||
var today = new Date(); | |||
for (var counter = 0;counter < 3; counter++){ | |||
for ( | var text = null; | ||
while (!(text = getDateText(today))) { // Count | |||
while (!(text = getDateText(today | |||
today.setDate(today.getDate() + 1); | today.setDate(today.getDate() + 1); | ||
} | } | ||
Zeile 28: | Zeile 28: | ||
} | } | ||
return ret; | return ret; | ||
} | }; | ||
const getDateText = function (d) { | |||
function | |||
const dayOfMonth = d.getDate(); | const dayOfMonth = d.getDate(); | ||
const month = d.getMonth() +1; | const month = d.getMonth() +1; | ||
const year = d.getFullYear(); | const year = d.getFullYear(); | ||
for( | for(var index = 0; index < DATE_CONFIG.length; index++){ | ||
const conf = DATE_CONFIG[index]; | const conf = DATE_CONFIG[index]; | ||
if (d.getDay() == conf.day && dayOfMonth <= 7 * conf.week){ | if (d.getDay() == conf.day && dayOfMonth <= 7 * conf.week){ | ||
const dateStr = (dayOfMonth < 9) ? "0" + dayOfMonth : "" + dayOfMonth; | const dateStr = (dayOfMonth <= 9) ? "0" + dayOfMonth : "" + dayOfMonth; | ||
return '<li>' + dateStr + '.' + | const monthStr = (month <= 9) ? "0" + month : "" + month; | ||
return '<li>' + dateStr + '.' + monthStr + '.' + year + " " + conf.text + '</li>'; | |||
} | } | ||
} | } | ||
return null; | return null; | ||
}; | |||
const div = document.getElementById("termine"); | |||
if(div) { | |||
div.innerHTML = "<ul>" + upcomingDates() + "</ul>"; | |||
} | } |
Aktuelle Version vom 15. April 2021, 20:02 Uhr
const DATE_CONFIG = [ { week: 1, // 1st week day: 4, // Thursday text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' /* //Corona }, { week: 2, //2nd week day: 4, // Thursday text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' }, { week: 3, // 3rd week day: 4, // Thursday text: 'Videokonferenz unter <a rel="nofollow" class="external text" href="https://meet.kbu.freifunk.net/lounge">KBU Jitsi</a>, ab <b>20:00</b> Uhr' */ // Corona } ]; const upcomingDates = function(){ var ret = ""; var today = new Date(); for (var counter = 0;counter < 3; counter++){ var text = null; while (!(text = getDateText(today))) { // Count today.setDate(today.getDate() + 1); } today.setDate(today.getDate() + 1); ret += text; } return ret; }; const getDateText = function (d) { const dayOfMonth = d.getDate(); const month = d.getMonth() +1; const year = d.getFullYear(); for(var index = 0; index < DATE_CONFIG.length; index++){ const conf = DATE_CONFIG[index]; if (d.getDay() == conf.day && dayOfMonth <= 7 * conf.week){ const dateStr = (dayOfMonth <= 9) ? "0" + dayOfMonth : "" + dayOfMonth; const monthStr = (month <= 9) ? "0" + month : "" + month; return '<li>' + dateStr + '.' + monthStr + '.' + year + " " + conf.text + '</li>'; } } return null; }; const div = document.getElementById("termine"); if(div) { div.innerHTML = "<ul>" + upcomingDates() + "</ul>"; }