X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=util%2Fpo2php.php;h=881a9b2679fdb8f3f64afdf92e5b5af5a295714f;hb=e0cf2c5167f29efcd8923f40bade346fe44c4ef3;hp=c703172af76acedc30ab5d87928af5d8282e9090;hpb=4bee1859be5fbf46ecc19728a908e31b4e9b09b6;p=friendica.git diff --git a/util/po2php.php b/util/po2php.php index c703172af7..881a9b2679 100644 --- a/util/po2php.php +++ b/util/po2php.php @@ -1,7 +1,8 @@ \n\n"; @@ -38,15 +39,19 @@ function po2php_run($argv, $argc) { return str_replace('$','\$',$match[0]); } foreach ($infile as $l) { + $l = str_replace('\"', DQ_ESCAPE, $l); $len = strlen($l); if ($l[0]=="#") $l=""; if (substr($l,0,15)=='"Plural-Forms: '){ $match=Array(); preg_match("|nplurals=([0-9]*); *plural=(.*)[;\\\\]|", $l, $match); $cond = str_replace('n','$n',$match[2]); - $out .= 'function string_plural_select_' . $lang . '($n){'."\n"; + // define plural select function if not already defined + $fnname = 'string_plural_select_' . $lang; + $out .= 'if(! function_exists("'.$fnname.'")) {'."\n"; + $out .= 'function '. $fnname . '($n){'."\n"; $out .= ' return '.$cond.';'."\n"; - $out .= '}'."\n"; + $out .= '}}'."\n"; } @@ -54,7 +59,7 @@ function po2php_run($argv, $argc) { if ($k!="" && substr($l,0,7)=="msgstr "){ if ($ink) { $ink = False; $out .= '$a->strings["'.$k.'"] = '; } - if ($inv) { $inv = False; $out .= '"'.$v.'"'; } + if ($inv) { $inv = False; $out .= '"'.$v.'"'; } $v = substr($l,8,$len-10); $v = preg_replace_callback($escape_s_exp,'escape_s',$v); @@ -113,6 +118,7 @@ function po2php_run($argv, $argc) { if ($inv) { $inv = False; $out .= '"'.$v.'"'; } if ($k!="") $out .= $arr?");\n":";\n"; + $out = str_replace(DQ_ESCAPE, '\"', $out); file_put_contents($outfile, $out); }