Data Stellare in PHPBB

Area dedicata al phpBB 3.3.X
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

Provo a sottomettere la richiesta in phpbb.com
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

la soluzione consta di:

Codice: Seleziona tutto

[b]document.getElementById("stardate").textContent[/b]
e

Codice: Seleziona tutto

[b]<p style="width:100%;text-align:center;">DATA STELLARE: <span id="stardate"></span></p>[/b]
Mi chiedo, tuttavia, se si possa ottenere qualcosa tipo:

Immagine
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Avatar utente
alex75
Amministratore
Amministratore
Messaggi: 6152
Iscritto il: 23/08/2012, 23:45
Link del Forum: www.phpbb-italia.it
Località: Palermo

Re: Data Stellare in PHPBB

Messaggio da alex75 »

Riposta il codice completo.
Appena ho 2 minuti ti giro il codice per il riquadro che uso qui nel footer, per i banner.
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

Come richiesto:

Codice: Seleziona tutto

<p style="color: #109ee5;width:100%;text-align:center;font-size:30px">DATA STELLARE: <span id="stardate"></span></p>
<script>
// Ottieni la data corrente
var dataCorrente = new Date();

// Estrai l'anno corrente

var annoCorrente = dataCorrente.getFullYear() + 317;

// Calcola il giorno dell'anno (considerando gli anni bisestili)
var giornoCorrente = 0;
for (var mese = 0; mese < dataCorrente.getMonth(); mese++) {
    giornoCorrente += giorniInMese(mese, annoCorrente);
}
giornoCorrente += dataCorrente.getDate();

// Stampa il giorno corrente
console.log("Giorno corrente:", giornoCorrente);

// Funzione per calcolare i giorni in un mese considerando gli anni bisestili
function giorniInMese(mese, anno) {
    var giorniMese = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

    if (mese === 1 && (anno % 4 === 0 && anno % 100 !== 0) || (anno % 400 === 0)) {
        return giorniMese[mese] + 1;
    }

    return giorniMese[mese];
}

var annotrek = annoCorrente;

// Calcola il valore "Giorno"
	var stardatebig = ((annotrek - 2323) - (giornoCorrente / 365)) * 1000;

// Calcola DataStellare troncando stardatebig alle prime due cifre decimali.
	var DataStellare = stardatebig.toFixed(2);
        document.getElementById("stardate").textContent = DataStellare;
    </script>
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Avatar utente
alex75
Amministratore
Amministratore
Messaggi: 6152
Iscritto il: 23/08/2012, 23:45
Link del Forum: www.phpbb-italia.it
Località: Palermo

Re: Data Stellare in PHPBB

Messaggio da alex75 »

Eccolo:

Codice: Seleziona tutto

<div class="forabg">
<div class="inner"><span class="corners-top"><span></span></span>
<ul class="topiclist">
<li class="header">
<dl class="row-item">
<dt style="text-align:center">DATA STELLARE</dt>
</dl>     
</li>
</ul>
<ul  class="topiclist forums" >
<li class="row">
<div style="display: block; text-align: center; overflow:auto;">
<p style="color: #109ee5;width:100%;text-align:center;font-size:30px">DATA STELLARE: <span id="stardate"></span></p>
<script>
// Ottieni la data corrente
var dataCorrente = new Date();

// Estrai l'anno corrente

var annoCorrente = dataCorrente.getFullYear() + 317;

// Calcola il giorno dell'anno (considerando gli anni bisestili)
var giornoCorrente = 0;
for (var mese = 0; mese < dataCorrente.getMonth(); mese++) {
    giornoCorrente += giorniInMese(mese, annoCorrente);
}
giornoCorrente += dataCorrente.getDate();

// Stampa il giorno corrente
console.log("Giorno corrente:", giornoCorrente);

// Funzione per calcolare i giorni in un mese considerando gli anni bisestili
function giorniInMese(mese, anno) {
    var giorniMese = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];

    if (mese === 1 && (anno % 4 === 0 && anno % 100 !== 0) || (anno % 400 === 0)) {
        return giorniMese[mese] + 1;
    }

    return giorniMese[mese];
}

var annotrek = annoCorrente;

// Calcola il valore "Giorno"
	var stardatebig = ((annotrek - 2323) - (giornoCorrente / 365)) * 1000;

// Calcola DataStellare troncando stardatebig alle prime due cifre decimali.
	var DataStellare = stardatebig.toFixed(2);
        document.getElementById("stardate").textContent = DataStellare;
    </script>

<div style="clear: both;"></div>
</div>
</li>
</ul>
<span class="corners-bottom"><span></span></span></div>
</div>
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

Perfetto, vorrei solo capire se si possa averlo più stretto togliendo la riga vuota al di sotto della DATA STELLARE e posizionarlo al di sotto di "Oggi è ven ott 27, 2023 6:21 pm"

Grazie, ciao

Devo verificare lo script, la data stellare non è corretta: dovrebbe essere 17819.17
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Avatar utente
alex75
Amministratore
Amministratore
Messaggi: 6152
Iscritto il: 23/08/2012, 23:45
Link del Forum: www.phpbb-italia.it
Località: Palermo

Re: Data Stellare in PHPBB

Messaggio da alex75 »

E' il tag <p> che ti produce quello spazio. Sostituiscilo con un <div> così:

Codice: Seleziona tutto

<div style="color: #109ee5;width:100%;text-align:center;font-size:30px">DATA STELLARE: <span id="stardate"></span></div>
nyssagerel ha scritto: 27/10/2023, 18:25 ... e posizionarlo al di sotto di "Oggi è ven ott 27, 2023 6:21 pm"
Se lo vuoi in tutte le pagine, quello è il posto più adatto. L'overall_header è comune in tutte le pagine.
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

Ok riga rimossa ma lo script mi sta facendo impazzire.
Avevo trovato un baco sui giorni da inizio anno, ora risolto.
Tuttavia lo script

Codice: Seleziona tutto

// Ottieni la data corrente
var dataCorrente = new Date();
var day = dataCorrente.getDate();

// Estrae l' anno corrente nostro
var anno = dataCorrente.getFullYear()

// Calcola l'anno corrente di star trek
var annoCorrente = dataCorrente.getFullYear() + 317;

var month = dataCorrente.getMonth() + 1

// Calcola il giorno dell'anno (considerando gli anni bisestili)
var giornoCorrente = 0;
for (var mese = 0; mese < dataCorrente.getMonth(); mese++) {
    giornoCorrente += giorniInMese(mese, annoCorrente);
}

// Stampa il giorno corrente

// Funzione per calcolare i giorni in un mese considerando gli anni bisestili
function giorniInMese(mese, anno) {
    var giorniMese = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    // Se l'anno è bisestile e il mese è febbraio, aggiungi un giorno.
    if (mese === 1 && (anno % 4 === 0 && anno % 100 !== 0) || (anno % 400 === 0)) {
        return giorniMese[mese] + 1;
    }
    return giorniMese[mese];
}
var giornoCorrente = giornoCorrente + day;

var annotrek = annoCorrente;

// Calcola il valore "Giorno"
var stardatebig = ((annotrek - 2323) + (giornoCorrente / 365)) * 1000;

// Calcola DataStellare troncando stardatebig alle prime due cifre decimali.
var DataStellare = stardatebig.toFixed(2);
//        document.getElementById("stardate").textContent = DataStellare;
console.log("DATA STELLARE : ", DataStellare);
eseguito fuori forum restituisce il risultato corretto (17824.66, vedi immagine qui sotto)

Immagine

mentre, nel forum, si ostina a dare, come risultato, 16095.89

P.S. l' istruzione "var month = dataCorrente.getMonth() + 1" si è resa necessaria, perché, non so il motivo, dataCorrente.getMonth() restituisce il valore 9 e non 10.
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Avatar utente
alex75
Amministratore
Amministratore
Messaggi: 6152
Iscritto il: 23/08/2012, 23:45
Link del Forum: www.phpbb-italia.it
Località: Palermo

Re: Data Stellare in PHPBB

Messaggio da alex75 »

Probabilmente il codice non sta tenendo conto dell'ora legale (cosa che invece il server del tuo forum, sta ovviamente facendo). Proprio questa notte cambierà l'orario (1 ora indietro), osserva se si sistemerà o se perderà un'ulteriore ora.
Regolamento Forum
Le nostre guide
Se l'assistenza prestata è stata di tuo gradimento potrai contribuire aiutandoci a sostenere le spese affrontate per tenere in vita questo forum >Cliccando sul seguente Link<
Avatar utente
nyssagerel
Utente
Utente
Messaggi: 148
Iscritto il: 02/06/2023, 7:52
Link del Forum: http://deltaeleven.altervista.org/phpBB3

Re: Data Stellare in PHPBB

Messaggio da nyssagerel »

In effetti siamo scesi a 16090.41
Tuttavia, la formula non tiene contro dell'ora ma solo dei giorni

Data Stellare = [( Anno - 2323 ) + Giorno / 365 )] * 1000
Anno=2340 (il prossimo sarà 2341)
Giorno=302

Quindi:
Data Stellare = [17+0.82739]*1000 = 17827.39
"Per un corridore il momento più esaltante non è quando si taglia il traguardo da vincitori. È invece quello della decisione, di quando si decide di scattare, di quando si decide di andare avanti e continuare anche se il traguardo è lontano." (Fausto Coppi)
Rispondi