<?php
+die("NOT USED!?");
+// see core_template code..
+
/**
* Pman_Admin_Translation:
}
- function get()
+ function get($module, $opts = Array())
{
+
+ if (!empty($module)) {
+ $this->init();
+ //DB_DataObject::debugLevel(1);
+ require_once 'Services/JSON.php';
+ $d = DB_DataObject::factory('translations');
+ $d->module = $module;
+ $d->selectAdd();
+ $d->selectAdd('distinct(tlang) as tlang');
+ header('Content-type: text/javascript');
+ $langs= $d->fetchAll('tlang');
+ foreach($langs as $lang) {
+ // output the translations strings file..
+
+
+ $this->loadOriginalStrings($module);
+
+ $data = $this->loadTranslateDB($lang,$module);
+
+ $j = new Services_JSON();
+ echo "_T.{$lang}= Roo.apply( _T.{$lang} || { }, " . $j->stringify($data, null, 4) . ");\n";
+
+ }
+ exit;
+
+ }
+
// load and parse json file containing all translations...
if (isset($_REQUEST['id'])) {
return $this->post();
$module = $_REQUEST['module'];
- $this->loadOriginalStrings($module); // what needs translating..
+ $this->loadOriginalStrings($module); // what needs translating..
$ff = $this->bootLoader;
if (empty($ff->Pman['public_cache_dir'])) {
foreach($this->original as $k=>$ar) {
foreach($ar as $tr=>$trv) {
// $hint = isset($hints[$tr]) ? $hints[$tr] : '';
- $key = md5($k.'-'.$tr);
+ $key = $trv;
$ret[] = array(
'id' => $lang.'/'.$key,
'msum' => $key,
}
- function post()
+ function post($v)
{
// since this can handle errors better.!!?
$info = $this->moduleJavascriptFilesInfo($module);
//print_r($info);
- $tfile =$info->basedir . '/'. $info->translation_data;
+
+
+
+ $this->original = array();
+ $tfile = $info->basedir . '/'. $info->translation_data;
//var_dump($tfile);
- if (empty($tfile) || !file_exists($tfile)) {
- return array();
- }
+ //if (empty($tfile) || !file_exists($tfile)) {
+
+ foreach($info->filesmtime as $f =>$mt) {
+ $bjs = preg_replace('/\.js$/','.bjs', $f);
+ if (!file_exists($bjs)) {
+ continue;
+ }
+ $jd = json_decode(file_get_contents($bjs));
+ if (empty($jd->strings)) {
+ continue;
+ }
+ foreach($jd->strings as $tkey => $val) {
+ $line = array(
+ 'module' => $module,
+ 'tfile' => preg_replace('/\.js$/','', basename($bjs)),
+ )
+
+
+ }
+
+ $this->original[str_replace('.bjs', '', basename($bjs)) ] = array_flip((array)$jd->strings);
+ }
+
+ file_put_contents($tfile, json_encode($this->original));
+
+
+ //}
- require_once 'Services/JSON.php';
- $j = new Services_JSON();
- $this->original = (array) $j->decode('{'. file_get_contents($tfile).'}');
+ print_R($this->original);exit;
+
+
+ $this->original = (array) json_decode( file_get_contents($tfile) );
ksort($this->original);
$this->originalKeys = array();
$d = DB_DataObject::factory('translations');
$d->module = $module;
$d->tlang = $lang;
-
+ $d->whereAdd('LENGTH(tval) > 0');
$ret = array();
if ($d->count()) {
if (!isset($this->originalKeys[$k])) {
continue;
}
+
// it's current..
$this->saveTranslateDB($lang, $module, $this->originalKeys[$k], $k, $v);
$ret[$k] = $v;
//$this->writeTrans($lang);
}
-
+
}
\ No newline at end of file