Event pop-up: Add-to-calendar buttons (Google Calendar link + .ics for Apple/Outlook)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
@@ -90,6 +90,27 @@
|
||||
join.addEventListener('click', done);
|
||||
foot.appendChild(join);
|
||||
|
||||
var st = EV.startUTC ? Date.parse(EV.startUTC) : 0;
|
||||
if (st) {
|
||||
var en = st + (Number(EV.durationMin) || 60) * 60000;
|
||||
var f = function (ms) { return new Date(ms).toISOString().replace(/[-:]|\.\d{3}/g, ''); };
|
||||
var title = EV.eyebrow || 'Team RM Circle · Weekly Huddle';
|
||||
var details = (EV.meetUrl ? 'Join: ' + EV.meetUrl + '\n' : '') + String(EV.times || '').replace(/\|/g, ' ');
|
||||
var gcal = 'https://calendar.google.com/calendar/render?action=TEMPLATE&text=' + encodeURIComponent(title) +
|
||||
'&dates=' + f(st) + '/' + f(en) + '&details=' + encodeURIComponent(details) + '&location=' + encodeURIComponent(EV.meetUrl || '');
|
||||
var row = document.createElement('div');
|
||||
row.style.cssText = 'display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;';
|
||||
var btnCss = 'display:block;text-align:center;text-decoration:none;background:rgba(212,175,55,.08);border:1px solid rgba(212,175,55,.35);' +
|
||||
'color:#f3c34a;font-size:13px;font-weight:700;padding:10px 8px;border-radius:10px;';
|
||||
var g = document.createElement('a');
|
||||
g.href = gcal; g.target = '_blank'; g.rel = 'noopener'; g.textContent = '📅 Google Calendar'; g.style.cssText = btnCss;
|
||||
g.addEventListener('click', done);
|
||||
var a = document.createElement('a');
|
||||
a.href = '/announce.ics'; a.setAttribute('download', 'rm-circle-huddle.ics'); a.textContent = '📅 Apple / Outlook'; a.style.cssText = btnCss;
|
||||
a.addEventListener('click', done);
|
||||
row.appendChild(g); row.appendChild(a); foot.appendChild(row);
|
||||
}
|
||||
|
||||
if (EV.meetUrl) {
|
||||
var link = document.createElement('div');
|
||||
link.textContent = EV.meetUrl.replace(/^https?:\/\//, '');
|
||||
|
||||
Reference in New Issue
Block a user