<?php
// prepend.php
// RJM Programming
// October, 2025
// Message Board helper to talk_about_it.php

function server_remote_addr() {
    $rma = $_SERVER['REMOTE_ADDR'];
    //$ua = strtolower($_SERVER['HTTP_USER_AGENT']);
    // you can add different browsers with the same way ..
    if (1 == 2) {
    if(preg_match('/(chromium)[ \/]([\w.]+)/', $ua))
            $rma = '000000'.$rma;
    elseif(preg_match('/(chrome)[ \/]([\w.]+)/', $ua))
            $rma = '00000'.$rma;
    elseif(preg_match('/(safari)[ \/]([\w.]+)/', $ua))
            $rma = '0000'.$rma;
    elseif(preg_match('/(opera)[ \/]([\w.]+)/', $ua))
            $rma = '000'.$rma;
    elseif(preg_match('/(msie)[ \/]([\w.]+)/', $ua))
            $rma = '00'.$rma;
    elseif(preg_match('/(mozilla)[ \/]([\w.]+)/', $ua))
            $rma = '0'.$rma;
    }
    return str_replace(':','_',str_replace('.','_',$rma));
}

$myip=server_remote_addr();
$regarding=$myip;
if (isset($_POST['nickname'])) {
    $regarding=str_replace('+', ' ', urldecode($_POST['nickname']));
} else if (isset($_GET['nickname'])) {
    $regarding=str_replace('+', ' ', urldecode($_GET['nickname']));
}

$groupis="";
$grpsuff="";
$grouptb="";
$ntry=0;
$sback="";

if (isset($_POST['groupis'])) {
  $groupis=str_replace('+', ' ', urldecode($_POST['groupis']));
  $grouptb="<input type=hidden id=groupis name=groupis value='" . $groupis . "'></input>";
  $regarding.=" group is " . $groupis;
  $grpsuff="_" . base64_encode($groupis);
  if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_" . $ntry . ".txt")) {
   $sback=shell_exec('fgrep -l "' . $groupis . '" ' . $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_*.txt");
  }
  if (strpos($sback, "talktoday_") === false) {
  while (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_" . $ntry . ".txt")) {
   $ntry++;
  }
  $grpsuff="_" . $ntry;
  file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday" . $grpsuff . ".txt", $groupis . "\n");
  } else {
   $grpsuff=explode('.', explode(':', explode("talktoday", $sback)[1])[0])[0];
  }
} else if (isset($_GET['groupis'])) {
  $groupis=str_replace('+', ' ', urldecode($_GET['groupis']));
  $grouptb="<input type=hidden id=groupis name=groupis value='" . $groupis . "'></input>";
  $regarding.=" group is " . $groupis;
  $grpsuff="_" . base64_encode($groupis);
  if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_" . $ntry . ".txt")) {
   $sback=shell_exec('fgrep -l "' . $groupis . '" ' . $_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_*.txt");
  }
  if (strpos($sback, "talktoday_") === false) {
  while (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday_" . $ntry . ".txt")) {
   $ntry++;
  }
  $grpsuff="_" . $ntry;
  file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday" . $grpsuff . ".txt", $groupis . "\n");
  } else {
   $grpsuff=explode('.', explode(':', explode("talktoday", $sback)[1])[0])[0];
  }
}

$prerel="";
if (file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday" . $grpsuff . ".txt")) {
  $prerel=str_replace("~~", "\n", file_get_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday" . $grpsuff . ".txt"));
}
if (isset($_POST['msg'])) {
  if (strlen($_POST['msg']) > 0) {
   date_default_timezone_set("UTC");
   $localtime_assoc = localtime(time(), false);
   $twoday=substr(('0' . $localtime_assoc[3]), -2, 2);
   $twomon=substr(('0' . (1 + $localtime_assoc[4])), -2, 2);
   $twohour=substr(('0' . $localtime_assoc[2]), -2, 2);
   $twomin=substr(('0' . $localtime_assoc[1]), -2, 2);
   $recpref="";
   if (str_replace("~~", "\n", str_replace('+', ' ', urldecode($_POST['msg']))) != str_replace('+', ' ', urldecode($_POST['msg']))) {
     $recpref="\n";
   }
   if (isset($_POST['nickname'])) {
    $regarding=str_replace('+', ' ', urldecode($_POST['nickname']));
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talk_today_" . $myip . ".txt", str_replace('+', ' ', urldecode($_POST['nickname'])) . " says at " . $twoday . '/' . $twomon . '/' . (1900 + $localtime_assoc[5]) . ' ' . $twohour . ':' . $twomin . " GMT ... " . $recpref . str_replace("~~", "\n", str_replace('+', ' ', urldecode($_POST['msg']))));
   } else {
    file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talk_today_" . $myip . ".txt", $myip . " says at " . $twoday . '/' . $twomon . '/' . (1900 + $localtime_assoc[5]) . ' ' . $twohour . ':' . $twomin . " GMT ... " . $recpref . str_replace("~~", "\n", str_replace('+', ' ', urldecode($_POST['msg']))));
   }
  }
}
$tahtml="<textarea style=width:95%;height:500px; id=myta value=''></textarea>";
$reltalk="";
$it = new GlobIterator($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talk_today*.txt");
$last2mis = 9020;
foreach ( $it as $file ) {
    $reltalk.=file_get_contents($file) . "\n";
    if ((time() - $file->getMTime()) < $last2mis) {
      unlink($file);
    }
}

if ($reltalk != "") {
  $prerel.="\n" . $reltalk . "\n";
}

$bigprerel=$prerel;
if ($groupis != "") {
  if (strpos($prerel, $groupis) !== false) {
    $prerel=substr($prerel, strlen($groupis));
  }
}

if ($prerel != "") {
 if ($reltalk != "") {
  $tahtml="<textarea data_refresh=y data-name=myta" . $myip . " style=background-color:yellow;width:95%;height:400px; id=myta value=''>" . $prerel . "</textarea>";
  file_put_contents($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . ".." . DIRECTORY_SEPARATOR . "talktoday" . $grpsuff . ".txt", $bigprerel);
 } else {
  $tahtml="<textarea data-name=myta" . $myip . " style=background-color:yellow;width:95%;height:400px; id=myta value=''>" . $prerel . "</textarea>";
 }
}

?>