Devenir membre club
Connectez vous
Aide & règlement
Votre 1ère visite
Le règlement
Contacter les admins
Contacter le webmaster
Questions & réponses
Comment soutenir CodeS-SourceS
Comment faire un lien vers CodeS-SourceS
Autres questions
A propos & don
A propos du réseau
Les modérateurs
Remerciements
Faire un don
Le livre d'or
Tous les livres
Les dernières parutions
Les plus consultés
Les critiques
Le top des ventes
Le top favoris des membres
Recevoir des livres blancs
Tous les thèmes
Les derniers messages
Les nouveaux messages
Poser une question
Le Chat - IRC
Tous les tutoriels
Ajouter un tutoriel
Les tutoriels en vidéo
Les formations vidéos
Tous les codes
Ajouter un code
Filtrer par catégorie
Filtrer par date
Les plus récents
Les mis à jour
Les codes par jour
Filtrer par niveau
Niveau débutant
Niveau initié
Niveau expert
Filtrer par type
Les codes avec capture
Les codes avec zip
Les codes .Net
Filtrer par qualité
Les plus populaires
Les plus populaires du mois
Les plus téléchargés
Les mieux notés
Top par catégorie
Top des favoris
Filtrer par auteur
Tous les auteurs
Le top des membres
Les snippets
Déposer votre CV
Consulter les offres d'emploi ou de stage
Consulter les CVs
Déposer une offre d'emploi ou de stage
Modèles de CV et lettres
Trouver une convention collective
Les écoles d'informatique
Toutes les écoles
Ajouter une école
Les outils
Outils pour développeurs
Trouver des ressources
Base de données de CodeS-SourceS
Télécharger les meilleurs logiciels
Comparer les prix
Envoyer des ecards
Création de bannières
Annuaire de la prog
Tous les sites
Ajouter votre site
Le dico de la prog
Toutes les définitions
Ajouter une définition
Les évènements
Tous les évènements
Les évènements à venir
Ajouter un évènement
Téléchargements
CodeS-SourceS Toolbox
CodeS-SourceS Toolbar
Toolbar pour FireFox
Fonds d'écran
Les compil's
Nos partenaires
Magazine Programmez
Frontier.fr
Xiti
ProgOnline
Winwise
Editions Eyrolles
Toute la liste
Les RFC
CS
VB, VB.NET
ASP.NET,ASP
C, C++
ColdFusion
PHP
Javascript
Delphi
Flash
Java
Graphisme
Irc
Assembleur
C#
Mobilité
SQL
Foxpro
Python
Regex
Flex
Windev
Ce site au démarrage
begin process at 2012 02 09 13:23:26
Accueil
Codes
Tutoriels
Forum
Livres
Emploi
Services
Connexion
Trouver un code source :
dans
Tout le site
Codes
Tutoriels
Forum
Blogs
Livres
RFC
Icones
News .NET
Boutique
[ Dernières recherches ]
Veuillez saisir votre recherche... Ex: smtp, lire un fichier, rs232
Options de recherche :
Tous les codes
Tous les codes en .Net
Tous les codes sauf .Net
Langages disponibles :
Tous les langages
ASP / ASP.NET
Assembleur
C / C++ / C++.NET
C# / C#.NET
ColdFusion
Delphi
Flash
Flex, Air, ActionScript
Foxpro
Graphisme
IRC
JAVA / J2EE
Javascript / Ajax / DHTML
PDA / PocketPC
PHP
Python
Regex, Regular Expression, Expression régulière
SQL
Visual Basic, VB6, VB.NET, VB 2005, VB
4 commentaire(s) de pipo
sur des sources sur tout
CodeS-SourceS
Déposé sur
Affiche un calendrier sous une zone de saisie
il te faut en fait creer un .js du code javascript.
puis integrer le .js dans le header de ta page, puis mettre (ajouter) tout simplement sur ton control "input text":
onfocus="view_microcal(strucDate(new Date()),true,true,this.id,'microcal2',-1,0);"
onblur="CalendarHide(this.id,'microcal2');"
//optionnel
onkeyup="this.style.color=testTypeDate(this.value)?'black':'red'"
ce qui donne :
<input type="text" maxlength="10" id="dateDebut2" value="" onfocus="view_microcal(strucDate(new Date()),true,true,this.id,'microcal2',-1,0);" onblur="CalendarHide(this.id,'microcal2');" onkeyup="this.style.color=testTypeDate(this.value)?'black':'red'">
et ou "microcal2" et le nom du layer allant afficher le calandar :
<div id="microcal2" style="visibility:hidden;position:absolute;border:2px red dashed;background:#ffffff;"></div>
Posté le :
16/05/2008 20:25:18
Déposé sur
Affiche un calendrier sous une zone de saisie
ben ... le but aussi est de partager le code... tout ce que tu veux faire est fait... il te reste a reprendre le code que j'ai fais et l'ameliorer... c'est comme du cvs... mais dans un forum lol...
re inventer la roue ne sert a rien, s'enrichir les uns des autres oui. Mais si tu preferes tout refaire...
NB : la tooltips est faite,
le bouton aujourd'hui aussi,
les styles qui s'emboite aussi,
affichage de plusieur calendrier dans la mm page aussi,
a+
et bonne continuation.
Posté le :
09/05/2008 21:00:58
Déposé sur
Affiche un calendrier sous une zone de saisie
voici la version 1.1 avec :
- mise globale des styles en css
- gestion multithread (multi calendar dans une page)
- correction de la gestion du focus sous ie7
- correction jours du mois suivants (mauvais css)
reste a tout mettre au propre, et créer la dll pour l'ajouter a .Net et ainsi remplacer le CalendarExtender d'ajaxtoolkit de merde. Le code de celui ci est court, efficace et personnalisable. Tu as bien bossé AmRouNiX !
Continu !
<html>
<head>
<style>
input {border:1px blue solid;width:80px;}
body {font-family:Tahoma;font-size:12px}
td {font-family:Tahoma;font-size:12px}
.calendar
{
width:150px;
}
.monthandyear
{
font-size:10px;
font-family:Tahoma;
text-align:center;
}
.swapmonth
{
cursor:pointer;
}
.daynormal, .daynormalBG
{
width:20px;
height:20px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.daynormalnomonth, .daynormalnomonthGB
{
width:20px;
height:20px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.dayselected, .dayselectedBG,.dayselectedRP
{
color:#000;
width:18px;
height:18px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
border:2px green solid;
}
.daytoday, .daytodayBG
{
color:#000;
width:18px;
height:18px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
border:2px red solid;
}
.daynormalBG, .daynormalnomonthBG, .daytodayBG
{
color:red;
cursor:help;
}
.daynormalRP,.daynormalnomonthRP,.daynormalnomonth
{
color:#909090;
width:20px;
height:20px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.dayslist
{
width:20px;
height:20px;
font-size:10px;
font-family:Tahoma;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.today
{
color:#000;
font-size:10px;
font-family:Tahoma;
text-align:center;
}
.todayTD
{
font-size:10px;
font-family:Tahoma;
text-align:center;
}
</style>
<script language="javascript">
//
//TODO :
// - revoir la nomenclature des variables
// - revoir la nomenclature des méthodes
// - gestion des dates en anglais si langue anglaise choisi
var langue= "FR";
//
var moisXGB=["","January","February","March","April","May","June","July","August","September","October","November","December"];
var JourMGB=["Su","Mo","Tu","We","Th","Fr","Sa"];
var startWeekGB=0;
var jourPauseGB={0:true,6:true}; //jour de pause de la semaine
var jourFerieeGB={"1-1":"jour an","1-5":"fête du travail","8-5":"armistice","14-7":"fête nationale","15-8":"ascencion","1-11":"armistice","11-11":"toussain","25-12":"noel"};
var todayGB = "today";
//
var moisXFR=["","Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"];
var JourMFR=["Di","Lu","Ma","Me","Je","Ve","Sa"];
var startWeekFR=1;
var jourPauseFR={0:true,6:true}; //jour de pause de la semaine
var jourFerieeFR={"1-1":"jour an","1-5":"fête du travail","8-5":"armistice","14-7":"fête nationale","15-8":"ascencion","1-11":"armistice","11-11":"toussain","25-12":"noel"};
var todayFR = "aujourd'hui";
//
var moisX = eval("moisX" + langue );
var JourM = eval("JourM" + langue );
var startWeek=eval("startWeek" + langue ); ;//debut de la semaine 0=dim,1=lun,...
var jourPause=eval("jourPause" + langue ); ; //jour de pause de la semaine
var jourFeriee=eval("jourFeriee" + langue ); ;
var today=eval("today" + langue ); ;
//
var fermable_microcal=true;
//var select_old= null;
//structure la date
function strucDate(dateX)
{
return {"pos":dateX.getDay(),"jour":dateX.getDate(),"mois":dateX.getMonth()+1,"annee":dateX.getFullYear()};
}
//var dateS= strucDate(new Date());//date Selectionné
//var dateA= strucDate(new Date());//date Affichée
var dnow= strucDate(new Date());//date actuelle
var seetoday= true;//affiche today
//retourne le ième jour du 1er du mois
function premJourMois(mois,annee)
{
return (new Date(annee,mois-1,1).getDay());
}
//retourne le jour max du mois
function JmaxMois(mois,annee)
{
return (new Date(annee,mois,0).getDate());
}
/* Test une date si elle est correct...spécial killer*/
function testTypeDate(dateEntree)
{
tst=false;
try
{
rc=dateEntree.split("/");nd=new Date(rc[2],(rc[1]-1),rc[0]);
tst=(rc[2]>1800&&rc[2]<2200&&rc[2]==nd.getFullYear()&&rc[1]==(nd.getMonth()+1)&&rc[0]==nd.getDate());
} catch(e) {}
return tst;
}
//selection de la zone avec la souris
function choix(koi,code)
{
if (code)
{
koi.select_old = koi.style.background;
koi.style.background = '#c0c0FF';
}
else
{
koi.style.background = koi.select_old;
}
}
//test si année bissextile
function bissextile(annee) {
return (annee%4==0 && annee %100!=0 || annee%400==0);
}
//Retourne le nombre de jour depuis le 1er janvier (num de semaine)
function nbJAnnee(dateX){
var nb_mois=[,0,31,59,90,120,151,181,212,243,273,304,334];
j=dateX.jour ; m=dateX.mois ; a=dateX.annee;
nb=nb_mois[m]+j-1 ;
if (bissextile(a) && m>2) nb++;
return nb;
}
function testTravail(dateS,oldX,xx,jj,mm,aa)
{
var cssparent = "";
if (jourPause[xx] != null)
cssparent="RP";
else if (jourFeriee[jj+"-"+mm] != null)
cssparent="BG";
else
cssparent="";
if (jj==dateS.jour && mm==dateS.mois && aa==dateS.annee)
{
styleX="dayselected"+cssparent;
}
else if (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee)
{
styleX="daytoday"+cssparent;
}
else
{
styleX = (oldX)?("daynormal"+cssparent):("daynormalnomonth"+cssparent);
}
return styleX;
}
//affiche le calendrier
function view_microcal(dateS,init,actif,ki,sourceid,mxS,axS)
{
if(typeof(document.getElementById(ki).process)!="undefined")
{
if(document.getElementById(ki).process==true && init)
return;
}
document.getElementById(ki).process=true;
if(typeof(document.getElementById(ki).dateS)=="undefined")
{
dateS = document.getElementById(ki).dateS;
document.getElementById(ki).dateS = strucDate(new Date());
}
dateS = document.getElementById(ki).dateS;
if(init)
{
dateA=strucDate(new Date(dateS.annee,dateS.mois-1,dateS.jour));
}
if (actif )
{
//decalage du mois su on clique sur -/+
if (mxS!=-1)
{
clearTimeout(cc);
//if(init!=false)
//alert(actif);
//if(init)
document.getElementById(ki).focus();
fermable_microcal=true;
dateA.mois=mxS;
dateA.annee=axS;
if (dateA.mois<1) {dateA.annee--;dateA.mois+=12;}
if (dateA.mois>12) {dateA.annee++;dateA.mois-=12;}
}
//init
Dstart=(premJourMois(dateA.mois,dateA.annee)+7-startWeek)%7;
jmaxi=JmaxMois(dateA.mois,dateA.annee);
jmaxiAvant=JmaxMois((dateA.mois-1),dateA.annee);
//si on veux ajouter le numero de la semaine ...
//idxWeek=parseInt(nbJAnnee(strucDate(new Date(dateA.mois+'-01-'+dateA.annee)))/7,10)+1;
ymaxi=parseInt((jmaxi+Dstart+1)/7,10);
//generation du tableau
//--entête
htm="<table class=\"calendar\"><tr>";
htm+="<td class=\"swapmonth\" onclick=\"view_microcal(null,false,true,'"+ki+"','"+sourceid+"',"+(dateA.mois-1)+","+dateA.annee+");\"><<</td>";
htm+="<td colspan='5' class=\"monthandyear\"> <b> "+moisX[dateA.mois]+"</b> "+dateA.annee+"</td>";
htm+="<td class=\"swapmonth\" onclick=\"view_microcal(null,false,true,'"+ki+"','"+sourceid+"',"+(dateA.mois+1)+","+dateA.annee+")\">>></td></tr>";
//--corps
htm+="<tr>";
//affichage des jours DLMMJVS
for (x=0;x<7;x++)
htm+="<td class=\"dayslist\"><b>"+JourM[(x+startWeek)%7]+"</b></td>";
htm+="</tr>"
// alert(jmaxi);
//------------------------
for (var y=0;y<=ymaxi;y++)
{
htm+="<tr>";
for (var x=0;x<7;x++)
{
idxP=y*7+x-Dstart+1; //numero du jour
aa=dateA.annee;
xx=(x+startWeek)%7;
var musttest=false;
//jour du mois précedent
if (idxP<=0)
{
jj=idxP+jmaxiAvant;
mm=dateA.mois-1;
if (mm==0)
{
mm=12;
aa--;
}
musttest=false;
}
else if (idxP>jmaxi) //jour du mois suivant
{
jj=idxP-jmaxi;
mm=dateA.mois+1;
if (mm==13)
{
mm=1;
aa++;
}
musttest=false;
}
else //jour du mois en cours
{
jj=idxP;
mm=dateA.mois;
musttest=true;
}
var alt = "";
if (jourFeriee[jj+"-"+mm] != null)
{
alt = jourFeriee[jj+"-"+mm];
}
htm+="<td class=\""+testTravail(dateS,musttest,xx,jj,mm,aa)+"\" onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\"document.getElementById('"+ki+"').dateS=strucDate(new Date("+aa+","+(mm-1)+","+jj+"));document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';document.getElementById('"+sourceid+"').style.visibility='hidden';\"><span alt = \""+alt+"\"title=\""+alt+"\">"+jj+"</span></td>";//testTravail(dateS,musttest,xx,jj,mm,aa)+"/"+
}
htm+="</tr>"
}//-------------------------
if(seetoday)
{
htm+="<tr>";
htm+="<td colspan='7' class=\"todayTD\"><a href=\"javascript:document.getElementById('"+ki+"').dateS=strucDate(new Date("+dnow.annee+","+(dnow.mois-1)+","+dnow.jour+"));document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';void(0);\" class=\"today\">"+today+"</a></td>";
htm+="</tr>"
}
htm+="</table>"
//affiche le tableau
document.getElementById(sourceid).innerHTML=htm;
document.getElementById(sourceid).style.visibility="";
}
else
{
//ferme le calendrier
if (fermable_microcal)
CalendarHide(ki,sourceid);
}
}
function CalendarHide(ki,sourceid)
{
cc = setTimeout("document.getElementById('"+ki+"').process=false;document.getElementById('"+sourceid+"').style.visibility='hidden';",500);
}
var cc=false;
</script>
</head>
<body style="margin:0px">
<center>
<br><br><b>micro-calendrier <i>par AmRouNiX (A. Selim)</i><b><br><a href="http://www.crew.free.fr">http://www.crew.free.fr</a><br>modified by EL / (Emmanuel LELEU) / v1.1 <br><br>
Saisissez une date au format JJ/MM/AAAA
<table cellpadding="0" cellspacing="0">
<tr><td>DateDebut</td><td><input type="text" maxlength="10" id="dateDebut" value="" onfocus="view_microcal(strucDate(new Date()),true,true,this.id,'microcal',-1,0);" onblur="CalendarHide(this.id,'microcal');" onkeyup="this.style.color=testTypeDate(this.value)?'black':'red'"></td></tr>
<tr><td></td><td><div id="microcal" style="visibility:hidden;position:absolute;border:2px red dashed;background:#ffffff;"></div></td></tr>
<tr><td>DateFin</td><td><input type="text" maxlength="10" id="dateDebut2" value="" onfocus="view_microcal(strucDate(new Date()),true,true,this.id,'microcal2',-1,0);" onblur="CalendarHide(this.id,'microcal2');" onkeyup="this.style.color=testTypeDate(this.value)?'black':'red'"></td></tr>
<tr><td></td><td><div id="microcal2" style="visibility:hidden;position:absolute;border:2px red dashed;background:#ffffff;"></div></td></tr>
</table>
<center>
</body>
</html>
Posté le :
09/05/2008 09:08:23
Déposé sur
Affiche un calendrier sous une zone de saisie
bonjour et félicitation pour ce calendrier.
Je me suis tout de meme permis de le modifier afin de coller au mieux aux besoins :
- gestion multilingues des libellés
- affichage du jour sélectionné en "vert"
- ajout du lien "aujourd'hui" afin de sélectionné le jour en cours
- réouverture du calendrier sur la date sélectionnée
- affichage du texte en info bulle des jours "chomés"
- gestion des styles par css
sinon, bien sympas ton code.
a+
manu
<html>
<head>
<style>
input {border:1px blue solid;width:80px;}
body {font-family:Tahoma;font-size:12px}
td {font-family:Tahoma;font-size:12px}
.daynormal, .daynormalBG
{
width:20px;
height:20px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.daynormalnomonth, .daynormalnomonthGB
{
width:20px;
height:20px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.dayselected
{
color:#000;
width:18px;
height:18px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
border:2px green solid;
}
.daytoday, .daytodayBG
{
color:#e0e0e0;
width:18px;
height:18px;
font-family:Tahoma;
font-size:10px;
text-align:center;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
border:2px red solid;
}
.daynormalBG, .daynormalnomonthBG, .daytodayBG
{
color:red;
cursor:help;
}
.dayslist
{
color:#e0e0e0;
width:20px;
height:20px;
font-size:10px;
font-family:Tahoma;
cursor:pointer;
border-right:1px #e0e0e0 solid;
border-bottom:1px #e0e0e0 solid;
}
.today
{
font-size:10px;
font-family:Tahoma;
text-align:center;
}
.todayTD
{
font-size:10px;
font-family:Tahoma;
text-align:center;
}
</style>
<script language="javascript">
var langue= "FR";
//
var moisXGB=["","January","February","March","April","May","June","July","August","September","October","November","December"];
var JourMGB=["Su","Mo","Tu","We","Th","Fr","Sa"];
var startWeekGB=0;
var jourPauseGB={0:true,6:true}; //jour de pause de la semaine
var jourFerieeGB={"1-1":"jour an","1-5":"fête du travail","8-5":"armistice","14-7":"fête nationale","15-8":"ascencion","1-11":"armistice","11-11":"toussain","25-12":"noel"};
var todayGB = "today";
//
var moisXFR=["","Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"];
var JourMFR=["Di","Lu","Ma","Me","Je","Ve","Sa"];
var startWeekFR=1;
var jourPauseFR={0:true,6:true}; //jour de pause de la semaine
var jourFerieeFR={"1-1":"jour an","7-5":"jour an","1-5":"fête du travail","14-7":"fête nationale","15-8":"ascencion","1-11":"armistice","11-11":"toussain","25-12":"noel"};
var todayFR = "aujourd'hui";
//
var moisX = eval("moisX" + langue );
var JourM = eval("JourM" + langue );
var startWeek=eval("startWeek" + langue ); ;//debut de la semaine 0=dim,1=lun,...
var jourPause=eval("jourPause" + langue ); ; //jour de pause de la semaine
var jourFeriee=eval("jourFeriee" + langue ); ;
var today=eval("today" + langue ); ;
//
var fermable_microcal=true;
var select_old= null;
//structure la date
function strucDate(dateX)
{
return {"pos":dateX.getDay(),"jour":dateX.getDate(),"mois":dateX.getMonth()+1,"annee":dateX.getFullYear()};
}
var dateS= strucDate(new Date());//date Selectionné
var dateA= strucDate(new Date());//date Affichée
var dnow= strucDate(new Date());//date actuelle
var seetoday= true;//affiche today
//retourne le ième jour du 1er du mois
function premJourMois(mois,annee)
{
return (new Date(annee,mois-1,1).getDay());
}
//retourne le jour max du mois
function JmaxMois(mois,annee)
{
return (new Date(annee,mois,0).getDate());
}
/* Test une date si elle est correct...spécial killer*/
function testTypeDate(dateEntree)
{
tst=false;
try
{
rc=dateEntree.split("/");nd=new Date(rc[2],(rc[1]-1),rc[0]);
tst=(rc[2]>1800&&rc[2]<2200&&rc[2]==nd.getFullYear()&&rc[1]==(nd.getMonth()+1)&&rc[0]==nd.getDate());
} catch(e) {}
return tst;
}
//selection de la zone avec la souris
function choix(koi,code)
{
if (code)
{
select_old= koi.style.background;
koi.style.background ='#c0c0FF';
}
else
{
koi.style.background =select_old;
}
}
function testTravail(oldX,xx,jj,mm,aa)
{
//todo styleX=(oldX)?"":"color:#e0e0e0;";
//styleX+="cursor:pointer;border-right:1px #e0e0e0 solid;border-bottom:1px #e0e0e0 solid;";
var cssparent = "";
if (jourPause[xx] != null)
cssparent="";
else if (jourFeriee[jj+"-"+mm] != null)
cssparent="BG";
else
cssparent="";
//styleX+="background:#f0f0f0;";
//cssparent="";
if (jj==dnow.jour&&mm==dnow.mois&&aa==dnow.annee)
{
//styleX+="border:2px red solid;";
styleX="daytoday"+cssparent;
}
else if (jj==dateS.jour && mm==dateS.mois && aa==dateS.annee)
{
styleX="dayselected"+cssparent;
}
else
{
styleX = (oldX)?("daynormal"+cssparent):("daynormalnomonth"+cssparent);
}
return styleX;
}
//test si année bissextile
function bissextile(annee) {
return (annee%4==0 && annee %100!=0 || annee%400==0);
}
//Retourne le nombre de jour depuis le 1er janvier (num de semaine)
function nbJAnnee(dateX){
var nb_mois=[,0,31,59,90,120,151,181,212,243,273,304,334];
j=dateX.jour ; m=dateX.mois ; a=dateX.annee;
nb=nb_mois[m]+j-1 ;
if (bissextile(a) && m>2) nb++;
return nb;
}
//affiche le calendrier
function view_microcal(init,actif,ki,source,mxS,axS)
{
if(init)
{
dateA=strucDate(new Date(dateS.annee,dateS.mois-1,dateS.jour));
}
if (actif)
{
//decalage du mois su on clique sur -/+
if (mxS!=-1)
{
clearTimeout(cc);
//document.getElementById(ki).focus();
fermable_microcal=true;
dateA.mois=mxS;
dateA.annee=axS;
if (dateA.mois<1) {dateA.annee--;dateA.mois+=12;}
if (dateA.mois>12) {dateA.annee++;dateA.mois-=12;}
}
//init
Dstart=(premJourMois(dateA.mois,dateA.annee)+7-startWeek)%7;
jmaxi=JmaxMois(dateA.mois,dateA.annee);
jmaxiAvant=JmaxMois((dateA.mois-1),dateA.annee);
//si on veux ajouter le numero de la semaine ...
//idxWeek=parseInt(nbJAnnee(strucDate(new Date(dateA.mois+'-01-'+dateA.annee)))/7,10)+1;
ymaxi=parseInt((jmaxi+Dstart+1)/7,10);
//generation du tableau
//--entête
htm="<table style='width:150px'><tr style='font-size:10px;font-family:Tahoma;text-align:center;'>";
htm+="<td style='cursor:pointer;' onclick=\"view_microcal(false,true,'"+ki+"','"+source+"',"+(dateA.mois-1)+","+dateA.annee+");\"><<</td>";
htm+="<td colspan='5'> <b> "+moisX[dateA.mois]+"</b> "+dateA.annee+"</td>";
htm+="<td style='cursor:pointer;' onclick=\"view_microcal(false,true,'"+ki+"','"+source+"',"+(dateA.mois+1)+","+dateA.annee+")\">>></td></tr>";
//--corps
htm+="<tr>";
//affichage des jours DLMMJVS
for (x=0;x<7;x++)
htm+="<td class=\"dayslist\"><b>"+JourM[(x+startWeek)%7]+"</b></td>";
htm+="</tr>"
// alert(jmaxi);
//------------------------
for (var y=0;y<=ymaxi;y++)
{
htm+="<tr>";
for (var x=0;x<7;x++)
{
idxP=y*7+x-Dstart+1; //numero du jour
aa=dateA.annee;
xx=(x+startWeek)%7;
var musttest=false;
//jour du mois précedent
if (idxP<=0)
{
jj=idxP+jmaxiAvant;
mm=dateA.mois-1;
if (mm==0)
{
mm=12;
aa--;
}
musttest=false;
}
else if (idxP>jmaxi) //jour du mois suivant
{
jj=idxP-jmaxi;mm=dateA.mois+1;
if (mm==13)
{
mm=1;
aa++;
}
musttest=false;
}
else //jour du mois en cours
{
jj=idxP;
mm=dateA.mois;
musttest=true;
}
var alt = "";
if (jourFeriee[jj+"-"+mm] != null)
{
alt = jourFeriee[jj+"-"+mm];
}
htm+="<td class=\""+testTravail(musttest,xx,jj,mm,aa)+"\" onmouseover='choix(this,true)' onmouseout='choix(this,false)' onclick=\"dateS=strucDate(new Date("+aa+","+(mm-1)+","+jj+"));document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';document.getElementById('"+source+"').style.visibility='hidden';\"><span alt = \""+alt+"\"title=\""+alt+"\">"+jj+"</span></td>";
}
htm+="</tr>"
}//-------------------------
if(seetoday)
{
htm+="<tr>";
htm+="<td colspan='7' class=\"todayTD\"><a href=\"javascript:dateS=strucDate(new Date("+dnow.annee+","+(dnow.mois-1)+","+dnow.jour+"));document.getElementById('"+ki+"').value='"+((jj<10)?"0":"")+jj+"/"+((mm<10)?"0":"")+mm+"/"+aa+"';document.getElementById('"+ki+"').style.color='black';void(0);\" class=\"today\">"+today+"</a></td>";
htm+="</tr>"
}
htm+="</table>"
//affiche le tableau
document.getElementById(source).innerHTML=htm;
document.getElementById(source).style.visibility="";
}
else
{
//ferme le calendrier
if (fermable_microcal)
cc=setTimeout("document.getElementById('"+source+"').style.visibility='hidden';",500);
}
}
</script>
</head>
<body style="margin:0px">
<center>
<br><br><b>micro-calendrier <i>par AmRouNiX (A. Selim)</i><b><br><a href="http://www.crew.free.fr">http://www.crew.free.fr</a><br>modified by EL / (Emmanuel LELEU)<br><br>
Saisissez une date au format JJ/MM/AAAA
<table cellpadding="0" cellspacing="0">
<tr><td ><input type="text" maxlength="10" id="dateDebut" value="" onfocus="view_microcal(true,true,this.id,'microcal',-1,0);" onblur="view_microcal(false,false,this.id,'microcal',-1,0);" onkeyup="this.style.color=testTypeDate(this.value)?'black':'red'"></td></tr>
<tr><td><div id="microcal" style="visibility:hidden;position:absolute;border:2px red dashed;background:#ffffff;"></div>ssss</td></tr>
</table>
<center>
</body>
</html>
Posté le :
08/05/2008 23:43:46
1
Nos sponsors
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3
par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article
par ROMELARD Fabrice
MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !
MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !
par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article
par Vko
[FRAMEWORK 4] LES TASKS ET LE THREAD UI
[FRAMEWORK 4] LES TASKS ET LE THREAD UI
par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article
par fathi
WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE
WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE
par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article
par JeremyJeanson
TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC
TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC
par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article
par ROMELARD Fabrice
La suite
RSS
Côté IT
Utiliser Office 365 pour un projet d?équipe - PART 2
Utiliser Office 365 pour un projet d?équipe - PART 1
SharePoint 2007 : Installation du Service Pack 3 de MOSS
SharePoint 2007 : Installation du Service Pack 3 de WSS V3
Installation de SQL Server DENALI CTP3
Mise à jour de Windows 2003 R2 vers Windows 2008 R2
Upgrade de SQL Server 2005 vers SQL Server 2008 R2
La suite
RSS
Offres d'emploi
Recherche Analyste Programmeur Adélia
Recherche Développeur eZ Publish confirmé
Recherche AP (H/F) ACCESS EXCEL VBA
Recherche SUPPORT INFORMATIQUE / DEVELOPPEUR
Recherche Developpeur web
Recherche développeur Web
Recherche Développeur/Intégrateur (H/F)
Déposer une offre
La suite
RSS
Formations Video
Coffret : Ateliers sur la mode
Atelier sur la mode : Motifs et matières
Atelier sur la mode : La planche tendance
Atelier sur la mode : De retour de pige et repérage
Corel Painter 12 : Les fondamentaux
Coffret : Microsoft Office 2010 de A à Z
De Microsoft Office 2003 à 2007 et 2010
La suite
RSS
Appels d'offres
Fonctionnalites supplementaires sous Joomla
Budget :
800€
Animation interactive pour I phone
Budget :
2 000€
Site web pour projet Haiti
Budget :
10 000€
La suite
RSS
Logiciels
Academy System (17.2.1.0)
ACADEMY SYSTEM (17.2.1.0)
Logiciel de gestion des établissements. - élèves/étudiants (inscription, dossier, absence...) -...
Cliquez pour télécharger Academy System
Easy-Planning (1.0.0.1)
EASY-PLANNING (1.0.0.1)
Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ...
Cliquez pour télécharger Easy-Planning
COLLECTOR PLUS (3.00B)
COLLECTOR PLUS (3.00B)
COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par : - L...
Cliquez pour télécharger COLLECTOR PLUS
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)
PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)
PONAMEDIA TV DEVIENS HELLLOOO FLASH LA TV SUR VOTRE ORDINATEUR. Toute une plateforme Multi...
Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO
LettresFaciles 2011 (8.0.0.1)
LETTRESFACILES 2011 (8.0.0.1)
LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types. Son inte...
Cliquez pour télécharger LettresFaciles 2011
+ de logiciels à télécharger
Vidéos drôles
Halloween Party
Terry Tate Office Linebacker Superbowl 2003
Jeu vidéo instructif
C'est un véritable vol !
Banana Song
Comment attraper la grippe A
Parodie Pub Window 7
La suite
RSS
Sondage...
Votre navigateur n'utilise pas le javascript, pour
voter aux sondages de ce site, cliquez ici
Statistiques
1 872 951
membres
104
nouveaux aujourd'hui
16 151
membres club
Comparez les prix
Archos 7 home tablet - 2 Go
Entre 149€ et 159€
Visiter le guide achat
CalendriCode
Février
2012
L
M
M
J
V
S
D
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Consulter la suite du CalendriCode
Photothèque
Visiter la photothèque
CS Tool Box