From a3bdc51fdd8412820e00047ac8a61684771c8bbe Mon Sep 17 00:00:00 2001 From: Emil Williams Date: Thu, 15 May 2025 17:59:47 -0600 Subject: [PATCH] -- --- perl/Triple.pm | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/perl/Triple.pm b/perl/Triple.pm index 6a25d0d..cbb76d9 100644 --- a/perl/Triple.pm +++ b/perl/Triple.pm @@ -9,6 +9,7 @@ use Data::Dumper; use CGI; use FCGI; use Template; +use URI::Escape; # Internal use Secrets; @@ -38,6 +39,15 @@ our $template = Template->new({INCLUDE_PATH => 'tt'}); sub Triple::main { + sub parse_post { + my %form; + for my $pair (split /&/, $_[0]) { + my ($key, $val) = split /=/, $pair, 2; + $form{uri_unescape($key)} = uri_unescape($val // ''); + } + return %form; + } + my ($sitename, $version) = init(); my $request = FCGI::Request(); @@ -55,9 +65,10 @@ sub Triple::main { my $method = $ENV{'REQUEST_METHOD'} || ''; my $content_length = $ENV{'CONTENT_LENGTH'} || 0; my $content_type = $ENV{'CONTENT_TYPE'} || ''; + my $body = ''; my $status = ''; my $location; - my $body = ''; + if ($method eq 'POST') { syslog("info", "something like posting has occurred"); if ($content_length > 0) { @@ -69,6 +80,8 @@ sub Triple::main { print $fh "\r\n"; close $fh; + %post = parse_post($body); + $status = '302 Found'; $location = $vars->{"uri"}; } -- 2.39.5