Seeding from the 1.2 tree.

This commit is contained in:
Dan Mashal
2013-01-01 03:00:55 -08:00
parent d8c87c4ded
commit 87b806a563
1424 changed files with 260320 additions and 0 deletions

147
script/logger.bx Normal file
View File

@@ -0,0 +1,147 @@
#####################################################################################
## logger.bx by powuh, Wed Dec 4 20:54:36 EST 2002
##
## This is a logger script for BitchX and Epic. It is fully customizable, so you
## can log what you want to, where you want to! I wrote this after finding many
## flaws in bxlog.bx by dARTh in both log handling, and code syntax. Hopefully
## my logger.bx will be a better replacement.
##
## Any comments, suggestions, etc can be directed to powuh on EFNet's #BitchX
#####################################################################################
@ log.version = [1.0]
@ log.config.file = [~/.bxlogger.cfg]
if (fexist($log.config.file) == -1) {
xecho -b Config file, $log.config.file, not found... Using default values. Type /logconf to configure!
@ logdir = [~/.BitchX/logs];@ logdate = [%m-%d-%y/%H:%M];@ logdir.channels = [$logdir/channels]
@ logdir.messages = [$logdir/messages];@ logdir.notices = [$logdir/notices];@ logdir.ctcp = [$logdir/ctcp]
@ logdir.dcc = [$logdir/dcc];@ logpublic = 1;@ logprivate = 1;@ lognotices = 1;@ logdccs = 1;@ logctcps = 1
}{load $log.config.file}
alias _logger {
if (logenable) {
if (log.debug) echo _logger $0 > $1-
if (fexist($logdir) == -1) {${mkdir($logdir)?[eval xecho -b mkdir failed $logdir]:[]}}
if (logsepdirs && fexist($logdir.channels) == -1) {${mkdir($logdir.channels)?[eval xecho -b mkdir failed $logdir.channels]:[]}}
if (logsepdirs && fexist($logdir.messages) == -1) {${mkdir($logdir.messages)?[eval xecho -b mkdir failed $logdir.messages]:[]}}
if (logsepdirs && fexist($logdir.notices) == -1) {${mkdir($logdir.notices)?[eval xecho -b mkdir failed $logdir.notices]:[]}}
if (logsepdirs && fexist($logdir.ctcp) == -1) {${mkdir($logdir.ctcp)?[eval xecho -b mkdir failed $logdir.ctcp]:[]}}
if (logsepdirs && fexist($logdir.dcc) == -1) {${mkdir($logdir.dcc)?[eval xecho -b mkdir failed $logdir.ctcp]:[]}}
@ :logfh = open($0 W)
@ write($logfh [$strftime($logdate)] $stripc($stripansicodes($strip( $1-))))
@ close($logfh)
}
}
alias logconf {
if ([$0]) switch ($0) {
(a) {@ logenable = ([$1]==[yes])?1:0}
(b) {@ logpublic = ([$1]==[yes])?1:0}
(c) {@ logmessages = ([$1]==[yes])?1:0}
(d) {@ lognotices = ([$1]==[yes])?1:0}
(e) {@ logdccs = ([$1]==[yes])?1:0}
(f) {@ logctcps = ([$1]==[yes])?1:0}
(g) {@ logdir = ([$1])?[$1]:[$logdir]}
(h) {@ logsepdirs = ([$1]==[yes])?1:0}
(h1) {@ logdir.channels = ([$1])?[$1]:[$logdir.channels]}
(h2) {@ logdir.messages = ([$1])?[$1]:[$logdir.messages]}
(h3) {@ logdir.notices = ([$1])?[$1]:[$logdir.notices]}
(h4) {@ logdir.dcc = ([$1])?[$1]:[$logdir.dcc]}
(h5) {@ logdir.ctcp = ([$1])?[$1]:[$logdir.ctcp]}
(i) {@ logdate = ([$1])?[$1]:[$logdate]}
(*) {xecho -b Invalid switch to /logconf: $0;return}
}
xecho -b
xecho -b Logger Configuration:
xecho -b [a] Enable Logging ..................... ${logenable?[yes]:[no]}
if (logenable) xecho -b [b] Log channel activity ............... ${logpublic?[yes]:[no]}
if (logenable) xecho -b [c] Log private messages ............... ${logmessages?[yes]:[no]}
if (logenable) xecho -b [d] Log notices ........................ ${lognotices?[yes]:[no]}
if (logenable) xecho -b [e] Log DCCs ........................... ${logdccs?[yes]:[no]}
if (logenable) xecho -b [f] Log CTCPs .......................... ${logctcps?[yes]:[no]}
if (logenable) xecho -b [g] Log Directory ...................... ${logdir?[$logdir/]:[Not Set]}
if (logenable) xecho -b [h] Subdirectories by type ............. ${logsepdirs?[yes]:[no]}
if (logsepdirs) xecho -b [h1] Channel log directory .......... ${logdir.channels?[$logdir.channels/]:[Not Set]}
if (logsepdirs) xecho -b [h2] Message log directory .......... ${logdir.messages?[$logdir.messages/]:[Not Set]}
if (logsepdirs) xecho -b [h3] Notice log directory ........... ${logdir.notices?[$logdir.notices/]:[Not Set]}
if (logsepdirs) xecho -b [h4] DCC log directory .............. ${logdir.dcc?[$logdir.dcc/]:[Not Set]}
if (logsepdirs) xecho -b [h5] CTCP log directory ............. ${logdir.ctcp?[$logdir.ctcp/]:[Not Set]}
if (logenable) xecho -b [i] Log Timestamp Format ............... $logdate \($strftime($logdate)\)
xecho -b
xecho -b Type /logconf <letter> <value> to configure. Then /logsave to save settings.
xecho -b
}
alias logsave {
@rename($log.config.file $log.config.file~)
@ :savefile = open($log.config.file W T)
@ write($savefile @ logenable = $logenable)
@ write($savefile @ logpublic = $logpublic)
@ write($savefile @ logmessages = $logmessages)
@ write($savefile @ lognotices = $lognotices)
@ write($savefile @ logdccs = $logdccs)
@ write($savefile @ logctcps = $logctcps)
@ write($savefile @ logdir = [$logdir])
@ write($savefile @ logsepdirs = $logsepdirs)
@ write($savefile @ logdir.channels = [$logdir.channels])
@ write($savefile @ logdir.messages = [$logdir.messages])
@ write($savefile @ logdir.notices = [$logdir.notices])
@ write($savefile @ logdir.dcc = [$logdir.dcc])
@ write($savefile @ logdir.ctcp = [$logdir.ctcp])
@ write($savefile @ logdate = [$logdate])
@ close($savefile)
xecho -b Saved logger configuration to $log.config.file
}
alias loghelp {
xecho -b
xecho -b Logger version $log.version by powuh
xecho -b Commands:
xecho -b /loghelp ............ What you are reading now
xecho -b /logconf ............ Logger Configuration
xecho -b /logsave ............ Save current configuration
xecho -b
}
## Private message hooks
on #-msg 6192 * {if (logmessages) {_logger ${logsepdirs?logdir.messages:logdir}/$tolower($0.log) <$0> $1-}}
on #-send_msg 6192 * {if (logmessages) {_logger ${logsepdirs?logdir.messages:logdir}/$tolower($0.log) <$N> $1-}}
## Notice hooks
on #-notice 6192 * {if (lognotices) {_logger ${logsepdirs?logdir.notices:logdir}/$tolower($0.log) -$0\- $1-}}
on #-send_notice 6192 * {if (lognotices) {_logger ${logsepdirs?logdir.notices:logdir}/$tolower($0.log) =$0= $1-}}
## DCC hooks
on #-dcc_chat 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) <$0> $1-}}
on #-send_dcc_chat 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) <$N> $1-}}
on #-dcc_connect 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Connect from $0 $1-}}
on #-dcc_error 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Error from $0 $1-}}
on #-dcc_lost 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Lost from $0 $1-}}
on #-dcc_request 6192 * {if (logdccs) {_logger ${logsepdirs?logdir.dcc:logdir}/$tolower($0.dcc.log) DCC Request from $0 $1-}}
## Public channel hooks
on #-public 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_other 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_ar 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_other_ar 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) <$0> $2-}}
on #-public_notice 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) $0\- $2-}}
on #-action 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) * $0 $2-}}
on #-send_public 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) <$N> $1-}}
on #-send_action 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) * $N $1-}}
on #-leave 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** Parted $0 \($2\)}}
on #-join 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** Joined $0 \($2\)}}
on #-kick 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($2.log) *** $0 was kicked by $1 \($3-\)}}
on #-topic 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** $0 changed topic to $2-}}
on #-channel_nick 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) *** $1 is now known as $2}}
on #-channel_signoff 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($0.log) *** $1 signoff\: $2-}}
on #-mode 6192 * {if (logpublic) {_logger ${logsepdirs?logdir.channels:logdir}/$tolower($1.log) *** $0 sets mode $2-}}
## CTCP hooks
on #-ctcp 6192 * {if (logctcps) {_logger ${logsepdirs?logdir.ctcp:logdir}/ctcp.log CTCP from $0\: $2-}}
on #-ctcp_reply 6192 * {if (logctcps) {_logger ${logsepdirs?logdir.ctcp:logdir}/ctcp.log CTCP $1 reply from $0\: $2-}}
eval xecho -b logger.bx version $log.version by powuh loaded. Type /loghelp for help.
# EOF