SHOW:
|
|
- or go back to the newest paste.
| 1 | proc ::testounet::-annonce {nick uhost handle chan text} {
| |
| 2 | set num [lindex $text 0] | |
| 3 | if {$chan ne $::testounet::back} {return}
| |
| 4 | if {$num eq ""} {putserv "PRIVMSG $::testounet::back :\002Erreur :\002 !del <num>"; return}
| |
| 5 | ::testounet::effacer:donnee $::testounet::fichier(testounet) $num | |
| 6 | } | |
| 7 | ||
| 8 | proc ::testounet::effacer:donnee {file arg} {
| |
| 9 | - | incr arg -1 |
| 9 | + | # $arg est le N° de la ligne, donc est 1 au minimum |
| 10 | set fileID [open $file r] | |
| 11 | ||
| 12 | while { ![eof $fileID] } {
| |
| 13 | if { [set line [gets $fileID]] ne {} } {
| |
| 14 | lappend lines_list $line | |
| 15 | ||
| 16 | } | |
| 17 | } | |
| 18 | close $fileID | |
| 19 | # Ici, $arg est au maximum égal à llength | |
| 20 | if {$arg > [llength $lines_list]} {
| |
| 21 | putlog "$arg n'existe pas " | |
| 22 | - | putlog "$arg supprimé. " |
| 22 | + | |
| 23 | } else {
| |
| 24 | - | close $fileID |
| 24 | + | incr $arg -1 |
| 25 | - | set fileID [open $file w] |
| 25 | + | # $arg est compris entre 0 et llength-1 |
| 26 | - | puts -nonewline $fileID [join [lreplace $lines_list $arg $arg] "\x0D\x0A"] |
| 26 | + | set fileID [open $file w] |
| 27 | - | close $fileID |
| 27 | + | puts -nonewline $fileID [join [lreplace $lines_list $arg $arg] "\x0D\x0A"] |
| 28 | close $fileID | |
| 29 | putlog "$arg supprimé. " | |
| 30 | } | |
| 31 | } |