コード例 #1
0
 public function getTranslation()
 {
     if (Input::has('languageCode') && !in_array(Input::get('languageCode'), $this->languageCodes)) {
         \App::abort(404, 'No Language given');
     }
     $languageCode = Input::get('languageCode', reset($this->languageCodes));
     $files = TranslationLabelQuery::create()->filterByLanguageCode(strtolower($languageCode))->getTotals();
     return View::make('translation.index', ['languageCode' => $languageCode, 'borrowerLanguages' => $this->borrowerLanguages, 'files' => $files]);
 }
コード例 #2
0
ファイル: Translator.php プロジェクト: Junyue/zidisha2
 private function loadFromDb($locale, $group)
 {
     $labels = TranslationLabelQuery::create()->filterByLanguageCode($locale)->filterByFilename($group)->find()->toKeyValue('key', 'value');
     $nestedLabels = Utility::nestedArray($labels, '.');
     return $nestedLabels;
 }
コード例 #3
0
 public function updateTranslations($filename, $languageCode, $data)
 {
     $translationLabels = TranslationLabelQuery::create()->filterByFilename($filename)->filterByLanguageCode($languageCode)->find();
     PropelDB::transaction(function ($con) use($translationLabels, $data) {
         foreach ($translationLabels as $translationLabel) {
             if (!isset($data[$translationLabel->getKey()])) {
                 continue;
             }
             $value = $data[$translationLabel->getKey()];
             if ($value) {
                 $translationLabel->setTranslated(true);
             }
             $translationLabel->setValue($value)->setUpdated(false);
             $translationLabel->save($con);
         }
     });
 }