Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- menu channel {
- Log Analyzer:/loganalyzer
- }
- dialog loganalyzer {
- title "Channel Log Analyzer"
- size -1 -1 432 285
- option dbu
- button "Load from File", 3, 274 13 71 10
- button "Load from Channel Buffer", 5, 274 25 146 10
- button "Load from Clipboard", 6, 349 13 71 10
- box "Removing Masks, Shitlisting, Banning, X-Banning, G-lining", 7, 268 150 158 129
- list 1, 12 11 245 262, size extsel
- box "Hostmasks", 4, 6 3 257 276
- button "Save Hostmasks to Analyzed Log File", 14, 274 92 146 10
- box "Select Channel to Ban/X-Ban Hostmasks on", 9, 274 221 146 52
- button "Mass-G-Line Selected Hostmasks", 2, 274 184 146 10
- button "Mass-Shitlist Selected Hostmasks", 8, 274 172 146 10
- button "Remove Selected Masks", 10, 274 160 146 10
- button "Mass-Ban Selected Hostmasks on Channel", 11, 274 196 146 10
- list 12, 279 45 135 39, size
- box "Select Channel to Load Buffer from", 13, 274 37 146 52
- list 15, 279 229 135 39, size
- box "Log Loading and Saving", 16, 268 3 158 105
- button "Mass-X-Ban Selected Hostmasks on Channel", 17, 274 208 146 10
- box "Filtering", 20, 268 110 158 37
- check "Joins", 21, 281 119 28 10
- check "Parts", 22, 335 119 28 10
- check "Quits", 23, 388 119 28 10
- button "Remove Events of Selected Type(s)", 24, 274 131 146 10
- }
- alias all.chans {
- var %allchans = $null, %a = 1
- while (%a <= $chan(0)) {
- var %allchans = $addtok(%allchans,$chan(%a),44)
- inc %a 1
- }
- return %allchans
- }
- alias massbanmasks {
- set %mb.masks $addtok(%mb.masks,$2,32)
- if ($numtok(%mb.masks,32) == 6) {
- mode $$1 + $+ $str(b,$numtok(%mb.masks,32)) %mb.masks
- .timermbban off
- unset %mb.masks
- }
- if (%mb.masks) {
- .timermbban 1 3 mode $$1 + $+ $str(b,$numtok(%mb.masks,32)) %mb.masks
- .timermbban2 1 3 unset %mb.masks
- }
- }
- alias loganalyzer {
- dialog -md loganalyzer loganalyzer
- didtok loganalyzer 12 44 $all.chans
- didtok loganalyzer 15 44 $all.chans
- }
- alias laline {
- return $gettok($$1,2-,32)
- }
- on 1:dialog:loganalyzer:sclick:3:{
- did -r loganalyzer 1
- set %x 1
- set %file $sfile(logs\)
- while (%x <= $lines(%file)) {
- set %z none
- set %y $line(%logchan,%x)
- set %z.1 *(*@*)*has*joined*#*
- set %z.2 *(*@*)*quit*(*)*
- set %z.3 *(*@*)*has*left*#*
- if (%z.1 iswm %y) { set %z [JOIN] }
- else if (%z.2 iswm %y) { set %z [QUIT] }
- else if (%z.3 iswm %y) { set %z [PART] }
- if (%z != none) {
- tokenize 32 %y
- if ($chr(58) isin $1) {
- set %a $3
- set %b $4
- }
- else {
- set %a $2
- set %b $3
- }
- set %c $remove(%a,+,@)
- set %d $remove(%b,$chr(40),$chr(41))
- set %e %z $+(%c,!,%d)
- ; if (!$didwm(loganalyzer,1,%e)) {
- ;if (!$didwm(loganalyzer,1,$mask(%e,2))) {
- if (x*cservice@undernet.org !iswm %e) {
- did -a loganalyzer 1 %e
- }
- ;}
- }
- inc %x 1
- }
- }
- on 1:dialog:loganalyzer:sclick:5:{
- did -r loganalyzer 1
- set %logchan $did(loganalyzer,12).seltext
- if (%logchan) {
- set %x 1
- while (%x <= $line(%logchan,0)) {
- set %z none
- set %y $line(%logchan,%x)
- set %z.1 *(*@*)*has*joined*#*
- set %z.2 *(*@*)*quit*(*)*
- set %z.3 *(*@*)*has*left*#*
- if (%z.1 iswm %y) { set %z [JOIN] }
- else if (%z.2 iswm %y) { set %z [QUIT] }
- else if (%z.3 iswm %y) { set %z [PART] }
- if (%z != none) {
- tokenize 32 %y
- if ($chr(58) isin $1) {
- set %a $3
- set %b $4
- }
- else {
- set %a $2
- set %b $3
- }
- set %c $remove(%a,+,@)
- set %d $remove(%b,$chr(40),$chr(41))
- set %e %z $+(%c,!,%d)
- if (x*cservice@undernet.org !iswm %e) {
- did -a loganalyzer 1 %e
- }
- }
- inc %x 1
- }
- }
- }
- on 1:dialog:loganalyzer:sclick:6:{
- did -r loganalyzer 1
- set %logchan $did(loganalyzer,12).seltext
- if (%logchan) {
- set %x 1
- while (%x <= $cb(0)) {
- set %z none
- set %y $cb(%x)
- set %z.1 *(*@*)*has*joined*#*
- set %z.2 *(*@*)*quit*(*)*
- set %z.3 *(*@*)*has*left*#*
- if (%z.1 iswm %y) { set %z [JOIN] }
- else if (%z.2 iswm %y) { set %z [QUIT] }
- else if (%z.3 iswm %y) { set %z [PART] }
- if (%z != none) {
- tokenize 32 %y
- if ($chr(58) isin $1) {
- set %a $3
- set %b $4
- }
- else {
- set %a $2
- set %b $3
- }
- set %c $remove(%a,+,@)
- set %d $remove(%b,$chr(40),$chr(41))
- set %e %z $+(%c,!,%d)
- if (x*cservice@undernet.org !iswm %e) {
- did -a loganalyzer 1 %e
- }
- }
- inc %x 1
- }
- }
- }
- on 1:dialog:loganalyzer:sclick:14:{
- if ($did(loganalyzer,12).seltext) {
- set %file logs\Analyzed $+ $did(loganalyzer,12).seltext $+ .log
- .remove %file
- write %file Log Analyzer Output for $did(loganalyzer,12).seltext
- write %file -
- set %x 1
- write %file ** Full Hostmasks **
- while (%x <= $did(loganalyzer,1).lines) {
- write %file $laline($did(loganalyzer,1,%x))
- inc %x 1
- }
- write %file -
- write %file ** Type 2 Masks **
- write %file -
- set %x 1
- while (%x <= $did(loganalyzer,1).lines) {
- write %file $mask($laline($did(loganalyzer,1,%x)),2)
- inc %x 1
- }
- run %file
- }
- }
- on 1:dialog:loganalyzer:sclick:10:{
- while ($did(loganalyzer,1,0).sel) {
- did -d loganalyzer 1 $did(loganalyzer,1,1).sel
- }
- }
- on 1:dialog:loganalyzer:sclick:8:{
- set %x 1
- while (%x <= $did(loganalyzer,1,0).sel) {
- set %sel $did(loganalyzer,1,%x).sel
- auser shitlist $mask($laline($did(loganalyzer,1,%sel)),2) Mass Shitlist
- inc %x 1
- }
- }
- on 1:dialog:loganalyzer:sclick:2:{
- set %x 1
- while (%x <= $did(loganalyzer,1,0).sel) {
- set %sel $did(loganalyzer,1,%x).sel
- echo -a os gline $right($mask($laline($did(loganalyzer,1,%sel)),2),-2) 10000000 Drones are not welcomed in this Network. Contact Gline@Beirut.com for help.
- inc %x 1
- }
- }
- on 1:dialog:loganalyzer:sclick:11:{
- if ($did(loganalyzer,15).seltext) {
- set %loganalyzerchan $did(loganalyzer,15).seltext
- set %loganalyzerbans $ibl(%loganalyzerchan,0)
- set %loganalyzerbansleft $calc(45 - %loganalyzerbans)
- set %loganalyzerbansel $did(loganalyzer,1,0).sel
- if (%loganalyzerbansel > %loganalyzerbansleft) {
- set %loganalyzerbansel %loganalyzerbansleft
- }
- ; msg %loganalyzerchan I have $did(loganalyzer,1,0).sel masks selected for mass banning. The banlist now holds %loganalyzerbans bans. That means I can mass ban %loganalyzerbansleft masks before reaching limit of 45. This means I'll be setting %loganalyzerbansel bans right now.
- set %x 1
- while (%x <= %loganalyzerbansel) {
- set %sel $did(loganalyzer,1,%x).sel
- massbanmasks %loganalyzerchan $mask($laline($did(loganalyzer,1,%sel)),2)
- inc %x 1
- }
- }
- }
- on 1:dialog:loganalyzer:sclick:17:{
- if ($did(loganalyzer,15).seltext) {
- set %loganalyzerchan $did(loganalyzer,15).seltext
- set %x 1
- while (%x <= $did(loganalyzer,1,0).sel) {
- set %sel $did(loganalyzer,1,%x).sel
- .timerx.loganalyzer. [ $+ [ %x ] ] 1 $calc(%x * 5) msg x ban %loganalyzerchan $mask($laline($did(loganalyzer,1,%sel)),2) Mass X Ban
- inc %x 1
- }
- }
- }
- on 1:dialog:loganalyzer:sclick:24:{
- if ($did(loganalyzer,21).state == 1) {
- set %x 1
- while (%x <= $did(loganalyzer,1).lines) {
- set %y $did(loganalyzer,1,%x)
- set %z $gettok(%y,1,32)
- if (*join* iswm %z) { did -d loganalyzer 1 %x }
- else { inc %x 1 }
- }
- }
- if ($did(loganalyzer,22).state == 1) {
- set %x 1
- while (%x <= $did(loganalyzer,1).lines) {
- set %y $did(loganalyzer,1,%x)
- set %z $gettok(%y,1,32)
- if (*part* iswm %z) { did -d loganalyzer 1 %x }
- else { inc %x 1 }
- }
- }
- if ($did(loganalyzer,23).state == 1) {
- set %x 1
- while (%x <= $did(loganalyzer,1).lines) {
- set %y $did(loganalyzer,1,%x)
- set %z $gettok(%y,1,32)
- if (*quit* iswm %z) { did -d loganalyzer 1 %x }
- else { inc %x 1 }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement