ForumCommunity

Wiki - Compleanni

    Cosa sono


    È possibile mostrare nelle statistiche del proprio forum le date di compleanno degli utenti che hanno specificato la data di nascita nel profilo personale, selezionando l'apposita opzione in Altre funzioni.
    Se in un forum viene attivata la funzione, vengono visualizzati solamente i compleanni degli utenti che hanno il forum tra i preferiti (quindi se hanno più forum tra i preferiti compariranno nelle liste di tutti questi forum).

    Installazione


    Script per date di compleanno:
    HTML
    <script type="text/javascript">function person(nick,date,month){this.nick=nick; this.date=date; this.month=month-1} p=new Array();

    preavviso=7
    colore="#3D8AD8"
    p[0]=new person("Utente_A",12,7)
    p[1]=new person("Utente_B",15,7)
    p[2]=new person("Utente_C",15,7)

    var now=new Date(); today=new Date(0,now.getMonth(),now.getDate()); function delta(sdate){return Math.round((sdate.getTime()-today.getTime())/(24*60*60*1000))}

    function tmpa(n,z){this.n=n; this.z=z} tmpx=new Array(); function tmpb(n){this.n=n} tmp1=new Array(); tmp0=new Array(); aa=bb=cc=-1; for(var i in p){birthday=new Date(0,p[i].month,p[i].date); if(delta(birthday)<0) birthday=new Date(1,p[i].month,p[i].date); z=delta(birthday); if(z==0){cc++; tmp0[cc]=new tmpb(p[i].nick)} else if(z<=preavviso){if(z==1){bb++; tmp1[bb]=new tmpb(p[i].nick)} else{aa++; tmpx[aa]=new tmpa(p[i].nick,z)}}} document.write("<span style='color:"+colore+"'>"); s="";

    if(cc>=0){s=" - "; document.write("<b>Oggi è il compleanno di ");
    for(x=0; x<=cc; x++){document.write(tmp0[x].n); if(x<cc-1) document.write(", "); else if(x<cc) document.write(" e ")} document.write(" AUGURI!<\/b>")}

    if(bb>=0){if(bb>0) document.write(s+"Domani compiranno gli anni "); else document.write(s+"Domani compirà gli anni ");
    for(x=0; x<=bb; x++){document.write("<b>"+tmp1[x].n+"<\/b>"); if(x<bb-1) document.write(", "); else if(x<bb) document.write(" e ")}
    s=" - "}

    if(aa>=0){tmpy=new Array(); for(i=0; i<aa-1; i++){min=i; for(j=i+1; j<aa; j++) if(tmpx[j].z<tmpx[min].z) min=j; if(i!=min){tmpy[0]=new tmpa(tmpx[i].n,tmpx[i].z); tmpx[i]=tmpx[min]; tmpx[min]=tmpy[0]}}

    if(aa>0) document.write(s+"I prossimi compleanni sono di "); else document.write(s+"Il prossimo compleanno è di ");
    for(x=0; x<=aa; x++){xx=x+1;document.write("<b>"+tmpx[x].n+"<\/b>"); on=0; if(x+1<=aa){if(tmpx[x].z!=tmpx[xx].z) on=1} else on=1; if(on) document.write(" tra "+tmpx[x].z+" giorni"); if(x<aa-1) document.write(", "); else if(x<aa) document.write(" e ")}} document.write("<\/span>")
    </script>