ATTENTION! YOU MUST HAVE TAD'S HOME INTEGRATION SCRIPT FOR THIS SCRIPT TO WORK! YOU CAN FIND IT HERE: http://www.hawkee.com/snippet/4936/
To install:
/install clog
To uninstall
/uninstall clog
Please be aware that after you install this program, you will need to restart your connection to any server(s) you might be on.
To operate:
Type /clog
Select a server from the drop-down list (do not select Server...)
Type a channel into the #channel edit box.
Select the type of report you wanna see...
then click Generate. Thats it!
-edit-
Fixed a small error.
on *:LOAD: {
createlicense clog
echo -a Type /install clog to install the Channel Log script.
}
on *:START: {
If ($readini(clog.ini,status,installed) == yes ) {
If ($readini(clog.ini,status,auto_start) == yes ) {
check clog
}
Else {
echo -a Type /clog to start up the Channel Log Report Maker
}
}
Else {
echo -a Type /install clog to install the Channel Log Script
}
}
on *:CONNECT: {
If ($read(cservers.txt, s, $server) == $null ) {
write cservers.txt $server $server
write cserv.txt $server
writeini clog.ini status servers $calc($readini(clog.ini,status,servers) + 1 )
}
}
on *:JOIN:#: {
writeini clog.ini $server $chan $calc($readini(clog.ini,$server,$chan) + 1 )
write $server $+ _ $+ $chan $+ _clog.txt JOIN $nick $+ ( $+ $address $+ ) on $server $+ , joined $chan on $adate at $time $+ .
}
on *:PART:#: {
writeini clog.ini $server $chan $calc($readini(clog.ini,$server,$chan) + 1 )
write $server $+ _ $+ $chan $+ _clog.txt PART $nick $+ ( $+ $address $+ ) on $server $+ , left $chan on $adate at $time $+ .
}
on *:QUIT: {
writeini clog.ini $server quits $calc($readini(clog.ini,$server,quits) + 1 )
write quits.txt $nick $+ ( $+ $address $+ ) $+ , quit from $server on $adate at $time $+ .
}
on *:NICK: {
writeini clog.ini $server nicks $calc($readini(clog.ini,$server,nicks) + 1 )
write nick.txt $nick $+ ( $+ $address $+ ) $+ , on $server $+ , has changed his/her nick to $newnick $+ .
}
alias clog_install {
writeini clog.ini status installed yes
set %show.join no
set %show.part no
set %show.quit no
set %show.nick no
echo -a Channel Log has been installed. It is recommended that you reconnect to any server(s) you might be connected to.
echo -a To start up the Channel Log options, please type /clog
}
alias clog_uninstall {
remove clog.ini
remove cservers.txt
remove cserv.txt
unset %show.join
unset %show.part
unset %show.quit
unset %show.nick
}
alias clog {
check clog
}
dialog clog {
title Channel Log
option dbu
size -1 -1 101 77
combo 1, 1 1 100 10, drop
edit "#Channel", 2, 1 11 100 10, disable
text "Show", 3, 1 22 100 10
check "Joins", 4, 1 33 49 10
check "Parts", 5, 50 33 49 10
check "Quits", 6, 1 44 49 10
check "Nicks", 7, 50 44 49 10
button "Generate", 8, 1 55 100 10, disable
button "Reset", 9, 1 66 100 10
}
on *:DIALOG:clog:*:0: {
If ($devent == init ) {
did -a clog 1 Server...
var %temp.1 $readini(clog.ini,status,servers)
While (%temp.1 > 0 ) {
did -a clog 1 $read(cserv.txt, %temp.1)
dec %temp.1
}
If (%show.join == yes ) {
did -c clog 4
}
If (%show.part == yes ) {
did -c clog 5
}
If (%show.quit == yes ) {
did -c clog 6
}
If (%show.nick == yes ) {
did -c clog 7
}
}
Elseif ($devent == close ) {
set %clog_open no
}
}
on *:DIALOG:clog:*:*: {
If ($devent == sclick) {
If ($did == 1) {
did -ef clog 2
}
Elseif ($did == 4) {
If (%show.join == yes ) {
set %show.join no
}
Else {
set %show.join yes
}
}
Elseif ($did == 5 ) {
If (%show.part == yes ) {
set %show.part no
}
Else {
set %show.part yes
}
}
Elseif ($did == 6 ) {
If (%show.quit == yes ) {
set %show.quit no
}
Else {
set %show.quit yes
}
}
Elseif ($did == 7 ) {
If (%show.nick == yes ) {
set %show.nick no
}
Else {
set %show.nick yes
}
}
Elseif ($did == 8 ) {
If (($did(4).state == 1 ) || ($did(5).state == 1 ) || ($did(6).state == 1 ) || ($did(7).state == 1 )) {
If ($did(1).seltext != Server... ) {
If ($did(2) != $null ) {
If ($readini(clog.ini,$did(1).seltext,$did(2)) != $null ) {
write clog.txt CLog
var %temp.1 $readini(clog.ini,$did(1).seltext,$did(2))
var %temp.6 1
If (%show.join == yes) || (%show.part) == yes ) {
write clog.txt -Joins and Parts-
}
While (%temp.1 > 0 ) {
If (%show.join == yes) && (JOIN isin $read($did(1).seltext $+ _ $+ $did(2) $+ _clog.txt, %temp.1)) {
write clog.txt %temp.6 $+ . $read($did(1).seltext $+ _ $+ $did(2) $+ _clog.txt, %temp.1)
inc %temp.6
write -i clog.txt
}
If (%show.part == yes) && (PART isin $read($did(1).seltext $+ _ $+ $did(2) $+ _clog.txt, %temp.1)) {
write clog.txt %temp.6 $+ . $read($did(1).seltext $+ _ $+ $did(2) $+ _clog.txt, %temp.1)
inc %temp.6
write -i clog.txt
}
dec %temp.1
}
If (%show.quit == yes ) {
gen quits
}
If (%show.nick == yes ) {
gen nicks
}
Else {
gen finish
}
}
Else {
echo -a Error with program. 001
}
}
Else {
did -f clog 2
echo -a Error 123
}
}
Else {
did -f clog 1
echo -a Error 456
}
}
Else {
echo -a Please check a log you would like to see.
}
}
Elseif ($did == 9 ) {
close clog
start clog
}
}
Elseif ($devent == edit ) {
If ($did == 2 ) {
did -e clog 8
}
}
}
alias gen {
If ($1 == $null ) {
echo -a Error 002
}
Elseif ($1 == quits ) {
write clog.txt -Quits-
var %temp.2 $readini(clog.ini,$did(clog, 1).seltext,quits)
var %temp.4 1
While (%temp.2 > 0 ) {
If ($did(clog, 1).seltext isin $read(quits.txt, %temp.2) ) {
write clog.txt %temp.4 $+ . $read(quits.txt, %temp.2)
inc %temp.4
write -i clog.txt
}
dec %temp.2
}
}
Elseif ($1 == nicks ) {
var %temp.3 $readini(clog.ini,$did(clog, 1).seltext,nicks)
var %temp.5 1
write clog.txt -Nicks-
While (%temp.3 > 0 ) {
If ($did(clog, 1).seltext isin $read(nick.txt, %temp.3) ) {
write clog.txt %temp.5 $+ . $read(nick.txt, %temp.3)
inc %temp.5
write -i clog.txt
}
dec %temp.3
}
regenfinish
}
Elseif ($1 == finish ) {
.timer 1 1 /run clog.txt
.timer 1 3 /remove clog.txt
}
}
alias regenfinish {
gen finish
}