# HG changeset patch # User Matti Hamalainen # Date 1464188553 -10800 # Node ID 1e2b55775a842b86a346507b17f2231762693449 # Parent e58292065b01a87a9c8cda952150268bd2bf863d Begin implementation of translated caption/title support. diff -r e58292065b01 -r 1e2b55775a84 mgallery.inc.php --- a/mgallery.inc.php Wed May 25 18:01:27 2016 +0300 +++ b/mgallery.inc.php Wed May 25 18:02:33 2016 +0300 @@ -263,8 +263,23 @@ } +function mgGetTrans($val, $che = FALSE) +{ + global $pageLang; + + if (is_array($val)) + $str = array_key_exists($pageLang, $val) ? $val[$pageLang] : reset($val); + else + $str = $val; + + return $che ? chentities($str) : $str; +} + + function mgGetArr($data, $skeys, $sfmt1 = "%1", $sfmt2 = "", $func = NULL) { + global $pageLang; + if (!is_array($skeys)) $skeys = array($skeys); @@ -276,11 +291,15 @@ for ($i = 1; $i <= sizeof($skeys); $i++) { $val = $data[$skeys[$i - 1]]; + if (is_array($val)) + $vtmp = array_key_exists($pageLang, $val) ? $val[$pageLang] : reset($val); + else + $vtmp = $val; if (is_callable($func)) - $val = call_user_func($func, $val); + $val = call_user_func($func, $vtmp); - $str = str_replace("%".$i, $val, $str); + $str = str_replace("%".$i, $vtmp, $str); } return $str; diff -r e58292065b01 -r 1e2b55775a84 mgallery.php --- a/mgallery.php Wed May 25 18:01:27 2016 +0300 +++ b/mgallery.php Wed May 25 18:02:33 2016 +0300 @@ -210,8 +210,10 @@ echo " ". - "\"".chentities($data["caption"])."\"\n". - "
".chentities($data["caption"])."
\n"; + "\"".\n". + "
".mgGetTrans($data["caption"], TRUE)."
\n"; } if ($galUseTables) @@ -262,7 +264,8 @@ { return "". - chentities($pdata["caption"]).""; + mgGetTrans($pdata["caption"], TRUE). + ""; } @@ -365,7 +368,7 @@ $naviFlags = mgGetSetting("image_navigation"); $data = $galEntries[$galImage]; - $pageTitle = $galTitlePrefix.$galTitleSep.$galData["caption"]." - ".$galImage; + $pageTitle = $galTitlePrefix.$galTitleSep.mgGetTrans($galData["caption"])." - ".$galImage; cmPrintPageHeader($pageTitle); echo "
0) + if (isset($galData["header"]) && strlen($gheader = mgGetTrans($galData["header"])) > 0) { // Translate relative URLs in header, if needed $baseURL = mgGetSetting("image_url"); @@ -535,7 +538,7 @@ } return "href=\"".$mstmp."\""; }, - $galData["header"]); + $gheader); echo "
".$headerText."
\n"; }