Accueil > Forum > > > > Modification calendrier
Modification calendrier
dimanche 27 février 2011 à 18:10:46 |
Modification calendrier

karlax
|
Bonjour,
Je cherche à mettre un sélecteur de date pour un formulaire destiné à être utilisé en local pour un "PME".
N'y connaissant pas grand chose, voire même rien en fait ^^', j'ai trouvé un calendrier sur le net qui correspond a ce dont j'ai besoin (le côté austère aussi correspond bien lol)
J'aimerai pouvoir modifier le jour de début de la semaine, pour l'instant la semaine commence le dimanche, comment pourrais je faire pour que la semaine commence le lundi ?
la partie à modifier semble être celle là
var first_day = ds_dc_date.getDay();
var first_loop = 1;
ds_echo (ds_template_new_week());
if (first_day != 0) {
ds_echo (ds_template_blank_cell(first_day));
}
var j = first_day;
for (i = 0; i < days; i ++) {
if (j == 0 && !first_loop) {
ds_echo (ds_template_new_week());
}
ds_echo (ds_template_day(i + 1, m, y));
first_loop = 0;
j ++;
j %= 7;
au cas le tout
<HEAD>
<style type="text/css">
.ds_box {
background-color: #000000;
border: 1px solid #000000; // couleur contour calendrier
position: absolute;
z-index: 32767;
}
.ds_tbl {
background-color: #80797F; // couleur jour hors mois en cours
}
.ds_head {
background-color: #EC8601; // couleur fermer et nom mois en cours
color: #FFF;
font-family: Book antica;
font-size: 14px;
font-weight: bold;
text-align: center;
letter-spacing: 2px;
}
.ds_subhead {
background-color: #F3ED47; // couleur nom jours de la semaine
color: #000;
font-size: 12px;
font-weight: bold;
text-align: center;
font-family: Book antica;
width: 32px;
}
.ds_cell {
background-color: #ECCCD1; // couleur numéros jours du mois
color: #000;
font-size: 13px;
font-weight: bold;
text-align: center;
font-family: Book antica;
padding: 5px;
cursor: pointer;
}
.ds_cell:hover {
background-color: #E101BB;
}
</style>
</head>
<body>
<table class="ds_box" cellpadding="0" cellspacing="0" id="ds_conclass" style="display: none;">
<tr><td id="ds_calclass">
</td></tr>
</table>
<script type="text/javascript">
var ds_i_date = new Date();
ds_c_month = ds_i_date.getMonth() + 1;
ds_c_year = ds_i_date.getFullYear();
function ds_getel(id) {
return document.getElementById(id);
}
function ds_getleft(el) {
var tmp = el.offsetLeft;
el = el.offsetParent
while(el) {
tmp += el.offsetLeft;
el = el.offsetParent;
}
return tmp;
}
function ds_gettop(el) {
var tmp = el.offsetTop;
el = el.offsetParent
while(el) {
tmp += el.offsetTop;
el = el.offsetParent;
}
return tmp;
}
var ds_oe = ds_getel('ds_calclass');
var ds_ce = ds_getel('ds_conclass');
var ds_ob = '';
function ds_ob_clean() {
ds_ob = '';
}
function ds_ob_flush() {
ds_oe.innerHTML = ds_ob;
ds_ob_clean();
}
function ds_echo(t) {
ds_ob += t;
}
var ds_element;
var ds_monthnames = [
'Janvier', 'Février', 'Mars', 'Avril', 'Mai', 'Juin',
'Juillet', 'Août', 'Septembre', 'Octobre', 'Novembre', 'Decembre'
];
var ds_daynames = [
'Dim', 'Lun', 'Mar', 'Mer', 'Jeu', 'Ven', 'Sam'
];
function ds_template_main_above(t) {
return '<table cellpadding="3" cellspacing="1" class="ds_tbl">'
+ '<tr>'
+ '<td class="ds_head" style="cursor: pointer" onclick="ds_py();"><<</td>'
+ '<td class="ds_head" style="cursor: pointer" onclick="ds_pm();"><</td>'
+ '<td class="ds_head" style="cursor: pointer" onclick="ds_hi();" colspan="3">[Fermer]</td>'
+ '<td class="ds_head" style="cursor: pointer" onclick="ds_nm();">></td>'
+ '<td class="ds_head" style="cursor: pointer" onclick="ds_ny();">>></td>'
+ '</tr>'
+ '<tr>'
+ '<td colspan="7" class="ds_head">' + t + '</td>'
+ '</tr>'
+ '<tr>';
}
function ds_template_day_row(t) {
return '<td class="ds_subhead">' + t + '</td>';
}
function ds_template_new_week() {
return '</tr><tr>';
}
function ds_template_blank_cell(colspan) {
return '<td colspan="' + colspan + '"></td>'
}
function ds_template_day(d, m, y) {
return '<td class="ds_cell" onclick="ds_onclick(' + d + ',' + m + ',' + y + ')">' + d + '</td>';
}
function ds_template_main_below() {
return '</tr>'
+ '</table>';
}
function ds_draw_calendar(m, y) {
ds_ob_clean();
ds_echo (ds_template_main_above(ds_monthnames[m - 1] + ' ' + y));
for (i = 0; i < 7; i ++) {
ds_echo (ds_template_day_row(ds_daynames[i]));
}
var ds_dc_date = new Date(y,m-1,1);
if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
days = 31;
} else if (m == 4 || m == 6 || m == 9 || m == 11) {
days = 30;
} else {
days = ((y % 400 == 0 || y % 4 == 0 && y % 100 != 0) ? 29 : 28); }
var first_day = ds_dc_date.getDay();
var first_loop = 1;
ds_echo (ds_template_new_week());
if (first_day != 0) {
ds_echo (ds_template_blank_cell(first_day));
}
var j = first_day;
for (i = 0; i < days; i ++) {
if (j == 0 && !first_loop) {
ds_echo (ds_template_new_week());
}
ds_echo (ds_template_day(i + 1, m, y));
first_loop = 0;
j ++;
j %= 7;
}
ds_echo (ds_template_main_below());
ds_ob_flush();
ds_ce.scrollIntoView();
}
function ds_sh(t) {
ds_element = t;
var ds_sh_date = new Date();
ds_c_month = ds_sh_date.getMonth() + 1;
ds_c_year = ds_sh_date.getFullYear();
ds_draw_calendar(ds_c_month, ds_c_year);
ds_ce.style.display = '';
the_left = ds_getleft(t);
the_top = ds_gettop(t) + t.offsetHeight;
ds_ce.style.left = the_left + 'px';
ds_ce.style.top = the_top + 'px';
ds_ce.scrollIntoView();
}
function ds_hi() {
ds_ce.style.display = 'none';
}
function ds_nm() {
ds_c_month ++;
if (ds_c_month > 12) {
ds_c_month = 1;
ds_c_year++;
}
ds_draw_calendar(ds_c_month, ds_c_year);
}
function ds_pm() {
ds_c_month = ds_c_month - 1;
if (ds_c_month < 1) {
ds_c_month = 12;
ds_c_year = ds_c_year - 1;
}
ds_draw_calendar(ds_c_month, ds_c_year);
}
function ds_ny() {
ds_c_year++;
ds_draw_calendar(ds_c_month, ds_c_year);
}
function ds_py() {
ds_c_year = ds_c_year - 1;
ds_draw_calendar(ds_c_month, ds_c_year);
}
function ds_format_date(d, m, y) {
m2 = '00' + m;
m2 = m2.substr(m2.length - 2);
d2 = '00' + d;
d2 = d2.substr(d2.length - 2);
return d2 + '/' + m2 + '/' + y;
}
function ds_onclick(d, m, y) {
ds_hi();
if (typeof(ds_element.value) != 'undefined') {
ds_element.value = ds_format_date(d, m, y);
} else if (typeof(ds_element.innerHTML) != 'undefined') {
ds_element.innerHTML = ds_format_date(d, m, y);
} else {
alert (ds_format_date(d, m, y));
}
}
</script>
</HEAD>
<form action="" method="post">
<div>
<input onclick="ds_sh(this);" name="date" readonly="readonly" style="cursor: text" /><br />
</div>
</form>
Merci d'avance si quelqu'un peut m'aider, et désolé si je poste pas sur la bonne rubrique voire sur le bon forum ^^'
|
|
lundi 28 février 2011 à 23:37:02 |
Re : Modification calendrier

007Julien
|
Deux modifications sont à opérer
Code Javascript : // Décaler les jours de la semaine en remplaçant
for (i=0;i<7;i++){ds_echo (ds_template_day_row(ds_daynames[i]));}
// par
for (i=0;i<7;i++){ds_echo (ds_template_day_row(ds_daynames[(i+1)%7]));}
// Décaler le premier jour en modifiant
var first_day = ds_dc_date.getDay();
// pour écrire
var first_day = (ds_dc_date.getDay()+6)%7;
Le code mériterait cependant quelques optimisations...
Code Javascript : // En remplaçant par exemple les horribles lignes suivantes
if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12) {
days = 31;
} else if (m == 4 || m == 6 || m == 9 || m == 11) {
days = 30;
} else {
days = ((y % 400 == 0 || y % 4 == 0 && y % 100 != 0) ? 29 : 28); }
// par la simple instruction
days=new Date(y,m,0).getDate(0);
Le nombre de jour d'un mois est, en effet, donné par le quantième de son dernier jour correspondant, en javascript, au jour 0 du mois suivant.
|
|
Cette discussion est classée dans : function, var, template, ds, el
Répondre à ce message
Sujets en rapport avec ce message
probleme insertion [ par tchaw ]
bonjour, jai un formulaire qui contient des données et je veux inserer ces donnée à la base mysql. jai préparé la page et la base mais lorsque je fait
calendrier [ par Abdoul86 ]
Bonjour, je ne sais pas si c'est dans cette partie du forum que je peux poser probleme. Bon, j'ai copier un code de calendrier pour l'appeler sur une
Renvoyer une requête le X second [ par alvinemambele ]
Slt je suis entrain de faire un Tchat en Ajax, l'envoie de la raquette se passe bien saut je suis bloquer au niveau d'actualisation de raquette pour v
Api google map [ par piep14 ]
Bonsoir, je viens vous demander de l'aide car je tourne en rond pour mettre en place l'api google map sur un siteJ'ai fait :function carte($VILLE,$CP,
Classe Connexion.php la plus simple possible .... [ par Tartuffe245 ]
Bonjour à tous,J'ai créé une classe connexion pour mon site internet et il se trouve que j'ai une erreur qui revient souvent mais je ne sais pas comme
Récupérer date dans un datepiker [ par vargas ]
Bonjour je chercher depuis des heures comment récupérer la date d'un datepiker qui se trouve dans un des mes formulaire pour l'enregistrer dans une b
probleme en ajax/js [ par dacosta67 ]
Bonjour , J'ai souhaite afficher le chargement de mon image et le résultat de mon script php.D'aprés firefox mon erreur est au niveau de :objetXHR.op
Question pour monter de classe ! [ par tibine974 ]
Bonjour , Voila je voudrais appeler une fonction à l'intérieur d'une autre fonction. Mais qd je fais cela , il me dit : " Fatal error: Call to undef
Uploader un fichier sur flash via php [ par cendrillon84 ]
Bonjour, J'ai trouvé un uploader pour télécharger des fichiers a partir d'un formulaire flash avec du php mais le fichier téléchargé s'enregistre dans
inclusion d'une classe provenant d'un autre fichier [ par lilippx ]
salut, je me suis mis au php ce matin mais je bute sur un petit truc (dès le premier jour, ce n'est pas motivant...)je n'arrive pas à instancier un ob
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|