сreative design community
сreative design community
Что вас ждет в 2025 году

Что вас ждет в 2025 году

Результат

const quizData = { questions: [ { question: "Как вы обычно встречаете Новый год?", answers: [ "В шумной компании друзей", "В кругу семьи", "В путешествии", "В одиночестве с хорошей книгой" ] }, { question: "Какой подарок вы бы хотели получить в новом году?", answers: [ "Путешествие в экзотическую страну", "Новый гаджет или технику", "Что-то для души (книги, музыка)", "Деньги или сертификат" ] }, { question: "Какие перемены вы ждете в 2025 году?", answers: [ "Карьерный рост", "Личное счастье", "Новые знакомства", "Саморазвитие" ] }, { question: "Какое время года вам нравится больше всего?", answers: [ "Зима", "Весна", "Лето", "Осень" ] }, { question: "Как вы относитесь к переменам в жизни?", answers: [ "Обожаю перемены", "Принимаю их спокойно", "Немного опасаюсь", "Предпочитаю стабильность" ] }, { question: "Что для вас самое важное в жизни?", answers: [ "Семья и отношения", "Карьера и успех", "Саморазвитие", "Путешествия и впечатления" ] }, { question: "Какой цвет вам больше всего нравится?", answers: [ "Золотой", "Синий", "Зеленый", "Красный" ] } ], results: [ { title: "Год великих достижений", description: "2025 год станет для вас годом невероятных свершений! Звезды говорят, что вас ждет стремительный карьерный рост и признание ваших талантов. Ваша целеустремленность и трудолюбие принесут долгожданные плоды. Ожидайте повышения или успешного запуска собственного проекта!", image: "path-to-achievement-image.jpg" }, { title: "Год любви и гармонии", description: "В 2025 году вас ожидает расцвет в личной жизни! Одинокие встретят свою вторую половинку, а те, кто уже в отношениях, выйдут на новый уровень близости и понимания. Год будет наполнен романтикой, приятными сюрпризами и теплыми моментами с близкими людьми.", image: "path-to-love-image.jpg" }, { title: "Год путешествий и открытий", description: "2025 год принесет вам множество увлекательных путешествий и новых открытий! Вас ждут яркие приключения, знакомства с интересными людьми и погружение в разные культуры. Это идеальное время для расширения горизонтов и получения незабываемых впечатлений.", image: "path-to-travel-image.jpg" }, { title: "Год творческого прорыва", description: "В 2025 году раскроется ваш творческий потенциал! Вас ждет вдохновение, новые идеи и возможности для самовыражения. Это отличное время для начала творческих проектов, обучения новым навыкам и развития талантов.", image: "path-to-creativity-image.jpg" }, { title: "Год финансового успеха", description: "2025 год станет для вас годом финансового процветания! Вас ждут выгодные сделки, успешные инвестиции и рост доходов. Ваше материальное положение значительно улучшится, открывая новые возможности для реализации давних желаний.", image: "path-to-success-image.jpg" } ] };
// DOM Elements console.log('Script starting...'); const quizScreen = document.getElementById('quiz-screen'); const resultScreen = document.getElementById('result-screen'); const restartButton = document.getElementById('restart-quiz'); const questionContainer = document.getElementById('question-container'); const progressBar = document.querySelector('.progress'); const resultContent = document.getElementById('result-content'); const resultImage = document.getElementById('result-image'); const audioButton = document.getElementById('toggleAudio'); const backgroundMusic = document.getElementById('background-music'); // Quiz State let currentQuestion = 0; let userAnswers = []; let userName = 'Гость'; // Default name // Wait for DOM to be fully loaded document.addEventListener('DOMContentLoaded', () => { console.log('DOM fully loaded'); // Audio Control let isMusicPlaying = false; audioButton.addEventListener('click', () => { console.log('Audio button clicked'); if (isMusicPlaying) { backgroundMusic.pause(); audioButton.innerHTML = ''; } else { backgroundMusic.play(); audioButton.innerHTML = ''; } isMusicPlaying = !isMusicPlaying; }); // Restart Quiz restartButton.addEventListener('click', () => { currentQuestion = 0; userAnswers = []; resultScreen.classList.remove('active'); quizScreen.classList.add('active'); showQuestion(); }); // Share buttons document.querySelectorAll('.share-btn').forEach(button => { button.addEventListener('click', () => { const platform = button.dataset.platform; const result = calculateResult(); const text = encodeURIComponent(`Мой результат: ${result.title}`); const url = encodeURIComponent(window.location.href); let shareUrl = ''; switch(platform) { case 'vk': shareUrl = `https://vk.com/share.php?url=${url}&title=${text}`; break; case 'facebook': shareUrl = `https://www.facebook.com/sharer/sharer.php?u=${url}"e=${text}`; break; case 'twitter': shareUrl = `https://twitter.com/intent/tweet?text=${text}&url=${url}`; break; } window.open(shareUrl, '_blank'); }); }); // Download result document.getElementById('download-result').addEventListener('click', () => { html2canvas(document.getElementById('result-image')).then(canvas => { const link = document.createElement('a'); link.download = 'my-2025-prediction.png'; link.href = canvas.toDataURL(); link.click(); }); }); // Start the quiz immediately quizScreen.classList.add('active'); showQuestion(); }); // Show Question function showQuestion() { console.log('Showing question:', currentQuestion); const question = quizData.questions[currentQuestion]; const progress = ((currentQuestion + 1) / quizData.questions.length) * 100; progressBar.style.width = `${progress}%`; questionContainer.innerHTML = `

${question.question}

${question.answers.map((answer, index) => ` `).join('')}
`; } // Select Answer function selectAnswer(answerIndex) { console.log('Answer selected:', answerIndex); userAnswers.push(answerIndex); if (currentQuestion < quizData.questions.length - 1) { currentQuestion++; showQuestion(); } else { showResult(); } } // Calculate Result function calculateResult() { console.log('Calculating result...'); // Simple algorithm to determine result based on answers const answerSum = userAnswers.reduce((a, b) => a + b, 0); const resultIndex = Math.floor((answerSum / userAnswers.length) % quizData.results.length); return quizData.results[resultIndex]; } // Show Result function showResult() { console.log('Showing result...'); const result = calculateResult(); quizScreen.classList.remove('active'); resultScreen.classList.add('active'); resultContent.innerHTML = `

${result.title}

${result.description.replace('{name}', userName)}

`; createResultImage(); } // Create Result Image function createResultImage() { console.log('Creating result image...'); const result = calculateResult(); resultImage.innerHTML = `

${result.title}

${result.description.replace('{name}', userName)}

`; }
:root { --primary-color: #0B0B0B; --secondary-color: #1A1A1A; --accent-color: #FFD700; --text-color: #FFFFFF; --font-primary: 'Montserrat', sans-serif; } * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: var(--font-primary); background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7)), url('https://images.unsplash.com/photo-1482517967863-00e15c9b44be?auto=format&fit=crop&w=1920&q=80'); background-size: cover; background-position: center; background-attachment: fixed; color: var(--text-color); min-height: 100vh; position: relative; } .container { max-width: 800px; margin: 0 auto; padding: 2rem; min-height: 100vh; display: flex; flex-direction: column; justify-content: center; } .screen { display: none; background: rgba(26, 26, 26, 0.9); backdrop-filter: blur(10px); border-radius: 20px; padding: 2rem; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3); border: 1px solid rgba(255, 255, 255, 0.1); } .screen.active { display: block; animation: fadeIn 0.5s ease; } h1, h2, h3 { color: var(--accent-color); text-align: center; margin-bottom: 1.5rem; font-weight: 700; text-transform: uppercase; letter-spacing: 2px; } .progress-bar { width: 100%; height: 6px; background: rgba(255, 255, 255, 0.1); border-radius: 3px; margin: 2rem 0; overflow: hidden; } .progress { width: 0%; height: 100%; background: var(--accent-color); transition: width 0.3s ease; } .question { text-align: center; } .answers { display: grid; gap: 1rem; margin-top: 2rem; } .answer-btn { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.2); color: var(--text-color); padding: 1rem; border-radius: 10px; cursor: pointer; transition: all 0.3s ease; font-size: 1rem; font-family: var(--font-primary); } .answer-btn:hover { background: var(--accent-color); color: var(--primary-color); transform: translateY(-2px); } .btn { background: var(--accent-color); color: var(--primary-color); border: none; padding: 1rem 2rem; border-radius: 10px; cursor: pointer; font-weight: 600; transition: all 0.3s ease; font-family: var(--font-primary); text-transform: uppercase; letter-spacing: 1px; margin: 0.5rem; } .btn:hover { transform: translateY(-2px); box-shadow: 0 5px 15px rgba(255, 215, 0, 0.3); } .share-buttons { display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem; margin: 2rem 0; } .share-btn { display: flex; align-items: center; gap: 0.5rem; } .result-card { background: rgba(26, 26, 26, 0.95); padding: 2rem; border-radius: 15px; text-align: center; margin: 2rem 0; border: 1px solid var(--accent-color); } .result-image { margin: 2rem 0; } .audio-control { position: fixed; top: 1rem; right: 1rem; z-index: 1000; } .audio-btn { background: rgba(26, 26, 26, 0.9); border: 1px solid var(--accent-color); color: var(--accent-color); width: 40px; height: 40px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.3s ease; } .audio-btn:hover { background: var(--accent-color); color: var(--primary-color); } /* Snowflakes Animation */ .snowflakes { position: fixed; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none; z-index: 1; } .snowflake { position: fixed; color: rgba(255, 215, 0, 0.3); font-size: 1.5em; animation: fall linear infinite; } @keyframes fall { 0% { transform: translateY(-100vh) rotate(0deg); } 100% { transform: translateY(100vh) rotate(360deg); } } .snowflake:nth-child(1) { left: 10%; animation-duration: 10s; animation-delay: -2s; } .snowflake:nth-child(2) { left: 20%; animation-duration: 12s; animation-delay: 0s; } .snowflake:nth-child(3) { left: 30%; animation-duration: 9s; animation-delay: -1s; } .snowflake:nth-child(4) { left: 40%; animation-duration: 11s; animation-delay: -3s; } .snowflake:nth-child(5) { left: 50%; animation-duration: 13s; animation-delay: -5s; } .snowflake:nth-child(6) { left: 60%; animation-duration: 10s; animation-delay: -7s; } .snowflake:nth-child(7) { left: 70%; animation-duration: 12s; animation-delay: -2s; } .snowflake:nth-child(8) { left: 80%; animation-duration: 9s; animation-delay: -4s; } .snowflake:nth-child(9) { left: 90%; animation-duration: 11s; animation-delay: -6s; } .snowflake:nth-child(10) { left: 95%; animation-duration: 13s; animation-delay: -8s; } @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } } /* Responsive Design */ @media (max-width: 768px) { .container { padding: 1rem; } .screen { padding: 1.5rem; } .answers { grid-template-columns: 1fr; } .share-buttons { flex-direction: column; } .btn { width: 100%; margin: 0.5rem 0; } } /* Kentron Community Footer */ .result-footer { margin-top: 2rem; padding-top: 1rem; border-top: 1px solid rgba(255, 215, 0, 0.2); font-size: 0.9rem; color: rgba(255, 255, 255, 0.7); } .result-footer a { color: var(--accent-color); text-decoration: none; } .result-footer a:hover { text-decoration: underline; }