adds the translation of the beschreibung and the buttontext in the Ampel_model and not in the Ampel controller

This commit is contained in:
SimonGschnell
2024-08-02 11:00:11 +02:00
parent 1d4f03e3f1
commit e6ba291549
3 changed files with 17 additions and 29 deletions
@@ -91,7 +91,7 @@ class Ampeln extends FHCAPI_Controller
$zugeteilt = $this->getDataOrTerminateWithError($zugeteilt);
if($zugeteilt) $userAmpeln[] = $this->translateAmpel($ampel);
if($zugeteilt) $userAmpeln[] = $ampel;
}
}
@@ -150,33 +150,7 @@ class Ampeln extends FHCAPI_Controller
}
//------------------------------------------------------------------------------------------------------------------
// Private methods
/**
* translate ampel description and button text
* @access private
*
*/
public function translateAmpel($ampel){
// fetch user language
$userLanguage = getUserLanguage();
$userLanguage = $this->SpracheModel->loadWhere(["sprache" => $userLanguage]);
$userLanguage = $this->getDataOrTerminateWithError($userLanguage)[0]->index - 1; // why does the index start at 1?
// translate the ampel description and button text
if(isset($ampel->beschreibung) && count($ampel->beschreibung)>=($userLanguage+1))
$ampel->beschreibung = $ampel->beschreibung[$userLanguage];
if(isset($ampel->buttontext) && count($ampel->buttontext)>=($userLanguage+1))
$ampel->buttontext = $ampel->buttontext[$userLanguage];
return $ampel;
}
}
+2
View File
@@ -94,6 +94,8 @@ class DB_Model extends CI_Model
$this->load->library('UDFLib');
// Loads the logs library
$this->load->library('LogLib');
}
// ------------------------------------------------------------------------------------------
+14 -2
View File
@@ -20,9 +20,12 @@ class Ampel_model extends DB_Model
*/
public function active($email = false)
{
$userLanguage = getUserLanguage();
$parametersArray = null;
$query = '
SELECT *
SELECT *, beschreibung[('.$this->getLanguageIndex($this->escape($userLanguage)).')], buttontext[('. $this->getLanguageIndex($this->escape($userLanguage)).')]
FROM public.tbl_ampel
WHERE';
@@ -142,6 +145,7 @@ class Ampel_model extends DB_Model
function alleAmpeln($uid){
$userLanguage = getUserLanguage();
$zugeteile_ampeln = [];
@@ -154,7 +158,7 @@ class Ampel_model extends DB_Model
$benutzerStartDate = $datum->mktime_fromdate(date(current(getData($benutzerStartDate))->insertamum));
$allAmpeln = $this->execReadOnlyQuery("
SELECT * FROM
SELECT *, beschreibung[('.$this->getLanguageIndex($userLanguage).')], buttontext[('.$this->getLanguageIndex($userLanguage).')] FROM
public.tbl_ampel");
if(isError($allAmpeln)) return error(getError($allAmpeln));
@@ -202,4 +206,12 @@ class Ampel_model extends DB_Model
return success($zugeteile_ampeln);
}
private function getLanguageIndex($userLanguage)
{
return "
SELECT index
FROM public.tbl_sprache
WHERE sprache = " . $userLanguage;
}
}