All pastes #734692 Raw Edit

Zeug

public text v1 · immutable
·published 2007-10-12 22:35 UTC
rendered paste body
proc no:dupe:backfill {nick uhost handle chan arg} {
if {![channel get $chan "bf"]} {
return 0
}
 global nomysql notable nocrap nochan nolength noerror nofilter nolimit noafterpre
 set rls [check:string [string map [list "\{" " " "\}" " " "\[\[:cntrl:\]\]" " " "\\" " " "\/" " " "'" " " "*" " "] $arg]]
 foreach rls [split $rls] { 
set ignore {
cd?
cd??
covers?
covers??
sample?
sample??
disc?
disc??
disk?
disk??
extra?
extra??
dvd?
dvd??
}
foreach ig $ignore {
if {[string match -nocase "*/$ig *" $arg]} {
return
}
}
  set nomysql(conn) [mysqlconnect -host $nomysql(hst) -port $nomysql(prt) -user $nomysql(usr) -password $nomysql(pwd) -db $nomysql(db)]
  set nochkdupe [mysqlsel $nomysql(conn) "SELECT $notable(id),$notable(tim),$notable(sec),$notable(rls),$notable(grp),$notable(nick),$notable(fil),$notable(meg),$notable(genre),$notable(nuke),$notable(nuke_tim),$notable(nuke_reason),$notable(unnuke),$notable(unnuke_tim),$notable(unnuke_reason) FROM $nomysql(table) WHERE $notable(rls) LIKE '$rls' ORDER BY $notable(tim) DESC LIMIT 1" -flatlist]
  set notable_db_id [lindex $nochkdupe 0]
  if {$notable_db_id != ""} {
   foreach {id tim sec rls grp nick fil meg genre nuke nuke_tim nuke_reason unnuke unnuke_tim unnuke_reason} $nochkdupe {
    set nothetime [unixtime]
    set tim_ago [no:dupe:ago $nothetime $tim]
    set tim_day [no:dupe:day $tim]
    set nuke_tim_ago [no:dupe:ago $nothetime $nuke_tim]
    set nuke_tim_day [no:dupe:day $nuke_tim]
    set unnuke_tim_ago [no:dupe:ago $nothetime $unnuke_tim]
    set unnuke_tim_day [no:dupe:day $unnuke_tim]
    if {$tim == ""} {} else {
     if { $nothetime > [expr $noafterpre + $tim] } {set backfillinfo "\00315\[ \0034BACKFiLL\00315 \]"} else {set backfillinfo "\00315\[\00314 PRETiME\00315:\0039 OK \00315\]"}
     if { $fil == "0" } {
     if {$nuke == "1"} {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago \00315\[ \00304NUKE \00315\]\[ \00314REASON :\00304 $nuke_reason \00315\]"
     } elseif {$unnuke == "1"} {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago \00315\[ \00309UNNUKE \00315\]\[ \00314REASON :\00309 $unnuke_reason \00315\]"
     } else {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago"
     }
    } else {
     set ffil ""; append ffil $fil "FiLES"
     set mmeg ""; append mmeg $meg "MB"
     if {$nuke == "1"} {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago \00315\[ \00304NUKE \00315\]\[ \00314REASON :\00304 $nuke_reason \00315\]"
     } elseif {$unnuke == "1"} {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago \00315\[ \00309UNNUKE \00315\]\[ \00314REASON :\00309 $unnuke_reason \00315\]"
     } else {
      putquick "PRIVMSG $chan :\0034 $backfillinfo \00315 $rls \00315\[\00314 $sec \00315\] released\0039 $tim_ago"
     }
    }
   }
   }
   mysqlclose $nomysql(conn)
   break
  }
  mysqlclose $nomysql(conn)
 }
}