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
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.