2 &addCmdHook("extra", 'd?bugs', ('CODEREF' => 'DBugs::Parse',
3 &addCmdHook("extra", 'dauthor', ('CODEREF' => 'Debian::searchAuthor',
4 &addCmdHook("extra", '(d|search)desc', ('CODEREF' => 'Debian::searchDescFE',
5 &addCmdHook("extra", 'dnew', ('CODEREF' => 'DebianNew',
6 &addCmdHook("extra", 'dincoming', ('CODEREF' => 'Debian::generateIncoming',
7 &addCmdHook("extra", 'dstats', ('CODEREF' => 'Debian::infoStats',
8 &addCmdHook("extra", 'd?contents', ('CODEREF' => 'Debian::searchContents',
9 &addCmdHook("extra", 'd?find', ('CODEREF' => 'Debian::DebianFind',
10 &addCmdHook("extra", 'insult', ('CODEREF' => 'Insult::Insult',
11 &addCmdHook("extra", 'kernel', ('CODEREF' => 'Kernel::Kernel',
12 &addCmdHook("extra", 'listauth', ('CODEREF' => 'CmdListAuth',
13 &addCmdHook("extra", 'quote', ('CODEREF' => 'Quote::Quote',
14 &addCmdHook("extra", 'countdown', ('CODEREF' => 'Countdown',
15 &addCmdHook("extra", 'lart', ('CODEREF' => 'lart',
16 &addCmdHook("extra", 'convert', ('CODEREF' => 'convert',
17 &addCmdHook("extra", '(cookie|random)', ('CODEREF' => 'cookie',
18 &addCmdHook("extra", 'u(ser)?info', ('CODEREF' => 'userinfo',
19 &addCmdHook("extra", 'rootWarn', ('CODEREF' => 'CmdrootWarn',
20 &addCmdHook("extra", 'seen', ('CODEREF' => 'seen', 'Identifier' =>
21 &addCmdHook("extra", 'dict', ('CODEREF' => 'Dict::Dict',
22 &addCmdHook("extra", 'slashdot', ('CODEREF' => 'Slashdot::Slashdot',
23 &addCmdHook("extra", 'uptime', ('CODEREF' => 'uptime', 'Identifier' => 'uptime',
24 &addCmdHook("extra", 'nullski', ('CODEREF' => 'nullski', ) );
25 &addCmdHook("extra", '(fm|freshmeat)', ('CODEREF' => 'Freshmeat::Freshmeat',
26 &addCmdHook("extra", 'verstats', ('CODEREF' => 'do_verstats' ) );
28 if ($message =~ /^($debiancmd)(\s+(.*))?$/i) {
29 if ($message =~ /^(?:search\s+)?(\S+)\s+for\s+['"]?(.*?)["']?\s*\?*$/i) {
30 if ($message =~ /^_stats(\s+(\S+))$/i) {
31 if ($message =~ /^($z)stats(\s+(\S+))?$/i) {
32 if ($message =~ /^list(\S+)(\s+(.*))?$/i) {
33 if ($message =~ /^(?:lame|nick)ometer(?: for)? (\S+)/i) {
34 if ($message =~ /^topic(\s+(.*))?$/i) {
35 if ($message =~ /^wingate$/i) {
37 if ($message =~ /^join(\s+(.*))?\s*$/i) {
38 if ($msgType =~ /private/ and $message =~ s/^identify//i) {
39 $message =~ s/^\s+|\s+$//g;
40 if ($msgType =~ /private/ and $message =~ s/^pass//i) {
41 $message =~ s/^\s+|\s+$//g;
42 if ($msgType =~ /public/ and $message =~ s/^\+//) {
43 next unless ($message =~ /^\Q$y\E\s*/);
44 if ($message =~ /how (the hell )?are (ya|you)( doin\'?g?)?\?*$/) {
45 if ($message =~ /you (rock|rewl|rule|are so+ coo+l)/ ||
46 $message =~ /(good (bo(t|y)|g([ui]|r+)rl))|(bot( |\-)?snack)/i)
47 if ($message =~ /^than(ks?|x)( you)?( \S+)?/i) {
48 return 'thank: no addr' unless ($message =~ /$ident/ or $talkok);
49 if ($message =~ /^(\S+)(--|\+\+)\s*$/ and $addressed) {
51 if ($message =~ /^(asci*|chr) (\d+)$/) {
52 if ($message =~ /^ord(\s+(.*))$/) {
53 if ($message =~ /^hex(\s+(.*))?$/i) {
54 if ($message =~ /^crypt(\s+(.*))?$/i) {
55 if ($message =~ /^(cycle)(\s+(\S+))?$/i) {
56 if ($message =~ /^redir(\s+(.*))?/i) {
57 if ($message =~ /^rot13(\s+(.*))?/i) {
58 if ($message =~ /^cpustats$/i) {
59 if ($message =~ /^ircstats?$/i) {
60 if ($message =~ /^statu?s$/i) {
61 if ($message =~ /^wantNick$/i) {
62 &addCmdHook("main", 'chan(stats|info)', ('CODEREF' => 'chaninfo', ) );
63 &addCmdHook("main", 'cmd(stats|info)', ('CODEREF' => 'cmdstats', ) );
64 &addCmdHook("main", 'factinfo', ('CODEREF' => 'factinfo',
65 &addCmdHook("main", 'factstats?', ('CODEREF' => 'factstats',
66 &addCmdHook("main", 'help', ('CODEREF' => 'help',
67 &addCmdHook("main", 'karma', ('CODEREF' => 'karma', ) );
68 &addCmdHook("main", 'i?spell', ('CODEREF' => 'ispell',
69 &addCmdHook("main", 'd?nslookup', ('CODEREF' => 'DNS',
70 &addCmdHook("main", 'tell|explain', ('CODEREF' => 'tell',
71 &addCmdHook("main", 'news', ('CODEREF' => 'News::Parse',
72 &addCmdHook("main", 'countrystats', ('CODEREF' => 'countryStats',
74 if ($message =~ /^(exit|quit)$/i) {
75 if ($message =~ /^who$/) {
76 if ($message =~ /^tellme(\s+(.*))?$/i) {
77 if ($message =~ /^4op(\s+($mask{chan}))?$/i) {
78 if ($message =~ /^backlog(\s+(.*))?$/i) {
79 if ($message =~ /^dumpvars$/i) {
80 if ($message =~ /^kick(\s+(\S+)(\s+(\S+))?)?/) {
81 if ($message =~ /^mode(\s+(.*))?$/) {
82 if ($message =~ /^part(\s+(\S+))?$/i) {
83 if ($message =~ /^(lobotomy|bequiet)$/i) {
84 if ($message =~ /^(unlobotomy|benoisy)$/i) {
85 if ($message =~ /^op(\s+(.*))?$/i) {
86 if ($message =~ /^deop(\s+(.*))?$/i) {
87 if ($message =~ s/^say\s+(\S+)\s+(.*)//) {
88 if ($message =~ /^die$/) {
89 if ($message =~ m|^s([/,#])(.+?)\1(.*?)\1;?\s*$|) {
90 if ($message =~ /^jump(\s+(\S+))?$/i) {
91 if ($message =~ /^reload$/i) {
92 if ($message =~ /^reset$/i) {
93 if ($message =~ /^rehash$/) {
94 if ($message =~ /^chaninfo(\s+(.*))?$/) {
95 if ($message =~ /^(chanset|\+chan)(\s+(.*?))?$/) {
96 if ($message =~ /^(chanunset|\-chan)(\s+(.*))?$/) {
97 if ($message =~ /^newpass(\s+(.*))?$/) {
98 if ($message =~ /^chpass(\s+(.*))?$/) {
99 if ($message =~ /^chattr(\s+(.*))?$/) {
100 if ($message =~ /^chnick(\s+(.*))?$/) {
101 if ($message =~ /^([-+])host(\s+(.*))?$/) {
102 if ($message =~ /^([-+])ban(\s+(.*))?$/) {
103 if ($message =~ /^whois(\s+(.*))?$/) {
104 if ($message =~ /^bans(\s+(.*))?$/) {
105 if ($message =~ /^banlist(\s+(.*))?$/) {
106 if ($message =~ /^save$/) {
107 $message =~ s/^addignore/+ignore/;
108 $message =~ s/^(del|un)ignore/-ignore/;
109 if ($message =~ /^(\+|\-)ignore(\s+(.*))?$/i) {
110 if ($message =~ /^ignore(\s+(.*))?$/) {
111 if ($message =~ /^(\+|\-|add|del)user(\s+(.*))?$/i) {
112 if ($message =~ /^sched$/) {