diff --git a/classes/Modules/FiskalyApi/Service/FiskalyTransferService.php b/classes/Modules/FiskalyApi/Service/FiskalyTransferService.php index 46d73541..df25c880 100644 --- a/classes/Modules/FiskalyApi/Service/FiskalyTransferService.php +++ b/classes/Modules/FiskalyApi/Service/FiskalyTransferService.php @@ -75,7 +75,7 @@ class FiskalyTransferService * @throws Exception * @return Transaction * - * @depracated + * @deprecated */ public function createTransactionFromSingleJournal( int $cashierId, @@ -270,7 +270,7 @@ class FiskalyTransferService * @throws Exception * @return Transaction * - * @depracated + * @deprecated */ public function transferPosSession($posSession): Transaction { diff --git a/phpwf/plugins/class.user.php b/phpwf/plugins/class.user.php index 29a4954e..ef19fc4b 100644 --- a/phpwf/plugins/class.user.php +++ b/phpwf/plugins/class.user.php @@ -474,9 +474,12 @@ class User return $this->cache[$cacheKey]['name']; } - + + + /** * @return array + * @deprecated Eine Liste der verfügbaren Sprachen sollte IMHO zentral im Übersetzer generiert werden. */ public function GetSprachen() { @@ -505,15 +508,20 @@ class User return $defaultLanguages; } - + + + /** - * @return string + * Die vom User gewählte Sprache zurückgeben. + * Null, falls die Sprache nicht erkannt wird. + * + * @return string|null */ - public function GetSprache() + public function GetSprache(): string|null { - $sprachen = $this->GetSprachen(); - - return reset($sprachen); + return \Xentral\Components\I18n\Bootstrap::findLanguage( + strval($this->GetField('sprachebevorzugen')) + )[Xentral\Components\I18n\Iso639\Key::DEFAULT]; } /** diff --git a/www/lib/class.erpapi.php b/www/lib/class.erpapi.php index e45f32a5..44ed50c8 100644 --- a/www/lib/class.erpapi.php +++ b/www/lib/class.erpapi.php @@ -12131,14 +12131,14 @@ function SendPaypalFromAuftrag($auftrag, $test = false) $this->app->Tpl->Add($target, $html); } - /**@deprected**/ + /**@deprecated**/ function HelpIcon() { $module = $this->app->Secure->GetGET("module"); $action = $this->app->Secure->GetGET("action"); } - /**@deprected**/ + /**@deprecated**/ function PrinterIcon() { // $this->app->Tpl->Add('TABSPRINT'," "); @@ -13856,7 +13856,7 @@ function SendPaypalFromAuftrag($auftrag, $test = false) } } - /**@depreacated */ + /**@deprecated */ function CheckSamePage() { $id = $this->app->Secure->GetGET("id"); @@ -13868,7 +13868,7 @@ function SendPaypalFromAuftrag($auftrag, $test = false) } /** - * @depreacated + * @deprecated * @refactor Artikel Modul */ function SeitenSperrAuswahl($ueberschrift,$meldung) @@ -13911,7 +13911,7 @@ $( this ).dialog( "close" ); '); } -/**@depreacated */ +/**@deprecated */ function SeitenSperrInfo($meldung) { $this->app->Tpl->Set('SPERRMELDUNG', '$("a#inline").fancybox({ @@ -27759,7 +27759,7 @@ function Firmendaten($field,$projekt="") return $ret; } - /** @depracated */ + /** @deprecated */ function GetPrioTicketSelect($prio) { $prios = array('4'=>'niedrig','3'=>'normal','2'=>'hoch'); diff --git a/www/pages/firmendaten.php b/www/pages/firmendaten.php index dbd7ffc9..86f316e5 100644 --- a/www/pages/firmendaten.php +++ b/www/pages/firmendaten.php @@ -2635,10 +2635,16 @@ class Firmendaten { } return $out; } - + + + /** - * Liefert einen Array aus Strings zurück. Immer mindestens 'deutsch' enthalten + * Liefert einen Array aus Strings zurück. Immer mindestens 'deutsch' enthalten. + * * @return array + * @todo Sollte eventuell zusammengelegt oder in den Übersetzer verschoben werden. + * @see \Firmendaten::getLanguages() + * @deprecated */ private function getLanguages(){ diff --git a/www/pages/welcome.php b/www/pages/welcome.php index 9c1d91ed..5d8dbd2a 100644 --- a/www/pages/welcome.php +++ b/www/pages/welcome.php @@ -2819,7 +2819,19 @@ $this->app->Tpl->Add('TODOFORUSER',"".$tmp[$i]['aufgabe']. header('Location: '.$_SERVER['HTTP_REFERER']); exit; } - + + + + /** + * Diese Funktion holt die Sprache von den Firmendaten, falls keine Sprache in $fromPost übergeben wurde. + * Sie wurde nur verwendet, um eine Vorgabe im sprachebevorzugen-SELECT beim Benutzer zu erzeugen. + * Das wird jetzt anders gelöst. + * + * @param $fromPost + * + * @return array|mixed|string|null + * @deprecated Nicht mehr benötigt + */ private function getCurrentDefaultLanguage($fromPost){ if(empty($fromPost)){ @@ -2831,29 +2843,43 @@ $this->app->Tpl->Add('TODOFORUSER',"".$tmp[$i]['aufgabe']. } return $fromPost; } - + + + /** - * Liefert einen String aus HTML-Optionen zurück - * @param string $fromPost + * Liefert einen String aus HTML-Select-Optionen zurück für die Sprachauswahl beim Benutzer. + * + * @param string|null $userPreferredLanguage Gewählte Sprache von den Usereinstellungen + * * @return string */ - private function languageSelectOptions($fromPost=''){ - - $select = $this->getCurrentDefaultLanguage($fromPost); - - $out = ""; - $sprachen = $this->getLanguages(); - - foreach($sprachen as $sprache) { - $selected = (($select==$sprache) ? 'selected' : ''); - $out .= ""; + private function languageSelectOptions(string|null $userPreferredLanguage='') { + $select=\Xentral\Components\I18n\Bootstrap::findLanguage(strval($userPreferredLanguage))[Xentral\Components\I18n\Iso639\Key::DEFAULT]; + if(empty($select)) { + /** @var \Xentral\Components\I18n\Localization $localization */ + $localization=$this->app->Container->get('Localization'); + $select=$localization->getLanguage(); + } + $out = ''; + foreach ($this->getLanguages() as $sprache) { + if($language=\Xentral\Components\I18n\Bootstrap::findLanguage($sprache)) { + $selected = (($select == $language[Xentral\Components\I18n\Iso639\Key::DEFAULT]) ? ' selected="selected"' : ''); + $out .= ""; + } } return $out; + } - + + + /** - * Liefert einen Array aus Strings zurück. Immer mindestens 'deutsch' enthalten + * Liefert einen Array aus Strings zurück. Immer mindestens 'deutsch' enthalten. + * * @return array + * @todo Sollte eventuell zusammengelegt oder in den Übersetzer verschoben werden. + * @see \Firmendaten::getLanguages() + * @deprecated */ private function getLanguages(){