read())) {
if (is_file($d->path."/".$entry."/strings.php")){
$LANGS[] = $entry;
}
}
$d->close();
class A{
var $strings = Array();
}
function loadstrings($lang = NULL){
global $FRIENDIKA_PATH;
if (is_null($lang)) {
$path = $FRIENDIKA_PATH."/util/strings.php";
} else {
$path = $FRIENDIKA_PATH."/view/$lang/strings.php";
}
$a = new A();
include_once($path);
return $a->strings;
}
function savestrings($lang, $strings){
global $FRIENDIKA_PATH;
$path = $FRIENDIKA_PATH."/view/$lang/strings.php";
$f = fopen($path,"w");
fwrite($f, "<"); fwrite($f, "?php\n");
foreach($strings as $k=>$v){
$k=str_replace("'","\'", $k);
$k=str_replace("\\\\'","\'", $k);
$k=str_replace("\n","\\n", $k);
$k=str_replace("\r","\\r", $k);
$v=str_replace("'","\'", $v);
$v=str_replace("\\\\'","\'", $v);
$v=str_replace("\n","\\n", $v);
$v=str_replace("\r","\\r", $v);
fwrite( $f, '$a->strings[\''.$k.'\'] = \''. $v .'\';'."\n" );
#echo '$a->strings[\''.$k.'\'] = \''. $v .'\''."\n" ;
}
fwrite($f, "?"); fwrite($f, ">\n");
fclose($f);
}
function hexstr($hexstr) {
$hexstr = str_replace(' ', '', $hexstr);
$hexstr = str_replace('\x', '', $hexstr);
$retstr = pack('H*', $hexstr);
return $retstr;
}
function strhex($string) {
$hexstr = unpack('H*', $string);
return array_shift($hexstr);
}
echo "Translator
";
echo "Utility to translate string.php
file.";
echo " Need write permission to language file you want to modify";
echo "Installed languages:";
foreach($LANGS as $l){
echo "$l, ";
}
echo "
";
$strings['en'] = loadstrings();
if (isset($_GET['lang'])){
$lang = $_GET['lang'];
$strings[$lang] = loadstrings($lang);
$n1 = count($strings['en']);
$n2 = count($strings[$lang]);
echo "";
echo "Translate en to $lang
";
//echo "Translated $n2 over $n1 strings
";
echo "
";
if (isset($_POST['save'])){
echo "saving...";
foreach ($_POST as $k=>$v){
if ($k!="save" && $k!="from"){
$k=hexstr($k);
$strings[$lang][$k] = $v;
}
}
savestrings($lang, $strings[$lang]);
echo "ok.
";
}
if (!isset($_POST['from'])){
$from=0;
} else {
$from = $_POST['from'];
if ($_POST['save']=="Next")
$from += 10;
if ($_POST['save']=="Prev")
$from -= 10;
}
$count = count($strings['en']);
$len = 10;
if ($from+$len>$count) $len=$count-$from;
$thestrings = array_slice($strings['en'], $from, $len, true);
echo "";
}
?>