| <!-- --> |
| <!-- Copyright 2007 Google Inc. --> |
| <!-- Licensed under the Apache License, Version 2.0 (the "License"); you --> |
| <!-- may not use this file except in compliance with the License. You may --> |
| <!-- may obtain a copy of the License at --> |
| <!-- --> |
| <!-- http://www.apache.org/licenses/LICENSE-2.0 --> |
| <!-- --> |
| <!-- Unless required by applicable law or agreed to in writing, software --> |
| <!-- distributed under the License is distributed on an "AS IS" BASIS, --> |
| <!-- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or --> |
| <!-- implied. License for the specific language governing permissions and --> |
| <!-- limitations under the License. --> |
| |
| <!-- Internationalization support. --> |
| <!-- --> |
| <module> |
| |
| <!-- Browser-sensitive code should use the 'locale' client property. --> |
| <!-- 'default' is always defined. --> |
| <define-property name="locale" values="default" /> |
| |
| <property-provider name="locale"> |
| <![CDATA[ |
| try { |
| var locale; |
| |
| // Look for the locale as a url argument |
| if (locale == null) { |
| var args = location.search; |
| var startLang = args.indexOf("locale"); |
| if (startLang >= 0) { |
| var language = args.substring(startLang); |
| var begin = language.indexOf("=") + 1; |
| var end = language.indexOf("&"); |
| if (end == -1) { |
| end = language.length; |
| } |
| locale = language.substring(begin, end); |
| } |
| } |
| |
| if (locale == null) { |
| // Look for the locale on the web page |
| locale = __gwt_getMetaProperty("locale") |
| } |
| |
| if (locale == null) { |
| return "default"; |
| } |
| |
| while (!__gwt_isKnownPropertyValue("locale", locale)) { |
| var lastIndex = locale.lastIndexOf("_"); |
| if (lastIndex == -1) { |
| locale = "default"; |
| break; |
| } else { |
| locale = locale.substring(0,lastIndex); |
| } |
| } |
| return locale; |
| } catch(e){ |
| alert("Unexpected exception in locale detection, using default: " + e); |
| return "default"; |
| } |
| ]]> |
| </property-provider> |
| |
| <generate-with class="com.google.gwt.i18n.rebind.LocalizableGenerator"> |
| <when-type-assignable class="com.google.gwt.i18n.client.Localizable" /> |
| </generate-with> |
| </module> |