Public feed #377608

Something

public text v1 · immutable
Raw Edit
·published 2007-03-01 21:44 UTC
rendered paste body
on *:start: {
  set %ticks $ticks
}
alias voteCheckNickChange {
  ;1 : oldnick
  ;2 : Anna
  ;3 : #linkomanija
  ;4 : LostSoul
  ;5 : E113F84.EB90CBAF.A76EF9F8.IP
  ;6 : irc.data.lt
  ;7 : Viki
  ;8 : Hr
  ;9 : 1
  ;10: Viki
  if (r isincs $8) {
    if ($voteCheckCheat(%votePollId,$false,$1,$4,$5,$10-)) {
      var %org_nick = $gettok($v1,1,9)
      var %multiid = $gettok($v1,3,9)
      voteSetCheat %votePollId %multiid %org_nick $7 $4 $5 $10-
    }
  }
}
alias voteSetCheat {
  voteMysqlConn $scriptline

  var %pollid = $1
  var %multiid = $2
  var %onick = ' $+ $strip($deltok($mysql.return(,EscapeString,$3),1-4,32)) $+ '
  var %fnick = ' $+ $strip($deltok($mysql.return(,EscapeString,$4),1-4,32)) $+ '
  var %ident = ' $+ $strip($deltok($mysql.return(,EscapeString,$5),1-4,32)) $+ '
  var %host = ' $+ $strip($deltok($mysql.return(,EscapeString,$6),1-4,32)) $+ '
  var %name = ' $+ $strip($deltok($mysql.return(,EscapeString,$7-),1-4,32)) $+ '

  mysql.query %voteSqlLabel INSERT INTO vote_cheaters (poll_id,vote_multiid,org_nick,fake_nick,ident,host,name) VALUES $&
    ( %pollid , %multiid , %onick , %fnick , %ident , %host , %name );
  voteMysqlErrorCheck $scriptline
}
on *:nick: {
  if (%voteActive) {
    nickInfo $newnick voteCheckNickChange $nick
  }
}
alias voteLoadStuff {
  set %voteSqlLabel voter
  set %voteSqlDb Systembit
}
alias voteMysqlConn {
  if (!$mysql.conn(%voteSqlLabel,%voteSqlDb)) {
    voteDebug Error Connecting to SQL SL: $1
    halt
  }
}
alias voteMysqlErrorCheck {
  if (%SqlQueryOk) {
    return
  }
  else {
    voteDebug SL: $1 </> %sqlQuerySTring
    halt
  }
}
alias voteDebug {
  voteDebugPrepare
  echo @voteDebug $timestamp $1-
}
alias voteDebugPrepare {
  window @voteDebug
}
alias voteCheckCheat {
  ;1 : PollId
  ;2 : multiid ($false if not needed)
  ;3 : nick
  ;4 : ident
  ;5 : host
  ;6 : name
  /*
  Checks: $false
  1. %pollid AND %nick AND %ident OR %pollid AND %nick AND %host OR %pollid AND %nick AND %name
  2. OR %pollid AND %ident AND %host OR %pollid AND %name
  3. OR %pollid AND %host AND %name
  4. OR %pollid AND %nick

  Checks: $true
  1. %pollid AND %multiid AND %nick AND %ident OR %pollid AND %multiid AND %nick AND %host OR %pollid AND %multiid AND %nick AND %name
  2. OR %pollid AND %multiid AND %ident AND %host OR %pollid AND %multiid AND %name
  3. OR %pollid AND %multiid AND %host AND %name
  4. OR %pollid AND %multiid AND %nick
  */

  voteMysqlConn $scriptline

  var %pollid = poll_id= $+ $1
  var %multiid = vote_multiid= $+ $2
  var %nick = fake_nick=' $+ $strip($deltok($mysql.return(,EscapeString,$3),1-4,32)) $+ '
  var %ident = ident=' $+ $strip($deltok($mysql.return(,EscapeString,$4),1-4,32)) $+ '
  var %host = host=' $+ $strip($deltok($mysql.return(,EscapeString,$5),1-4,32)) $+ '
  var %name = name=' $+ $strip($deltok($mysql.return(,EscapeString,$6-),1-4,32)) $+ '

  if ($2) {
    var %where = %pollid AND %multiid AND %nick AND %ident OR %pollid AND %multiid AND %nick AND %host OR %pollid AND %multiid AND %nick AND %name $&
      OR %pollid AND %multiid AND %ident AND %host OR %pollid AND %multiid AND %name $&
      OR %pollid AND %multiid AND %host AND %name $&
      OR %pollid AND %multiid AND %nick
  }
  else {
    var %where = %pollid AND %nick AND %ident OR %pollid AND %nick AND %host OR %pollid AND %nick AND %name $&
      OR %pollid AND %ident AND %host OR %pollid AND %name $&
      OR %pollid AND %host AND %name $&
      OR %pollid AND %nick
  }
  mysql.query %voteSqlLabel SELECT org_nick,fake_nick,vote_multiid FROM vote_cheaters WHERE %where $+ ;

  voteMysqlErrorCheck $scriptline

  if ($gettok($mysql.return(%voteSqlLabel,rows),5,32) !== 0) {
    return $gettok($mysql.return(%voteSqlLabel,FetchRow,1),6,32) $+ $chr(9) $+ $v1
  }
  else {
    return $false
  }
}