Added PHP english date string support for default values and other in-text replacements

This commit is contained in:
Conner Harkness 2025-09-02 12:20:00 -06:00
parent b2366d909a
commit 8a68af7e06

View File

@ -21,6 +21,31 @@
$strSelection = urldecode($strSelection); $strSelection = urldecode($strSelection);
$strFileData = file_get_contents("{$strQueryDir}/{$strSelection}"); $strFileData = file_get_contents("{$strQueryDir}/{$strSelection}");
// Translate occurrences of {{ Date: next monday }} into yyyy-MM-dd format:
// Can be used in string literals or default values in comments!
preg_match_all(
"/\{\{\s*?Date\:\s*?(.*)\s*?\}\}/i",
$strFileData,
$varDateReplacements);
for ($i = 0; $i < count($varDateReplacements[0]); $i++)
{
try
{
$strMatch = $varDateReplacements[0][$i];
$strMatchSafe = preg_quote($strMatch);
$strDateString = $varDateReplacements[1][$i];
$strFileData = preg_replace(
"/{$strMatchSafe}/i",
date_create($strDateString)->format("Y-m-d"),
$strFileData);
}
catch (Exception $x) {}
}
//foreach ($varReplacements as $k => $v)
// $strFileData = preg_replace("/\{\{{$k}\}\}/i", $v, $strFileData);
// Get the inputs: // Get the inputs:
preg_match_all( preg_match_all(
"/declare\s+\@([A-Za-z0-9]{1,})\s+(.+)\s+=\s+\?;(\s+-- Default\:\s(.*))?/i", "/declare\s+\@([A-Za-z0-9]{1,})\s+(.+)\s+=\s+\?;(\s+-- Default\:\s(.*))?/i",
@ -128,7 +153,7 @@
<div class="navbar navbar-expand bg-primary navbar-dark d-print-none"> <div class="navbar navbar-expand bg-primary navbar-dark d-print-none">
<div class="container-fluid justify-content-between"> <div class="container-fluid justify-content-between">
<div class="d-inline-flex align-items-center"> <div class="d-inline-flex align-items-center">
<a class="navbar-brand" href="/"><?= $strTitle; ?></a> <a class="navbar-brand"><?= $strTitle; ?></a>
<a class="nav-item btn btn-outline-light me-2" onclick="fnShowPage('#page-input');"><i class="fa fa-fw fa-edit"></i> <span class="d-none d-lg-inline">Setup</span></a> <a class="nav-item btn btn-outline-light me-2" onclick="fnShowPage('#page-input');"><i class="fa fa-fw fa-edit"></i> <span class="d-none d-lg-inline">Setup</span></a>
@ -309,7 +334,7 @@
</div> </div>
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-sm table-bordered w-100" id="table"> <table class="table table-sm table-striped table-bordered w-100" id="table">
<thead> <thead>
<tr> <tr>
<?php foreach ($varColumns as $col): ?> <?php foreach ($varColumns as $col): ?>