Bonjour à tous les Milouziens,
je vous propose ici un script pour les fainéants (comme moi) qui affichera automatiquement à la date voulue une déco.
Les décorations sont celles proposées par FA.
Par exemple pour la Saint Valentin, une décoration qui se positionnera en haut de page automatiquement du 13 au 17 février chaque année:
- Code:
-
// déco bandeau en haut
var today = new Date();
var dd = String(today.getDate()).padStart(2, '0');
var mm = String(today.getMonth() + 1).padStart(2, '0'); //January is 0!
var yyyy = today.getFullYear();
//Déco auto St valentin du 13 au 17 février
var garland = 2; var height = 156;
$(function() {
if (mm==2&&dd>12&&dd<18) {
$.getScript('https://script.forumactif.com/17143.js');
}
});
les variables correspondent: mm au mois et dd au jour.
Le script et la date peuvent être ajustés en fonction de la fête.
Par exemple pour Halloween qui tombe le 31 octobre, il faudra remplacer la condition par:
- Code:
-
if (mm==10&&dd=31) {
Les script présentés ici sont à mettre dans Module-Gestion des codes javascript en cochant sur les pages que vous souhaitez.
La difficulté se pose pour la fête de Pâques dont la date change tous les ans.
Pour cela j'ai trouvé perdu dans les aides FA un excellent script proposé par
@no_way qui calcule la date de Pâques.
On peut y placer à la suite en bas, les scripts pour des pluies d'images par exemple pour chaque fête.
J'y ai placé ici pour exemples des pluies d'images pour Pâques, St Valentin et Halloween
- Code:
-
//Calcul date du jour de paques
var date_paques=function(){
/*Algorithme de Butcher*/
var date_paques=new Date();
var annee_courante=date_paques.getFullYear();
var n=annee_courante%19;
var c=Math.floor(annee_courante/100);
var u=annee_courante%100;
//siècle bissextil
var s=Math.floor(c/4);
var t=c%4;
//proemptose
var p=Math.floor((c+8)/25);
//metemptose
var q=Math.floor((c-p+1)/3);
//epacte
var e=(19*n+c-s-q+15)%30;
//année bissextile
var d=u%4;
var b=Math.floor(u/4);
//lettre dominicale
var L=(32+2*t+2*b-e-d)%7;
//correction
var h=Math.floor((n+11*e+22*L)/451);
//mois et quantième du Samedi saint
var m=Math.floor((e+L-7*h+114)/31);
var j=(e+L-7*h+114)%31;
switch(m){
case 3:
var d=new Date(annee_courante,2,1);
d.setDate(1+j);
var t;
var paques=((t=d.getDate())<10?"0"+t:t)+"/"+((t=d.getMonth()+1)<10?"0"+t:t)+"/"+d.getFullYear();
return paques;
break;
case 4:
var d=new Date(annee_courante,3,1);
d.setDate(1+j);
var t;
var paques=((t=d.getDate())<10?"0"+t:t)+"/"+((t=d.getMonth()+1)<10?"0"+t:t)+"/"+d.getFullYear();
return paques;
break;}
};
var charger_theme_selon_date=function(){
var d=new Date();
var t;
var aujourdhui=((t=d.getDate())<10?"0"+t:t)+"/"+((t=d.getMonth()+1)<10?"0"+t:t)+"/"+d.getFullYear();
/******** Les décos de pluie sont à placer les uns à la suite des autres ici ********/
//Déco pour paques
if(aujourdhui==date_paques()){
/*chargement de l'animation*/
$(function(){
//Pluie d'images oeufs paques
$.getScript('https://script.forumactif.com/10825.js');
});
//lien de l'image pour la pluie
return "https://i.servimg.com/u/f77/11/66/92/55/14c45l10.png";
}
//Déco pour Saint Valentin pluie d'images
if(aujourdhui>"12/02/"+d.getFullYear()){
/*chargement de l'animation*/
$(function(){
$.getScript('https://script.forumactif.com/10825.js');
});
return "https://sd-1.archive-host.com/membres/up/132720629421430912/FDF/Decoration/St-Valentin/13607012_31.png";
}
//Déco pour Halloween pluie d'images
if(aujourdhui=="31/10/"+d.getFullYear()){
/*chargement de l'animation*/
$(function(){
$.getScript('https://script.forumactif.com/10825.js');
});
return "https://sd-1.archive-host.com/membres/up/132720629421430912/FDF/Decoration/Halloween/bat10.png";
}
};
var snowsrc=charger_theme_selon_date();
Voilà. Amusez-vous bien.