google-site-verification: google4596caf58a825398.html
// File: public/quiz-scoring.js
export function calculateTravelStyle(formData) {
// Initialize scores
let scores = {
'luxuryLeisureLover': 0,
'culturalExplorer': 0,
'adventureSeeker': 0,
'culinaryConnoisseur': 0,
'mindfulWanderer': 0
};
// Map questions to their point values
const pointMapping = {
// Tiebreaker questions (2 points)
'question1': {
'A': ['luxuryLeisureLover', 2],
'B': ['culturalExplorer', 2],
'C': ['adventureSeeker', 2],
'D': ['culinaryConnoisseur', 2],
'E': ['mindfulWanderer', 2]
},
'question2': {
'A': ['luxuryLeisureLover', 2],
'B': ['culturalExplorer', 2],
'C': ['adventureSeeker', 2],
'D': ['culinaryConnoisseur', 2],
'E': ['mindfulWanderer', 2]
},
'question3': {
'A': ['luxuryLeisureLover', 2],
'B': ['culturalExplorer', 2],
'C': ['adventureSeeker', 2],
'D': ['culinaryConnoisseur', 2],
'E': ['mindfulWanderer', 2]
},
'question9': {
'A': ['luxuryLeisureLover', 2],
'B': ['culturalExplorer', 2],
'C': ['adventureSeeker', 2],
'D': ['mindfulWanderer', 2],
'E': ['culinaryConnoisseur', 2]
},
'question15': {
'A': ['luxuryLeisureLover', 2],
'B': ['culturalExplorer', 2],
'C': ['adventureSeeker', 2],
'D': ['culinaryConnoisseur', 2],
'E': ['mindfulWanderer', 2]
},
// Regular questions (1 point)
'question4': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['culinaryConnoisseur', 1],
'E': ['mindfulWanderer', 1]
},
'question5': {
'A': ['mindfulWanderer', 1],
'B': ['luxuryLeisureLover', 1],
'C': ['culturalExplorer', 1],
'D': ['culinaryConnoisseur', 1],
'E': ['adventureSeeker', 1]
},
'question6': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['mindfulWanderer', 1],
'E': ['culinaryConnoisseur', 1]
},
'question7': {
'A': ['culturalExplorer', 1],
'B': ['luxuryLeisureLover', 1],
'C': ['mindfulWanderer', 1],
'D': ['culinaryConnoisseur', 1],
'E': ['adventureSeeker', 1]
},
'question8': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['culinaryConnoisseur', 1],
'D': ['mindfulWanderer', 1],
'E': ['adventureSeeker', 1]
},
'question10': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['mindfulWanderer', 1],
'D': ['adventureSeeker', 1],
'E': ['culinaryConnoisseur', 1]
},
'question11': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['culinaryConnoisseur', 1],
'E': ['mindfulWanderer', 1]
},
'question12': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['mindfulWanderer', 1],
'E': ['culinaryConnoisseur', 1]
},
'question13': {
'A': ['luxuryLeisureLover', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['culinaryConnoisseur', 1],
'E': ['mindfulWanderer', 1]
},
'question14': {
'A': ['mindfulWanderer', 1],
'B': ['culturalExplorer', 1],
'C': ['adventureSeeker', 1],
'D': ['luxuryLeisureLover', 1],
'E': ['culinaryConnoisseur', 1]
}
};
// Process form data and calculate scores
for (const [questionId, answer] of Object.entries(formData)) {
if (pointMapping[questionId] && pointMapping[questionId][answer]) {
const [style, points] = pointMapping[questionId][answer];
scores[style] += points;
}
}
// Find the highest score
let maxScore = 0;
let result = '';
for (const [style, score] of Object.entries(scores)) {
if (score > maxScore) {
maxScore = score;
result = style;
}
}
// Map result to page URL
const resultPages = {
'luxuryLeisureLover': '/luxury-leisure-lover',
'culturalExplorer': '/cultural-explorer',
'adventureSeeker': '/adventure-seeker',
'culinaryConnoisseur': '/culinary-connoisseur',
'mindfulWanderer': '/mindful-wanderer'
};
return resultPages[result] || '/quiz-results';
}
top of page
Selfie Stick Tripod with Bluetooth Remote
Vacuum Storage Bags with Electric Air Pump
Travel Aromatherapy Diffusers
Poo-Pourri Before-You-go Toilet Spray
Hybrid Active Noise Canceling Headphones,
Travel 3 in 1 Charging Station
Travel Bottles Set for Toiletries
Out of gallerybottom of page