Mercurial > hg > mgallery
comparison 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 |
comparison
equal
deleted
inserted
replaced
321:f07e3d79c421 | 322:2f4e3e458714 |
---|---|
26 // | 26 // |
27 // Constants for different value types | 27 // Constants for different value types |
28 // | 28 // |
29 define("MG_STR" , 1); | 29 define("MG_STR" , 1); |
30 define("MG_STR_LC" , 2); | 30 define("MG_STR_LC" , 2); |
31 define("MG_INT" , 3); | 31 define("MG_STR_ARRAY" , 3); |
32 define("MG_DVA" , 4); | 32 define("MG_INT" , 4); |
33 define("MG_BOOL" , 5); | 33 define("MG_DVA" , 5); |
34 define("MG_FLAGS" , 6); | 34 define("MG_BOOL" , 6); |
35 define("MG_DATE" , 7); | 35 define("MG_FLAGS" , 7); |
36 define("MG_DATE" , 8); | |
36 | 37 |
37 | 38 |
38 define("yes" , 1); | 39 define("yes" , 1); |
39 define("no" , 0); | 40 define("no" , 0); |
40 | 41 |
52 if (count($tmp) > 0) | 53 if (count($tmp) > 0) |
53 return implode("/", array_splice($tmp, 0, -1))."/"; | 54 return implode("/", array_splice($tmp, 0, -1))."/"; |
54 else | 55 else |
55 return $path; | 56 return $path; |
56 } | 57 } |
58 | |
57 | 59 |
58 // | 60 // |
59 // Configuration settings and their default values | 61 // Configuration settings and their default values |
60 // | 62 // |
61 $mgDefaults = [ | 63 $mgDefaults = [ |
77 | 79 |
78 "title_prefix" => [MG_STR, ""], | 80 "title_prefix" => [MG_STR, ""], |
79 "title_sep" => [MG_STR, " - "], | 81 "title_sep" => [MG_STR, " - "], |
80 "page_info" => [MG_STR, "Powered by <b>MGallery ".$mgProgVersion."</b> © Copyright ".$mgProgCopyright], | 82 "page_info" => [MG_STR, "Powered by <b>MGallery ".$mgProgVersion."</b> © Copyright ".$mgProgCopyright], |
81 | 83 |
82 "css" => [MG_STR, NULL], | 84 "css" => [MG_STR_ARRAY, NULL], |
83 "js_file" => [MG_STR, NULL], | 85 "js_file" => [MG_STR_ARRAY, NULL], |
84 "urchin_file" => [MG_STR, FALSE], | 86 "urchin_file" => [MG_STR_ARRAY, FALSE], |
85 | 87 |
86 "global_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS | MGF_CAPTIONS, &$mgGFlags], | 88 "global_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS | MGF_CAPTIONS, &$mgGFlags], |
87 "image_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS, &$mgGFlags], | 89 "image_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS, &$mgGFlags], |
88 "album_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS, &$mgGFlags], | 90 "album_flags" => [MG_FLAGS, MGF_JAVASCRIPT | MGF_BREADCRUMBS, &$mgGFlags], |
89 | 91 |
102 | 104 |
103 "backend" => [MG_STR_LC, "php"], | 105 "backend" => [MG_STR_LC, "php"], |
104 "sql_db" => [MG_STR, NULL], | 106 "sql_db" => [MG_STR, NULL], |
105 "sql_username" => [MG_STR, ""], | 107 "sql_username" => [MG_STR, ""], |
106 "sql_password" => [MG_STR, ""], | 108 "sql_password" => [MG_STR, ""], |
107 "sql_options" => [MG_STR, []], | 109 "sql_options" => [MG_STR_ARRAY, []], |
108 ]; | 110 ]; |
109 | 111 |
110 | 112 |
111 function mgDebug($msg) | 113 function mgDebug($msg) |
112 { | 114 { |
352 | 354 |
353 $str = str_replace("%".$i, $vtmp, $str); | 355 $str = str_replace("%".$i, $vtmp, $str); |
354 } | 356 } |
355 | 357 |
356 return $str; | 358 return $str; |
357 } | |
358 | |
359 | |
360 function mgGetDValStr($mdef, $val) | |
361 { | |
362 switch ($mdef[0]) | |
363 { | |
364 case MG_STR: | |
365 if (is_array($val)) | |
366 return implode(", ", $val); | |
367 else | |
368 return "\"".$val."\""; | |
369 | |
370 case MG_STR_LC: | |
371 if (is_array($val)) | |
372 return implode(", ", array_map('strtolower', $val)); | |
373 else | |
374 return "\"".strtolower($val)."\""; | |
375 | |
376 case MG_BOOL: | |
377 return $val ? "yes" : "no"; | |
378 | |
379 case MG_FLAGS: | |
380 { | |
381 $mstr = []; | |
382 foreach ($mdef[2] as $vkey => $vval) | |
383 { | |
384 if ($val & $vval) | |
385 $mstr[] = $vkey; | |
386 } | |
387 return implode($mstr, " | "); | |
388 } | |
389 case MG_INT : | |
390 default : return (string) $val; | |
391 } | |
392 } | 359 } |
393 | 360 |
394 | 361 |
395 function mgLogSQLError($dbh, $sql) | 362 function mgLogSQLError($dbh, $sql) |
396 { | 363 { |