// تمام ۱۲ کتاب با جزئیات کامل از نود Google Sheet دریافت میشود
const booksData = $input.all();
// ====== پیشفرضهای مهم ======
// فرض کردهایم که:
// ۱. کاربر در فرم اولیه، فازها را با چکباکسهایی با نامهای add_phase_1, add_phase_2, add_phase_3 انتخاب میکند.
// ۲. این مقادیر از نود Webhook قابل دسترسی هستند.
// ۳. در فایل Google Sheet شما، ستونی به نام image_url وجود دارد که لینک عکس جلد کتاب در آن است.
const webhookData = $(‘Webhook’).first().json.body;
const addPhase1 = webhookData.add_phase_1 === ‘true’ || webhookData.add_phase_1 === true;
const addPhase2 = webhookData.add_phase_2 === ‘true’ || webhookData.add_phase_2 === true;
const addPhase3 = webhookData.add_phase_3 === ‘true’ || webhookData.add_phase_3 === true;
// آرایهای برای نگهداری شناسههای محصول (فقط فازهای انتخابی)
const final_product_ids = [];
// شروع ساخت HTML برای سبد خرید جدید و زیبا
let simulated_cart_html = `
جزئیات سیر مطالعاتی انتخابی شما:
// تابع کمکی برای پردازش هر فاز
function processPhase(phaseNumber, shouldAdd) {
if (shouldAdd) {
const startIndex = (phaseNumber – 1) * 4;
const phaseBooks = booksData.slice(startIndex, startIndex + 4);
phaseBooks.forEach(bookItem => {
const book = bookItem.json;
final_product_ids.push(book.product_id);
simulated_cart_html += `
${book.name}
`;
});
}
}
// پردازش هر فاز بر اساس انتخاب کاربر
processPhase(1, addPhase1);
processPhase(2, addPhase2);
processPhase(3, addPhase3);
// بستن تگهای HTML
simulated_cart_html += `
این یک لیست ثابت از سیر مطالعاتی پیشنهادی برای شماست. برای تکمیل سفارش، روی بنر خرید در بالا کلیک کنید.
`;
// اگر هیچ فازی انتخاب نشده بود، پیام مناسب نمایش داده شود
if (final_product_ids.length === 0) {
simulated_cart_html = `
شما هیچ فازی را برای افزودن به سبد خرید انتخاب نکردهاید.
`;
}
// ساخت آبجکت خروجی نهایی برای ارسال به نود بعدی
// تمام دادههای قبلی به همراه ۲ متغیر جدید ارسال میشوند
const finalJson = {
…$item.json,
final_ids_string: final_product_ids.join(‘,’),
simulated_cart_html: simulated_cart_html,
};
return finalJson;