VIP get Pass

test
document.addEventListener('DOMContentLoaded', function() { function getQueryParams() { var params = {}; var queryString = window.location.search.substring(1); var queryArray = queryString.split('&'); queryArray.forEach(function(param) { var keyValue = param.split('='); var key = decodeURIComponent(keyValue[0]); var value = decodeURIComponent(keyValue[1] ? keyValue[1].replace(/\+/g, ' ') : ''); params[key] = value; }); return params; } var queryParams = getQueryParams(); var firstName = queryParams.firstname || ''; var lastName = queryParams.lastname || ''; var email = queryParams.email || ''; document.getElementById('createPassButton').addEventListener('click', function() { var button = this; if (!email || !firstName || !lastName) { alert('First name, last name, or email not found. Please ensure you are using the correct link.'); return; } button.textContent = "Creating your VIP pass"; button.disabled = true; var apiUrl = 'https://app2.walletpush.io/api/v1/templates/5883374465449984/pass'; var apiHeaders = { 'Authorization': 'cBraMzhEWuegDPiWmtismKfSTkppPRLdryGRPjQypFoGguayTVyFjQJtonXBTRjv', 'Content-Type': 'application/json' }; var apiBody = JSON.stringify({ 'First_Name': firstName, 'Last_Name': lastName, 'Email': email }); fetch(apiUrl, { method: 'POST', headers: apiHeaders, body: apiBody }) .then(response => response.json()) .then(data => { console.log("Pass creation response:", data); if (data.url && data.serialNumber && data.passTypeIdentifier) { // Now send data to your webhook (if needed) var webhookUrl = 'https://services.leadconnectorhq.com/hooks/XRM75B8qGWdhdYgBquSc/webhook-trigger/b99e99e1-36f9-42f1-a9d3-bbc40e76e81c'; var webhookBody = JSON.stringify({ 'email': email, 'serialNumber': data.serialNumber, 'passTypeIdentifier': data.passTypeIdentifier, 'url': data.url, 'device': /iPhone|iPad|iPod|Android/i.test(navigator.userAgent) ? 'mobile' : 'desktop' }); fetch(webhookUrl, { method: 'POST', headers: {'Content-Type': 'application/json'}, body: webhookBody }) .then(webhookResponse => { if (!webhookResponse.ok) { console.error('Webhook failed.'); alert('Failed to send webhook. Please try again.'); button.textContent = "Get my VIP pass"; button.disabled = false; return; } console.log('Webhook sent successfully.'); button.textContent = "Pass Created"; var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); if (isMobile) { // Log out the original data.url console.log("Original pass URL:", data.url); // Conditionally replace '?t=' only if it exists var pkpassUrl = data.url; if (pkpassUrl.includes('?t=')) { pkpassUrl = pkpassUrl.replace('?t=', '.pkpass?t='); } // Final check console.log("Final PKPass URL:", pkpassUrl); // Redirect on mobile window.location.href = pkpassUrl; } else { alert('You can only download your pass on mobile. We have just emailed it to you.'); } }) .catch(webhookError => { console.error('Webhook error:', webhookError); alert('An error occurred while sending the webhook. Please try again.'); button.textContent = "Get my VIP pass"; button.disabled = false; }); } else { alert('Failed to create the pass. Please try again.'); button.textContent = "Get my VIP pass"; button.disabled = false; } }) .catch(error => { console.error('Error:', error); alert('An error occurred. Please try again.'); button.textContent = "Get my VIP pass"; button.disabled = false; }); }); });