From: bw1 Date: Thu, 2 May 2019 22:39:06 +0000 (+0200) Subject: [deliciousurl] remove deliciousurl.pl X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=86c26e144cfe52d2039bd5798dd3044bc25d0f63;p=irssi-scripts.irssi.org.git [deliciousurl] remove deliciousurl.pl --- diff --git a/scripts/deliciousurl.pl b/scripts/deliciousurl.pl deleted file mode 100644 index b296e06..0000000 --- a/scripts/deliciousurl.pl +++ /dev/null @@ -1,170 +0,0 @@ -######################################################################################################## -## -## Log URL's and post them to del.icio.us -## -######################################################################################################## - -use strict; - -BEGIN { $ENV{HARNESS_ACTIVE} = 1 } - -use IO::Handle; -use Irssi; -use Irssi::Irc; -use Net::Delicious; -use URI::Find::Rule; -use POSIX; -use Log::Dispatch; -use Log::Dispatch::File; - -use vars qw($VERSION %IRSSI $FINDER $WARNING_PRINTED); - -$VERSION = "0.5"; -%IRSSI = ( - authors => "Benjamin Reed", - contact => 'ranger@befunk.com', - name => "deliciousurl", - description => "Logs URLs and posts them to del.icio.us", - license => "GPLv2", - url => "http://ranger.befunk.com/", -); - -# === Version History === -# 2007-01-19: version 0.5, minor logging/UI tweaks -# 2005-10-25: released version 0.4 -# 2005-10-25: fork post_to_delicious so we don't have to wait for a response (holy crap, I -# can't believe it was broken this long without noticing!) -# 2005-08-24: added channel ignore, thanks to Rev. Jeffrey Paul - -Irssi::settings_add_str('deliciousurl', 'delicious_username', ''); -Irssi::settings_add_str('deliciousurl', 'delicious_password', ''); -Irssi::settings_add_int('deliciousurl', 'delicious_post_privmsg', 0); -Irssi::settings_add_int('deliciousurl', 'delicious_strip_trailing_slash', 1); -Irssi::settings_add_str('deliciousurl', 'delicious_blacklist_regexp', '(tubgirl|goatse\.cx)'); -Irssi::settings_add_str('deliciousurl', 'delicious_default_tag', 'irc'); -Irssi::settings_add_str('deliciousurl', 'delicious_ignore_chan', ''); - -sub post_to_delicious -{ - my ($channel, $data, $nick) = @_; - - my $username = Irssi::settings_get_str('delicious_username'); - my $password = Irssi::settings_get_str('delicious_password'); - - if (not defined $username or not defined $password and not $WARNING_PRINTED) - { - if (not $WARNING_PRINTED) - { - Irssi::print("username or password are not set!"); - $WARNING_PRINTED++; - } - return; - } - - my $pid = fork(); - - if ($pid) { - Irssi::pidwait_add($pid); - return; - } else { - my $blacklist = Irssi::settings_get_str('delicious_blacklist_regexp'); - - eval { - $data =~ /$blacklist/ and die "blacklist matched!"; - }; - if ($@) - { - #Irssi::print("skipped in $channel (blacklist): $data"); - POSIX::_exit(0); - } - - $channel =~ s/^#//; - - my @igc = split( - /\s+/, - Irssi::settings_get_str('delicious_ignore_chan') - ); - for (@igc) { - s/^#//; - POSIX::_exit(0) if lc($_) eq lc($channel); - } - - my $del = Net::Delicious->new({ - user => $username, - pswd => $password, - }); - - my @posts = $del->posts({ tag => Irssi::settings_get_str('delicious_default_tag') }); - - my ($sec,$min,$hour,$mday,$mon,$year) = localtime(time); - $year += 1900; - $mon += 1; - - my $dt = sprintf('%04d-%02d-%02dT%02d:%02d:%02dZ', $year, $mon, $mday, $hour, $min, $sec); - - my @urls = URI::Find::Rule->in($data); - POSIX::_exit(0) unless (@urls); - - for my $url (@urls) { - $url = $url->[1]; - $url =~ s/\/*$// if (Irssi::settings_get_int('delicious_strip_trailing_slash')); - my $tags = Irssi::settings_get_str('delicious_default_tag') . ' ' . $channel . ' ' . $nick; - #my $text = sprintf('%04d-%02d-%02d %02d:%02d:%02d <%s> %s', $year, $mon, $mday, $hour, $min, $sec, $nick, $data); - my $text = sprintf('<%s> %s', $nick, $data); - - if (my ($post) = grep { $_->href eq $url } @posts) - { - my @tags = split(/\s+/, $post->tag); - if (not grep { $_ eq $channel } split(/\s+/, $post->tag)) - { - $tags = $post->tag . ' ' . $channel; - } - #$text = $post->extended . "\n" . $text; - } - - my $return = $del->add_post({ - url => $url, - description => $url, - extended => $text, - tags => $tags, - dt => $dt, - }); - } - POSIX::_exit(0); - } -} - -sub del_public -{ - my ($server, $data, $nick, $mask, $target) = @_; - post_to_delicious($target, $data, $nick); -} - -sub del_private -{ - my ($server, $data, $nick, $address) = @_; - if (Irssi::settings_get_int('delicious_post_privmsg') > 0) - { - post_to_delicious($server->{'nick'}, $data, $nick); - } -} - -sub del_own -{ - my ($server, $data, $target) = @_; - post_to_delicious($target, $data, $server->{'nick'}); -} - -sub del_topic -{ - my ($server, $target, $data, $nick, $mask) = @_; - post_to_delicious($target, $data, $nick); -} - - -Irssi::signal_add_last('message public', 'del_public'); -Irssi::signal_add_last('message private', 'del_private'); -Irssi::signal_add_last('message own_public', 'del_own'); -Irssi::signal_add_last('message topic', 'del_topic'); - -Irssi::print("deliciousurl $VERSION ready");