#!/usr/bin/perl

use DateTime;
use DateTime::TimeZone;
use DBI;
use DBD::mysql;

local ($buffer, @pairs, $pair, $name, $value, %FORM);
# Read in text
$ENV{'REQUEST_METHOD'} =~ tr/a-z/A-Z/;

if ($ENV{'REQUEST_METHOD'} eq "GET") {
$buffer = $ENV{'QUERY_STRING'};
}

# Split information into name/value pairs
@pairs = split(/&/, $buffer);

foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$value =~ tr/+/ /;
$value =~ s/%(..)/pack("C", hex($1))/eg;
$FORM{$name} = $value;
}

$first_name = $FORM{first_name};
$last_name = $FORM{last_name};
$blogp = $FORM{blogp};
$oneletter = substr( $first_name, 0, 1 );

$dt = DateTime->now; # same as ( epoch => time )

$dttz = DateTime::TimeZone->new( name => 'local' )->name();

$dt->set_time_zone( $dttz );

$year = $dt->year;
$month = $dt->month; # 1-12

$day = $dt->day; # 1-31

$dow = $dt->day_of_week; # 1-7 (Monday is 1)

$hour = $dt->hour; # 0-23
$minute = $dt->minute; # 0-59

$second = $dt->second; # 0-61 (leap seconds!)

$doy = $dt->day_of_year; # 1-366 (leap years)

$doq = $dt->day_of_quarter; # 1..

$qtr = $dt->quarter; # 1-4

$dmy = $dt->dmy('/'); # 06/12/2002

$hms = $dt->hms; # 14:02:29

$tt = "";
$cont = "";

print "Content-type:text/html\r\n\r\n";
print "<html>";
print "<head>";
print "<title>Hello - Second CGI Program</title>";
print "<script type=text/javascript>";
print " var ls='', ns='', qwr=''; ";
print " function zeroize(iinsf) { var insf=iinsf; var sep='/', i=0; while (insf.substring(i).substring(0,1) >= '0' && insf.substring(i).substring(0,1) <= '9') { i++; } sep=insf.substring(i).substring(0,1); ";
print " var arr=insf.split(sep); ";
print " if (eval('' + arr.length) >= 3) { ";
print " if (eval('' + arr[1].length) == 1) { insf=insf.replace(sep + arr[1] + sep, sep + '0' + arr[1] + sep); } ";
print " if (eval('' + arr[0].length) == 1) { insf='0' + insf; } ";
print " arr=insf.split(' ')[1].split(':'); ";
print " if (eval('' + arr.length) >= 3) { ";
print " if (insf.indexOf(' pm') != -1) { insf=insf.replace(' ' + arr[0].trim() + ':', ' ' + eval(12 + eval('' + arr[0].trim())) + ':').replace(' pm', ' '); arr=insf.split(' ')[1].split(':'); } ";
print " if (eval(-1 + eval('' + arr[1])) == eval('' + document.getElementById('mystime').innerHTML.split(':')[1])) { insf=insf.replace(':' + arr[1] + ':', ':' + document.getElementById('mystime').innerHTML.split(':')[1] + ':'); arr[1]='zz'; } ";
print " if (eval('' + arr[1].length) == 1) { insf=insf.replace(':' + arr[1] + ':', ':0' + arr[1] + ':'); } ";
print " if (eval('' + arr[0].trim().length) == 1) { insf=insf.replace(arr[0].trim() + ':', '0' + arr[0].trim() + ':'); } ";
print " } ";
print " } ";
print " return insf; ";
print " } ";
print " function loctime() { if (ls == '') { ";
print " qwr='' + Intl.DateTimeFormat().resolvedOptions().timeZone; ";
print " var d = new Date(); ";
print " d.toLocaleString('en-US', { timeZone: qwr }); ";
print " ns=document.getElementById('mystime').innerHTML.split(':')[2].split(' ')[0]; ";
print " ls=zeroize(('' + d.toLocaleString()).replace(',','')) + ' <a onclick=alert(qwr); style=cursor:pointer;text-decoration:underline;>GMT' + d.toString().split(' GMT')[1] + '</a>'; } if (!document.getElementById('mytime')) { setTimeout(loctime,1000); } else { ";
print " document.getElementById('mytime').innerHTML=ls.replace(':' + ls.split(':')[2].split(' ')[0] + ' ', ':' + ns + ' '); } ";
print " } ";
print "</script>";
print "</head>";
print "<body onload=setTimeout(loctime,1000);>";

if ($blogp == "") { $blogp = $first_name; } else { $oneletter = substr( $blogp, 0, 1 ); }

if (ord($oneletter) >= ord("0") && ord($oneletter) <= ord("9")){
# /*** mysql hostname ***/
$hostname = 'dbhost';

# /*** mysql username ***/
$username = 'username';

# /*** mysql ***/
$password = 'password';

$dbname = 'dbname';

$tname = 'table_name';
$hostname = "DBI:mysql:$dbname:$hostname";

$dbh = DBI->connect($hostname, $username, $password);

$sth = $dbh->prepare("SELECT post_title, post_content FROM $tname WHERE ID=?");

$sth->execute( $blogp );

#while ( @row = $sth->fetchrow_array ) {
while (($tt, $cont) = $sth->fetchrow_array()) {
print "<details id=myd><summary id=mys><h1><a target=_blank href='//www.rjmprogramming.com.au/ITblog/?p=$blogp'>$tt</a></h1></summary>$cont</details>\n";
# print "@row\n";
}
# }
}

print "</h4><br><br><iframe id=myif src='/hello_get.html' style='width:100%; height:1500px;'></iframe></body>";
print "</html>";

1;