Mercurial > hg > mgallery
diff mgallery.inc.php @ 322:2f4e3e458714
Improve configuration handling, and add "string array" configuration item type.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Thu, 09 Apr 2020 11:55:08 +0300 |
parents | 9638512be261 |
children | d598b2320878 |
line wrap: on
line diff
--- a/mgallery.inc.php Thu Apr 09 10:13:45 2020 +0300 +++ b/mgallery.inc.php Thu Apr 09 11:55:08 2020 +0300 @@ -28,11 +28,12 @@ // define("MG_STR" , 1); define("MG_STR_LC" , 2); -define("MG_INT" , 3); -define("MG_DVA" , 4); -define("MG_BOOL" , 5); -define("MG_FLAGS" , 6); -define("MG_DATE" , 7); +define("MG_STR_ARRAY" , 3); +define("MG_INT" , 4); +define("MG_DVA" , 5); +define("MG_BOOL" , 6); +define("MG_FLAGS" , 7); +define("MG_DATE" , 8); define("yes" , 1); @@ -55,6 +56,7 @@ return $path; } + // // Configuration settings and their default values // @@ -79,9 +81,9 @@ "title_sep" => [MG_STR, " - "], "page_info" => [MG_STR, "Powered by <b>MGallery ".$mgProgVersion."</b> © Copyright ".$mgProgCopyright], - "css" => [MG_STR, NULL], - "js_file" => [MG_STR, NULL], - "urchin_file" => [MG_STR, FALSE], + "css" => [MG_STR_ARRAY, NULL], + "js_file" => [MG_STR_ARRAY, NULL], + "urchin_file" => [MG_STR_ARRAY, FALSE], "global_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS | MGF_CAPTIONS, &$mgGFlags], "image_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS, &$mgGFlags], @@ -104,7 +106,7 @@ "sql_db" => [MG_STR, NULL], "sql_username" => [MG_STR, ""], "sql_password" => [MG_STR, ""], - "sql_options" => [MG_STR, []], + "sql_options" => [MG_STR_ARRAY, []], ]; @@ -357,41 +359,6 @@ } -function mgGetDValStr($mdef, $val) -{ - switch ($mdef[0]) - { - case MG_STR: - if (is_array($val)) - return implode(", ", $val); - else - return "\"".$val."\""; - - case MG_STR_LC: - if (is_array($val)) - return implode(", ", array_map('strtolower', $val)); - else - return "\"".strtolower($val)."\""; - - case MG_BOOL: - return $val ? "yes" : "no"; - - case MG_FLAGS: - { - $mstr = []; - foreach ($mdef[2] as $vkey => $vval) - { - if ($val & $vval) - $mstr[] = $vkey; - } - return implode($mstr, " | "); - } - case MG_INT : - default : return (string) $val; - } -} - - function mgLogSQLError($dbh, $sql) { return mgError("SQL error '".implode("; ", $dbh->errorInfo())."' in statement: \"".$sql."\"");