Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;; Buzzen Chat Network Chatroom Lister ;;;;;;;;;;
- ;;;;;;;;;; @Window Room Lister v 2.1 ;;;;;;;;;;
- ;;;;;;;;;; by err0r ;;;;;;;;;;
- ;;;;;;;;;; http://www.tg007.net ;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;; Instructions ;;;;;;;;;;
- ;;;;;;;;;; Use /rlister or /rlister <cat> ;;;;;;;;;;
- ;;;;;;;;;; to open window ;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;; Report any errors or suggestions ;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;Menu
- menu status,channel,menubar {
- BuzzRoomlister
- .BuzzRoomlister: { rlister }
- ..View Category
- ...City Chats: { rlister cc }
- ...Computing: { rlister cp }
- ...Entertainment: { rlister et }
- ...General: { rlister gn }
- ...Interests: { rlister in }
- ...Lifestyles: { rlister ls }
- ...News & Politics: { rlister ne }
- ...Peers: { rlister pr }
- ...Religion: { rlister rl }
- ...RolePlay: { rlister rp }
- ...Romance: { rlister rm }
- ...Sport & Health: { rlister sp }
- ...Teens: { rlister tn }
- ...Unlisted: { rlister un }
- -
- }
- ;;Close
- on *:CLOSE:@BuzzenRoomlist: { /window -c @BuzzenRoomlistb | /window -c @BuzzenRoomlistc }
- ;;Aliases
- alias rlister {
- if (!$window(@BuzzenRoomlist)) { window -blMk -t22,26,30,37 +benstx @BuzzenRoomlist verdana 10 }
- if (!$window(@BuzzenRoomlistb)) { window -lh @BuzzenRoomlistb }
- if (!$window(@BuzzenRoomlistc)) { window -lh @BuzzenRoomlistc }
- rlisterstart | rlistget $1
- }
- alias rlistget {
- if ($1) { set %rlistroom.category $1 }
- if (!%rlistroom.number) { set -e %rlistroom.number 1 | rlistclear }
- if (!%rlistroom.total) { set -e %rlistroom.total 1 }
- if (!%rlistroom.category) { set -e %rlistroom.category gn }
- sockclose rlister | sockopen rlister www.buzzen.com 80 | rlshowcat
- }
- alias rlistclear { clear @BuzzenRoomlistb | clear @BuzzenRoomlistc }
- alias rlshowcat { titlebar @BuzzenRoomlist $rlistcatr(%rlistroom.category) }
- alias rlisterstart { clear @BuzzenRoomlist | aline @BuzzenRoomlist Roomname $chr(9) Users $chr(9) Modes $chr(9) Language $chr(9) Topic | aline @BuzzenRoomlist $chr(160) }
- alias rlisterror { noop $input(Unable to obtain roomlist $crlf $replace(%rlisterror,3,failure establishing socket connection,4,error resolving given hostname),uowd,Attention!) | unset %rlisterror }
- ;;; Socket
- on *:sockopen:rlister: {
- set -e %rlistroom.name 1 | set -e %rlistroom.page 2
- if ($sockerr) { set %rlisterror $sockerr | sockclose $sockname | .timer.rlerror -m 1 1 rlisterror | halt }
- sockwrite -n $sockname GET /mircinfo/rooms.php?cat= $+ %rlistroom.category HTTP/1.1
- sockwrite -n $sockname Host: www.buzzen.com
- sockwrite -n $sockname $crlf
- }
- on *:sockread:rlister: {
- if ($sockerr > 0) return | var %rlister | sockread %rlister
- tokenize 32 %rlister
- if ($regex($1-,/<div class=\"startroom\"><div class=\"rmmodes\">(.*)<\/div><div class=\"rmname\">(.*)<\/div><div class=\"rmlang\">(.*)</div><div class=\"rmusers\">(.*)<\/div><div class=\"rmtopic\">(.*)<\/div><\/div>/)) {
- if ($window(@BuzzenRoomlist)) {
- aline @BuzzenRoomlist $replace($regml(2),\b,$chr(32)) $chr(9) $regml(4) $chr(9) $regml(1) $chr(9) $regml(3) $chr(9) $regml(5)
- aline @BuzzenRoomlistb $chr(37) $+ $chr(35) $+ $regml(2) $chr(9) $iif($len($regml(4)) == 1,00 $+ $regml(4),$iif($len($regml(4)) == 2,0 $+ $regml(4),$regml(4))) $chr(9) $regml(1) $chr(9) $regml(3) $chr(9) $regml(5)
- aline @BuzzenRoomlistc $chr(37) $+ $chr(35) $+ $regml(2) $chr(9) $iif($len($regml(4)) == 1,00 $+ $regml(4),$iif($len($regml(4)) == 2,0 $+ $regml(4),$regml(4))) $chr(9) $regml(1) $chr(9) $regml(3) $chr(9) $regml(5)
- }
- inc %rlistroom.name | inc %rlistroom.total
- }
- if ($regex($1,/</html>/)) {
- sockclose $sockname
- if (%rlistroom.number == %rlistroom.lastnm) || (!%rlistroom.lastnm) { unset %rlistroom.* }
- else { set -e %rlistroom.number %rlistroom.lastnm
- rlistget
- }
- }
- }
- alias rlistfilter { rlisterstart | clear @BuzzenRoomlistc | filter -t $+ %rlistfilter 9 @BuzzenRoomlistb @BuzzenRoomlistc | .timer.rmsort -m 1 500 roomsort }
- alias roomsort {
- var %te 1
- while ($line(@BuzzenRoomlistc,%te)) {
- tokenize 32 $line(@BuzzenRoomlistc,%te)
- aline @BuzzenRoomlist $right($replace($1,\b,$chr(32)),-2) $chr(9) $iif($left($3,1) == 0,$iif($left($3,2) == 00,$right($3,-2),$right($3,-1)),$3) $chr(9) $replace($5,1,BSR,2,BCR,3,UCR) $chr(9) $rlistlanguage($7) $chr(9) $9-
- inc %te
- }
- }
- alias rlistcatr { return $replacex($1,et,Entertainment,gn,General,cp,Computing,rm,Romance,pr,Peers,un,Unlisted,cc,City Chats,in,Interests,ls,Lifestyles,ne,News & Politics,rl,Religion,rp,Roleplay,sp,Sport & Health,tn,Teens) }
- ;; MENU
- menu @BuzzenRoomlist {
- dclick: if ($sline(@BuzzenRoomlist,1).ln > 2) && ($sline(@BuzzenRoomlist,1).ln != $null) { join $gettok($line(@BuzzenRoomlistc,$calc($sline(@BuzzenRoomlist,1).ln -2)),1,9) }
- $iif($sline(@BuzzenRoomlist,1).ln < 3,$style(2),$iif($sline(@BuzzenRoomlist,1).ln == $null,$style(2))) Join mIRC: join $gettok($line(@BuzzenRoomlistc,$calc($sline(@BuzzenRoomlist,1).ln -2)),1,9)
- -
- Search: $iif(!$dialog(search),dialog -m rlistsearch rlistsearch)
- -
- Category:
- .City Chats: rlister cc
- .Computing: rlister cp
- .Entertainment: rlister et
- .General: rlister gn
- .Interests: rlister in
- .Lifestyles: rlister ls
- .News & Politics: rlister ne
- .Peers: rlister pr
- .Religion: rlister rl
- .RolePlay: rlister rp
- .Romance: rlister rm
- .Sport & Health: rlister sp
- .Teens: rlister tn
- .Unlisted: rlister un
- -
- Sort by:
- .Name: set %rlistfilter u 1 | rlistfilter
- .Users: set %rlistfilter eu 2 | rlistfilter
- -
- $iif($sline(@BuzzenRoomlist,1).ln < 3,$style(2),$iif($sline(@BuzzenRoomlist,1).ln == $null,$style(2))) Browser:
- .Join: url $+(http://www.buzzen.net/chatui.aspx?rm=,$chr(37),25,$chr(37),23,$replace($right($gettok($line(@BuzzenRoomlistc,$calc($sline(@BuzzenRoomlist,1).ln -2)),1,9),-2),\b,$chr(32)))
- .Copy: clipboard $+(http://www.buzzen.net/chatui.aspx?rm=,$chr(37),25,$chr(37),23,$right($gettok($line(@BuzzenRoomlistc,$calc($sline(@BuzzenRoomlist,1).ln -2)),1,9),-2))
- }
- dialog rlistsearch {
- title "Room Search"
- size -1 -1 147 26
- option dbu
- edit "", 1, 1 1 145 11
- button "Search/Find Next", 2, 1 14 50 11
- button "Close", 4, 52 14 93 11
- }
- on *:DIALOG:rlistsearch:sclick:2: {
- if (%rlistsearch.item != $did(rlistsearch,1).text) {
- set %rlistsearch.item $did(rlistsearch,1).text | set %rlistsearch.start 0 | set %rlistsearch.num $fline(@BuzzenRoomlist,* $+ %rlistsearch.item $+ *,0,1)
- }
- set %rlistsearch.start $calc(%rlistsearch.start +1)
- if (%rlistsearch.start > %rlistsearch.num) { $input(End of Search,uodw,Attention!) | halt }
- /sline -s @BuzzenRoomlist $fline(@BuzzenRoomlist,* $+ %rlistsearch.item $+ *, $+ %rlistsearch.start $+ ,1)
- }
- on *:dialog:rlistsearch:sclick:4: { unset %rlistsearch.* | dialog -x rlistsearch }
- on *:dialog:rlistsearch:close:*: { unset %rlistsearch.* }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement