Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.
- Links zu: Aktiven | Unbeantworteten
#26 12. Januar 2013 19:32
- NaN
- Moderator

- Ort: Halle (Saale)
- Registriert: 09. November 2010
- Beiträge: 4.058
Re:
Dies passiert, da andere Skripte in verschiedenen Threads des selben Prozesses zur selben Zeit prozessweit die Locale-Einstellungen mittels setlocale() ändern.
Ah, okay. Das sagt eigentlich schon alles
Wie sieht es mit dieser Möglichkeit aus?
Module: GBFilePicker, AdvancedContent, FEUMailer
Plugins: AjaxTools, XajaxTools
Sicherheit: Beispiel .htaccess-Datei
Offline
#27 12. Januar 2013 19:59
- czarnowski
- arbeitet mit CMSMS
- Registriert: 18. Oktober 2012
- Beiträge: 457
Re:
Dazu müsste man das http://php.net/manual/en/book.intl.php zur Verfügung haben (hat kaum jemand) und die Problematik wäre exakt die gleiche.
Offline
#28 13. Januar 2013 13:05
- Janl
- Server-Pate

- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.039
- Webseite
Re:
UDT - "time_locale_de"
mit inhalt:
setlocale (LC_TIME, 'de_DE.UTF8');Als erste Zeile (nur so funktioniert es immer) im Template
{time_locale_d}
{process_pagedata}<!DOCTYPE html PUBLIC "- . . . . . .
So funktioniert es bei mir in alle Sprachen und bei alle Hoster, war schon einmal beschrieben im Forum auf .org.
mfg
Jan
Ubuntu 12.04 mit KDE und Kubuntu 16.04 - FOSS Fan
Offline
#29 13. Januar 2013 20:20
- cyberman
- Moderator

- Ort: Dohna / Sachsen
- Registriert: 13. September 2010
- Beiträge: 6.741
- Webseite
Re:
Den UDT kannst du dir sparen, kannste auch in die config.php packen ...
1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi
Offline
#30 13. Januar 2013 21:56
- Janl
- Server-Pate

- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.039
- Webseite
Re:
Hallo Cyberman,
Den UDT kannst du dir sparen
Doch nicht denn für jede Sprache gibt es 1 (oder mehrere) Templates,
zum Beispiel für DE und SK oder für DE, NL und UK.
mfg
Jan
Ubuntu 12.04 mit KDE und Kubuntu 16.04 - FOSS Fan
Offline
#31 14. Januar 2013 04:03
- cyberman
- Moderator

- Ort: Dohna / Sachsen
- Registriert: 13. September 2010
- Beiträge: 6.741
- Webseite
Re:
Würde ich trotzdem nicht über einen UDT machen, allenfalls über 1 "echtes" Plugin, also das ganze als function.page_locale.php ins /plugin-Verzeichnis speichern
[== PHP ==]
<?php
function smarty_function_page_locale($params, $template)
{
$locale = $params['lang'];
$encode = (isset($params['encode'])) ? $params['encode'] : 'UTF8';
switch ($locale) {
case "nl":
$page_lang = 'nl_NL';
break;
case "en":
$page_lang = 'en_GB';
break;
default:
$page_lang = 'de_DE';
break;
}
$page_locale = $page_lang.'.'.$encode;
setlocale (LC_TIME, $page_locale);
}
?>und im einfachsten Fall über
{page_locale} aufrufen.
Verfügbar sind die Parameter lang und encode.
Für lang ist "de" voreingestellt. Außerdem sind derzeit die Werte "nl" und "en" möglich. Ansonsten kann das Script relativ einfach um andere Länder erweitert werden, indem nach
switch ($locale) { ein neuen case-Block eingefügt und auf die jeweilige Sprache angepasst wird. Für französisch sähe der zusätzlich einzufügende case-Block z.Bsp. dann so aus
case "fr":
$page_lang = 'fr_FR';
break;Der Parameter encode ist dafür gedacht, verschiedene Serverkonfigurationen abzufangen. Manch ein Server will UTF8 (ist voreingestellt), ein anderer UTF-8 oder utf8 oder utf-8 oder ...
Zum einen hat's 'ne bessere Performance (keine Datenbankabfragen für das Laden der UDTs) und zum anderen kann man zur Steuerung externe Variablen einsetzen, so dass auch nicht so viele Templates benötigt werden, also z.Bsp. für MleCMS
{page_locale lang=$lang_parent}Und nicht zuletzt kannst du damit alle Locales auf einen Rutsch erledigen, die du jemals in deinem Webdesigner-Leben benötigst. Das Plugin wird einmal erstellt und kann ruckzuck ins /plugin-Verzeichnis kopiert werden, währenddessen du ansonsten bei jeder neuen Installation anfängst, unzählige UDTs zu erstellen
.
1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi
Offline
#32 14. Januar 2013 10:13
- czarnowski
- arbeitet mit CMSMS
- Registriert: 18. Oktober 2012
- Beiträge: 457
Re:
Ich hätte das Plugin so formuliert
[== php ==]
<?php
function smarty_function_page_locale($params, $template) {
$locale = (isset($params['locale'])) ? $params['locale'] : '';
$fix = (isset($params['fix'])) ? true : false;
if (!empty($locale)) {
$encode = (isset($params['encode'])) ? $params['encode'] : 'UTF-8';
if (!$fix)
@set_locale(LC_ALL, strtolower($locale) . '_' . strtoupper($locale) . '.' . $encode);
else
@set_locale(LC_ALL, $locale . '.' . $encode);
}
}
?>Man muss also als locale nur de oder en etc. übergeben.
Allerdings gibt es locale Einstellungen welche nicht diesen Regeln folgen siehe Tabelle , dann setzt man den Parameter fix und schreibt den Parameter locale voll aus.
@ vor set_locale sollte sein da diverse Provider set_locale gesperrt haben (dann funktioniert sowieso nichts) und man damit eine Fehlermeldung unterdrückt.
Beitrag geändert von czarnowski (14. Januar 2013 11:59)
Offline
#33 14. Januar 2013 12:43
- Janl
- Server-Pate

- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.039
- Webseite
Re:
Hallo Cyberman / Czarnowski
Beide Beispiele werde ich bewahren und von meine UDT's Functions machen.
Bei mehrsprachige Websites muss man nur 1 x im Template diese UDT/Function setzen.
Es passt sehr gut zu Rolf's Lösung für mehrsprachige Sites mit standard CMSMS,
trotzdem Danke für die Bemühung, vielleicht kommt später eine Site wo ich es brauche.
mfg
Jan
Ubuntu 12.04 mit KDE und Kubuntu 16.04 - FOSS Fan
Offline
#34 17. Januar 2013 02:08
- cyberman
- Moderator

- Ort: Dohna / Sachsen
- Registriert: 13. September 2010
- Beiträge: 6.741
- Webseite
Re:
Alternativ könntest du auch versuchen, dafür auch den CMSMS-eigenen Tag {cms_set_language} zu nutzen ...
1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi
Offline
#35 17. Januar 2013 09:44
- Janl
- Server-Pate

- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.039
- Webseite
Re:
Hallo cyberman,
{cms_set_language} braucht ein nls-file da bleibe ich doch lieber bei einfachem PHP,
trotzdem Danke
mfg
Jan
Ubuntu 12.04 mit KDE und Kubuntu 16.04 - FOSS Fan
Offline
#36 17. Januar 2013 09:51
- cyberman
- Moderator

- Ort: Dohna / Sachsen
- Registriert: 13. September 2010
- Beiträge: 6.741
- Webseite
Re:
Die nls Datei wird doch bereits mit CMSMS mitgeliefert (/lib/nls)... da musst du gar nix mehr machen
.
1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi
Offline
#37 17. Januar 2013 10:02
- Janl
- Server-Pate

- Ort: Freistadt, Österreich
- Registriert: 13. Dezember 2010
- Beiträge: 1.039
- Webseite
Re:
OOPS
habe es verwechselt mit ein Windows .nls Datei.
Werde doch mal genauer ansehen.
mfg
Jan
Ubuntu 12.04 mit KDE und Kubuntu 16.04 - FOSS Fan
Offline
#38 23. Juli 2015 13:17
- Klinge
- probiert CMSMS aus

- Ort: Stuttgart / BW
- Registriert: 27. September 2011
- Beiträge: 31
Re:
Ist zwar gelöst, aber bei meinem Provider InternetX hilft auch nur:
$config['timezone'] = 'Europe/Berlin'; $config['locale'] = 'de_DE.UTF-8';Sonst wird bei mir das Datum auch falsch angezeigt!
Offline
#39 24. Juli 2015 23:14
- cyberman
- Moderator

- Ort: Dohna / Sachsen
- Registriert: 13. September 2010
- Beiträge: 6.741
- Webseite
Re:
Werd ich wohl nie verstehen, weshalb ein nach eigenen Worten Marktführer in DE mit "undeutschen" Einstellungen am Start ist.
1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMSMS
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi
Offline