/** * Generate array with language translations. * * @param array $scope Translations scopes. * * @return string */ public function toTranslationsArray(array $scope = []) { $whereCondition = 'language_id = :language_id:'; if (!empty($scope)) { $whereCondition .= ' AND scope IN ("' . implode('","', $scope) . '")'; } $result = LanguageTranslation::getBuilder()->where($whereCondition, ['language_id' => $this->getId()])->getQuery()->execute(); $data = []; foreach ($result as $row) { $data[$row->scope][$row->original] = $row->translated; } $result = ['info' => 'PhalconEye Language Package', 'version' => PHALCONEYE_VERSION, 'date' => date('d-M-Y H:i'), 'name' => $this->name, 'language' => $this->language, 'locale' => $this->locale, 'content' => $data]; return $result; }
/** * Delete translation. * * @param int $lang Language identity. * @param int $id Translation identity. * * @return void|ResponseInterface * * @Get("/delete-item/{lang:[0-9]+}/{id:[0-9]+}", name="admin-languages-delete-item") */ public function deleteItemAction($lang, $id) { $item = LanguageTranslation::findFirst($id); if ($item) { $item->delete(); } if ($lang) { return $this->response->redirect(['for' => "admin-languages-manage", 'id' => $lang]); } return $this->response->redirect(['for' => "admin-languages"]); }