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]); }
private function loadFromDb($locale, $group) { $labels = TranslationLabelQuery::create()->filterByLanguageCode($locale)->filterByFilename($group)->find()->toKeyValue('key', 'value'); $nestedLabels = Utility::nestedArray($labels, '.'); return $nestedLabels; }
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); } }); }