diff --git a/js/Extensions.js b/js/Extensions.js index db57b98..b9d23c3 100644 --- a/js/Extensions.js +++ b/js/Extensions.js @@ -13,6 +13,20 @@ $.prototype.getCellText = function() return a; }; +String.prototype.includesAll = function(parts) +{ + var parent = this; + var parts = parts.split(" "); + var contains = true; + + parts.forEach((part, i) => { + if (!parent.toLowerCase().includes(part.toLowerCase())) + contains = false; + }); + + return contains; +}; + // Trigger downloading a table as CSV: $.prototype.exportCSV = function(options) { diff --git a/pages/run.php b/pages/run.php index 79d3842..005baf2 100644 --- a/pages/run.php +++ b/pages/run.php @@ -5,10 +5,23 @@ $strQueryDir = "files/sql"; - $varFiles = is_dir($strQueryDir)? scandir($strQueryDir) : []; - $varFiles = array_diff($varFiles, [".", ".."]); + // $varFiles = is_dir($strQueryDir)? scandir($strQueryDir) : []; + // $varFiles = array_diff($varFiles, [".", ".."]); + + function removeQueryDir(&$strInput) + { + global $strQueryDir; + $strInput = substr($strInput, strlen($strQueryDir) + 1); + } + + $strFind = shell_exec("find files/sql | grep -Ei \"\.sql$\""); + $varFiles = explode("\n", $strFind); + $varFiles = array_filter($varFiles); + + array_walk($varFiles, "removeQueryDir"); + + $strSelection = implode("/", Request::getArgs()); - $strSelection = Request::getArg(0); $varInputs = [[]]; $varRows = null; $strError = null; @@ -197,9 +210,7 @@