From 9ef1da2bcd3f25d60da528be03a71685683be904 Mon Sep 17 00:00:00 2001 From: "daniel.boelzle%sun.com" Date: Thu, 5 Jun 2008 15:55:38 +0000 Subject: [PATCH] =?UTF-8?q?Bug=20363191=20=C3=A2=C2=80=C2=93=20Handle=20Ti?= =?UTF-8?q?mezones=20more=20efficiently=20(Timezone=20Database);=20r=3Dphi?= =?UTF-8?q?lipp,ctalbert?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://10.0.0.236/trunk@252128 18797224-902f-48f8-a5cc-f745e15eee43 --- .../installer/windows/packages-static | 1 + mozilla/calendar/lightning/Makefile.in | 4 + mozilla/calendar/lightning/locales/jar.mn | 1 + .../en-US/chrome/calendar/calendar.properties | 1 + .../chrome/calendar/preferences/timezones.dtd | 398 +-------- .../chrome/calendar/timezones.properties | 456 ++++++++++ .../sun-calendar-event-dialog-attendees.js | 13 +- .../sun-calendar-event-dialog-timezone.js | 57 +- .../sun-calendar-event-dialog-timezone.xul | 799 +----------------- .../wcap/sun-calendar-event-dialog.js | 13 +- .../gdata/components/calGoogleUtils.js | 2 +- .../providers/storage/calStorageCalendar.js | 27 +- .../providers/wcap/calWcapCalendar.js | 11 +- .../calendar/providers/wcap/calWcapSession.js | 12 +- mozilla/calendar/test/unit/test_datetime.js | 14 +- 15 files changed, 543 insertions(+), 1266 deletions(-) create mode 100644 mozilla/calendar/locales/en-US/chrome/calendar/timezones.properties diff --git a/mozilla/calendar/installer/windows/packages-static b/mozilla/calendar/installer/windows/packages-static index 9bca3d8ed11..e1597233652 100644 --- a/mozilla/calendar/installer/windows/packages-static +++ b/mozilla/calendar/installer/windows/packages-static @@ -268,6 +268,7 @@ bin\js\calTodo.js bin\js\calTransactionManager.js bin\js\calFreeBusyService.js bin\js\calCalendarSearchService.js +bin\js\calTimezoneService.js bin\js\calUtils.js bin\js\calAuthUtils.js bin\js\calWeekPrinter.js diff --git a/mozilla/calendar/lightning/Makefile.in b/mozilla/calendar/lightning/Makefile.in index 9c8ed892f93..5cb1bc41971 100644 --- a/mozilla/calendar/lightning/Makefile.in +++ b/mozilla/calendar/lightning/Makefile.in @@ -122,4 +122,8 @@ libs-%: endif +# xxx todo: unless our packaging story is revised (bug 406579) we package up timezones.sqlite +libs:: + $(NSINSTALL) $(srcdir)/../timezones/timezones.sqlite $(FINAL_TARGET) + include $(topsrcdir)/config/rules.mk diff --git a/mozilla/calendar/lightning/locales/jar.mn b/mozilla/calendar/lightning/locales/jar.mn index 357045d61a5..6f7f23ad3e0 100644 --- a/mozilla/calendar/lightning/locales/jar.mn +++ b/mozilla/calendar/lightning/locales/jar.mn @@ -4,3 +4,4 @@ lightning-@AB_CD@.jar: % locale lightning @AB_CD@ %locale/@AB_CD@/lightning/ locale/@AB_CD@/lightning/lightning.dtd (%chrome/lightning/lightning.dtd) locale/@AB_CD@/lightning/lightning.properties (%chrome/lightning/lightning.properties) + locale/@AB_CD@/lightning/timezones.properties (%chrome/calendar/timezones.properties) diff --git a/mozilla/calendar/locales/en-US/chrome/calendar/calendar.properties b/mozilla/calendar/locales/en-US/chrome/calendar/calendar.properties index cae77bb3d29..fd00c9c2e20 100644 --- a/mozilla/calendar/locales/en-US/chrome/calendar/calendar.properties +++ b/mozilla/calendar/locales/en-US/chrome/calendar/calendar.properties @@ -98,6 +98,7 @@ HTMLTitle=Mozilla Calendar timezoneError=An unknown and undefined timezone was found while reading %1$S. duplicateError=%1$S item(s) were ignored since they exist in both the destination calendar and %2$S. unableToCreateProvider=An error was encountered preparing the calendar located at %1$S for use. It will not be available. +missingCalendarTimezonesError=No timezones found! Please install calendar-timezones.xpi. unsubscribeCalendarTitle=Unsubscribe from Calendar unsubscribeCalendarMessage=Are you sure you want to unsubscribe from calendar "%1$S"? diff --git a/mozilla/calendar/locales/en-US/chrome/calendar/preferences/timezones.dtd b/mozilla/calendar/locales/en-US/chrome/calendar/preferences/timezones.dtd index 2137a06855f..28dc97cdf0e 100644 --- a/mozilla/calendar/locales/en-US/chrome/calendar/preferences/timezones.dtd +++ b/mozilla/calendar/locales/en-US/chrome/calendar/preferences/timezones.dtd @@ -23,6 +23,7 @@ - ArentJan Banck - Eric Belhaire - Matthew Willis + - Daniel Boelzle - - Alternatively, the contents of this file may be used under the terms of - either the GNU General Public License Version 2 or later (the "GPL"), or @@ -39,400 +40,3 @@ - ***** END LICENSE BLOCK ***** --> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/mozilla/calendar/locales/en-US/chrome/calendar/timezones.properties b/mozilla/calendar/locales/en-US/chrome/calendar/timezones.properties new file mode 100644 index 00000000000..60c6ff3ade7 --- /dev/null +++ b/mozilla/calendar/locales/en-US/chrome/calendar/timezones.properties @@ -0,0 +1,456 @@ +# ***** BEGIN LICENSE BLOCK ***** +# Version: MPL 1.1/GPL 2.0/LGPL 2.1 +# +# The contents of this file are subject to the Mozilla Public License Version +# 1.1 (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the License is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License +# for the specific language governing rights and limitations under the +# License. +# +# The Original Code is Mozilla Calendar Preferences. +# +# The Initial Developer of the Original Code is +# OEone Corporation. +# Portions created by the Initial Developer are Copyright (C) 2001 +# the Initial Developer. All Rights Reserved. +# +# Contributor(s): +# Mike Potter +# ArentJan Banck +# Eric Belhaire +# Matthew Willis +# Daniel Boelzle +# +# Alternatively, the contents of this file may be used under the terms of +# either the GNU General Public License Version 2 or later (the "GPL"), or +# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), +# in which case the provisions of the GPL or the LGPL are applicable instead +# of those above. If you wish to allow use of your version of this file only +# under the terms of either the GPL or the LGPL, and not to allow others to +# use your version of this file under the terms of the MPL, indicate your +# decision by deleting the provisions above and replace them with the notice +# and other provisions required by the GPL or the LGPL. If you do not delete +# the provisions above, a recipient may use your version of this file under +# the terms of any one of the MPL, the GPL or the LGPL. +# +# ***** END LICENSE BLOCK ***** + +# extension: +extensions.calendar-timezones@mozilla.org.name=Timezone Definitions for Mozilla Calendar +extensions.calendar-timezones@mozilla.org.description=Timezone definitions required by Sunbird and Lightning +extensions.calendar-timezones@mozilla.org.creator=Mozilla Calendar Project + +pref.timezone.floating=Local Time +pref.timezone.UTC=UTC/GMT + +# I've derived this list out of timezones.dtd +# - replaced '_' with ' ' on value side +# - corrected 'St xyz' to 'St. xyz' + +# timezone names: +pref.timezone.Africa.Abidjan=Africa/Abidjan +pref.timezone.Africa.Accra=Africa/Accra +pref.timezone.Africa.Addis_Ababa=Africa/Addis Ababa +pref.timezone.Africa.Algiers=Africa/Algiers +pref.timezone.Africa.Asmara=Africa/Asmara +pref.timezone.Africa.Bamako=Africa/Bamako +pref.timezone.Africa.Bangui=Africa/Bangui +pref.timezone.Africa.Banjul=Africa/Banjul +pref.timezone.Africa.Bissau=Africa/Bissau +pref.timezone.Africa.Blantyre=Africa/Blantyre +pref.timezone.Africa.Brazzaville=Africa/Brazzaville +pref.timezone.Africa.Bujumbura=Africa/Bujumbura +pref.timezone.Africa.Cairo=Africa/Cairo +pref.timezone.Africa.Casablanca=Africa/Casablanca +pref.timezone.Africa.Ceuta=Africa/Ceuta +pref.timezone.Africa.Conakry=Africa/Conakry +pref.timezone.Africa.Dakar=Africa/Dakar +pref.timezone.Africa.Dar_es_Salaam=Africa/Dar es Salaam +pref.timezone.Africa.Djibouti=Africa/Djibouti +pref.timezone.Africa.Douala=Africa/Douala +pref.timezone.Africa.El_Aaiun=Africa/El Aaiun +pref.timezone.Africa.Freetown=Africa/Freetown +pref.timezone.Africa.Gaborone=Africa/Gaborone +pref.timezone.Africa.Harare=Africa/Harare +pref.timezone.Africa.Johannesburg=Africa/Johannesburg +pref.timezone.Africa.Kampala=Africa/Kampala +pref.timezone.Africa.Khartoum=Africa/Khartoum +pref.timezone.Africa.Kigali=Africa/Kigali +pref.timezone.Africa.Kinshasa=Africa/Kinshasa +pref.timezone.Africa.Lagos=Africa/Lagos +pref.timezone.Africa.Libreville=Africa/Libreville +pref.timezone.Africa.Lome=Africa/Lome +pref.timezone.Africa.Luanda=Africa/Luanda +pref.timezone.Africa.Lubumbashi=Africa/Lubumbashi +pref.timezone.Africa.Lusaka=Africa/Lusaka +pref.timezone.Africa.Malabo=Africa/Malabo +pref.timezone.Africa.Maputo=Africa/Maputo +pref.timezone.Africa.Maseru=Africa/Maseru +pref.timezone.Africa.Mbabane=Africa/Mbabane +pref.timezone.Africa.Mogadishu=Africa/Mogadishu +pref.timezone.Africa.Monrovia=Africa/Monrovia +pref.timezone.Africa.Nairobi=Africa/Nairobi +pref.timezone.Africa.Ndjamena=Africa/Ndjamena +pref.timezone.Africa.Niamey=Africa/Niamey +pref.timezone.Africa.Nouakchott=Africa/Nouakchott +pref.timezone.Africa.Ouagadougou=Africa/Ouagadougou +pref.timezone.Africa.Porto-Novo=Africa/Porto-Novo +pref.timezone.Africa.Sao_Tome=Africa/Sao Tome +pref.timezone.Africa.Tripoli=Africa/Tripoli +pref.timezone.Africa.Tunis=Africa/Tunis +pref.timezone.Africa.Windhoek=Africa/Windhoek +pref.timezone.America.Adak=America/Adak +pref.timezone.America.Anchorage=America/Anchorage +pref.timezone.America.Anguilla=America/Anguilla +pref.timezone.America.Antigua=America/Antigua +pref.timezone.America.Araguaina=America/Araguaina +pref.timezone.America.Argentina.Buenos_Aires=America/Argentina/Buenos Aires +pref.timezone.America.Argentina.Catamarca=America/Argentina/Catamarca +pref.timezone.America.Argentina.Cordoba=America/Argentina/Cordoba +pref.timezone.America.Argentina.Jujuy=America/Argentina/Jujuy +pref.timezone.America.Argentina.La_Rioja=America/Argentina/La Rioja +pref.timezone.America.Argentina.Mendoza=America/Argentina/Mendoza +pref.timezone.America.Argentina.Rio_Gallegos=America/Argentina/Rio Gallegos +pref.timezone.America.Argentina.San_Juan=America/Argentina/San Juan +pref.timezone.America.Argentina.Tucuman=America/Argentina/Tucuman +pref.timezone.America.Argentina.Ushuaia=America/Argentina/Ushuaia +pref.timezone.America.Aruba=America/Aruba +pref.timezone.America.Asuncion=America/Asuncion +pref.timezone.America.Atikokan=America/Atikokan +pref.timezone.America.Bahia=America/Bahia +pref.timezone.America.Barbados=America/Barbados +pref.timezone.America.Belem=America/Belem +pref.timezone.America.Belize=America/Belize +pref.timezone.America.Blanc-Sablon=America/Blanc-Sablon +pref.timezone.America.Boa_Vista=America/Boa Vista +pref.timezone.America.Bogota=America/Bogota +pref.timezone.America.Boise=America/Boise +pref.timezone.America.Cambridge_Bay=America/Cambridge Bay +pref.timezone.America.Campo_Grande=America/Campo Grande +pref.timezone.America.Cancun=America/Cancun +pref.timezone.America.Caracas=America/Caracas +pref.timezone.America.Cayenne=America/Cayenne +pref.timezone.America.Cayman=America/Cayman +pref.timezone.America.Chicago=America/Chicago +pref.timezone.America.Chihuahua=America/Chihuahua +pref.timezone.America.Costa_Rica=America/Costa Rica +pref.timezone.America.Cuiaba=America/Cuiaba +pref.timezone.America.Curacao=America/Curacao +pref.timezone.America.Danmarkshavn=America/Danmarkshavn +pref.timezone.America.Dawson=America/Dawson +pref.timezone.America.Dawson_Creek=America/Dawson Creek +pref.timezone.America.Denver=America/Denver +pref.timezone.America.Detroit=America/Detroit +pref.timezone.America.Dominica=America/Dominica +pref.timezone.America.Edmonton=America/Edmonton +pref.timezone.America.Eirunepe=America/Eirunepe +pref.timezone.America.El_Salvador=America/El Salvador +pref.timezone.America.Fortaleza=America/Fortaleza +pref.timezone.America.Glace_Bay=America/Glace Bay +pref.timezone.America.Godthab=America/Godthab +pref.timezone.America.Goose_Bay=America/Goose Bay +pref.timezone.America.Grand_Turk=America/Grand Turk +pref.timezone.America.Grenada=America/Grenada +pref.timezone.America.Guadeloupe=America/Guadeloupe +pref.timezone.America.Guatemala=America/Guatemala +pref.timezone.America.Guayaquil=America/Guayaquil +pref.timezone.America.Guyana=America/Guyana +pref.timezone.America.Halifax=America/Halifax +pref.timezone.America.Havana=America/Havana +pref.timezone.America.Hermosillo=America/Hermosillo +pref.timezone.America.Indiana.Indianapolis=America/Indiana/Indianapolis +pref.timezone.America.Indiana.Knox=America/Indiana/Knox +pref.timezone.America.Indiana.Marengo=America/Indiana/Marengo +pref.timezone.America.Indiana.Petersburg=America/Indiana/Petersburg +pref.timezone.America.Indiana.Vevay=America/Indiana/Vevay +pref.timezone.America.Indiana.Vincennes=America/Indiana/Vincennes +pref.timezone.America.Inuvik=America/Inuvik +pref.timezone.America.Iqaluit=America/Iqaluit +pref.timezone.America.Jamaica=America/Jamaica +pref.timezone.America.Juneau=America/Juneau +pref.timezone.America.Kentucky.Louisville=America/Kentucky/Louisville +pref.timezone.America.Kentucky.Monticello=America/Kentucky/Monticello +pref.timezone.America.La_Paz=America/La Paz +pref.timezone.America.Lima=America/Lima +pref.timezone.America.Los_Angeles=America/Los Angeles +pref.timezone.America.Maceio=America/Maceio +pref.timezone.America.Managua=America/Managua +pref.timezone.America.Manaus=America/Manaus +pref.timezone.America.Martinique=America/Martinique +pref.timezone.America.Mazatlan=America/Mazatlan +pref.timezone.America.Menominee=America/Menominee +pref.timezone.America.Merida=America/Merida +pref.timezone.America.Mexico_City=America/Mexico City +pref.timezone.America.Miquelon=America/Miquelon +pref.timezone.America.Moncton=America/Moncton +pref.timezone.America.Monterrey=America/Monterrey +pref.timezone.America.Montevideo=America/Montevideo +pref.timezone.America.Montreal=America/Montreal +pref.timezone.America.Montserrat=America/Montserrat +pref.timezone.America.Nassau=America/Nassau +pref.timezone.America.New_York=America/New York +pref.timezone.America.Nipigon=America/Nipigon +pref.timezone.America.Nome=America/Nome +pref.timezone.America.Noronha=America/Noronha +pref.timezone.America.North_Dakota.Center=America/North Dakota/Center +pref.timezone.America.North_Dakota.New_Salem=America/North Dakota/New Salem +pref.timezone.America.Panama=America/Panama +pref.timezone.America.Pangnirtung=America/Pangnirtung +pref.timezone.America.Paramaribo=America/Paramaribo +pref.timezone.America.Phoenix=America/Phoenix +pref.timezone.America.Port-au-Prince=America/Port-au-Prince +pref.timezone.America.Port_of_Spain=America/Port of Spain +pref.timezone.America.Porto_Velho=America/Porto Velho +pref.timezone.America.Puerto_Rico=America/Puerto Rico +pref.timezone.America.Rainy_River=America/Rainy River +pref.timezone.America.Rankin_Inlet=America/Rankin Inlet +pref.timezone.America.Recife=America/Recife +pref.timezone.America.Regina=America/Regina +pref.timezone.America.Rio_Branco=America/Rio Branco +pref.timezone.America.Santiago=America/Santiago +pref.timezone.America.Santo_Domingo=America/Santo Domingo +pref.timezone.America.Sao_Paulo=America/Sao Paulo +pref.timezone.America.Scoresbysund=America/Scoresbysund +pref.timezone.America.Shiprock=America/Shiprock +pref.timezone.America.St_Johns=America/St. Johns +pref.timezone.America.St_Kitts=America/St. Kitts +pref.timezone.America.St_Lucia=America/St. Lucia +pref.timezone.America.St_Thomas=America/St. Thomas +pref.timezone.America.St_Vincent=America/St. Vincent +pref.timezone.America.Swift_Current=America/Swift Current +pref.timezone.America.Tegucigalpa=America/Tegucigalpa +pref.timezone.America.Thule=America/Thule +pref.timezone.America.Thunder_Bay=America/Thunder Bay +pref.timezone.America.Tijuana=America/Tijuana +pref.timezone.America.Toronto=America/Toronto +pref.timezone.America.Tortola=America/Tortola +pref.timezone.America.Vancouver=America/Vancouver +pref.timezone.America.Whitehorse=America/Whitehorse +pref.timezone.America.Winnipeg=America/Winnipeg +pref.timezone.America.Yakutat=America/Yakutat +pref.timezone.America.Yellowknife=America/Yellowknife +pref.timezone.Antarctica.Casey=Antarctica/Casey +pref.timezone.Antarctica.Davis=Antarctica/Davis +pref.timezone.Antarctica.DumontDUrville=Antarctica/DumontDUrville +pref.timezone.Antarctica.Mawson=Antarctica/Mawson +pref.timezone.Antarctica.McMurdo=Antarctica/McMurdo +pref.timezone.Antarctica.Palmer=Antarctica/Palmer +pref.timezone.Antarctica.Rothera=Antarctica/Rothera +pref.timezone.Antarctica.South_Pole=Antarctica/South Pole +pref.timezone.Antarctica.Syowa=Antarctica/Syowa +pref.timezone.Antarctica.Vostok=Antarctica/Vostok +pref.timezone.Arctic.Longyearbyen=Arctic/Longyearbyen +pref.timezone.Asia.Aden=Asia/Aden +pref.timezone.Asia.Almaty=Asia/Almaty +pref.timezone.Asia.Amman=Asia/Amman +pref.timezone.Asia.Anadyr=Asia/Anadyr +pref.timezone.Asia.Aqtau=Asia/Aqtau +pref.timezone.Asia.Aqtobe=Asia/Aqtobe +pref.timezone.Asia.Ashgabat=Asia/Ashgabat +pref.timezone.Asia.Baghdad=Asia/Baghdad +pref.timezone.Asia.Bahrain=Asia/Bahrain +pref.timezone.Asia.Baku=Asia/Baku +pref.timezone.Asia.Bangkok=Asia/Bangkok +pref.timezone.Asia.Beirut=Asia/Beirut +pref.timezone.Asia.Bishkek=Asia/Bishkek +pref.timezone.Asia.Brunei=Asia/Brunei +pref.timezone.Asia.Calcutta=Asia/Calcutta +pref.timezone.Asia.Choibalsan=Asia/Choibalsan +pref.timezone.Asia.Chongqing=Asia/Chongqing +pref.timezone.Asia.Colombo=Asia/Colombo +pref.timezone.Asia.Damascus=Asia/Damascus +pref.timezone.Asia.Dhaka=Asia/Dhaka +pref.timezone.Asia.Dili=Asia/Dili +pref.timezone.Asia.Dubai=Asia/Dubai +pref.timezone.Asia.Dushanbe=Asia/Dushanbe +pref.timezone.Asia.Gaza=Asia/Gaza +pref.timezone.Asia.Harbin=Asia/Harbin +pref.timezone.Asia.Hong_Kong=Asia/Hong Kong +pref.timezone.Asia.Hovd=Asia/Hovd +pref.timezone.Asia.Irkutsk=Asia/Irkutsk +pref.timezone.Asia.Istanbul=Asia/Istanbul +pref.timezone.Asia.Jakarta=Asia/Jakarta +pref.timezone.Asia.Jayapura=Asia/Jayapura +pref.timezone.Asia.Jerusalem=Asia/Jerusalem +pref.timezone.Asia.Kabul=Asia/Kabul +pref.timezone.Asia.Kamchatka=Asia/Kamchatka +pref.timezone.Asia.Karachi=Asia/Karachi +pref.timezone.Asia.Kashgar=Asia/Kashgar +pref.timezone.Asia.Katmandu=Asia/Katmandu +pref.timezone.Asia.Krasnoyarsk=Asia/Krasnoyarsk +pref.timezone.Asia.Kuala_Lumpur=Asia/Kuala Lumpur +pref.timezone.Asia.Kuching=Asia/Kuching +pref.timezone.Asia.Kuwait=Asia/Kuwait +pref.timezone.Asia.Macau=Asia/Macau +pref.timezone.Asia.Magadan=Asia/Magadan +pref.timezone.Asia.Makassar=Asia/Makassar +pref.timezone.Asia.Manila=Asia/Manila +pref.timezone.Asia.Muscat=Asia/Muscat +pref.timezone.Asia.Nicosia=Asia/Nicosia +pref.timezone.Asia.Novosibirsk=Asia/Novosibirsk +pref.timezone.Asia.Omsk=Asia/Omsk +pref.timezone.Asia.Oral=Asia/Oral +pref.timezone.Asia.Phnom_Penh=Asia/Phnom Penh +pref.timezone.Asia.Pontianak=Asia/Pontianak +pref.timezone.Asia.Pyongyang=Asia/Pyongyang +pref.timezone.Asia.Qatar=Asia/Qatar +pref.timezone.Asia.Qyzylorda=Asia/Qyzylorda +pref.timezone.Asia.Rangoon=Asia/Rangoon +pref.timezone.Asia.Riyadh=Asia/Riyadh +pref.timezone.Asia.Saigon=Asia/Saigon +pref.timezone.Asia.Sakhalin=Asia/Sakhalin +pref.timezone.Asia.Samarkand=Asia/Samarkand +pref.timezone.Asia.Seoul=Asia/Seoul +pref.timezone.Asia.Shanghai=Asia/Shanghai +pref.timezone.Asia.Singapore=Asia/Singapore +pref.timezone.Asia.Taipei=Asia/Taipei +pref.timezone.Asia.Tashkent=Asia/Tashkent +pref.timezone.Asia.Tbilisi=Asia/Tbilisi +pref.timezone.Asia.Tehran=Asia/Tehran +pref.timezone.Asia.Thimphu=Asia/Thimphu +pref.timezone.Asia.Tokyo=Asia/Tokyo +pref.timezone.Asia.Ulaanbaatar=Asia/Ulaanbaatar +pref.timezone.Asia.Urumqi=Asia/Urumqi +pref.timezone.Asia.Vientiane=Asia/Vientiane +pref.timezone.Asia.Vladivostok=Asia/Vladivostok +pref.timezone.Asia.Yakutsk=Asia/Yakutsk +pref.timezone.Asia.Yekaterinburg=Asia/Yekaterinburg +pref.timezone.Asia.Yerevan=Asia/Yerevan +pref.timezone.Atlantic.Azores=Atlantic/Azores +pref.timezone.Atlantic.Bermuda=Atlantic/Bermuda +pref.timezone.Atlantic.Canary=Atlantic/Canary +pref.timezone.Atlantic.Cape_Verde=Atlantic/Cape Verde +pref.timezone.Atlantic.Faroe=Atlantic/Faroe +pref.timezone.Atlantic.Madeira=Atlantic/Madeira +pref.timezone.Atlantic.Reykjavik=Atlantic/Reykjavik +pref.timezone.Atlantic.South_Georgia=Atlantic/South Georgia +pref.timezone.Atlantic.St_Helena=Atlantic/St. Helena +pref.timezone.Atlantic.Stanley=Atlantic/Stanley +pref.timezone.Australia.Adelaide=Australia/Adelaide +pref.timezone.Australia.Brisbane=Australia/Brisbane +pref.timezone.Australia.Broken_Hill=Australia/Broken Hill +pref.timezone.Australia.Currie=Australia/Currie +pref.timezone.Australia.Darwin=Australia/Darwin +pref.timezone.Australia.Eucla=Australia/Eucla +pref.timezone.Australia.Hobart=Australia/Hobart +pref.timezone.Australia.Lindeman=Australia/Lindeman +pref.timezone.Australia.Lord_Howe=Australia/Lord Howe +pref.timezone.Australia.Melbourne=Australia/Melbourne +pref.timezone.Australia.Perth=Australia/Perth +pref.timezone.Australia.Sydney=Australia/Sydney +pref.timezone.Europe.Amsterdam=Europe/Amsterdam +pref.timezone.Europe.Andorra=Europe/Andorra +pref.timezone.Europe.Athens=Europe/Athens +pref.timezone.Europe.Belgrade=Europe/Belgrade +pref.timezone.Europe.Berlin=Europe/Berlin +pref.timezone.Europe.Bratislava=Europe/Bratislava +pref.timezone.Europe.Brussels=Europe/Brussels +pref.timezone.Europe.Bucharest=Europe/Bucharest +pref.timezone.Europe.Budapest=Europe/Budapest +pref.timezone.Europe.Chisinau=Europe/Chisinau +pref.timezone.Europe.Copenhagen=Europe/Copenhagen +pref.timezone.Europe.Dublin=Europe/Dublin +pref.timezone.Europe.Gibraltar=Europe/Gibraltar +pref.timezone.Europe.Guernsey=Europe/Guernsey +pref.timezone.Europe.Helsinki=Europe/Helsinki +pref.timezone.Europe.Isle_of_Man=Europe/Isle of Man +pref.timezone.Europe.Istanbul=Europe/Istanbul +pref.timezone.Europe.Jersey=Europe/Jersey +pref.timezone.Europe.Kaliningrad=Europe/Kaliningrad +pref.timezone.Europe.Kiev=Europe/Kiev +pref.timezone.Europe.Lisbon=Europe/Lisbon +pref.timezone.Europe.Ljubljana=Europe/Ljubljana +pref.timezone.Europe.London=Europe/London +pref.timezone.Europe.Luxembourg=Europe/Luxembourg +pref.timezone.Europe.Madrid=Europe/Madrid +pref.timezone.Europe.Malta=Europe/Malta +pref.timezone.Europe.Mariehamn=Europe/Mariehamn +pref.timezone.Europe.Minsk=Europe/Minsk +pref.timezone.Europe.Monaco=Europe/Monaco +pref.timezone.Europe.Moscow=Europe/Moscow +pref.timezone.Europe.Nicosia=Europe/Nicosia +pref.timezone.Europe.Oslo=Europe/Oslo +pref.timezone.Europe.Paris=Europe/Paris +pref.timezone.Europe.Podgorica=Europe/Podgorica +pref.timezone.Europe.Prague=Europe/Prague +pref.timezone.Europe.Riga=Europe/Riga +pref.timezone.Europe.Rome=Europe/Rome +pref.timezone.Europe.Samara=Europe/Samara +pref.timezone.Europe.San_Marino=Europe/San Marino +pref.timezone.Europe.Sarajevo=Europe/Sarajevo +pref.timezone.Europe.Simferopol=Europe/Simferopol +pref.timezone.Europe.Skopje=Europe/Skopje +pref.timezone.Europe.Sofia=Europe/Sofia +pref.timezone.Europe.Stockholm=Europe/Stockholm +pref.timezone.Europe.Tallinn=Europe/Tallinn +pref.timezone.Europe.Tirane=Europe/Tirane +pref.timezone.Europe.Uzhgorod=Europe/Uzhgorod +pref.timezone.Europe.Vaduz=Europe/Vaduz +pref.timezone.Europe.Vatican=Europe/Vatican +pref.timezone.Europe.Vienna=Europe/Vienna +pref.timezone.Europe.Vilnius=Europe/Vilnius +pref.timezone.Europe.Volgograd=Europe/Volgograd +pref.timezone.Europe.Warsaw=Europe/Warsaw +pref.timezone.Europe.Zagreb=Europe/Zagreb +pref.timezone.Europe.Zaporozhye=Europe/Zaporozhye +pref.timezone.Europe.Zurich=Europe/Zurich +pref.timezone.Indian.Antananarivo=Indian/Antananarivo +pref.timezone.Indian.Chagos=Indian/Chagos +pref.timezone.Indian.Christmas=Indian/Christmas +pref.timezone.Indian.Cocos=Indian/Cocos +pref.timezone.Indian.Comoro=Indian/Comoro +pref.timezone.Indian.Kerguelen=Indian/Kerguelen +pref.timezone.Indian.Mahe=Indian/Mahe +pref.timezone.Indian.Maldives=Indian/Maldives +pref.timezone.Indian.Mauritius=Indian/Mauritius +pref.timezone.Indian.Mayotte=Indian/Mayotte +pref.timezone.Indian.Reunion=Indian/Reunion +pref.timezone.Pacific.Apia=Pacific/Apia +pref.timezone.Pacific.Auckland=Pacific/Auckland +pref.timezone.Pacific.Chatham=Pacific/Chatham +pref.timezone.Pacific.Easter=Pacific/Easter +pref.timezone.Pacific.Efate=Pacific/Efate +pref.timezone.Pacific.Enderbury=Pacific/Enderbury +pref.timezone.Pacific.Fakaofo=Pacific/Fakaofo +pref.timezone.Pacific.Fiji=Pacific/Fiji +pref.timezone.Pacific.Funafuti=Pacific/Funafuti +pref.timezone.Pacific.Galapagos=Pacific/Galapagos +pref.timezone.Pacific.Gambier=Pacific/Gambier +pref.timezone.Pacific.Guadalcanal=Pacific/Guadalcanal +pref.timezone.Pacific.Guam=Pacific/Guam +pref.timezone.Pacific.Honolulu=Pacific/Honolulu +pref.timezone.Pacific.Johnston=Pacific/Johnston +pref.timezone.Pacific.Kiritimati=Pacific/Kiritimati +pref.timezone.Pacific.Kosrae=Pacific/Kosrae +pref.timezone.Pacific.Kwajalein=Pacific/Kwajalein +pref.timezone.Pacific.Majuro=Pacific/Majuro +pref.timezone.Pacific.Marquesas=Pacific/Marquesas +pref.timezone.Pacific.Midway=Pacific/Midway +pref.timezone.Pacific.Nauru=Pacific/Nauru +pref.timezone.Pacific.Niue=Pacific/Niue +pref.timezone.Pacific.Norfolk=Pacific/Norfolk +pref.timezone.Pacific.Noumea=Pacific/Noumea +pref.timezone.Pacific.Pago_Pago=Pacific/Pago Pago +pref.timezone.Pacific.Palau=Pacific/Palau +pref.timezone.Pacific.Pitcairn=Pacific/Pitcairn +pref.timezone.Pacific.Ponape=Pacific/Ponape +pref.timezone.Pacific.Port_Moresby=Pacific/Port Moresby +pref.timezone.Pacific.Rarotonga=Pacific/Rarotonga +pref.timezone.Pacific.Saipan=Pacific/Saipan +pref.timezone.Pacific.Tahiti=Pacific/Tahiti +pref.timezone.Pacific.Tarawa=Pacific/Tarawa +pref.timezone.Pacific.Tongatapu=Pacific/Tongatapu +pref.timezone.Pacific.Truk=Pacific/Truk +pref.timezone.Pacific.Wake=Pacific/Wake +pref.timezone.Pacific.Wallis=Pacific/Wallis + +# the following have been missing +pref.timezone.America.Indiana.Tell_City=America/Indiana/Tell City +pref.timezone.America.Indiana.Winamac=America/Indiana/Winamac +pref.timezone.America.Marigot=America/Marigot +pref.timezone.America.Resolute=America/Resolute +pref.timezone.America.St_Barthelemy=America/St. Barthelemy diff --git a/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-attendees.js b/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-attendees.js index 37fa87eec5a..f7ddc0602e9 100644 --- a/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-attendees.js +++ b/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-attendees.js @@ -274,15 +274,6 @@ function updateDateTime() { updateAllDay(); } -function timezoneString(tz) { - var tzid = tz.tzid; - var prefix = getTimezoneService().tzidPrefix; - if (tzid.indexOf(prefix) == 0) { - tzid = tzid.substring(prefix.length); - } - return tzid; -} - /** * assumes that gStartDate and gEndDate have been correctly initialized, * either by having called loadDateTime() or having read the information @@ -309,7 +300,7 @@ function updateTimezone() { var tzEnd = document.getElementById("timezone-endtime"); if (startTimezone != null) { tzStart.removeAttribute('collapsed'); - tzStart.value = timezoneString(startTimezone); + tzStart.value = startTimezone.displayName || startTimezone.tzid; } else { tzStart.setAttribute('collapsed', 'true'); } @@ -317,7 +308,7 @@ function updateTimezone() { // we never display the second timezone if both are equal if (endTimezone != null && !equalTimezones) { tzEnd.removeAttribute('collapsed'); - tzEnd.value = timezoneString(endTimezone); + tzEnd.value = endTimezone.displayName || endTimezone.tzid; } else { tzEnd.setAttribute('collapsed', 'true'); } diff --git a/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-timezone.js b/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-timezone.js index f00437907c1..7665c701fc7 100644 --- a/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-timezone.js +++ b/mozilla/calendar/prototypes/wcap/sun-calendar-event-dialog-timezone.js @@ -19,6 +19,7 @@ * * Contributor(s): * Michael Buettner + * Daniel Boelzle * * Alternatively, the contents of this file may be used under the terms of * either the GNU General Public License Version 2 or later (the "GPL"), or @@ -39,12 +40,36 @@ function onLoad() { window.time = args.time; window.onAcceptCallback = args.onOk; - var tzname = timezoneString(window.time.timezone.tzid); var menulist = document.getElementById("timezone-menulist"); - var index = findTimezone(tzname); + var tzMenuPopup = document.getElementById("timezone-menupopup"); + + // floating and UTC at the top: + addMenuItem(tzMenuPopup, floating().displayName, floating().tzid); + addMenuItem(tzMenuPopup, UTC().displayName, UTC().tzid); + + var tzService = getTimezoneService(); + var enumerator = tzService.timezoneIds; + var tzids = {}; + var displayNames = []; + // don't rely on what order the timezone-service gives you + while (enumerator.hasMore()) { + var tz = tzService.getTimezone(enumerator.getNext()); + if (tz && !tz.isFloating && !tz.isUTC) { + var displayName = tz.displayName; + displayNames.push(displayName); + tzids[displayName] = tz.tzid; + } + } + // the display names need to be sorted + displayNames.sort(); + for (var i = 0; i < displayNames.length; ++i) { + var displayName = displayNames[i]; + addMenuItem(tzMenuPopup, displayName, tzids[displayName]); + } + + var index = findTimezone(window.time.timezone); if (index < 0) { - tzname = timezoneString(calendarDefaultTimezone().tzid); - index = findTimezone(tzname); + index = findTimezone(calendarDefaultTimezone()); if (index < 0) { index = 0; } @@ -59,30 +84,22 @@ function onLoad() { } function findTimezone(timezone) { + var tzid = timezone.tzid; var menulist = document.getElementById("timezone-menulist"); var numChilds = menulist.childNodes[0].childNodes.length; for (var i=0; i - Gary Kwong + - Daniel Boelzle - - Alternatively, the contents of this file may be used under the terms of - either the GNU General Public License Version 2 or later (the "GPL"), or @@ -58,6 +59,7 @@