IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Modifier un calendrier


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2011
    Messages : 35
    Points : 15
    Points
    15
    Par défaut Modifier un calendrier
    Bonjour à tous,
    Il y a quelques mois, j'ai téléchargé un script permettant d'afficher un calendrier.
    Je l'ai modifié au mieux de mes connaissances en javascript, qui sont assez limitées à l'heure présente.

    Voici un aperçu de ce calendrier :


    Et voici le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    var d = new Date();
    var dm = d.getMonth() + 1;
    var dan = d.getYear();
    if(dan < 999) dan+=1900;
    calendrier(dm,dan);
    function calendrier(mois,an) {
    nom_mois = new Array
    ("JANVIER","FEVRIER","MARS","AVRIL","MAI","JUIN","JUILLET",
    "AOUT","SEPTEMBRE","OCTOBRE","NOVEMBRE","DECEMBRE");
    jour = new Array ("Lun","Mar","Mer","Jeu","Ven","Sam","Dim");
    var police_entete = "Verdana,Arial";/* police entête de calendrier  */
    var taille_pol_entete = 1;          /* taille de police 1-7 entête de calendrier  */
    var couleur_pol_entete = "#FFFF00"; /* couleur de police entête de calendrier  */
    var arrplan_entete = "#000066";     /* couleur d'arrière plan entête de calendrier  */
    var police_jours = "Verdana,Arial"; /* police affichage des jours  */
    var taille_pol_jours = 1;           /* taille de police 1-7 affichage des jours  */
    var coul_pol_jours = "#000000";     /* couleur de police affichage des jours  */
    var arrplan_jours = "#FFFFFF";      /* couleur d'arrière plan affichage des jours  */
    var couleur_dim = "#000000";        /* couleur de police pour dimanches  */
    var couleur_cejour = "#D1EEEE";     /* couleur d'arrière plan pour aujourd'hui  */
    var WeekRef = 0; /* Numerotation des semaines*/
    var maintenant = new Date();
    var ce_mois = maintenant.getMonth() + 1;
    var cette_annee = maintenant.getYear();
    if(cette_annee < 999) cette_annee+=1900;
    var ce_jour = maintenant.getDate();
    var temps = new Date(an,mois-1,1);
    var Start = temps.getDay();
    if(Start > 0) Start--;
    else Start = 6;
    var Stop = 31;
    if(mois==4 ||mois==6 || mois==9 || mois==11 ) --Stop;
    if(mois==2) {
     Stop = Stop - 3;
     if(an%4==0) Stop++;
     if(an%100==0) Stop--;
     if(an%400==0) Stop++;
    }
    document.write('<table border="1" cellpadding="1" cellspacing="1">');
    var entete_mois = nom_mois[mois-1] + " " + an;
    inscrit_entete(entete_mois,arrplan_entete,couleur_pol_entete,taille_pol_entete,police_entete);
    var nombre_jours = 1;
    for(var i=0;i<=5;i++) {
      document.write("<tr>");
      for(var j=0;j<=5;j++) {
        if((i==0)&&(j < Start))
         inscrit_cellule("*",arrplan_jours,coul_pol_jours,taille_pol_jours,police_jours);
        else {
          if(nombre_jours > Stop)
            inscrit_cellule("*",arrplan_jours,coul_pol_jours,taille_pol_jours,police_jours);
          else {
            if((an==cette_annee)&&(mois==ce_mois)&&(nombre_jours==ce_jour))
             inscrit_cellule(nombre_jours,couleur_cejour,coul_pol_jours,taille_pol_jours,police_jours);
            else
             inscrit_cellule(nombre_jours,arrplan_jours,coul_pol_jours,taille_pol_jours,police_jours);
            nombre_jours++;
            }
          }
        }
        if(nombre_jours > Stop)
          inscrit_cellule("*",arrplan_jours,couleur_dim,taille_pol_jours,police_jours);
        else {
          if((an==cette_annee)&&(mois==ce_mois)&&(nombre_jours==ce_jour))
            inscrit_cellule(nombre_jours,couleur_cejour,couleur_dim,taille_pol_jours,police_jours);
          else
            inscrit_cellule(nombre_jours,arrplan_jours,couleur_dim,taille_pol_jours,police_jours);
          nombre_jours++;
        }
        document.write("<\/tr>");
      }
    document.write("<\/table>");
    }
    function inscrit_entete(titre_mois,couleurAP,couleurpolice,taillepolice,police) {
    document.write("<tr>");
    document.write('<td align="center" colspan="7" valign="middle" bgcolor="'+couleurAP+'">');
    document.write('<font size="'+taillepolice+'" color="'+couleurpolice+'" face="'+police+'"><b>');
    document.write(titre_mois);
    document.write("<\/b><\/font><\/td><\/tr>");
    document.write("<tr>");
    for(var i=0;i<=6;i++)
      inscrit_cellule(jour[i],couleurAP,couleurpolice,taillepolice,police);
    document.write("<\/tr>");
    }
    function inscrit_cellule(contenu,couleurAP,couleurpolice,taillepolice,police) {
    document.write('<td align="center" valign="middle" bgcolor="'+couleurAP+'">');
    document.write('<font size="'+taillepolice+'" color="'+couleurpolice+'" face="'+police+'"><b>');
    document.write(contenu);
    document.write("<\/b><\/font><\/td>");
    }
    Mes connaissances étant absolument insuffisantes, je me permets de faire appel à vos compétences car je désirerais apporter 2 autres modifications dans ce code :
    - 1 colonne à gauche qui afficherait le n° des semaines
    - combler les cellules libres qui viennent en fin de tableau par les premiers jours du mois suivant
    (avec font=grey et size=2, et sans augmenter de la taille dudit tableau, bien sûr)

    Le nouveau code javascript afficherait alors ce calendrier :


    Je suis conscient que cela peut vous demander un certain nombre d'efforts, et je vous en remercie par avance.

  2. #2
    Membre confirmé Avatar de nadox
    Homme Profil pro
    Développeur
    Inscrit en
    Février 2010
    Messages
    360
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 360
    Points : 551
    Points
    551
    Par défaut
    Bonjour,

    Vous souhaiter faire appel à des compétences pour faire le travail sur un forum d'ENTRAIDE ?

    Vos connaissances(futures) ne viendront pas en demandant à quelqu'un d'autre de faire l'exercice à votre place... Le résultat demandé est un petit exercice de programmation des plus courants...

    Je pense que vous devriez commencer par changer de script, celui date d'au moins 10 ans. ( oui je sais, les premiers résultats de google donnent ce genre de script... mais est-ce que google doit décider ce que vous allez utiliser ? )

    Peut-être que commencer par un bon tutoriel sur le javascript serait une bonne piste ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gers (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2011
    Messages : 35
    Points : 15
    Points
    15
    Par défaut
    Je comprends.
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2.x] modifier apparence calendrier formulaire
    Par wilson2 dans le forum Symfony
    Réponses: 4
    Dernier message: 02/02/2013, 12h43
  2. modifier un calendrier
    Par meteo71 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/02/2011, 22h40
  3. [OL-2007] Modifier un calendrier publié
    Par s.gallauziaux dans le forum Outlook
    Réponses: 1
    Dernier message: 12/01/2010, 21h51
  4. modifié un ptit script de calendrier en js
    Par gastoncs dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/07/2009, 20h53
  5. [AC-2007] Modifié un contrôle calendrier
    Par glooping dans le forum IHM
    Réponses: 2
    Dernier message: 24/07/2009, 09h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo