553 lines
22 KiB
HTML
553 lines
22 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html" charset="utf-8" />
|
|
<title>Titolo</title>
|
|
<link rel="stylesheet" href="style.css" />
|
|
<script src="script.js"></script>
|
|
</head>
|
|
<body class="griglia">
|
|
<div class="titolo">OROSCOPO DEL PORCO</div>
|
|
<div class="content">
|
|
<center>
|
|
<div id="defaultInput">
|
|
<label for="nome">Nome:</label>
|
|
<input id="nome" name="nome" />
|
|
<br />
|
|
<label for="segno">Segno:</label>
|
|
<select name="segno" id="segno">
|
|
<option>Ariete</option>
|
|
<option>Toro</option>
|
|
<option>Gemelli</option>
|
|
<option>Cancro</option>
|
|
<option>Leone</option>
|
|
<option>Vergine</option>
|
|
<option>Bilancia</option>
|
|
<option>Scorpione</option>
|
|
<option>Sagittario</option>
|
|
<option>Capricorno</option>
|
|
<option>Acquario</option>
|
|
<option>Pesci</option>
|
|
</select>
|
|
</div>
|
|
<br />
|
|
<div id="trovaSegno">
|
|
<a href="javascript: void(0)" id="link">Non conosci il tuo segno?</a>
|
|
<label for="nascita">Inserisci la tua data di nascita:</label>
|
|
<input type="date" id="date" />
|
|
<button onclick="trovaSegno()">Trova il tuo segno</button>
|
|
</div>
|
|
<button onclick="Oroscopo()" id="bottone">
|
|
Chiedi il tuo pronostico
|
|
</button>
|
|
<div id="output"></div>
|
|
</center>
|
|
</div>
|
|
<div class="nomeRiquadro2"><center>Descrizione</center></div>
|
|
<div class="desc">
|
|
L'oroscopo è un sistema astronomico e astrologico che associa a ogni
|
|
persona nata in un giorno preciso del mese di gennaio, il simbolo
|
|
zodiacale corrispondente. Esistono due tipi principali di oroscopi: quelli
|
|
classici, basati sul modello antico greco romano e quelli moderni che si
|
|
sono evoluti nel tempo. Il sistema originario del classico oroscopo era
|
|
basato sulla posizione dei pianeti al momento della nascita
|
|
dell'individuo. Questo sistema è basato su nove "case" che rappresentano
|
|
la vita, l'amore, i rapporti con gli altri e altre aree della personalità.
|
|
L'oroscopo ha origini antiche: infatti, il concetto di zodiaco e di
|
|
oroscopi si può ritrovare già nell'antica civiltà assira. In epoca romana,
|
|
l'astrologo Manilio scrisse un trattato intitolato "Astronomicon" che
|
|
descriveva come le stelle influenzassero la vita dei Romani. Nel Medioevo
|
|
in Europa, gli oroscopi erano molto popolari e venivano spesso utilizzati
|
|
per predire il futuro. Con l'avvento del Rinascimento e dell'Illuminismo,
|
|
l'astrologia subì un declino a causa della crescente diffusione delle idee
|
|
scientifiche di Galileo Galilei e di Isaac Newton. L'oroscopo moderno è
|
|
nato nel XIX secolo con la fondazione della rivista "The Sidereal
|
|
Messenger", che pubblicava oroscopi basati sull'osservazione dei pianeti.
|
|
Negli anni successivi, l'astrologia ha continuato a evolversi e ad
|
|
ampliare le sue teorie e i suoi metodi. L'oroscopo è diventato uno
|
|
strumento popolare per comprendere se stessi e il proprio destino. È un
|
|
modo per scoprire caratteristiche della propria personalità, abitudini e
|
|
preferenze che potrebbero essere nascoste anche a noi stessi.
|
|
</div>
|
|
<div class="nomeRiquadro1"><center>Stats</center></div>
|
|
<div class="stats" id="stats">
|
|
<p>
|
|
Utenti che hanno fatto affidamento a questo oroscopo:
|
|
<span id="conteggioTotale">0</span>
|
|
</p>
|
|
<table>
|
|
<tr>
|
|
<td>Utenti di segno ariete: <span id="conteggioAriete">0</span></td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno toro: <span id="conteggioToro">0</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Utenti di segno gemelli: <span id="conteggioGemelli">0</span></td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno cancro: <span id="conteggioCancro">0</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Utenti di segno leone: <span id="conteggioLeone">0</span></td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno vergine: <span id="conteggioVergine">0</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
Utenti di segno bilancia: <span id="conteggioBilancia">0</span>
|
|
</td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno scorpione: <span id="conteggioScorpione">0</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
Utenti di segno sagittario: <span id="conteggioSagittario">0</span>
|
|
</td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno capricorno: <span id="conteggioCapricorno">0</span>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td>
|
|
Utenti di segno acquario: <span id="conteggioAcquario">0</span>
|
|
</td>
|
|
<td class="tabellaColonna2">
|
|
Utenti di segno pesci: <span id="conteggioPesci">0</span>
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
<div class="nomeRiquadro3"><center>Segno</center></div>
|
|
<div class="segno">
|
|
|
|
</div>
|
|
<script>
|
|
document.addEventListener("onload", Init());
|
|
|
|
function Init(){
|
|
aggiungiDefault();
|
|
impostaImmagine();
|
|
}
|
|
|
|
const segniZodiacali = [
|
|
"Ariete",
|
|
"Toro",
|
|
"Gemelli",
|
|
"Cancro",
|
|
"Leone",
|
|
"Vergine",
|
|
"Bilancia",
|
|
"Scorpione",
|
|
"Sagittario",
|
|
"Capricorno",
|
|
"Acquario",
|
|
"Pesci",
|
|
];
|
|
/***********************************************Sezione Controls******************************************************************************/
|
|
/*color = document.getElementById("color");
|
|
costellazione = document.getElementById("costellazione");
|
|
|
|
document
|
|
.getElementById("selezione")
|
|
.addEventListener("input", function () {
|
|
if (document.getElementById("selezione").value == "Colore") {
|
|
costellazione.style.display = "none";
|
|
document.body.style = "background-image: none";
|
|
color.value = "#000000";
|
|
color.style.display = "inline";
|
|
} else {
|
|
color.style.display = "none";
|
|
costellazione.style.display = "inline";
|
|
document.getElementById("selezioneCostellazione").value = "Tutte";
|
|
document.body.style = 'background-image: url("img/Tutte.png")';
|
|
}
|
|
});
|
|
|
|
document
|
|
.getElementById("color")
|
|
.addEventListener("input", function (event) {
|
|
document.body.style = `background-color: ${event.target.value}`;
|
|
});
|
|
|
|
document
|
|
.getElementById("selezioneCostellazione")
|
|
.addEventListener("input", function () {
|
|
document.body.style = `background: url("img/${
|
|
document.getElementById("selezioneCostellazione").value
|
|
}.png") center no-repeat #071828`;
|
|
});
|
|
|
|
document.getElementById("testo").addEventListener("input", coloreTesto);
|
|
|
|
function coloreTesto(event) {
|
|
document.body.style.color = event.target.value;
|
|
}
|
|
|
|
document.getElementById("bordi").addEventListener("input", coloreBordi);
|
|
|
|
function coloreBordi(event) {
|
|
document.querySelectorAll(".griglia > div").forEach((div) => {
|
|
div.style.border = `2px solid ${event.target.value}`;
|
|
});
|
|
}*/
|
|
/*******************************************************************************************************************************************************/
|
|
|
|
/***********************************************Sezione Stats*******************************************************************************************/
|
|
|
|
stats = {
|
|
contatore: [
|
|
"conteggioTotale",
|
|
"conteggioAriete",
|
|
"conteggioToro",
|
|
"conteggioGemelli",
|
|
"conteggioCancro",
|
|
"conteggioLeone",
|
|
"conteggioVergine",
|
|
"conteggioBilancia",
|
|
"conteggioScorpione",
|
|
"conteggioSagittario",
|
|
"conteggioCapricorno",
|
|
"conteggioAcquario",
|
|
"conteggioPesci",
|
|
],
|
|
aggiornaStat(segno) {
|
|
document.getElementById(this.contatore[segno]).innerHTML =
|
|
parseInt(document.getElementById(this.contatore[segno]).innerHTML) +
|
|
1;
|
|
},
|
|
};
|
|
|
|
/*document.getElementById("segno").value.toLowerCase();
|
|
|
|
// Oggetto per gestire i contatori
|
|
let contatori = {};
|
|
|
|
// Recupera i valori dal localStorage oppure inizializza a 0
|
|
segniZodiacali.forEach((segno) => {
|
|
contatori[segno] = localStorage.getItem(segno)
|
|
? parseInt(localStorage.getItem(segno))
|
|
: 0;
|
|
});
|
|
|
|
// totale utenti
|
|
let countTotale = localStorage.getItem("countTotale")
|
|
? parseInt(localStorage.getItem("countTotale"))
|
|
: 0;
|
|
|
|
// Aggiorna i testi iniziali nella UI
|
|
document.getElementById("conteggio").innerHTML = countTotale;
|
|
segniZodiacali.forEach((segno) => {
|
|
const elem = document.getElementById(`conteggio${capitalize(segno)}`);
|
|
if (elem) elem.innerHTML = contatori[segno];
|
|
});
|
|
|
|
// Seleziona il segno, prepara per l'aumento del conteggio
|
|
function Segni() {
|
|
const segno = document.getElementById("segno").value.toLowerCase();
|
|
Conteggio(segno);
|
|
}
|
|
|
|
function Conteggio(segno) {
|
|
contatori[segno]++; // Incrementa il conteggio del segno
|
|
countTotale++; // Incrementa il conteggio totale
|
|
|
|
// Salva in localStorage
|
|
localStorage.setItem(segno, contatori[segno]);
|
|
localStorage.setItem("countTotale", countTotale);
|
|
|
|
// Aggiorna la UI
|
|
document.getElementById(`conteggio${capitalize(segno)}`).innerHTML =
|
|
contatori[segno];
|
|
document.getElementById("conteggio").innerHTML = countTotale;
|
|
}
|
|
|
|
// Prima lettera maiuscola
|
|
function capitalize(str) {
|
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
}*/
|
|
/*******************************************************************************************************************************************************/
|
|
|
|
/***********************************************Sezione Content*****************************************************************************************/
|
|
|
|
function Oroscopo() {
|
|
const frasi = [
|
|
"Una nuova opportunità lavorativa si presenta, sfruttala!",
|
|
"Ascolta i consigli degli amici, potrebbero essere utili.",
|
|
"Attento alle spese, non esagerare.",
|
|
"La vita sentimentale si anima, aspettati un sorriso!",
|
|
"Concentrati sui tuoi obiettivi e non lasciare che le distrazioni ti rallentino.",
|
|
"Sii paziente, i risultati non tarderanno.",
|
|
"Un cambiamento di programma potrebbe essere necessario.",
|
|
"La tua intuizione è acuta, ascoltala!",
|
|
"Non lasciare che le preoccupazioni ti consumino.",
|
|
"Il tuo amore per la famiglia e gli amici si rafforza.",
|
|
"Sii più aperto ai nuovi progetti, potrebbero essere interessanti!",
|
|
"Non esitare a chiedere aiuto quando ne hai bisogno.",
|
|
"La tua autorità è riconosciuta e apprezzata.",
|
|
"Sii cauto con le tue finanze, non spendere troppo!",
|
|
"Non lasciare che la pigrizia ti rallenti.",
|
|
"Le tue abilità organizzative sono essenziali per un nuovo progetto.",
|
|
"Sii più socievole e aperto con gli altri, potresti scoprire nuove amicizie!",
|
|
"Non esitare a chiedere chiarimenti quando ne hai bisogno.",
|
|
"La tua vita sociale si anima, aspettati un'intrattenimento!",
|
|
"Sii più equilibrato e razionale nelle tue decisioni.",
|
|
"Non lasciare che la competitività ti consumi.",
|
|
"I segreti di cui sei a conoscenza potrebbero essere utili per aiutare qualcuno.",
|
|
"Sii più aperto alle novità e non temere il cambiamento!",
|
|
"Non esitare a difendere ciò che è giusto.",
|
|
"La tua ambizione si rafforza, sfruttala per raggiungere nuovi obiettivi!",
|
|
"Sii più paziente e non affrettarti troppo.",
|
|
"Non lasciare che la curiosità ti porti a commettere errori.",
|
|
"La tua responsabilità è apprezzata e riconosciuta.",
|
|
"Sii più aperto alle novità e non temere il cambiamento!",
|
|
"Non esitare a chiedere aiuto quando ne hai bisogno.",
|
|
"La tua creatività è essenziale per un nuovo progetto.",
|
|
"Sii più socievole e aperto con gli altri, potresti scoprire nuove amicizie!",
|
|
"Non lasciare che la curiosità ti porti a commettere errori.",
|
|
"La tua intuizione è acuta, ascoltala!",
|
|
"Sii più aperto alle novità e non temere il cambiamento!",
|
|
"Non esitare a chiedere aiuto quando ne hai bisogno.",
|
|
];
|
|
|
|
document.getElementById("output").innerHTML = "";
|
|
|
|
if (!(document.getElementById("nome").value === "")) {
|
|
if (
|
|
!(document.getElementById("segno").value === "Seleziona un segno")
|
|
) {
|
|
stats.aggiornaStat(0);
|
|
stats.aggiornaStat(
|
|
stats.contatore.indexOf(
|
|
`conteggio${document.getElementById("segno").value}`
|
|
)
|
|
);
|
|
document.getElementById("output").innerHTML =
|
|
frasi[Math.floor(Math.random() * frasi.length)];
|
|
document.getElementById("bottone").innerHTML =
|
|
"Chiedi un altro pronostico";
|
|
|
|
if (document.getElementById("segno").disabled) {
|
|
document.getElementById("segno").disabled = false;
|
|
}
|
|
|
|
let isSegnoDefaultPresent = false;
|
|
|
|
for (
|
|
let i = 0;
|
|
i <
|
|
document.getElementById("segno").getElementsByTagName("option")
|
|
.length && !isSegnoDefaultPresent;
|
|
i++
|
|
) {
|
|
if (
|
|
document.getElementById("segno").getElementsByTagName("option")[
|
|
i
|
|
] == "Seleziona un segno"
|
|
) {
|
|
document.getElementById("segno").value = "Seleziona un segno";
|
|
isSegnoDefaultPresent = true;
|
|
}
|
|
}
|
|
|
|
if (!isSegnoDefaultPresent) {
|
|
aggiungiDefault();
|
|
}
|
|
|
|
document.getElementById("segno").dispatchEvent(new Event("change"));
|
|
|
|
document.getElementById("link").style.display = "block";
|
|
} else {
|
|
alert("Inserire il proprio segno");
|
|
}
|
|
} else {
|
|
alert("Inserire il proprio nome");
|
|
}
|
|
}
|
|
|
|
//gestione UI sezione trova segno
|
|
document.getElementById("segno").addEventListener("input", function () {
|
|
document.getElementById("link").style.display = "none";
|
|
});
|
|
|
|
//mostro la parte per inserire la data e trovare il proprio segno e nascondo defaultInput
|
|
document.getElementById("link").addEventListener("click", function () {
|
|
document.getElementById("output").innerHTML = "";
|
|
document.getElementById("link").style.display = "none";
|
|
document.getElementById("defaultInput").style.display = "none";
|
|
document.getElementById("bottone").style.display = "none";
|
|
document
|
|
.querySelectorAll("#trovaSegno > :not(#link)")
|
|
.forEach((tag) => (tag.style.display = "block"));
|
|
});
|
|
|
|
function trovaSegno() {
|
|
document.getElementById('segno').getElementsByTagName("option")[0].remove()
|
|
let isDateInserted = document.getElementById("date").value !== "";
|
|
|
|
if (isDateInserted) {
|
|
const nascita = document.getElementById("date").value.split("-");
|
|
const mese = parseInt(nascita[1]);
|
|
const giorno = parseInt(nascita[2]);
|
|
const campoSegno = document.getElementById("segno");
|
|
|
|
switch (mese) {
|
|
case 3:
|
|
if (giorno >= 20) {
|
|
campoSegno.value = segniZodiacali[0];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[11];
|
|
}
|
|
break;
|
|
case 4:
|
|
if (giorno >= 19) {
|
|
campoSegno.value = segniZodiacali[1];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[0];
|
|
}
|
|
break;
|
|
case 5:
|
|
if (giorno >= 20) {
|
|
campoSegno.value = segniZodiacali[2];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[1];
|
|
}
|
|
break;
|
|
case 6:
|
|
if (giorno >= 20) {
|
|
campoSegno.value = segniZodiacali[3];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[2];
|
|
}
|
|
break;
|
|
case 7:
|
|
if (giorno >= 22) {
|
|
campoSegno.value = segniZodiacali[4];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[3];
|
|
}
|
|
break;
|
|
case 8:
|
|
if (giorno >= 22) {
|
|
campoSegno.value = segniZodiacali[5];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[4];
|
|
}
|
|
break;
|
|
case 9:
|
|
if (giorno >= 22) {
|
|
campoSegno.value = segniZodiacali[6];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[5];
|
|
}
|
|
break;
|
|
case 10:
|
|
if (giorno >= 22) {
|
|
campoSegno.value = segniZodiacali[7];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[6];
|
|
}
|
|
break;
|
|
case 11:
|
|
if (giorno >= 21) {
|
|
campoSegno.value = segniZodiacali[8];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[7];
|
|
}
|
|
break;
|
|
case 12:
|
|
if (giorno >= 21) {
|
|
campoSegno.value = segniZodiacali[9];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[8];
|
|
}
|
|
break;
|
|
case 1:
|
|
if (giorno >= 20) {
|
|
campoSegno.value = segniZodiacali[10];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[9];
|
|
}
|
|
break;
|
|
case 2:
|
|
if (giorno >= 18) {
|
|
campoSegno.value = segniZodiacali[11];
|
|
} else {
|
|
campoSegno.value = segniZodiacali[10];
|
|
}
|
|
break;
|
|
}
|
|
|
|
document.getElementById("segno").dispatchEvent(new Event("change"));
|
|
// Reset della UI a prima di premere il link
|
|
document.getElementById("link").style.display = "block";
|
|
document.getElementById("defaultInput").style.display = "block";
|
|
document.getElementById("bottone").style.display = "block";
|
|
document
|
|
.querySelectorAll("#trovaSegno > :not(#link)")
|
|
.forEach((tag) => (tag.style.display = "none"));
|
|
campoSegno.disabled = true;
|
|
} else {
|
|
alert("Inserire una data completa");
|
|
}
|
|
}
|
|
|
|
//gestione immagine segno
|
|
function impostaImmagine() {
|
|
const immagine = document.createElement("img");
|
|
immagine.setAttribute(
|
|
"src",
|
|
'img/Tutte.png'
|
|
);
|
|
immagine.setAttribute("width", `${document.getElementsByClassName("segno")[0].offsetWidth}`);
|
|
document.getElementsByClassName('segno')[0].appendChild(immagine);
|
|
}
|
|
|
|
document.getElementById("segno").addEventListener("change", function() {
|
|
cambiaImmagine(document.getElementById("segno").value);
|
|
});
|
|
|
|
function cambiaImmagine(segno) {
|
|
const immagine = document.getElementsByClassName('segno')[0].getElementsByTagName("img")[0];
|
|
if(segno == "Seleziona un segno"){
|
|
immagine.setAttribute(
|
|
"src",
|
|
'img/Tutte.png'
|
|
);
|
|
}
|
|
else{
|
|
immagine.setAttribute(
|
|
"src",
|
|
`img/${segno}.png`
|
|
);
|
|
}
|
|
}
|
|
|
|
//modifiche select del segno dinamiche
|
|
function aggiungiDefault() {
|
|
const selezioneDefault = document.createElement("option");
|
|
selezioneDefault.innerHTML = "Seleziona un segno";
|
|
document
|
|
.getElementById("segno")
|
|
.insertBefore(
|
|
selezioneDefault,
|
|
document.getElementById("segno").getElementsByTagName("option")[0]
|
|
);
|
|
document.getElementById("segno").value = "Seleziona un segno";
|
|
}
|
|
|
|
document
|
|
.getElementById("segno")
|
|
.addEventListener("mousedown", function () {
|
|
if (this.value == "Seleziona un segno") {
|
|
this.getElementsByTagName("option")[0].remove();
|
|
}
|
|
});
|
|
|
|
/*******************************************************************************************************************************************************/
|
|
</script>
|
|
</body>
|
|
</html>
|