diff --git a/ccm-core/src/com/arsdigita/bebop/parameters/TimeParameter.java b/ccm-core/src/com/arsdigita/bebop/parameters/TimeParameter.java index 40da80e73..dc86f32bc 100755 --- a/ccm-core/src/com/arsdigita/bebop/parameters/TimeParameter.java +++ b/ccm-core/src/com/arsdigita/bebop/parameters/TimeParameter.java @@ -90,9 +90,17 @@ public class TimeParameter extends ParameterModel if (!StringUtils.emptyString(hour)) { int hourInt = Integer.parseInt(hour); +/* Das ist alles Blödsinn. Beim 24-Stundenformat brauchen wir das sowieso nicht. +Beim 12-Stunden-Formato müßte es, wenn überhaupt, anderherum sein: Aus einer +eingetragenen 0 in den Stunden muß eine 12 werden. ABER: Die Informationen +werden in einem Calendar-Object gespeichert, das intern immer 24-Stunden-Format +verwendet. Das 12-Stunden-Format ist eine Frage der Formatierung und somit +hier irrelevant. Es bleibt zu testet, ob ein 12:00 AM im Caendar-Object tatsächlich +zu 0:00 Uhr wird. if ((hourInt == 12) && has12HourClock()) { hourInt = 0; } +*/ c.set(Calendar.HOUR, hourInt); } diff --git a/ccm-core/src/com/arsdigita/globalization/GlobalizationHelper.java b/ccm-core/src/com/arsdigita/globalization/GlobalizationHelper.java index 50eddfa45..765db13c4 100644 --- a/ccm-core/src/com/arsdigita/globalization/GlobalizationHelper.java +++ b/ccm-core/src/com/arsdigita/globalization/GlobalizationHelper.java @@ -20,7 +20,7 @@ import javax.servlet.http.HttpSession; */ public class GlobalizationHelper { - public static final String LANG_INDEPENDENT = "--"; + public static final String LANG_INDEPENDENT = Kernel.getConfig().getLanguagesIndependentCode(); private static final String LANG_PARAM = "lang"; // Don't instantiate diff --git a/ccm-core/src/com/arsdigita/kernel/KernelConfig.java b/ccm-core/src/com/arsdigita/kernel/KernelConfig.java index a909f56a0..1cc437aef 100755 --- a/ccm-core/src/com/arsdigita/kernel/KernelConfig.java +++ b/ccm-core/src/com/arsdigita/kernel/KernelConfig.java @@ -81,6 +81,9 @@ public final class KernelConfig extends AbstractConfig { "en,de,fr,nl,it,pt,es"); private final Parameter m_languageIndependentItems = new BooleanParameter ("waf.kernel.language_independent_items", Parameter.REQUIRED, Boolean.FALSE); + private final Parameter m_languageIndependentCode = new StringParameter + ("waf.kernel.languages_independent_code", Parameter.OPTIONAL, + "--"); public KernelConfig() { @@ -104,6 +107,7 @@ public final class KernelConfig extends AbstractConfig { register(m_secureLogin); register(m_supportedLanguages); register(m_languageIndependentItems); + register(m_languageIndependentCode); loadInfo(); } @@ -179,6 +183,13 @@ public final class KernelConfig extends AbstractConfig { return new StringTokenizer(this.getSupportedLanguages(), ",", false); } + /** + * Returns the languagesIndependentCode as String. + */ + public final String getLanguagesIndependentCode() { + return (String) get(m_languageIndependentCode); + } + /** * Return true, if language lang is part of supported langs */ diff --git a/ccm-core/src/com/arsdigita/kernel/KernelConfig_parameter.properties b/ccm-core/src/com/arsdigita/kernel/KernelConfig_parameter.properties index 77eaaaa70..996cfb321 100755 --- a/ccm-core/src/com/arsdigita/kernel/KernelConfig_parameter.properties +++ b/ccm-core/src/com/arsdigita/kernel/KernelConfig_parameter.properties @@ -30,3 +30,7 @@ waf.kernel.language_independent_items.title=Allow language independent content i waf.kernel.language_independent_items.purpose=Allow language independent content items waf.kernel.language_independent_items.example=false waf.kernel.language_independent_items.format=true|false +waf.kernel.language_independent_code.title=Select language independent code +waf.kernel.language_independent_code.purpose=Allow language independent code +waf.kernel.language_independent_code.example=-- +waf.kernel.language_independent_code.format=[string]