/**
* AUTOMATISCHER KALENDER-EINTRAG FÜR VERBRAUCHERSCHUTZ WESER-EMS E.V.
* Verknüpft Google Forms direkt mit termin.vweev.de (Google Kalender)
*/
function createCalendarEvent(e) {
try {
// 1. IHR GOOGLE KALENDER
// Tragen Sie hier die E-Mail-Adresse ein, die mit termin.vweev.de verknüpft ist.
var calendarId = „IHRE-EMAIL@DEINE-DOMAIN.DE“;
var calendar = CalendarApp.getCalendarById(calendarId);
if (!calendar) {
Logger.log(„Fehler: Kalender konnte nicht gefunden werden. Bitte E-Mail-Adresse/ID prüfen.“);
return;
}
// 2. FORMULAR-ANTWORTEN AUSLESEN
var itemResponses = e.response.getItemResponses();
// Die Antworten entsprechend der Reihenfolge im Formular zuweisen:
var name = itemResponses[0] ? itemResponses[0].getResponse() : „Unbekannt“;
var email = itemResponses[1] ? itemResponses[1].getResponse() : „“;
var phone = itemResponses[2] ? itemResponses[2].getResponse() : „Nicht angegeben“;
var topic = itemResponses[3] ? itemResponses[3].getResponse() : „Allgemeines Anliegen“;
var dateStr = itemResponses[4] ? itemResponses[4].getResponse() : „“; // Format: YYYY-MM-DD
var timeStr = itemResponses[5] ? itemResponses[5].getResponse() : „“; // Format: HH:MM
var details = itemResponses[6] ? itemResponses[6].getResponse() : „Keine zusätzlichen Anmerkungen“;
// Falls Datum oder Uhrzeit fehlen, Vorgabe nutzen
if (!dateStr || !timeStr) {
Logger.log(„Datum oder Uhrzeit fehlen. Es konnte kein präziser Termin angelegt werden.“);
return;
}
// 3. DATUM UND UHRZEIT ZUSAMMENSETZEN (Termindauer: 45 Minuten)
var startDateTime = new Date(dateStr + „T“ + timeStr + „:00“);
var endDateTime = new Date(startDateTime.getTime() + (45 * 60 * 1000));
// 4. TITEL UND BESCHREIBUNG DES TERMINS ERSTELLEN
var eventTitle = „Beratung: “ + name + “ | “ + topic;
var eventDescription = „ONLINE-BERATUNG / ANFRAGE\n“ +
„—————————————-\n“ +
„Name: “ + name + „\n“ +
„E-Mail: “ + email + „\n“ +
„Telefon: “ + phone + „\n“ +
„Thema: “ + topic + „\n“ +
„Anmerkungen: “ + details + „\n\n“ +
„Verbraucherschutz-Weser-Ems e.V.\n“ +
„Terminverwaltung: https://termin.vweev.de“;
// 5. TERMIN IM GOOGLE KALENDER ANLEGEN
var options = {
description: eventDescription,
sendInvites: true // Sendet dem Kunden automatisch eine Kalendereinladung per E-Mail
};
if (email && email.indexOf(„@“) !== -1) {
options.guests = email;
}
calendar.createEvent(eventTitle, startDateTime, endDateTime, options);
Logger.log(„Termin erfolgreich angelegt für: “ + name);
} catch (error) {
Logger.log(„Fehler beim Erstellen des Kalendereintrags: “ + error.toString());
}
}