From e76b691e78e273226cba9284cb8cd22a423319ed Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Fri, 2 Aug 2013 17:23:25 -0500 Subject: bucky2 --- bucky2/cgi-bin/poetaster | 105 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100755 bucky2/cgi-bin/poetaster (limited to 'bucky2/cgi-bin/poetaster') diff --git a/bucky2/cgi-bin/poetaster b/bucky2/cgi-bin/poetaster new file mode 100755 index 0000000..29bbe3b --- /dev/null +++ b/bucky2/cgi-bin/poetaster @@ -0,0 +1,105 @@ +#!/usr/bin/perl +use lib "../lib"; +use Rest; +use Bucky::Session; +use Poetaster; + +my $session = new Bucky::Session; +my $q = $session->param('q'); +my $id = $session->param('id'); + +if ($id) + { + print header(); + print cache_get($id); + print form(); + print footer(); + } +elsif ($q) + { + print header(); + print poetast($q); + print form(); + print footer(); + } +else + { + print header(); + print form(); + print footer(); + } + +sub poetast + { + my ($q) = @_; + my $data; + if ($q =~ /^http/) + { + $data = Rest->new->rest_get_raw($q); + } + else + { + $data = $q; + } + $data =~ s/<(\/)?(b|i|strong|em)>/[$1$2]/g; + $data =~ s/<[^>]+>//g; + $data =~ s/\[//g; + $data =~ s/[\r\n]+/ /g; + $data =~ s/\s+/ /g; + $data =~ s/\. \. \. /... /g; + my $self = new Poetaster; + my $poem = $self->poem($data); + print "
$poem
"; + print sprintf("%0.1f kb", (length($poem)/1024)); + print "
"; + return; + } +sub poetast_cache_set + { + my ($data) = @_; + my $id; + return $id; + } +sub poetast_cache_get + { + my ($id) = @_; + my $data; + return $data; + } +sub header + { + my ($title) = @_; + if ($title) { $title = "Poetaster: $title" } + else { $title = "Poetaster"; } + return <<__HEADER__; +Content-type: text/html +Pragma: no-cache + + + +Poetaster + + + +
+__HEADER__ + } +sub form + { + return <<__FORM__; +Enter text or a URL: +
+
+ +
+__FORM__ + } +sub footer + { + return <<__FOOTER__; +
+ + +__FOOTER__ + } -- cgit v1.2.3-70-g09d2