Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

AGENDA / ORGANISER


Information sur la source

Catégorie :AddOns Classé sous : agenda, organiser, date, rappel Niveau : Débutant Date de création : 26/09/2004 Date de mise à jour : 26/09/2004 16:19:34 Vu / téléchargé: 3 178 / 82

Note :
5 / 10 - par 2 personnes
5,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

Description

Cliquez pour voir la capture en taille normale
Mon code permet d'enregistrer un rappel pour une date de son choix et d'en être avertit sur mIRC ! Si le rappel doit avoir lieux à un moment où mIRC n'est pas lancé, il sera affiché au prochain démarrage de mIRC (avec la mention de Rappel écoulé).
 

Source

  • dialog BS.org {
  • title "Organiseur"
  • size -1 -1 214 128
  • option dbu
  • list 1, 154 7 55 119, size hsbar vsbar
  • text "Organiseur, enregistrement de rappels et mémos pour la date et l'heure de votre choix ! Pour chaque rappel, vous serez signalés à l'heure indiquée, si le script n'est pas ouvert au moment du rappel, la notification de rappel sera affichée lors de la prochaine ouverture du script.", 2, 0 3 151 34, center
  • box "Rappels enregistrés", 3, 152 -1 60 129
  • box "", 4, 0 -1 152 39
  • text "Nom du rappel:", 6, 2 40 37 8
  • edit "", 7, 44 39 107 10, autohs
  • text "Date:", 8, 2 50 15 8
  • combo 9, 20 49 23 80, size drop
  • combo 10, 44 49 61 80, size drop
  • combo 11, 106 49 45 80, size drop
  • text "Heure:", 12, 2 61 18 8
  • combo 13, 20 60 23 69, size drop
  • text "Heures", 14, 46 62 21 8
  • combo 15, 68 60 23 69, size drop
  • text "Minutes", 16, 94 62 21 8
  • box "Semaine...", 17, 2 70 67 58
  • text "", 18, 3 77 64 8, disable center
  • text "", 19, 3 84 64 8, disable center
  • text "", 20, 3 91 64 8, disable center
  • text "", 21, 3 98 64 8, disable center
  • text "", 22, 3 105 64 8, disable center
  • text "", 23, 3 112 64 8, disable center
  • text "", 24, 3 119 64 8, disable center
  • box "", 25, 70 70 81 58
  • button "Enregistrer", 26, 72 83 77 12, flat
  • text "", 27, 72 74 77 8, center
  • button "Supprimer", 28, 72 97 77 12, flat
  • box "", 29, 70 107 81 21
  • button "Fermer", 30, 72 112 77 14, flat ok
  • text "", 31, 2 129 210 8, center
  • box "", 32, 116 58 35 13
  • text "", 33, 117 62 32 8, disable center
  • }
  • alias plur {
  • if $1 !isnum { halt }
  • if $1 > 1 { return s }
  • }
  • alias BS.error {
  • var %u = $input($$1-,ohd,Erreur)
  • halt
  • }
  • alias BS.org { dialog $iif($dialog(BS.org),-x,-m) BS.org BS.org }
  • on *:dialog:BS.org:*:*:{
  • if $devent == init {
  • var %a = $lines(Organiseur.txt),%datea = $gettok($date,3,47),%j = 1,%d = Lundi.Mardi.Mercredi.Jeudi.Vendredi.Samedi.Dimanche,%g,%m = Janvier.Février.Mars.Avril.Mai.Juin.Juillet.Août.Septembre.Octobre.Novembre.Décembre
  • did -ra $dname 27 $iif(%a,%a Rappel $+ $plur(%a) en mémoire,Aucun rappel enregistré)
  • did -ra $dname 7 $+(Mémo,$calc(%a + 1))
  • did -ra $dname 33 $date
  • .TimerOrgalterne 0 3 Orgalterne
  • while %j <= 31 { did -a $dname 9 $iif(%j < 10,$+(0,%j),%j) | inc %j }
  • %j = 1
  • while %j <= 12 { did -a $dname 10 $gettok(%m,%j,46) | inc %j }
  • %j = 1
  • did -a $dname 11 %datea
  • while %j <= 4 { inc %datea | did -a $dname 11 %datea | inc %j }
  • %j = 0
  • while %j <= 23 { did -a $dname 13 $iif(%j < 10,$+(0,%j),%j) | inc %j }
  • %j = 0
  • while %j <= 59 { did -a $dname 15 $iif(%j < 10,$+(0,%j),%j) | inc %j }
  • %j = 18
  • while %j <= 24 {
  • %g = $gettok(%d,$calc(%j - 17),46)
  • did -ra $dname %j %g
  • if %g == $nb-jour { did -e $dname %j }
  • inc %j
  • }
  • if %a {
  • %j = 1
  • while $read(Organiseur.txt,%j) { did -a $dname 1 $gettok($ifmatch,1,45) | inc %j }
  • }
  • }
  • elseif $devent == sclick {
  • if $did == 26 {
  • var %mois31 = Janvier.Mars.Mai.Juillet.Août.Octobre.Décembre,%mois30 = Février.Avril.Juin.Septembre.Novembre,%k = 1,%a,%i
  • if !$did(7) { BS.Error Tu dois préciser un nom pour le mémo ! }
  • if !$did(9) { BS.Error Précise le jour de la date du rappel ! }
  • if !$did(10) { BS.Error Précise le mois de la date du rappel ! }
  • if !$did(11) { BS.Error Précise l'année de la date du rappel ! }
  • if !$len($did(13)) { BS.Error Précise l'heure de la date du rappel ! }
  • if !$len($did(15)) { BS.Error Précise les minutes de la date du rappel ! }
  • if $did(10) isin %mois30 && $did(9) > 30 { BS.Error La date du '' $+ $did(9) $did(10) $+ '' n'existe pas ! }
  • if $did(10) == Février && $did(9) > 28 { BS.Error La date du '' $+ $did(9) $did(10) $+ '' n'existe pas ! }
  • if $did(10) == $nb-mois && $did(9) < $date(dd) { BS.Error La date indiquée est dépassée ! }
  • if $did(11) == $date(yyyy) && $did(10).sel < $date(mm) { BS.Error La date indiquée est dépassée ! }
  • if $+($did(13),$did(15),00) < $remove($time,:) && $+($did(9),/,$iif($did(10).sel < 10,$+(0,$did(10).sel),$did(10).sel),/,$did(11)) == $date { BS.Error L'heure indiquée est dépassée ! }
  • did -ra $dname 7 $replace($did(7),-,_,¤,°,",'',$chr(44),$chr(146),/,\))
  • while $read(Organiseur.txt,%k) {
  • %a = $gettok($ifmatch,1,45)
  • if %a == $did(7) { BS.Error Ce nom de mémo existe déja ! }
  • inc %k
  • }
  • write -a Organiseur.txt $did(7) - $did(9) $did(10) $did(11) à $+($did(13),h,$did(15)) ¤ $+($did(9),/,$iif($did(10).sel < 10,$+(0,$did(10).sel),$did(10).sel),/,$did(11)) $+($did(13),:,$did(15))
  • Orgaload
  • Orgaverif
  • %i = $input(Ton rappel a bien été enregistré et activé !,oid,Enregistré !)
  • }
  • elseif $did == 28 {
  • if !$lines(Organiseur.txt) { BS.Error Il n'y a aucun rappel enregistré ! }
  • if !$did(1).sel { BS.Error Selectionne un rappel à supprimer ! }
  • if $input(Es-tu sûr de vouloir effacer le rappel séléctionné ?,yid,Confirmation) { write $+(-dl,$did(1).sel) Organiseur.txt | Orgaload }
  • }
  • elseif $did == 1 {
  • if !$lines(Organiseur.txt) { halt }
  • dialog -s $dname -1 -1 428 275
  • did -ra $dname 31 $gettok($read(Organiseur.txt,$did(1).sel),1,164)
  • }
  • }
  • elseif $devent == close {
  • .TimerOrgalterne off
  • unset %orga
  • dialog -x $dname
  • Orgaverif
  • }
  • }
  • alias Orgaload {
  • if !$dialog(BS.org) { halt }
  • var %a = 1,%b = $lines(Organiseur.txt)
  • did -r BS.org 1
  • while $read(Organiseur.txt,%a) { did -a BS.org 1 $gettok($ifmatch,1,45) | inc %a }
  • did -ra BS.org 27 $iif(%b,%b Rappel $+ $plur(%b) en mémoire,Aucun rappel enregistré)
  • did -ra BS.org 7 $+(Mémo,$calc($did(BS.org,1).lines + 1))
  • dialog -s BS.org -1 -1 428 258
  • }
  • alias Orgaverif {
  • var %a = 1,%c,%d
  • while $read(Organiseur.txt,%a) {
  • var %c = $gettok($gettok($ifmatch,2,164),1,32),%d = $gettok($gettok($ifmatch,2,164),2,32),%ifmatch = $ifmatch
  • if $date == %c {
  • if $+($remove(%d,:),00) < $remove($time,:) { Orgarappel %a RAPPEL ÉCOULÉ: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
  • else { $+(.Timermémo[,%a,]) %d 1 1 Orgarappel %a RAPPEL: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
  • }
  • elseif $remove(%c,/) < $remove($date,/) { Orgarappel %a RAPPEL ÉCOULÉ: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
  • inc %a
  • }
  • if !$timer(Orgaverif) { .TimerOrgaverif 0 600 Orgaverif }
  • }
  • alias Orgarappel {
  • .splay -p Rappel.mp3
  • var %Rappel = $input($replace($2-,/,$crlf),oid,/!\ Rappel !!)
  • write $+(-dl,$1) Organiseur.txt
  • if $dialog(BS.org) { Orgaload }
  • }
  • alias Orgalterne {
  • if !$dialog(BS.org) { halt }
  • inc %orga
  • if $right(%orga,1) isin 13579 { did -ra BS.org 33 $+($time(HH),h,$time(nn)) | halt }
  • did -ra BS.org 33 $date
  • }
  • on *:START:{
  • .TimerOrgaverif 0 600 Orgaverif
  • Orgaverif
  • }
dialog BS.org {
  title "Organiseur"
  size -1 -1 214 128
  option dbu
  list 1, 154 7 55 119, size hsbar vsbar
  text "Organiseur, enregistrement de rappels et mémos pour la date et l'heure de votre choix ! Pour chaque rappel, vous serez signalés à l'heure indiquée, si le script n'est pas ouvert au moment du rappel, la notification de rappel sera affichée lors de la prochaine ouverture du script.", 2, 0 3 151 34, center
  box "Rappels enregistrés", 3, 152 -1 60 129
  box "", 4, 0 -1 152 39
  text "Nom du rappel:", 6, 2 40 37 8
  edit "", 7, 44 39 107 10, autohs
  text "Date:", 8, 2 50 15 8
  combo 9, 20 49 23 80, size drop
  combo 10, 44 49 61 80, size drop
  combo 11, 106 49 45 80, size drop
  text "Heure:", 12, 2 61 18 8
  combo 13, 20 60 23 69, size drop
  text "Heures", 14, 46 62 21 8
  combo 15, 68 60 23 69, size drop
  text "Minutes", 16, 94 62 21 8
  box "Semaine...", 17, 2 70 67 58
  text "", 18, 3 77 64 8, disable center
  text "", 19, 3 84 64 8, disable center
  text "", 20, 3 91 64 8, disable center
  text "", 21, 3 98 64 8, disable center
  text "", 22, 3 105 64 8, disable center
  text "", 23, 3 112 64 8, disable center
  text "", 24, 3 119 64 8, disable center
  box "", 25, 70 70 81 58
  button "Enregistrer", 26, 72 83 77 12, flat
  text "", 27, 72 74 77 8, center
  button "Supprimer", 28, 72 97 77 12, flat
  box "", 29, 70 107 81 21
  button "Fermer", 30, 72 112 77 14, flat ok
  text "", 31, 2 129 210 8, center
  box "", 32, 116 58 35 13
  text "", 33, 117 62 32 8, disable center
}
alias plur {
  if $1 !isnum { halt }
  if $1 > 1 { return s }
}
alias BS.error {
  var %u = $input($$1-,ohd,Erreur)
  halt
}
alias BS.org { dialog $iif($dialog(BS.org),-x,-m) BS.org BS.org }
on *:dialog:BS.org:*:*:{
  if $devent == init {
    var %a = $lines(Organiseur.txt),%datea = $gettok($date,3,47),%j = 1,%d = Lundi.Mardi.Mercredi.Jeudi.Vendredi.Samedi.Dimanche,%g,%m = Janvier.Février.Mars.Avril.Mai.Juin.Juillet.Août.Septembre.Octobre.Novembre.Décembre
    did -ra $dname 27 $iif(%a,%a Rappel $+ $plur(%a) en mémoire,Aucun rappel enregistré)
    did -ra $dname 7 $+(Mémo,$calc(%a + 1))
    did -ra $dname 33 $date
    .TimerOrgalterne 0 3 Orgalterne
    while %j <= 31 { did -a $dname 9 $iif(%j < 10,$+(0,%j),%j) | inc %j }
    %j = 1
    while %j <= 12 { did -a $dname 10 $gettok(%m,%j,46) | inc %j }
    %j = 1
    did -a $dname 11 %datea
    while %j <= 4 { inc %datea | did -a $dname 11 %datea | inc %j }
    %j = 0
    while %j <= 23 { did -a $dname 13 $iif(%j < 10,$+(0,%j),%j) | inc %j }
    %j = 0
    while %j <= 59 { did -a $dname 15 $iif(%j < 10,$+(0,%j),%j) | inc %j }
    %j = 18
    while %j <= 24 {
      %g = $gettok(%d,$calc(%j - 17),46)
      did -ra $dname %j %g
      if %g == $nb-jour { did -e $dname %j }
      inc %j
    }
    if %a {
      %j = 1
      while $read(Organiseur.txt,%j) { did -a $dname 1 $gettok($ifmatch,1,45) | inc %j }
    }
  }
  elseif $devent == sclick {
    if $did == 26 {
      var %mois31 = Janvier.Mars.Mai.Juillet.Août.Octobre.Décembre,%mois30 = Février.Avril.Juin.Septembre.Novembre,%k = 1,%a,%i
      if !$did(7) { BS.Error Tu dois préciser un nom pour le mémo ! }
      if !$did(9) { BS.Error Précise le jour de la date du rappel ! }
      if !$did(10) { BS.Error Précise le mois de la date du rappel ! }
      if !$did(11) { BS.Error Précise l'année de la date du rappel ! }
      if !$len($did(13)) { BS.Error Précise l'heure de la date du rappel ! }
      if !$len($did(15)) { BS.Error Précise les minutes de la date du rappel ! }
      if $did(10) isin %mois30 && $did(9) > 30 { BS.Error La date du '' $+ $did(9) $did(10) $+ '' n'existe pas ! }
      if $did(10) == Février && $did(9) > 28 { BS.Error La date du '' $+ $did(9) $did(10) $+ '' n'existe pas ! }
      if $did(10) == $nb-mois && $did(9) < $date(dd) { BS.Error La date indiquée est dépassée ! }
      if $did(11) == $date(yyyy) && $did(10).sel < $date(mm) { BS.Error La date indiquée est dépassée ! }
      if $+($did(13),$did(15),00) < $remove($time,:) && $+($did(9),/,$iif($did(10).sel < 10,$+(0,$did(10).sel),$did(10).sel),/,$did(11)) == $date { BS.Error L'heure indiquée est dépassée ! }
      did -ra $dname 7 $replace($did(7),-,_,¤,°,",'',$chr(44),$chr(146),/,\))
      while $read(Organiseur.txt,%k) {
        %a = $gettok($ifmatch,1,45)
        if %a == $did(7) { BS.Error Ce nom de mémo existe déja ! }
        inc %k
      }
      write -a Organiseur.txt $did(7) - $did(9) $did(10) $did(11) à $+($did(13),h,$did(15)) ¤ $+($did(9),/,$iif($did(10).sel < 10,$+(0,$did(10).sel),$did(10).sel),/,$did(11)) $+($did(13),:,$did(15))
      Orgaload
      Orgaverif
      %i = $input(Ton rappel a bien été enregistré et activé !,oid,Enregistré !)
    }
    elseif $did == 28 {
      if !$lines(Organiseur.txt) { BS.Error Il n'y a aucun rappel enregistré ! }
      if !$did(1).sel { BS.Error Selectionne un rappel à supprimer ! }
      if $input(Es-tu sûr de vouloir effacer le rappel séléctionné ?,yid,Confirmation) { write $+(-dl,$did(1).sel) Organiseur.txt | Orgaload }
    }
    elseif $did == 1 {
      if !$lines(Organiseur.txt) { halt }
      dialog -s $dname -1 -1 428 275
      did -ra $dname 31 $gettok($read(Organiseur.txt,$did(1).sel),1,164)
    }
  }
  elseif $devent == close {
    .TimerOrgalterne off
    unset %orga
    dialog -x $dname
    Orgaverif
  }
}
alias Orgaload {
  if !$dialog(BS.org) { halt }
  var %a = 1,%b = $lines(Organiseur.txt)
  did -r BS.org 1
  while $read(Organiseur.txt,%a) { did -a BS.org 1 $gettok($ifmatch,1,45) | inc %a }
  did -ra BS.org 27 $iif(%b,%b Rappel $+ $plur(%b) en mémoire,Aucun rappel enregistré)
  did -ra BS.org 7 $+(Mémo,$calc($did(BS.org,1).lines + 1))
  dialog -s BS.org -1 -1 428 258
}
alias Orgaverif {
  var %a = 1,%c,%d
  while $read(Organiseur.txt,%a) {
    var %c = $gettok($gettok($ifmatch,2,164),1,32),%d = $gettok($gettok($ifmatch,2,164),2,32),%ifmatch = $ifmatch
    if $date == %c {
      if $+($remove(%d,:),00) < $remove($time,:) { Orgarappel %a RAPPEL ÉCOULÉ: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
      else { $+(.Timermémo[,%a,]) %d 1 1 Orgarappel %a RAPPEL: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
    }
    elseif $remove(%c,/) < $remove($date,/) { Orgarappel %a RAPPEL ÉCOULÉ: $gettok(%ifmatch,1,45) / $gettok($gettok(%ifmatch,2,45),1,164) }
    inc %a
  }
  if !$timer(Orgaverif) { .TimerOrgaverif 0 600 Orgaverif }
}
alias Orgarappel {
  .splay -p Rappel.mp3
  var %Rappel = $input($replace($2-,/,$crlf),oid,/!\ Rappel !!)
  write $+(-dl,$1) Organiseur.txt
  if $dialog(BS.org) { Orgaload }
}
alias Orgalterne {
  if !$dialog(BS.org) { halt }
  inc %orga
  if $right(%orga,1) isin 13579 { did -ra BS.org 33 $+($time(HH),h,$time(nn)) | halt }
  did -ra BS.org 33 $date
}
on *:START:{
  .TimerOrgaverif 0 600 Orgaverif
  Orgaverif
}

Conclusion

Voila, /BS.org pour le lancer :)
Je met le fichier Rappel.mp3 dans le zip, à mettre dans $mircdir sounds ;)
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

26 septembre 2004 16:19:34 :
J'ai ajouté la vérification des rappels au démarrage que j'avais oubliée

Commentaires et avis

signaler à un administrateur
Commentaire de KiNdErMaXi le 26/09/2004 17:27:44

pas mal du tout, moi j'aime bien le principe, juste un truc, le son suffit pas, met une windos par exemple avec le rappel
bonne continuation

signaler à un administrateur
Commentaire de ReMi34 le 26/09/2004 17:49:47

C'est une bonne idée, mais le design et le codage est à revoir :/

signaler à un administrateur
Commentaire de BSmax le 26/09/2004 17:55:44

KiNdErMaXi Y'a le son et un $input qui s'ouvre avec un bouton OK :)

signaler à un administrateur
Commentaire de calopsfr le 26/09/2004 18:44:17

niveau design ca s'ameliore, faut juste rajouter un pixel entre chaque control et ca ira... raccourcit tes textes, ou met un truc d'aide qui s'ouvre à la premiere utilisation, plutot que d'encombrer. bon, on peut aps dire que ca soit utile,e t je trouve que tu as vachement ralongé le code... j'ai aps tout lu, mais je suis presque sur qu'on peut faire plus court. plutot que de tout prog en 1 journée, passe plsu de temps pour affiner et optimiser ton travail, il n'en sera que plus presentable

signaler à un administrateur
Commentaire de boulet7612 le 01/11/2007 19:48:32

c'eest sympa mais le son se joue pas chez moi
mais il serai pas mieu de jouer le son et d ouvrir le dialog pour nous montre le memo a l heure indiquer

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Date and heure [ par copatte ] voila je chercher un code ki permet de dire la date et lheure a son bot !! les IF [ par BEAUBRIUS ] bonjour jamerai savoir la commande qui permet de faire que lorsque %date == rien sa mete un messageet que lorsque date != rien sa met un autre message PROBLEME DE FONCTION DATE SUR UN MDE [ par eccp ] j'ai créé une base de données ACCESS 2002J'utilise dans celle-ci des requetes comportant entre autre des fonctions FORMAT, GAUCHE ou DROITE. Les reque Question ? Date et heure (For Bot) [ par Sibelle07 ] J'aurais voulu savoir un truc pur mon botL'ordre c'est : !hourPuis le bot doit dire l'heure ,Pour la date : c'est : !datePuis le bot doit dire la date peak [ par Lonsdale^ ] salut,voila je cherhais ce script et 1 pote me l'as donné c'est 1 script pour le "peak" (script qui donne le record de personnes le plus elevé qu'il y Compte à rebours de jours/heures/minutes/secondes à partir d'une date [ par BSmax ] Salut à tous !Alors voila ce que j'ai pour le moment, ce script est sur mon bot et il me sert à décompter les jours restant avant une date précise :On Ca doit se mettre en raw .. [ par fastman ] bonsoir, Je vous explique mon probleme : j'aimerais faire en sorte quand je join un chan que ca me donne la date et heure du jour actuel, la date et h help!!!!!!! [ par mikachu ] salut je vous ecrit var j ai besoin d aidej aimerias faire un script ki fasse un compte a rebours entre la date acuel et la date de mon annivke kan je titlebar $time $uptime $date et co en mirc [ par Vanyel ] bonjour, j'ai un petit probleme pour agrémenter l'affichage de ma titlebar de mirc.Je désirer y faire afficher des messages sympas du genre on *:star pliz de l aide [ par mikachu ] on *:text:horoscope *:#:{&nbsp; if ( $2 = verseau || $2 = belier || $2 = taureau || $2 = gemeaux || $2 = cancer || $2 = lion || $2 = vierge || $2 = ba


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 1,373 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.