diff --git a/modules/EightBall.pm b/modules/EightBall.pm index 03e098b..b6ca0d9 100644 --- a/modules/EightBall.pm +++ b/modules/EightBall.pm @@ -42,15 +42,14 @@ our %HELP_RIGBALL = ( # Callback for 8BALL command. sub c_8ball { - my (%data) = @_; - my @argv = @{ $data{args} }; delete $data{args}; + my ($src, @argv) = @_; if (!defined $argv[0]) { - notice($data{svr}, $data{nick}, trans("Not enough parameters")."."); + notice($src->{svr}, $src->{nick}, trans("Not enough parameters")."."); return; } - privmsg($data{svr}, $data{chan}, "\002Question:\002 ".join(" ", @argv)); + privmsg($src->{svr}, $src->{chan}, "\002Question:\002 ".join(" ", @argv)); my $a = ''; if (!$ANSWER) { @@ -76,7 +75,7 @@ sub c_8ball $ANSWER = 0; } - privmsg($data{svr}, $data{chan}, "\002Answer:\002 ".$a); + privmsg($src->{svr}, $src->{chan}, "\002Answer:\002 ".$a); return 1; } @@ -84,17 +83,16 @@ sub c_8ball # Callback for RIGBALL command. sub rigball { - my (%data) = @_; - my @argv = @{ $data{args} }; delete $data{args}; + my ($src, @argv) = @_; # Check for necessary parameters. if (!defined $argv[0]) { - privmsg($data{svr}, $data{nick}, trans("Not enough parameters")."."); + privmsg($src->{svr}, $src->{nick}, trans("Not enough parameters")."."); return; } $ANSWER = join(" ", @argv); - privmsg($data{svr}, $data{nick}, "Answer set to: ".$ANSWER); + privmsg($src->{svr}, $src->{nick}, "Answer set to: ".$ANSWER); return 1; } diff --git a/modules/FML.pm b/modules/FML.pm index ef42533..173fbc5 100644 --- a/modules/FML.pm +++ b/modules/FML.pm @@ -36,7 +36,7 @@ our %HELP_FML = ( # Callback for FML command. sub fml { - my (%data) = @_; + my ($src, undef) = @_; # Create an instance of LWP::UserAgent. my $ua = LWP::UserAgent->new(); @@ -56,11 +56,11 @@ sub fml my ($fml, undef) = split('Agree:', $dfa); # And send to channel. - privmsg($data{svr}, $data{chan}, "\002Random FML:\002 ".$fml); + privmsg($src->{svr}, $src->{chan}, "\002Random FML:\002 ".$fml); } else { # Otherwise, send an error message. - privmsg($data{svr}, $data{chan}, "An error occurred while retrieving the FML."); + privmsg($src->{svr}, $src->{chan}, "An error occurred while retrieving the FML."); } return 1; diff --git a/modules/Greet.pm b/modules/Greet.pm index f9af630..460a10d 100644 --- a/modules/Greet.pm +++ b/modules/Greet.pm @@ -44,12 +44,11 @@ our %HELP_GREET = ( # Callback for GREET. sub cmd_greet { - my (%data) = @_; - my @argv = @{ $data{args} }; delete $data{args}; + my ($src, @argv) = @_; # Check for required parameters. if (!defined $argv[0]) { - notice($data{svr}, $data{nick}, trans('Not enough parameters').q{.}); + notice($src->{svr}, $src->{nick}, trans('Not enough parameters').q{.}); return; } @@ -60,7 +59,7 @@ sub cmd_greet # Check for needed parameters. if (!defined $argv[1] or !defined $argv[2]) { - notice($data{svr}, $data{nick}, trans('Not enough parameters').q{.}); + notice($src->{svr}, $src->{nick}, trans('Not enough parameters').q{.}); return; } my $nick = $argv[1]; shift @argv; shift @argv; @@ -69,39 +68,39 @@ sub cmd_greet # Make sure it doesn't already exist. if ($Auto::DB->selectrow_array('SELECT * FROM greets WHERE nick = "'.$nick.'"')) { - notice($data{svr}, $data{nick}, "A greet for \002$nick\002 already exists."); + notice($src->{svr}, $src->{nick}, "A greet for \002$nick\002 already exists."); return; } # Insert into database. - my $dbq = $Auto::DB->prepare('INSERT INTO greets (nick, greet) VALUES (?, ?)') or notice($data{svr}, $data{nick}, trans('An error occurred').q{.}) and return; - $dbq->execute($nick, $greet) or notice($data{svr}, $data{nick}, trans('An error occurred').q{.}) and return; + my $dbq = $Auto::DB->prepare('INSERT INTO greets (nick, greet) VALUES (?, ?)') or notice($src->{svr}, $src->{nick}, trans('An error occurred').q{.}) and return; + $dbq->execute($nick, $greet) or notice($src->{svr}, $src->{nick}, trans('An error occurred').q{.}) and return; API::Log::slog('cmd_greet(): Creating new greet.'); # Done. - notice($data{svr}, $data{nick}, "Successfully added greet for \002$nick\002."); + notice($src->{svr}, $src->{nick}, "Successfully added greet for \002$nick\002."); } when ('DEL') { # GREET DEL # Check for needed parameters. if (!defined $argv[1]) { - notice($data{svr}, $data{nick}, trans('Not enough parameters').q{.}); + notice($src->{svr}, $src->{nick}, trans('Not enough parameters').q{.}); return; } my $nick = lc $argv[1]; # Check if there is a greet for this user. if (!$Auto::DB->selectrow_array('SELECT * FROM greets WHERE nick = "'.$nick.'"')) { - notice($data{svr}, $data{nick}, "There is no greet for \002$nick\002."); + notice($src->{svr}, $src->{nick}, "There is no greet for \002$nick\002."); return; } # Delete it. - $Auto::DB->do('DELETE FROM greets WHERE nick = "'.$nick.'"') or notice($data{svr}, $data{nick}, trans('An error occurred').q{.}) and return; - notice($data{svr}, $data{nick}, "Greet for \002$nick\002 successfully deleted."); + $Auto::DB->do('DELETE FROM greets WHERE nick = "'.$nick.'"') or notice($src->{svr}, $src->{nick}, trans('An error occurred').q{.}) and return; + notice($src->{svr}, $src->{nick}, "Greet for \002$nick\002 successfully deleted."); } - default { notice($data{svr}, $data{nick}, "Unknown action \002$argv[0]\002. \002Syntax:\002 GREET (ADD|DEL)"); return; } + default { notice($src->{svr}, $src->{nick}, "Unknown action \002$argv[0]\002. \002Syntax:\002 GREET (ADD|DEL)"); return; } } return 1; @@ -110,7 +109,7 @@ sub cmd_greet # Call back for on_rcjoin hook. sub hook_rcjoin { - my (($svr, $src, $chan)) = @_; + my (($src, $chan)) = @_; my $nick = lc $src->{nick}; # Check if there's a greet for this user. diff --git a/modules/IsItUp.pm b/modules/IsItUp.pm index 35d87be..ef43b68 100644 --- a/modules/IsItUp.pm +++ b/modules/IsItUp.pm @@ -36,22 +36,21 @@ our %HELP_ISITUP = ( # Callback for ISITUP command. sub check { - my (%data) = @_; + my ($src, @argv) = @_; # Create an instance of LWP::UserAgent. my $ua = LWP::UserAgent->new(); $ua->agent('Auto IRC Bot'); $ua->timeout(2); - my @args = @{ $data{args} }; - my $curl = $args[0]; # Do we have enough parameters? - if (!defined $args[0]) { - notice($data{svr}, $data{nick}, trans("Not enough parameters")."."); + if (!defined $argv[0]) { + notice($src->{svr}, $src->{nick}, trans('Not enough parameters').q{.}); return 0; } + my $curl = $argv[0]; # Does the URL start with http(s)? if ($curl !~ m/^http/) { - $curl = "http://".$curl; + $curl = 'http://'.$curl; } # Get the response via HTTP. @@ -59,18 +58,18 @@ sub check if ($response->is_success) { # If successful, it's up. - privmsg($data{svr}, $data{chan}, $curl." appears to be up from here."); + privmsg($src->{svr}, $src->{chan}, $curl.' appears to be up from here.'); } else { # Otherwise, it's down. - privmsg($data{svr}, $data{chan}, $curl." appears to be down from here."); + privmsg($src->{svr}, $src->{chan}, $curl.' appears to be down from here.'); } return 1; } # Start initialization. -API::Std::mod_init("IsItUp", "Xelhua", "1.00", "3.0.0d", __PACKAGE__); +API::Std::mod_init('IsItUp', 'Xelhua', '1.00', '3.0.0d', __PACKAGE__); # vim: set ai sw=4 ts=4: # build: cpan=LWP::UserAgent perl=5.010000 diff --git a/modules/Weather.pm b/modules/Weather.pm index cea440a..367f917 100644 --- a/modules/Weather.pm +++ b/modules/Weather.pm @@ -37,16 +37,15 @@ our %HELP_WEATHER = ( # Callback for Weather command. sub weather { - my (%data) = @_; + my ($src, @args) = @_; # Create an instance of LWP::UserAgent. my $ua = LWP::UserAgent->new(); $ua->agent('Auto IRC Bot'); $ua->timeout(2); # Put together the call to the Wunderground API. - my @args = @{ $data{args} }; if (!defined $args[0]) { - notice($data{svr}, $data{nick}, trans("Not enough parameters")."."); + notice($src->{svr}, $src->{nick}, trans("Not enough parameters")."."); return 0; } my $loc = join(' ', @args); @@ -62,17 +61,17 @@ sub weather if (!ref($d->{observation_location}->{country})) { my $windc = $d->{wind_string}; if (substr($windc, length($windc) - 1, 1) eq " ") { $windc = substr($windc, 0, length($windc) - 1); } - privmsg($data{svr}, $data{chan}, "Results for \2".$d->{observation_location}->{full}."\2 - \2Temperature:\2 ".$d->{temperature_string}." \2Wind Conditions:\2 ".$windc." \2Conditions:\2 ".$d->{weather}); - privmsg($data{svr}, $data{chan}, "\2Heat index:\2 ".$d->{heat_index_string}." \2Humidity:\2 ".$d->{relative_humidity}." \2Pressure:\2 ".$d->{pressure_string}." - ".$d->{observation_time}); + privmsg($src->{svr}, $src->{chan}, "Results for \2".$d->{observation_location}->{full}."\2 - \2Temperature:\2 ".$d->{temperature_string}." \2Wind Conditions:\2 ".$windc." \2Conditions:\2 ".$d->{weather}); + privmsg($src->{svr}, $src->{chan}, "\2Heat index:\2 ".$d->{heat_index_string}." \2Humidity:\2 ".$d->{relative_humidity}." \2Pressure:\2 ".$d->{pressure_string}." - ".$d->{observation_time}); } else { # Otherwise, send an error message. - privmsg($data{svr}, $data{chan}, "Location not found."); + privmsg($src->{svr}, $src->{chan}, "Location not found."); } } else { # Otherwise, send an error message. - privmsg($data{svr}, $data{chan}, "An error occurred while retrieving your weather."); + privmsg($src->{svr}, $src->{chan}, "An error occurred while retrieving your weather."); } return 1;