Discussion Wicri:Dilib source, module Wicri, commande WicriRecentChanges

De Wicri Outils

État du code

Résultat de la commande

   Date du jour : 2020-07-07
   Voici la liste des wikis ayant été modifiés aujourd'hui :
       - Wicri/Outils (fr)
   Page modifiée : Wicri:Dilib source, module Wicri, commande WicriRecentChanges, par William Tardot.
   
       - Wicri/Outils (fr)
   Page modifiée : Dilib, module SxmlNode, type SxmlAttribute, par Jacques Ducloy.
   
       - Wicri/Outils (fr)
   Page modifiée : Wicri:Dilib source, module Wicri, commande WicriRecentChanges, par Jacques Ducloy.
   
   3 pages ont été modifiées aujourd'hui.
Développements futurs
  • Regroupement des pages au lieu d'avoir une répétition du "Wicri/..."
  • (Remonter la date limite des modifs à plusieurs jours)

Date en paramètre

Le plus simple est de passer une date de début en paramètre.

Si rien n'est précisé, on prend la date du jour...

Pour calculer la date du jour, on utilise une fonction (BufferAppendIsoDateOfTheDay) qui met dans un objet de type Buffer la date du jour, mais en format condensé (20200702 au lieu de 2020-07-02).

On fait donc un bricolage pour mettre la date étendue dans un autre Buffer.

Je vais améliorer le dispositif dans une prochaine version de Dilib.


#include <getopt.h>
#include "Buffer.h"

char *dateDebut;

Buffer *bd1;
Buffer *bd2;
char *DateDuJour()
{
   BufferReset bd1;
   BufferAppendIsoDateOfTheDay(bd1);
   BufferReset bd2;
   BufferStrncpy(bd2, BufferString(bd1), 4);
   BufferStrcat(bd2,"-");
   BufferStrncat(bd2, BufferString(bd1)+4, 2);
   BufferStrcat(bd2,"-");
   BufferStrncat(bd2, BufferString(bd1)+6, 2);
   return BufferString(bd2);
}

int main(int argc, char **argv)
{
  int cOption;

  ...
  bd1=NewBuffer();
  bd2=NewBuffer();
  dateDebut=DateDuJour();
  ...


 while((cOption=getopt(argc,argv,":"))!=EOF)
    {switch (cOption)
      {  
         case 'd':
           dateDebut=optarg;
           break;
       }
     }
  ...
}