function doPost(e) {
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Заказы");
const data = JSON.parse(e.postData.contents);
// Очистка номера телефона: убираем пробелы, скобки, дефисы и "+"
if (data.phone) {
data.phone = data.phone.replace(/[^0-9]/g, ''); // только цифры
if (data.phone.startsWith('0')) {
data.phone = '38' + data.phone; // если без кода страны — добавим 38
}
}
const row = [
data.date, // A — Дата
data.time, // B — Час
'', // C — Час запису в ЕСМ
'', // D — Відділ
'', // E — Менеджер
data.name, // F — Ім'я клієнта
data.phone, // G — Номер клієнта
'', // H — ЮО/ФО
"Olimpeks (замовлення)",// I — Ресурс (сайт, Prom, Flagma)
'=INDEX(\'Реклама\'!C:R;MATCH(INDEX(T:T; ROW()); \'Реклама\'!D:D; 0);1)', // J — Формула (Рекламна кампанія)
data.product, // K — ЧИМ цікавився клієнт
data.quantity, // L — Кількість
'', // M — Результат обробки запиту
'', // N — № Паспорта
'', // O — Дата наступного дзвінка
'', // P — Рішення керівника
data.page_url, // Q — fullUrl
data.utm_source, // R — utm_source
data.utm_medium, // S — utm_medium
data.utm_campaign, // T — utm_campaign
data.utm_content, // U — utm_content
data.utm_term, // V — utm_term
data.ip, // W — IP
data.country, // X — Country
data.region, // Y — Region
data.city // Z — City
];
// ✅ вставка строки с сохранением структуры
sheet.getRange(sheet.getLastRow() + 1, 1, 1, row.length).setValues([row]);
return ContentService.createTextOutput("OK").setMimeType(ContentService.MimeType.TEXT);
}