Log search/viewer

Contenu du snippet

bon premièrement ATTENTION , quand j'ai fait ce lsv , je ne mettai pas le network dans le nom des log donc cela ne marche pour l'instant que pour les log type #pwet.01032002.log et pv.02052001.log . C'est la première version que je sort il n'y a pour l'instan q'une recherche primaire dans le repertoire des logs par mot ou par date .

Source / Exemple :


;————————————————————————————————————————————
;LoG SearcH/VieweR By RysSAlphA
;————————————————————————————————————————————
menu menubar,channel,query {
  LoG SearcH/VieweR:/dialog -m lsv lsv
}
dialog lsv {
  title "LoG SearcH/VieweR V1.0 By RysSAlphA"
  size -1 -1 219 260
  option dbu
  text "ATTENTION : si vous choisissez une recherche trop vaste , style tout les log d'une année ou une recherche de 1 lettre , la recherche risque de mettre plusieurs minutes , pendant lesquels votre script sera bloqué et si ce delai est trop grand il risque de vous deconnecter ( environ 10 minutes pour 5000 fichiers )", 1, 1 1 213 29, center
  box "", 2, 2 27 209 4  
  list 3, 7 104 100 135, size vsbar
  list 4, 114 104 100 135, size vsbar
  tab "PaR DatE", 7, 4 33 213 53
  combo 8, 8 56 35 50, tab 7 size drop
  combo 9, 46 56 60 50, tab 7 size drop
  combo 10, 108 56 32 50, tab 7 size drop
  box "AnneE", 11, 107 48 35 20, tab 7
  box "MoiS", 12, 45 48 62 20, tab 7
  box "JouR", 13, 7 48 38 20, tab 7
  text "Les * servent pour ignorer la parti concernée , exemple : 8 en jour , * en mois et 00 en en année , resulterat tout les 8 de chaque mois de l'année 2000", 14, 143 48 73 34, tab 7
  tab "PaR MoT", 16
  box "MoT A RechercheR", 17, 6 48 97 19, tab 16
  edit "", 18, 8 55 93 10, tab 16
  text "Dans ce champ a remplir vous pouvez par exemple mettre  * ( les * sont obligatoirement ", 19, 104 52 112 16, tab 16
  text "mit sur le coté automatiquement ) cela retournera tout les chan ou nick avec ptet kelke chose ici  kelke chose a linterieur  et ptet kelke chose la", 20, 100 66 116 19, tab 16
  button "LanceR RecherchE", 21, 15 70 69 12,default
  box "ResultaT OtheR", 22, 111 96 105 147
  box "ResultaT ChanneL", 23, 4 96 105 147
  button "" 26,1 1 1 1,ok
  text "No LoG SelecT" 27 , 5 245 209 20, center
}
dialog result1 {
  title "RecherchE InFO"
  size -1 -1 96 83
  option dbu
  text "RecherchE TerminE AveC SucceS", 1, 23 3 63 13, center
  text "", 2, 1 24 91 8
  text "", 3, 1 37 94 8
  text "", 4, 1 51 92 8
  button "ClosE", 5, 27 66 37 12,ok
}
dialog lsverror {
  title "ErroR RecherchE"
  size -1 -1 95 55
  option dbu
  text "Veuillez remplir le ou les champs correspondant a la rechercher avant d'entammer la rechercher s'il vous plait", 1, 9 5 75 28, center
  button "ClosE", 2, 27 35 37 12,ok
}
on *1:dialog:result1:init:*:{
  did -a result1 2 ResultaT TotaL : %lsv.search.2
  did -a result1 3 ResultaT De ChanneL : %lsv.result.chan
  did -a result1 4 ResultaT OtheR : %lsv.result.other
}
on *1:dialog:lsv:init:*:{  
  did -a lsv 8 01
  did -a lsv 8 02
  did -a lsv 8 03
  did -a lsv 8 04
  did -a lsv 8 05
  did -a lsv 8 06
  did -a lsv 8 07
  did -a lsv 8 08
  did -a lsv 8 09
  did -a lsv 8 10
  did -a lsv 8 11
  did -a lsv 8 12
  did -a lsv 8 13
  did -a lsv 8 14
  did -a lsv 8 15
  did -a lsv 8 16
  did -a lsv 8 17
  did -a lsv 8 18
  did -a lsv 8 19
  did -a lsv 8 20
  did -a lsv 8 21
  did -a lsv 8 22
  did -a lsv 8 23
  did -a lsv 8 24
  did -a lsv 8 25
  did -a lsv 8 26
  did -a lsv 8 27
  did -a lsv 8 28
  did -a lsv 8 29
  did -a lsv 8 30
  did -a lsv 8 31
  did -a lsv 8 *
  did -a lsv 9 01 JanvieR  
  did -a lsv 9 02 FevrieR
  did -a lsv 9 03 MarS
  did -a lsv 9 04 AvriL
  did -a lsv 9 05 MaI
  did -a lsv 9 06 JuiN
  did -a lsv 9 07 JuilleT
  did -a lsv 9 08 AouT
  did -a lsv 9 09 SeptembrE
  did -a lsv 9 10 OctobrE
  did -a lsv 9 11 NovembrE
  did -a lsv 9 12 DecembrE
  did -a lsv 9 *
  did -a lsv 10 1995
  did -a lsv 10 1996
  did -a lsv 10 1997
  did -a lsv 10 1998
  did -a lsv 10 1999
  did -a lsv 10 2000
  did -a lsv 10 2001
  did -a lsv 10 2002
  did -a lsv 10 2003
  did -a lsv 10 2004
  did -a lsv 10 2005
  did -a lsv 10 2006
  did -a lsv 10 2007
  did -a lsv 10 2008
  did -a lsv 10 2009
  did -a lsv 10 2010
  did -a lsv 10 *
  set %lsv.tab.select 7
}
on *:dialog:lsv:sclick:*:{
  if ( $did == 21 ) {
    if ( %lsv.tab.select == 16 ) {
      if ( $did(18) == $null ) { dialog -om lsverror lsverror }
      else {
        did -r lsv 3,4       
        set %lsv.search.1 1
        set %lsv.search.2 $findfile($logdir,* $+ $did(18) $+ *,0)
        if ( %lsv.search.2 == 0 ) goto end        
        :debut
        if ( $left($nopath($findfile($logdir,* $+ $did(18) $+ *,%lsv.search.1 )),1) == $chr(35)) did -a lsv 3 $nopath($findfile($logdir,* $+ $did(18) $+ *,%lsv.search.1))
        else did -a lsv 4 $nopath($findfile($logdir,* $+ $did(18) $+ *,%lsv.search.1))
        if ( %lsv.search.1 == %lsv.search.2 ) goto end
        /inc %lsv.search.1 1
        goto debut
        :end
        set %lsv.result.chan $did(3).lines
        set %lsv.result.other $did(4).lines
        dialog -mo result1 result1
        if ( %lsv.search.2 != 0 ) set %lsv.actif on       
        else set %lsv.actif off
        unset %lsv.search.*
      }
    }
    elseif ( %lsv.tab.select == 7 ) {
      if ( $did(9) == $null ) || ( $did(8) == $null ) || ( $did(10) == $null ) { dialog -mo lsverror lsverror }
      else { 
        did -r lsv 3,4     
        set %lsv.search.1 1
        set %lsv.search.2 $findfile($logdir,*. $+ $did(10) $+ $left($did(9),2) $+ $did(8) $+ .*,0)
        if ( %lsv.search.2 == 0 ) goto end      
        :debut
        if ( $left($nopath($findfile($logdir,*. $+ $did(10) $+ $left($did(9),2)  $+ $did(8) $+ .*,%lsv.search.1)),1) == $chr(35)) did -a lsv 3 $nopath($findfile($logdir,*. $+ $did(10) $+ $left($did(9),2)  $+ $did(8) $+ .*,%lsv.search.1))
        else did -a lsv 4 $nopath($findfile($logdir,*. $+ $did(10) $+ $left($did(9),2)  $+ $did(8) $+ .*,%lsv.search.1))
        if ( %lsv.search.1 == %lsv.search.2 ) goto end
        /inc %lsv.search.1 1
        goto debut
        :end
        set %lsv.result.chan $did(3).lines
        set %lsv.result.other $did(4).lines
        dialog -mo result1 result1
        if ( %lsv.search.2 != 0 ) set %lsv.actif on       
        else set %lsv.actif off      
        unset %lsv.search.*
      }
    }
  }
  if ( $did == 16 ) set %lsv.tab.select 16
  if ( $did == 7 ) set %lsv.tab.select 7 
  if ( $did == 3 ) {
    set %lsv.result.date  $mid($gettok($did(3).seltext,2,46),7,2) $mois2($mid($gettok($did(3).seltext,2,46),5,2)) $mid($gettok($did(3).seltext,2,46),1,4)
    did -a lsv 27 LoG:[SaloN : $gettok($did(3).seltext,1,46) ][ DatE : Le %lsv.result.date ]  
    did -u lsv 4 
  }
  if ( $did == 4 ) { 
    set %lsv.result.date  $mid($gettok($did(4).seltext,2,46),7,2) $mois2($mid($gettok($did(4).seltext,2,46),5,2)) $mid($gettok($did(4).seltext,2,46),1,4)
    did -a lsv 27 LoG:[DialoguE PrivE : $gettok($did(4).seltext,1,46) ][ DatE : Le %lsv.result.date ]  
    did -u lsv 3
  } 
}
on *:dialog:lsv:dclick:*:{
  if ( $did == 4 ) {
    if ( %lsv.actif == on ) { window -c @LoG-VieweR
      window @LoG-VieweR
      set %lsv.nbrligne.fichier $lines($logdir $+ $did(4).seltext)
      .loadbuf %lsv.nbrligne.fichier -p @LoG-VieweR $logdir $+ $did(4).seltext 
    }  
  }
  if ( $did == 3 ) {
    if ( %lsv.actif == on ) { window -c @LoG-VieweR
      window @LoG-VieweR
      set %lsv.nbrligne.fichier $lines($logdir $+ $did(4).seltext)
      .loadbuf %lsv.nbligne.fichier -p @LoG-VieweR $logdir $+ $did(3).seltext 
    }  
  }
}

Conclusion :


je vous demande si vous trouvez un bug ou un truc qui fait planter le mIRc avec une infinite loop , dite le moi svp ( serveur irc.voila.fr channel #squall ou #OriginaL-SounDTracK )
merci d'avance

RysS

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.