Duke Leto
15 years ago
3 changed files with 102 additions and 5 deletions
@ -0,0 +1,85 @@ |
|||
#!/usr/bin/env perl -w |
|||
|
|||
# Copyright (C) 2008, Parrot Foundation. |
|||
# $Id: nopaste.pl 38612 2009-05-08 18:30:25Z Infinoid $ |
|||
|
|||
use 5.008; |
|||
use strict; |
|||
use warnings; |
|||
|
|||
use WWW::Mechanize; |
|||
use Getopt::Std; |
|||
use Pod::Usage; |
|||
use Data::Dumper; |
|||
|
|||
my $server = 'nopaste.snit.ch'; |
|||
my $url = "http://$server:8001/paste"; |
|||
my $opt = { |
|||
c => '#parrot', # channel |
|||
n => 'dukeleto', |
|||
t => undef, # title |
|||
}; |
|||
|
|||
getopt( 'c:n:t:', $opt ); |
|||
|
|||
pod2usage(2) unless defined $opt->{t}; |
|||
|
|||
|
|||
my $text; while(<>) { $text .= $_; } |
|||
my $mech = WWW::Mechanize->new( |
|||
cookie_jar => undef, |
|||
autocheck => 1, |
|||
); |
|||
|
|||
$mech->get( $url ); |
|||
|
|||
$mech->submit_form( |
|||
form_name => 'pasteForm', |
|||
fields => { |
|||
(defined $opt->{c} ? |
|||
(channel => $opt->{c}) : |
|||
() |
|||
), |
|||
nick => $opt->{n}, |
|||
summary => $opt->{t}, |
|||
paste => $text, |
|||
}, |
|||
button => 'Paste it', |
|||
); |
|||
|
|||
my @link = $mech->links; |
|||
print "Your paste can be found at ", $link[0]->url, "\n"; |
|||
|
|||
|
|||
=head1 NAME |
|||
|
|||
tools/dev/nopaste.pl - paste the contents of a file via a pastebot server |
|||
|
|||
=head1 SYNOPSIS |
|||
|
|||
nopaste.pl -t "TITLE" [ -c CHANNEL ] [ -n NAME ] [ FILENAME ] |
|||
|
|||
TITLE the title of the paste |
|||
CHANNEL the irc channel (defaults to #parrot) |
|||
NAME the username (defaults to username or 'someone') |
|||
FILENAME the name of the file to paste (defaults to STDIN) |
|||
|
|||
=head1 DESCRIPTION |
|||
|
|||
This program can be used to paste the contents of a file on a pastebot server |
|||
-- specifically, B<nopaste.snit.ch> -- for immediate linkage on an IRC channel -- |
|||
by default, B<#parrot>. |
|||
|
|||
=head1 AUTHOR |
|||
|
|||
Originally written by particle, with subsequent contributions to functionality |
|||
by LimbicRegion, paultcochrane and cotto. |
|||
|
|||
=cut |
|||
|
|||
# Local Variables: |
|||
# mode: cperl |
|||
# cperl-indent-level: 4 |
|||
# fill-column: 100 |
|||
# End: |
|||
# vim: expandtab shiftwidth=4: |
Loading…
Reference in new issue