𝗢𝘃𝗲𝗿 𝗼𝗻𝘀

𝗩𝗮𝗻 𝗴𝗿𝗼𝗼𝘁 𝗻𝗮𝗮𝗿 𝗸𝗹𝗲𝗶𝗻

𝗪𝗮𝘁 𝘂 𝗼𝗼𝗸 𝘄𝗶𝗹𝘁 𝘃𝗲𝗿𝘀𝘁𝘂𝗿𝗲𝗻, 𝘄𝗶𝗷 𝗿𝗲𝗴𝗲𝗹𝗲𝗻 𝗵𝗲𝘁! 𝗩𝗮𝗻 𝗴𝗿𝗼𝗼𝘁 𝘁𝗼𝘁 𝗸𝗹𝗲𝗶𝗻, 𝗺𝗲𝘁 𝗼𝗻𝘇𝗲 𝗱𝗶𝘃𝗲𝗿𝘀𝗲 𝘃𝗼𝗲𝗿𝘁𝘂𝗶𝗴𝗲𝗻 𝗶𝘀 𝗻𝗶𝗲𝘁𝘀 𝘁𝗲 𝗴𝗿𝗼𝗼𝘁 𝗼𝗳 𝘁𝗲 𝗸𝗹𝗲𝗶𝗻.

𝗢𝘃𝗲𝗿𝗱𝗮𝗴 𝗼𝗳 𝗩𝗮𝗻𝗻𝗮𝗰𝗵𝘁

𝗢𝗳 𝗵𝗲𝘁 𝗻𝗼𝘂 𝗱𝗮𝗴 𝗼𝗳 𝗻𝗮𝗰𝗵𝘁 𝗶𝘀, 𝗺𝗮𝗮𝗸𝘁 𝘃𝗼𝗼𝗿 𝗪𝗲𝘀𝗵𝗶𝗽+ 𝗻𝗶𝗸𝘀 𝘂𝗶𝘁. 𝗪𝗶𝗷 𝘇𝗶𝗷𝗻 𝗲𝗲𝗻 𝘁𝗿𝗮𝗻𝘀𝗽𝗼𝗿𝘁𝗯𝗲𝗱𝗿𝗶𝗷𝗳 𝗱𝗶𝗲 24 𝘂𝘂𝗿 𝗽𝗲𝗿 𝗱𝗮𝗴 𝗲𝗻 7 𝗱𝗮𝗴𝗲𝗻 𝗶𝗻 𝗱𝗲 𝘄𝗲𝗲𝗸 𝘃𝗼𝗼𝗿 𝘂 𝗸𝗹𝗮𝗮𝗿𝘀𝘁𝗮𝗮𝘁! 𝗗𝗮𝘁 𝗺𝗮𝗮𝗸𝘁 𝗼𝗻𝘀 𝘂𝗻𝗶𝗲𝗸.

𝗣𝗿𝗼𝗳𝗲𝘀𝘀𝗶𝗼𝗻𝗮𝗹𝗶𝘁𝗲𝗶𝘁

𝗠𝗲𝘁 𝗼𝗻𝘇𝗲 𝗴𝗲𝗮𝘃𝗮𝗻𝗰𝗲𝗲𝗿𝗱𝗲 𝘁𝗲𝗰𝗵𝗻𝗼𝗹𝗼𝗴𝗶𝗲 𝗲𝗻 𝘀𝘁𝗿𝗶𝗸𝘁𝗲 𝗽𝗿𝗼𝗰𝗲𝗱𝘂𝗿𝗲𝘀 𝘇𝗼𝗿𝗴𝗲𝗻 𝘄𝗲 𝗲𝗿𝘃𝗼𝗼𝗿 𝗱𝗮𝘁 𝗲𝗹𝗸𝗲 𝘇𝗲𝗻𝗱𝗶𝗻𝗴 𝘇𝗼𝗿𝗴𝘃𝘂𝗹𝗱𝗶𝗴 𝘄𝗼𝗿𝗱𝘁 𝗯𝗲𝗵𝗮𝗻𝗱𝗲𝗹𝗱. 𝗩𝗮𝗻 𝗵𝗲𝘁 𝗺𝗼𝗺𝗲𝗻𝘁 𝘃𝗮𝗻 𝗼𝗽𝗵𝗮𝗹𝗲𝗻 𝘁𝗼𝘁 𝗱𝗲 𝗮𝗳𝗹𝗲𝘃𝗲𝗿𝗶𝗻𝗴 𝗮𝗮𝗻 𝗱𝗲 𝗱𝗲𝘂𝗿.


𝗗𝗶𝗲𝗻𝘀𝘁𝗲𝗻

𝗧𝗿𝗮𝗰𝗸 & 𝗧𝗿𝗮𝗰𝗲

Wilt u uw zending in de gaten houden tijdns transport? Dat is geen enkel probleem. Dit is bij ons zeker mogelijk. U kunt de live locatie van onze koerier bekijken en dus een exacte tijd bekijk van wanneer uw bestelling word geleverd.

 

𝗥𝗼𝘂𝘁𝗲𝘀

Wij baseren onze routes op de meest duurzaamste manier. Wij leveren zoveel mogelijk pakketten op 1 route. Onze route worden op efficiente manieren geproduceerd. Dat is een snellere levering voor u, en een beter mileu voor ons allemaal!

 

𝗦𝗽𝗼𝗲𝗱𝗹𝗲𝘃𝗲𝗿𝗶𝗻𝗴𝗲𝗻

Wij bieden ook spoedleveringen aan. Moet u nou een pakket ZSM geleverd hebben? Dan bent u bij WeShip+ aan het juiste adres! Wij staan 24/7 klaar voor uw leveringen. Een spoedlevering word voorgenomen op alle andere zendingen, en word sneller bezorgd. Mestaal zal dit worden opgenomen binnen 5 minuten tijd.

24/7 𝗗𝗶𝗲𝗻𝘀𝘁

Ja u ziet het goed! Wij bieden 24/7 diensten aan. Wij zijn 24 uur per dag en 7 dagen per week beschikbaar voor uw bestellingen! Wij zijn net zo snel in de nacht als wij overdag ook zijn!


document.addEventListener('DOMContentLoaded', () => { const roleSelection = document.getElementById('role-selection'); const managerDashboard = document.getElementById('manager-dashboard'); const driverDashboard = document.getElementById('driver-dashboard'); const managerBtn = document.getElementById('manager-btn'); const driverBtn = document.getElementById('driver-btn'); const managerBackBtn = document.getElementById('manager-back-btn'); const driverBackBtn = document.getElementById('driver-back-btn'); const orderForm = document.getElementById('order-form'); const ordersListManager = document.getElementById('orders-list-manager'); const ordersListDriver = document.getElementById('orders-list-driver'); const driverFilterInput = document.getElementById('driver-filter'); // Delivery status colors const statusColors = { delivered: 'bg-green-200 text-green-800', not_home: 'bg-orange-200 text-orange-800', not_delivered: 'bg-red-200 text-red-800', }; // Orders data structure: array of {id, customer, address, driver, status} let orders = []; // Load orders from localStorage if available function loadOrders() { const saved = localStorage.getItem('weship_orders'); if (saved) { orders = JSON.parse(saved); } } // Save orders to localStorage function saveOrders() { localStorage.setItem('weship_orders', JSON.stringify(orders)); } // Render orders for manager dashboard function renderManagerOrders() { ordersListManager.innerHTML = ''; orders.forEach(order => { const tr = document.createElement('tr'); tr.innerHTML = ` ${order.customer} ${order.address} ${order.driver} ${formatStatus(order.status)} `; ordersListManager.appendChild(tr); }); } // Render orders for driver dashboard filtered by driver name function renderDriverOrders(driverName) { ordersListDriver.innerHTML = ''; if (!driverName) return; const filtered = orders.filter(o => o.driver.toLowerCase() === driverName.toLowerCase()); filtered.forEach(order => { const tr = document.createElement('tr'); tr.innerHTML = ` ${order.customer} ${order.address} ${formatStatus(order.status)} `; ordersListDriver.appendChild(tr); }); // Add event listeners to selects document.querySelectorAll('.status-select').forEach(select => { select.addEventListener('change', (e) => { const id = e.target.getAttribute('data-id'); const newStatus = e.target.value; updateOrderStatus(id, newStatus); }); }); } // Format status text function formatStatus(status) { switch (status) { case 'delivered': return 'Delivered'; case 'not_home': return 'Not Home'; case 'not_delivered': return 'Not Delivered'; default: return ''; } } // Update order status by id function updateOrderStatus(id, newStatus) { const order = orders.find(o => o.id === id); if (order) { order.status = newStatus; saveOrders(); renderManagerOrders(); } } // Add new order orderForm.addEventListener('submit', (e) => { e.preventDefault(); const customer = document.getElementById('customer-name').value.trim(); const address = document.getElementById('address').value.trim(); const driver = document.getElementById('driver-name').value.trim(); if (!customer || !address || !driver) return; const newOrder = { id: Date.now().toString(), customer, address, driver, status: 'not_delivered', }; orders.push(newOrder); saveOrders(); renderManagerOrders(); orderForm.reset(); }); // Role selection buttons managerBtn.addEventListener('click', () => { roleSelection.classList.add('hidden'); managerDashboard.classList.remove('hidden'); loadOrders(); renderManagerOrders(); }); driverBtn.addEventListener('click', () => { roleSelection.classList.add('hidden'); driverDashboard.classList.remove('hidden'); driverFilterInput.value = ''; ordersListDriver.innerHTML = ''; }); // Back buttons managerBackBtn.addEventListener('click', () => { managerDashboard.classList.add('hidden'); roleSelection.classList.remove('hidden'); }); driverBackBtn.addEventListener('click', () => { driverDashboard.classList.add('hidden'); roleSelection.classList.remove('hidden'); }); // Driver filter input event driverFilterInput.addEventListener('input', (e) => { const name = e.target.value.trim(); renderDriverOrders(name); }); // Initial load loadOrders(); });