X-Git-Url: https://git.treefish.org/wirbrennen/flipacoin.git/blobdiff_plain/5142d99463fe7610331756f48f00b7e5216f98d5..refs/heads/master:/flipacoin.cgi?ds=inline diff --git a/flipacoin.cgi b/flipacoin.cgi index 3c35620..cba07b1 100755 --- a/flipacoin.cgi +++ b/flipacoin.cgi @@ -15,10 +15,28 @@ my $flippedcoinsindb=0; my $template; +sub setprotocolparam { + { + no warnings 'uninitialized'; + if( length $ENV{HTTPS} ) { + $template->param(PROTOCOL => "https"); + } + else { + $template->param(PROTOCOL => "http"); + } + } +} + sub printpage { $template->param(COINLIFETIME => $COINLIFETIME); $template->param(FLIPPEDCOINSINDB => $flippedcoinsindb); $template->param(COINSINDB => $coinsindb); + + my $rootloc = $ENV{SCRIPT_FILENAME}; + $rootloc =~ s/$ENV{DOCUMENT_ROOT}//g; + $rootloc =~ s/\/[^\/]*$//g; + $template->param( ROOTURL => $ENV{HTTP_HOST} . $rootloc ); + print "Content-type: text/html\n\n", $template->output; } @@ -85,7 +103,7 @@ elsif ( length($requestedcoinid) == 0 && $requestedaction eq "create" ) { $template = HTML::Template->new(filename => 'created.html'); $template->param(NEWCOINID => $newcoinid); - $template->param(HTTP_HOST => $ENV{HTTP_HOST}); + setprotocolparam(); } elsif ( length($requestedcoinid) > 0 ) { if ( ! exists $coins_db{$requestedcoinid} ) { @@ -98,8 +116,8 @@ elsif ( length($requestedcoinid) > 0 ) { $template = HTML::Template->new(filename => 'usecoin.html'); $template->param(REQUESTEDCOINID => $requestedcoinid); - $template->param(HTTP_HOST => $ENV{HTTP_HOST}); $template->param(COINCREATIONTIME => localtime($coininfo[0]).""); + setprotocolparam(); if ( $coininfosize == 1 && $requestedaction eq "" ) { $template->param(STATUS_NOTYETFLIPPED => 1);