الملفات
talabatuk_plus_1/join.js
Muhammad Kadi 9708ac6a37 compressImage
2026-03-30 19:08:18 +04:00

83 أسطر
3.3 KiB
JavaScript

/* ============================================
join.js - طلباتك بلس - صفحة تسجيل السائق
============================================ */
const API_URL = `/api/join`;
const form = document.getElementById('driverForm');
const btn = document.getElementById('submitBtn');
const photoInput = document.getElementById('photoInput');
// --- عرض معاينة الصورة الشخصية عند اختيارها ---
photoInput.addEventListener('change', () => {
const preview = document.getElementById('fileNamePreview');
const previewContainer = document.getElementById('imagePreviewContainer');
const imagePreview = document.getElementById('imagePreview');
const file = photoInput.files[0];
if (file) {
preview.innerText = file.name;
const reader = new FileReader();
reader.onload = (e) => {
imagePreview.src = e.target.result;
previewContainer.classList.remove('hidden');
};
reader.readAsDataURL(file);
} else {
preview.innerText = '';
previewContainer.classList.add('hidden');
}
});
// --- إرسال النموذج ---
form.addEventListener('submit', async (e) => {
e.preventDefault();
btn.disabled = true;
btn.innerText = 'جاري إرسال طلبك...';
const formData = new FormData(form);
const photoFile = photoInput.files[0];
const idFrontFile = document.getElementById('idFrontInput').files[0];
const idBackFile = document.getElementById('idBackInput').files[0];
const message =
`🚀 *طلب انضمام جديد (طلباتك بلس)* \n\n` +
`👤 *الاسم:* ${formData.get('name')}\n` +
`📱 *الجوال:* ${formData.get('phone')}\n` +
`🎂 *العمر:* ${formData.get('age')}\n` +
`🆔 *الرقم الوطني:* ${formData.get('nationalId')}\n` +
`📍 *العنوان:* ${formData.get('address')}\n` +
`🛵 *نوع المركبة:* ${formData.get('vehicleType')}\n` +
`🔢 *هل منمرة:* ${formData.get('isNumbered')}\n` +
`📄 *رقم اللوحة:* ${formData.get('plateNumber') || 'لا يوجد'}\n` +
`💡 *عمل سابقاً في التوصيل:* ${formData.get('previousExperience')}\n` +
`🗺️ *خبرة بمناطق حلب:* ${formData.get('aleppKnowledge')}\n\n` +
`✅ *موافق على الشروط والتأمين*`;
try {
const backendFormData = new FormData();
backendFormData.append('photo', photoFile);
backendFormData.append('idFront', idFrontFile);
backendFormData.append('idBack', idBackFile);
backendFormData.append('message', message);
const response = await fetch(API_URL, {
method: 'POST',
body: backendFormData
});
const result = await response.json();
if (result.ok) {
window.location.href = 'success.html';
} else {
alert('حدث خطأ في الإرسال: ' + (result.description || 'فشل إرسال الطلب.'));
}
} catch (error) {
alert('فشل الاتصال بالخادم.');
} finally {
btn.disabled = false;
btn.innerText = 'إرسال طلب الانضمام';
}
});