inital commit
[irssi-scripts.git] / googl.pl
1 #!/usr/bin/perl
2 #
3 # by CowboyNeal
4 #
5
6 use strict;
7
8 use WWW::Shorten::Googl;
9 use Irssi qw(command_bind);
10
11 use vars qw($VERSION %IRSSI);
12
13 $VERSION = '1.0';
14 %IRSSI = (
15         authors         => 'CowboyNeal',
16         contact         => 'cowboyneal@gmail.com',
17         name            => 'googl',
18         description     => 'create a goo.gl link from a long one',
19         license         => 'BSD',
20 );
21
22 command_bind(googl => sub {
23         my ($msg, $server, $witem) = @_;
24
25         $msg =~ s/(http:\/\/\S+)/googl($1)/egi;
26
27         if ($msg && $witem && ($witem->{type} eq 'CHANNEL'
28                 || $witem->{type} eq 'QUERY')) {
29                 $witem->command('MSG ' . $witem->{name} . " $msg");
30         }
31 });
32
33 sub googl {
34         my $url = shift;
35         return $url if $url =~ m/^http:\/\/goo\.gl\//i;
36
37         my $short_url = makeashorterlink($url);
38         return $short_url if defined $short_url;
39
40         print CLIENTCRAP 'ERROR: googl: goo.gl is not responding.';
41         return $url;
42 }