Modulo di contatto che cambia a secondo dei giorni
Autore: Mauro M.
Visite 1273,
Followers 4,
Condiviso 0
Buongiorno,
avrei la necessità di cambiare il modulo contatto in automatico a seconda dei giorni.
Mi spiego meglio:
Il form di contatto ha degli orari pre-impostati ma questi cambiano nel fine settimana e vorrei che si aggiornassero in automatico o che la pagina venga sostituita con una diversa nel fine settimana è possibile farlo in automatico con uno script o altro.
Grazie a tutti in anticipo
Postato il
... in EXTRA si possono usare due semplici metodi...
1°) ... i due moduli in due celle separate in righe sovrapposte, visibili o non visibili alternativamente, gestito con JS getDay()(*)
2°) ... secondo, più semplice, modulo in pagina NASCOSTA a cui reindirizzare, gestito con JS getDay()(*)
(*) >>https://www.w3schools.com/jsref/jsref_getday.asp
.
Autore
KolAsim grazie, ma è possibile cambiare pagina in un determinato giorno e ora ?
Magari anche con un semplice esempio
Grazie
... sì, come da punto 2) ...
... puoi far da te, ma se non ricevi altri input, ...da parte mia, se ti interessa nel breve entrare nel merito, posta il LINK di un esempio della pagina normale e quello della seconda pagina, ed esattamente per quali giorni della settimana deve attivarsi...
.
Autore
Buongiorno KolAsim,
Nel codice di esempio al punto 2 dove si imposta l'orario?
Comunque questa è la pagina attuale del sito Qui
Vorrei cambiarla il form in modo che tutti i giorni "tranne il sabato e la domenica" si possa prenotare fino alle 11.00 la mattina per il pranzo. Mentre per la cena si possa prenotare fino alle 18.00.
Mentre il fine settimana la cosa cambia:
Il venerdì alle ore 23.59 si chiudono le prenotazioni per il sabato a pranzo.
Mentre il sabato puoi prenotare per la domenica regolarmente.
Spero sia abbastanza chiaro.
Grazie
.. hai cambiato da quanto detto prima rispetto alla prospettiva del p.2) ...
...
... quindi in tre righe differenti e separate disponi tutto a vista ed incolonnati i tre relativi form per le prenotazioni dedicate
lun-ven
sabato
domenica
... verranno poi nascosti con il mio codice extra..
... quando hai fatto posta il LINK aggiornato per procedere con lo sviluppo del codice...
Autore
Ok fatto la pagina qui
Ricapitolando:
Lun-Ven
il primo form è da utilizzare dal lunedì al venerdì fino alle 10.59 minuti
il secondo dalle 11.00 in poi dal lunedì al venerdì
Ven-Sab
Venerdì sera dalle 18.00 in poi non è più possibile prenotare il sabato a pranzo, mentre per la cena si.
Domenica
Sempre possibile la prenotazione solo per pranzo.
Grazie in anticipo
>> form1 lun-ven <11
>> form2 lun-ven 11><18
>> form3 ven >18 + sab + dom
<style>
/** -- KolAsim --**/
#imCell_78, #imCell_115, #imCell_121,
div[id^='pluginAppObj_24_'] {display:none}
</style>
<script>
$( document ).ready(function() {//K>;
function controllodataK(){//K1>; /** -- KolAsim --**/
oggiK=new Date();
grnSettK=oggiK.getDay() ;
oraK= oggiK.getHours();
if(grnSettK > 0 && grnSettK < 6 && oraK < 11){//K2>;//lun-ven mattino
$(" #imCell_78").css("display", "block");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "none");
} //K2<<;
if(grnSettK > 0 && grnSettK < 6 && oraK >= 11 && oraK < 18){ //K3>;//lun-ven 11-18
$(" #imCell_78").css("display", "none");
$(" #imCell_115").css("display", "block");
$(" #imCell_121").css("display", "none");
} //K3<<;
// ====== K4 e K5 x venerdì sera, sabato e domenica ========
if( grnSettK == 5 && oraK >= 18) { //K4>; //ven dopo 18
$(" #imCell_78").css("display", "none");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "block");
} //K4 <<:
if( grnSettK == 0 || grnSettK == 6 ){ //K5>; //sab-dom
$(" #imCell_78").css("display", "none");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "block");
} //K5<<;
//-------------------------
} //K1<<;
controllodataK();
}); //K<<;
</script>
....................
.
Autore
Buongiorno KolAsim,
Mi ero confuso sulla domenica... Dalle 22.00 di sabato non si può più prenotare per la domenica mattina. Poi la domenica non essendoci la cena è possibile passare direttamente a lunedì visto che qualcuno nonostante ci sia scritto si ostina a prenotare per la domenica sera ....
Grazie
... x sotto al rigo
} //K5<<;
... aggiungere:
// ====== K6 solo nel sabato sera x la domenica a pranzo ========
if( grnSettK == 6 && oraK >= 22) { //K6>; //sab dopo 22
alert("Attenzione! ...\nsi può prenotare solo per il\nPRANZO di domani DOMENICA");
}//K6<<:
// ====== K7 x la domenica dopo le 11 x lunedì ========
if( grnSettK == 0 && oraK >= 11) { //K7>; //dom dopo 11 x lun
$(" #imCell_78").css("display", "block");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "none");
}//K7<<
.......................
.
Autore
Grazie tantissimo della tua gentilezza e disponibilità.
Ti terrò aggiornato se tutto ok.
Grazie ancora
Autore
Buongiorno KolAsim,
Ho testato il tutto per una settimana e funziona perfettamente.... Volevo chiederti se è possibile aggiungere anche i giorni festivi usando il criterio della domenica. E' possibile ?
Grazie in anticipo
Autore
KolAsim, poi mi ero scordato di chederti se è possibile modificare il calendario rendendo solo 2 giorni prenotabili es. oggi e domani e cosi via.
Fammi sapere
Grazie ancora
... secondo me potresti gestire la lista integrando questa mia invenzione...
... x sotto al rigo
} //K7<<;
... aggiungere:
// ====K8 --- lista festività i.f. =================
oggiK2=new Date().getTime();seck=(1000 * 60 * 60 * 24);
festivK1= Math.floor((new Date(2021, 10 , 3).getTime() - (oggiK2)) / seck +1);
festivK2= Math.floor((new Date(2021, 10 , 4).getTime() - (oggiK2)) / seck +1);
festivK3= Math.floor((new Date(2021, 10 , 5).getTime() - (oggiK2)) / seck +1);
if(festivK1 == 0 || festivK2 == 0 || festivK3 == 0 ) { //K8>;
$(" #imCell_78").css("display", "none");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "block");
} //K8<<;
........................................
... rispettando il formato della data in questo modo: (anno, mese-1, giorno)
................................
... per il calendario non posso dirti niente, forse potresti toglierlo, vedi un po' tu...
.
Autore
Ciao KolAsim,
Ma le date le devo aggiungere io.... giusto ?
Grazie
... sì, nella forma detta prima, con nome varibile progressivo: festivKX , festivKY , festivKeccetera
... varibile da aggiungere nella condizione if():
if(festivK1 == 0 || festivK2 == 0 || festivK3 == 0 ||festivKX == 0 || festivKY == 0 )
.
Autore
Praticamente così ?
mettendo il 25 deicembre, il 1° gennaio e il 6 gennaio ?
// ====K8 --- lista festività i.f. =================
oggiK2=new Date().getTime();seck=(1000 * 60 * 60 * 24);
festivK1= Math.floor((new Date(2021, 12 , 25).getTime() - (oggiK2)) / seck +1);
festivK2= Math.floor((new Date(2022, 1 , 1).getTime() - (oggiK2)) / seck +1);
festivK3= Math.floor((new Date(2022, 1 , 6).getTime() - (oggiK2)) / seck +1);
if(festivK1 == 0 || festivK2 == 0 || festivK3 == 0 ) { //K8>;
$(" #imCell_78").css("display", "none");
$(" #imCell_115").css("display", "none");
$(" #imCell_121").css("display", "block");
} //K8<<;
... per come ti ho indicato prima, hai sbaglito il mese >> (anno, mese-1, giorno)
... quindi gennaio = 0 ... dicembre = 11
... la condizione è OK, corretta per quelle date ...
.
Autore
Grazie KolAsim Grazie.