<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Spotify Premium</title>
<link rel="icon" href="assets/img/logo-spotify.png" type="image/x-icon">
<link href="https://fonts.googleapis.com/css2?family=Bangers&display=swap" rel="stylesheet">
<style>
html,
body {
margin: 0;
padding: 0;
height: 100%;
}
body {
font-family: 'Bangers', cursive;
background-image: url("assets/img/listing-music.jpg");
color: white;
background-size: cover;
background-position: center;
}
.body-container {
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: space-evenly;
background-color: rgba(0, 0, 0, 0.8);
}
.container-header,
.container-offer {
display: flex;
gap: 5px;
align-items: center;
flex-direction: column;
}
h1.title {
margin: 0;
font-size: 45px;
font-weight: 400;
/* line-height: 1.2; */
letter-spacing: 1px;
text-transform: uppercase;
text-align: center;
}
.title-text {
filter: drop-shadow(3px 2px 0px rgb(29, 185, 84));
}
.title-discount-text {
font-size: 35px;
color: red;
filter: drop-shadow(3px 2px 0px white);
}
.logo {
width: 100px;
}
.buttons {
display: flex;
flex-direction: column;
justify-content: center;
gap: 25px;
}
.buttons .button {
background-color: rgb(29, 185, 84);
padding: 10px 80px;
border-radius: 15px;
border: none;
color: white;
font-weight: bold;
font-size: 18px;
cursor: pointer;
box-shadow: 0 8px 0 #1aa34a, 0 8px 15px rgba(0, 0, 0, 0.3);
transition: all 0.2s ease;
transform: translateY(0);
flex: 1;
text-align: center;
letter-spacing: 2px;
text-decoration: none;
}
/* Effetto pressione al click */
.buttons .button:active {
box-shadow: 0 3px 0 #1aa34a, 0 4px 10px rgba(0, 0, 0, 0.2);
transform: translateY(5px);
}
.price span:nth-child(1) {
margin: 0;
position: relative;
display: inline-block;
}
.price span:nth-child(1)::after {
content: '';
position: absolute;
left: 0;
top: 50%;
width: 100%;
height: 3px;
background-color: black;
transform: translateY(-50%) rotate(-10deg);
z-index: 0;
}
.price {
display: flex;
flex-direction: row;
justify-content: center;
gap: 2px;
}
.button p {
margin: 0;
font-size: 20px;
filter: drop-shadow(2px 2px 0px black);
}
#toast-container {
position: fixed;
bottom: 20px;
left: 50%;
transform: translateX(-50%);
display: flex;
flex-direction: column;
gap: 10px;
z-index: 9999;
pointer-events: none;
}
.toast {
min-width: 250px;
background: white;
color: #28a745;
padding: 12px 20px;
border-radius: 5px;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
opacity: 0;
transform: translateY(40px);
animation: slideIn 0.5s forwards, fadeOut 0.5s forwards;
animation-delay: 0s, 3s;
}
@keyframes slideIn {
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeOut {
to {
opacity: 0;
transform: translateY(40px);
}
}
.container-offer span {
font-size: 20px;
/* filter: drop-shadow(3px 2px 0px red); */
}
.countdown {
font-size: 48px;
color: #ff3c3c;
/* filter: drop-shadow(3px 2px 0px white); */
/* background: #fff;
padding: 20px 40px;
border-radius: 12px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); */
}
</style>
</head>
<body>
<div class="body-container">
<div class="container-header">
<img class="logo" src="assets/img/logo-spotify.png">
<h1 class="title"><span class="title-text">spotify premium</span><br><span
class="title-discount-text">discount<br>save up to 70%</span></h1>
</div>
<div class="container-offer">
<span>Limited time offer – ends in:</span>
<div class="countdown" id="timer">--:--:--</div>
</div>
<div class="buttons">
<a href="https://t.me/spotifypremdiscount" class="button button-3-month" target="_blank">
<p class="subscription-period">3 months</p>
<p class="price"><span>32,97 €</span> <span>14,99 €</span></p>
</a>
<a href="https://t.me/spotifypremdiscount" class="button button-6-month" target="_blank">
<p class="subscription-period">6 months</p>
<p class="price"><span>65,94 €</span> <span>29,99 €</span></p>
</a>
<a href="https://t.me/spotifypremdiscount" class="button button-12-month" target="_blank">
<p class="subscription-period">12 months</p>
<p class="price"><span>131,88 €</span> <span>49,99 €</span></p>
</a>
</div>
<!-- <div class="discount"></div>
<div class="review"></div> -->
</div>
<div id="toast-container"></div>
<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-DFY3DTLDB4"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-DFY3DTLDB4');
</script>
<script>
const nomi = [
"Luca", "Giulia", "Marco", "Alessia", "Francesco", "Elena",
"John", "Emily", "Michael", "Emma", "David", "Sophia",
"Louis", "Chloé", "Émile", "Camille",
"Carlos", "Lucía", "Mateo", "Sofía",
"Lukas", "Mia", "Leon", "Hannah",
"Omar", "Layla", "Youssef", "Amina",
"Arjun", "Priya", "Ravi", "Anika",
"Dimitri", "Nina", "Ivan", "Katarina",
"Kwame", "Zuri", "Ayo", "Fatima",
"Kenji", "Yuki", "Min", "Soo"
];
const prodotti = ["3 months", "6 months", "12 months"];
function generaMessaggioCasuale() {
const nome = nomi[Math.floor(Math.random() * nomi.length)];
const durata = prodotti[Math.floor(Math.random() * prodotti.length)];
return `${nome} purchased a Spotify subscription for ${durata}`;
}
function mostraToast(messaggio) {
const container = document.getElementById('toast-container');
const toast = document.createElement('div');
toast.className = 'toast';
toast.textContent = messaggio;
container.appendChild(toast);
toast.addEventListener('animationend', (e) => {
if (e.animationName === 'fadeOut') {
toast.remove();
}
});
}
function cicloToastAutomatici() {
const delay = Math.random() * 19000 + 1000; // Tra 2000ms e 5000ms
setTimeout(() => {
mostraToast(generaMessaggioCasuale());
cicloToastAutomatici(); // Chiama ricorsivamente per mostrare il prossimo
}, delay);
}
// Avvia il ciclo all'avvio
setTimeout(() => {
mostraToast(generaMessaggioCasuale());
cicloToastAutomatici(); // Avvia il ciclo per i messaggi successivi
}, 500); // Tra 2000ms e 3000ms
</script>
<script>
const timerDisplay = document.getElementById("timer");
// Durata casuale tra 2 e 4 ore
const minSeconds = 2 * 60 * 60;
const maxSeconds = 4 * 60 * 60;
const randomSeconds = Math.floor(Math.random() * (maxSeconds - minSeconds + 1)) + minSeconds;
function formatTime(seconds) {
const hours = String(Math.floor(seconds / 3600)).padStart(2, '0');
const minutes = String(Math.floor((seconds % 3600) / 60)).padStart(2, '0');
const secs = String(seconds % 60).padStart(2, '0');
return `${hours}:${minutes}:${secs}`;
}
function startCountdown(totalSeconds) {
let timeLeft = totalSeconds;
// Mostra subito il tempo iniziale senza delay
timerDisplay.textContent = formatTime(timeLeft);
const countdown = setInterval(() => {
timeLeft--;
if (timeLeft < 0) {
clearInterval(countdown);
timerDisplay.textContent = "00:00:00";
return;
}
timerDisplay.textContent = formatTime(timeLeft);
}, 1000);
}
window.onload = () => {
startCountdown(randomSeconds);
};
</script>
</body>
</html>