51562112fac555285c1e875f2e49e785c98ad564
[squirrelmail.git] / include / timezones / standard.php
1 <?php
2 /**
3 * SquirrelMail time zone library
4 *
5 * Used ftp://elsie.nci.nih.gov/pub/tzdata2005j.tar.gz as reference
6 *
7 * Time zone array must consist of key name that matches time zone name in
8 * GNU C library and 'LINK', 'NAME' and 'TZ' subkeys. 'LINK' subkey is used
9 * to define time zone aliases ('Link some/name other/name' in GNU C). It
10 * should link to other time zone array entry with 'NAME' and 'TZ' subkeys.
11 * Linking to 'LINK' entries will cause errors in time zone library checks.
12 * 'NAME' key should store translatable time zone name. 'TZ' key should store
13 * time zone name that will be used in TZ environment variable. Array entries
14 * can use 'LINK' or 'TZ' subkeys. 'LINK' and 'TZ' subkeys should not be used
15 * in same array key. 'NAME' subkeys are optional and used only in display
16 * of 'TZ' key entries.
17 *
18 * Copyright (c) 2005 The SquirrelMail Project Team
19 * This file is part of SquirrelMail webmail interface.
20 *
21 * SquirrelMail is free software; you can redistribute it and/or modify
22 * it under the terms of the GNU General Public License as published by
23 * the Free Software Foundation; either version 2 of the License, or
24 * (at your option) any later version.
25 *
26 * SquirrelMail is distributed in the hope that it will be useful,
27 * but WITHOUT ANY WARRANTY; without even the implied warranty of
28 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29 * GNU General Public License for more details.
30 *
31 * You should have received a copy of the GNU General Public License
32 * along with SquirrelMail; if not, write to the Free Software
33 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
34 *
35 * @link ftp://elsie.nci.nih.gov/pub/ GNU C time zone implementation
36 * @link some source of POSIX TZ names
37 * @package squirrelmail
38 * @subpackage timezones
39 */
40
41 /**
42 * Standard timezone array.
43 *
44 * TZ subkeys must be updated if some government decides to change timezone.
45 *
46 * Generic abbreviations:
47 * <ul>
48 * <li>GMT - Greenwich Mean Time
49 * <li>UTC - Coordinated Universal Time
50 * <li>UCT - Universal Coordinate Time
51 * </ul>
52 *
53 * Array is not globalized in order to save memory. Used array is extracted
54 * with sq_get_tz_array(). Array is loaded only when strict time zone is set
55 * or personal information option page is loaded. 'timezones' gettext domain
56 * must be set before loading this array.
57 * @global array $aTimeZones
58 */
59 $aTimeZones=array();
60
61 /** Africa **/
62 $aTimeZones['Africa/Algiers']['NAME']='Algeria';
63 $aTimeZones['Africa/Algiers']['TZ']='CET';
64 $aTimeZones['Africa/Luanda']['NAME']='Angola';
65 $aTimeZones['Africa/Luanda']['TZ']='UCT-1';
66 $aTimeZones['Africa/Porto-Novo']['NAME']='Benin';
67 $aTimeZones['Africa/Porto-Novo']['TZ']='UCT-1';
68 $aTimeZones['Africa/Gaborone']['NAME']='Botswana';
69 $aTimeZones['Africa/Gaborone']['TZ']='UCT-2';
70 $aTimeZones['Africa/Ouagadougou']['NAME']='Burkina Faso';
71 $aTimeZones['Africa/Ouagadougou']['TZ']='GMT';
72 $aTimeZones['Africa/Bujumbura']['NAME']='Burundi';
73 $aTimeZones['Africa/Bujumbura']['TZ']='UCT-2';
74 $aTimeZones['Africa/Douala']['NAME']='Cameroon';
75 $aTimeZones['Africa/Douala']['TZ']='UCT-1';
76 $aTimeZones['Atlantic/Cape_Verde']['NAME']='Cape Verde';
77 $aTimeZones['Atlantic/Cape_Verde']['TZ']='UCT1';
78 $aTimeZones['Africa/Bangui']['NAME']='Central African Republic';
79 $aTimeZones['Africa/Bangui']['TZ']='UCT-1';
80 $aTimeZones['Africa/Ndjamena']['NAME']='Chad';
81 $aTimeZones['Africa/Ndjamena']['TZ']='UCT-1';
82 $aTimeZones['Indian/Comoro']['NAME']='Comoros';
83 $aTimeZones['Indian/Comoro']['TZ']='UCT-3';
84 $aTimeZones['Africa/Kinshasa']['NAME']='Democratic Republic of Congo, Kinshasa';
85 $aTimeZones['Africa/Kinshasa']['TZ']='UCT-1';
86 $aTimeZones['Africa/Lubumbashi']['NAME']='Democratic Republic of Congo';
87 $aTimeZones['Africa/Lubumbashi']['TZ']='UCT-2';
88 $aTimeZones['Africa/Brazzaville']['NAME']='Republic of the Congo';
89 $aTimeZones['Africa/Brazzaville']['TZ']='UCT-1';
90 $aTimeZones['Africa/Abidjan']['NAME']='Cote D\'Ivoire';
91 $aTimeZones['Africa/Abidjan']['TZ']='GMT';
92 $aTimeZones['Africa/Djibouti']['NAME']='Djibouti';
93 $aTimeZones['Africa/Djibouti']['TZ']='UCT-3';
94
95 // Daylight savings between Apr lastFri 0:00 and Sep lastThu 23:00 (+1)
96 $aTimeZones['Africa/Cairo']['NAME']='Egypt';
97 $aTimeZones['Africa/Cairo']['TZ']='EST-2EDT';
98
99 $aTimeZones['Africa/Malabo']['NAME']='Equatorial Guinea';
100 $aTimeZones['Africa/Malabo']['TZ']='UCT-1';
101 $aTimeZones['Africa/Asmera']['NAME']='Eritrea';
102 $aTimeZones['Africa/Asmera']['TZ']='UCT-3';
103 $aTimeZones['Africa/Addis_Ababa']['NAME']='Ethiopia';
104 $aTimeZones['Africa/Addis_Ababa']['TZ']='UCT-3';
105 $aTimeZones['Africa/Libreville']['NAME']='Gabon';
106 $aTimeZones['Africa/Libreville']['TZ']='UCT-1';
107 $aTimeZones['Africa/Banjul']['NAME']='Gambia';
108 $aTimeZones['Africa/Banjul']['TZ']='GMT';
109 $aTimeZones['Africa/Accra']['NAME']='Ghana';
110 $aTimeZones['Africa/Accra']['TZ']='UCT';
111 $aTimeZones['Africa/Conakry']['NAME']='Guinea';
112 $aTimeZones['Africa/Conakry']['TZ']='GMT';
113 $aTimeZones['Africa/Bissau']['NAME']='Guinea-Bissau';
114 $aTimeZones['Africa/Bissau']['TZ']='GMT';
115 $aTimeZones['Africa/Nairobi']['NAME']='Kenya';
116 $aTimeZones['Africa/Nairobi']['TZ']='UCT-3';
117 $aTimeZones['Africa/Maseru']['NAME']='Lesotho';
118 $aTimeZones['Africa/Maseru']['TZ']='UCT-2';
119 $aTimeZones['Africa/Monrovia']['NAME']='Liberia';
120 $aTimeZones['Africa/Monrovia']['TZ']='GMT';
121 $aTimeZones['Africa/Tripoli']['NAME']='Libya';
122 $aTimeZones['Africa/Tripoli']['TZ']='UCT-2';
123 $aTimeZones['Indian/Antananarivo']['NAME']='Madagascar';
124 $aTimeZones['Indian/Antananarivo']['TZ']='UCT-3';
125 $aTimeZones['Africa/Blantyre']['NAME']='Malawi';
126 $aTimeZones['Africa/Blantyre']['TZ']='UCT-2';
127 $aTimeZones['Africa/Bamako']['NAME']='Mali';
128 $aTimeZones['Africa/Bamako']['TZ']='GMT';
129 $aTimeZones['Africa/Timbuktu']['NAME']='Mali, Timbuktu';
130 $aTimeZones['Africa/Timbuktu']['TZ']='GMT';
131 $aTimeZones['Africa/Nouakchott']['NAME']='Mauritania';
132 $aTimeZones['Africa/Nouakchott']['TZ']='GMT';
133 $aTimeZones['Indian/Mauritius']['NAME']='Mauritius';
134 $aTimeZones['Indian/Mauritius']['TZ']='UCT-4';
135 $aTimeZones['Indian/Mayotte']['NAME']='Mayotte';
136 $aTimeZones['Indian/Mayotte']['TZ']='UCT-3';
137 $aTimeZones['Africa/Casablanca']['NAME']='Morocco';
138 $aTimeZones['Africa/Casablanca']['TZ']='UCT';
139 $aTimeZones['Africa/El_Aaiun']['NAME']='Western Sahara';
140 $aTimeZones['Africa/El_Aaiun']['TZ']='UCT';
141 $aTimeZones['Africa/Maputo']['NAME']='Mozambique';
142 $aTimeZones['Africa/Maputo']['TZ']='UCT-2';
143
144 // Daylight savings from Sep Sun>=1 2:00 to Apr Sun>=1 2:00 (+1)
145 $aTimeZones['Africa/Windhoek']['NAME']='Namibia';
146 $aTimeZones['Africa/Windhoek']['TZ']='UCT-2';
147
148 $aTimeZones['Africa/Niamey']['NAME']='Niger';
149 $aTimeZones['Africa/Niamey']['TZ']='UCT-1';
150 $aTimeZones['Africa/Lagos']['NAME']='Nigeria';
151 $aTimeZones['Africa/Lagos']['TZ']='UCT-1';
152
153 // Island in Indian ocean
154 $aTimeZones['Indian/Reunion']['NAME']='Reunion';
155 $aTimeZones['Indian/Reunion']['TZ']='UCT-4';
156
157 $aTimeZones['Africa/Kigali']['NAME']='Rwanda';
158 $aTimeZones['Africa/Kigali']['TZ']='UCT-2';
159 $aTimeZones['Atlantic/St_Helena']['NAME']='St.Helena';
160 $aTimeZones['Atlantic/St_Helena']['TZ']='GMT';
161 $aTimeZones['Africa/Sao_Tome']['NAME']='Sao Tome and Principe';
162 $aTimeZones['Africa/Sao_Tome']['TZ']='GMT';
163 $aTimeZones['Africa/Dakar']['NAME']='Senegal';
164 $aTimeZones['Africa/Dakar']['TZ']='GMT';
165 $aTimeZones['Indian/Mahe']['NAME']='Seychelles';
166 $aTimeZones['Indian/Mahe']['TZ']='UCT-4';
167 $aTimeZones['Africa/Freetown']['NAME']='Sierra Leone';
168 $aTimeZones['Africa/Freetown']['TZ']='UCT';
169 $aTimeZones['Africa/Mogadishu']['NAME']='Somalia';
170 $aTimeZones['Africa/Mogadishu']['TZ']='UCT-3';
171 $aTimeZones['Africa/Johannesburg']['NAME']='South Africa';
172 $aTimeZones['Africa/Johannesburg']['TZ']='SAST-2';
173 $aTimeZones['Africa/Khartoum']['NAME']='Sudan';
174 $aTimeZones['Africa/Khartoum']['TZ']='UCT-3';
175 $aTimeZones['Africa/Mbabane']['NAME']='Swaziland';
176 $aTimeZones['Africa/Mbabane']['TZ']='UCT-2';
177 $aTimeZones['Africa/Dar_es_Salaam']['NAME']='Tanzania';
178 $aTimeZones['Africa/Dar_es_Salaam']['TZ']='UCT-3';
179 $aTimeZones['Africa/Lome']['NAME']='Togo';
180 $aTimeZones['Africa/Lome']['TZ']='GMT';
181 $aTimeZones['Africa/Tunis']['NAME']='Tunisia';
182 $aTimeZones['Africa/Tunis']['TZ']='UCT-1';
183 $aTimeZones['Africa/Kampala']['NAME']='Uganda';
184 $aTimeZones['Africa/Kampala']['TZ']='UCT-3';
185 $aTimeZones['Africa/Lusaka']['NAME']='Zambia';
186 $aTimeZones['Africa/Lusaka']['TZ']='UCT-2';
187 $aTimeZones['Africa/Harare']['NAME']='Zimbabwe';
188 $aTimeZones['Africa/Harare']['TZ']='UCT-2';
189
190 /** do we have squirrels in Antarctica */
191 $aTimeZones['Antarctica/Casey']['NAME']='Antarctica, Casey';
192 $aTimeZones['Antarctica/Casey']['TZ']='WST'; // (GMT+8) Western (Aus) Standard Time
193 $aTimeZones['Antarctica/Davis']['NAME']='Antarctica, Davis';
194 $aTimeZones['Antarctica/Davis']['TZ']='DAVT'; // (GMT+7) Davis Time
195 $aTimeZones['Antarctica/Mawson']['NAME']='Antarctica, Mawson';
196 $aTimeZones['Antarctica/Mawson']['TZ']='MAWT'; // (GMT+6) Mawson Time
197 $aTimeZones['Indian/Kerguelen']['NAME']='Antarctica, Kerquelen Island';
198 $aTimeZones['Indian/Kerguelen']['TZ']='TFT'; // (GMT+5) ISO code TF Time
199 $aTimeZones['Antarctica/DumontDUrville']['NAME']="Antarctica, Dumont-d'Urville";
200 $aTimeZones['Antarctica/DumontDUrville']['TZ']='DDUT'; // (GMT+10) Dumont-d'Urville Time
201 $aTimeZones['Antarctica/Syowa']['NAME']='Antarctica, Syowa';
202 $aTimeZones['Antarctica/Syowa']['TZ']='SYOT'; // (GMT+0300) Syowa Time
203 $aTimeZones['Antarctica/Vostok']['NAME']='Antarctica, Vostok';
204 $aTimeZones['Antarctica/Vostok']['TZ']='UTC+6'; // (GMT+6) VOST Vostok time
205 $aTimeZones['Antarctica/Rothera']['NAME']='Antarctica, Rothera';
206 $aTimeZones['Antarctica/Rothera']['TZ']='ROTT'; // (GMT-3) Rothera time
207 // ChileAQ daylight saving rules
208 // 1999 max - Oct Sun>=9 0:00 1:00 S
209 // 2000 max - Mar Sun>=9 0:00 0 -
210 $aTimeZones['Antarctica/Palmer']['NAME']='Antarctica, Palmer';
211 $aTimeZones['Antarctica/Palmer']['TZ']='CLT'; // (GMT-4)
212 // NZAQ daylight saving rules
213 // 1990 max - Oct Sun>=1 2:00s 1:00 D
214 // 1990 max - Mar Sun>=15 2:00s 0 S
215 $aTimeZones['Antarctica/McMurdo']['NAME']='Antarctica, McMurdo';
216 $aTimeZones['Antarctica/McMurdo']['TZ']='NZT'; // (GMT+12)
217 // same as McMurdo
218 $aTimeZones['Antarctica/South_Pole']['NAME']='Antarctica, South Pole';
219 $aTimeZones['Antarctica/South_Pole']['TZ']='NZT';
220
221 /** Asia **/
222 $aTimeZones['Asia/Kabul']['NAME']='Afghanistan';
223 $aTimeZones['Asia/Kabul']['TZ']='UCT-4:30';
224 // RussiaAsia daylight saving rules
225 $aTimeZones['Asia/Yerevan']['NAME']='Armenia';
226 $aTimeZones['Asia/Yerevan']['TZ']='UCT-4';
227 // Azer daylight saving rules
228 // 1997 max - Mar lastSun 1:00 1:00 S
229 // 1997 max - Oct lastSun 1:00 0 -
230 $aTimeZones['Asia/Baku']['NAME']='Azerbaijan';
231 $aTimeZones['Asia/Baku']['TZ']='UCT-3';
232
233 $aTimeZones['Asia/Bahrain']['NAME']='Bahrain';
234 $aTimeZones['Asia/Bahrain']['TZ']='UCT-3';
235
236 $aTimeZones['Asia/Dhaka']['NAME']='Bangladesh';
237 $aTimeZones['Asia/Dhaka']['TZ']='UCT-6';
238
239 $aTimeZones['Asia/Thimphu']['NAME']='Bhutan';
240 $aTimeZones['Asia/Thimphu']['TZ']='UCT-6';
241
242 $aTimeZones['Indian/Chagos']['NAME']='British Indian Ocean Territory';
243 $aTimeZones['Indian/Chagos']['TZ']='UCT-6';
244
245 $aTimeZones['Asia/Brunei']['NAME']='Brunei';
246 $aTimeZones['Asia/Brunei']['TZ']='UCT-8';
247
248 // Burma
249 $aTimeZones['Asia/Rangoon']['NAME']='Myanmar';
250 $aTimeZones['Asia/Rangoon']['TZ']='UCT-6:30';
251
252 $aTimeZones['Asia/Phnom_Penh']['NAME']='Cambodia';
253 $aTimeZones['Asia/Phnom_Penh']['TZ']='UCT-7';
254
255 // China (PRC) - one timezone to rule them all
256 // Changbai Time (Long-white Time)
257 $aTimeZones['Asia/Harbin']['NAME']='China, Changbai Time';
258 $aTimeZones['Asia/Harbin']['TZ']='UCT-8';
259 // Zhongyuan Time (Central plain Time)
260 $aTimeZones['Asia/Shanghai']['NAME']='China, Zhongyuan Time';
261 $aTimeZones['Asia/Shanghai']['TZ']='UCT-8';
262 // Long-shu Time
263 $aTimeZones['Asia/Chongqing']['NAME']='China, Long-shu Time';
264 $aTimeZones['Asia/Chongqing']['TZ']='UCT-8';
265 // Xin-zang Time (Xinjiang-Tibet Time)
266 $aTimeZones['Asia/Urumqi']['NAME']='China, Xin-zang Time';
267 $aTimeZones['Asia/Urumqi']['TZ']='UCT-8';
268 // Kunlun Time
269 $aTimeZones['Asia/Kashgar']['NAME']='China, Kunlun Time';
270 $aTimeZones['Asia/Kashgar']['TZ']='UCT-8';
271
272 $aTimeZones['Asia/Hong_Kong']['NAME']='Hong Kong';
273 $aTimeZones['Asia/Hong_Kong']['TZ']='UCT-8';
274
275 $aTimeZones['Asia/Taipei']['NAME']='Taiwan';
276 $aTimeZones['Asia/Taipei']['TZ']='UCT-8';
277
278 $aTimeZones['Asia/Macau']['NAME']='Macau';
279 $aTimeZones['Asia/Macau']['TZ']='UCT-8';
280 // EUAsia daylight saving rules
281 $aTimeZones['Asia/Nicosia']['NAME']='Cyprus';
282 $aTimeZones['Asia/Nicosia']['TZ']='EET-2EETDST';
283 $aTimeZones['Europe/Nicosia']['LINK']='Asia/Nicosia';
284
285 // RussiaAsia daylight saving rules
286 $aTimeZones['Asia/Tbilisi']['NAME']='Georgia';
287 $aTimeZones['Asia/Tbilisi']['TZ']='UCT-3';
288
289 $aTimeZones['Asia/Dili']['NAME']='East Timor';
290 $aTimeZones['Asia/Dili']['TZ']='UCT-9';
291
292 $aTimeZones['Asia/Calcutta']['NAME']='India';
293 $aTimeZones['Asia/Calcutta']['TZ']='UCT-5:30';
294
295 $aTimeZones['Asia/Jakarta']['NAME']='Indonesia';
296 $aTimeZones['Asia/Jakarta']['TZ']='UCT-7';
297 $aTimeZones['Asia/Pontianak']['NAME']='Indonesia, Kalimantan';
298 $aTimeZones['Asia/Pontianak']['TZ']='UCT-7';
299 $aTimeZones['Asia/Makassar']['NAME']='Indonesia, Sulavesi';
300 $aTimeZones['Asia/Makassar']['TZ']='UCT-8';
301 $aTimeZones['Asia/Jayapura']['NAME']='Indonesia, New Guinea';
302 $aTimeZones['Asia/Jayapura']['TZ']='UCT-9';
303
304 // Persian daylight savings.
305 $aTimeZones['Asia/Tehran']['NAME']='Iran';
306 $aTimeZones['Asia/Tehran']['TZ']='UCT-3:30';
307
308 // Iraq daylight saving rules
309 // 1991 max - Apr 1 3:00s 1:00 D
310 // 1991 max - Oct 1 3:00s 0 S
311 $aTimeZones['Asia/Baghdad']['NAME']='Iraq';
312 $aTimeZones['Asia/Baghdad']['TZ']='IST-3IDT';
313
314 // Zion daylight saving rules.
315 // one of the examples, why politics and religion should be banned
316 // from playing with daylight savings
317 $aTimeZones['Asia/Jerusalem']['NAME']='Israel';
318 $aTimeZones['Asia/Jerusalem']['TZ']='IST-2IDT';
319
320 $aTimeZones['Asia/Tokyo']['NAME']='Japan';
321 $aTimeZones['Asia/Tokyo']['TZ']='UCT-9'; // JST
322
323 // Jordan daylight saving rules
324 // 1999 max - Sep lastThu 0:00s 0 -
325 // 2000 max - Mar lastThu 0:00s 1:00 S
326 $aTimeZones['Asia/Amman']['NAME']='Jordan';
327 $aTimeZones['Asia/Amman']['TZ']='JST-2JDT';
328
329 // Kazakhstan
330 $aTimeZones['Asia/Almaty']['TZ']='UCT-6';
331 $aTimeZones['Asia/Qyzylorda']['TZ']='UCT-6';
332 $aTimeZones['Asia/Aqtobe']['TZ']='UCT-5';
333 $aTimeZones['Asia/Aqtau']['TZ']='UCT-4';
334 $aTimeZones['Asia/Oral']['TZ']='UCT-4';
335
336 // Kirgiz daylight saving rules
337 // 1997 max - Mar lastSun 2:30 1:00 S
338 // 1997 max - Oct lastSun 2:30 0 -
339 $aTimeZones['Asia/Bishkek']['NAME']='Kyrgyzstan';
340 $aTimeZones['Asia/Bishkek']['TZ']='UCT-5';
341
342 $aTimeZones['Asia/Seoul']['NAME']='Republic of Korea';
343 $aTimeZones['Asia/Seoul']['TZ']='UCT-9';
344 $aTimeZones['Asia/Pyongyang']['NAME']='Democratic People\'s Republic of Korea';
345 $aTimeZones['Asia/Pyongyang']['TZ']='UCT-9';
346
347 $aTimeZones['Asia/Kuwait']['NAME']='Kuwait';
348 $aTimeZones['Asia/Kuwait']['TZ']='UCT-3';
349
350 $aTimeZones['Asia/Vientiane']['NAME']='Laos';
351 $aTimeZones['Asia/Vientiane']['TZ']='UCT-7';
352
353 // Lebanon daylight saving rules
354 // 1993 max - Mar lastSun 0:00 1:00 S
355 // 1999 max - Oct lastSun 0:00 0 -
356 $aTimeZones['Asia/Beirut']['NAME']='Lebanon';
357 $aTimeZones['Asia/Beirut']['TZ']='EUT-2EUTDST';
358
359 $aTimeZones['Asia/Kuala_Lumpur']['NAME']='Malaysia';
360 $aTimeZones['Asia/Kuala_Lumpur']['TZ']='MST-8'; // GMT+8
361
362 $aTimeZones['Asia/Kuching']['NAME']='Sabah & Sarawak';
363 $aTimeZones['Asia/Kuching']['TZ']='MST-8'; // GMT+8
364
365 $aTimeZones['Indian/Maldives']['NAME']='Maldives';
366 $aTimeZones['Indian/Maldives']['TZ']='UCT-5';
367
368 // Mongol daylight saving rules
369 // 2001 max - Sep lastSat 2:00 0 -
370 // 2002 max - Mar lastSat 2:00 1:00 S
371 $aTimeZones['Asia/Hovd']['TZ']='EUT-7EUTDST';
372 $aTimeZones['Asia/Ulaanbaatar']['TZ']='EUT-8EUTDST';
373 $aTimeZones['Asia/Choibalsan']['TZ']='EUT-9EUTDST';
374
375 $aTimeZones['Asia/Katmandu']['NAME']='Nepal';
376 $aTimeZones['Asia/Katmandu']['TZ']='UCT-5:45';
377
378 $aTimeZones['Asia/Muscat']['NAME']='Oman';
379 $aTimeZones['Asia/Muscat']['TZ']='UCT-4';
380
381 $aTimeZones['Asia/Karachi']['NAME']='Pakistan';
382 $aTimeZones['Asia/Karachi']['TZ']='UCT-5';
383
384 // Palestine
385 // 1999 max - Apr Fri>=15 0:00 1:00 S
386 // 1999 max - Oct Fri>=15 0:00 0 -
387 $aTimeZones['Asia/Gaza']['NAME']='Palestine';
388 $aTimeZones['Asia/Gaza']['TZ']='UCT-2';
389
390 $aTimeZones['Asia/Manila']['NAME']='Philippines';
391 $aTimeZones['Asia/Manila']['TZ']='UCT-8';
392
393 $aTimeZones['Asia/Qatar']['NAME']='Qatar';
394 $aTimeZones['Asia/Qatar']['TZ']='UCT-3';
395
396 $aTimeZones['Asia/Riyadh']['NAME']='Saudi Arabia';
397 $aTimeZones['Asia/Riyadh']['TZ']='UCT-3';
398
399 $aTimeZones['Asia/Singapore']['NAME']='Singapore';
400 $aTimeZones['Asia/Singapore']['TZ']='UCT-8';
401
402 $aTimeZones['Asia/Colombo']['NAME']='Sri Lanka';
403 $aTimeZones['Asia/Colombo']['TZ']='UCT-6';
404
405 // Syria daylight saving rules
406 // 1994 max - Oct 1 0:00 0 -
407 // 1999 max - Apr 1 0:00 1:00 S
408 $aTimeZones['Asia/Damascus']['NAME']='Syria';
409 $aTimeZones['Asia/Damascus']['TZ']='UCT-2';
410
411 $aTimeZones['Asia/Dushanbe']['NAME']='Tajikistan';
412 $aTimeZones['Asia/Dushanbe']['TZ']='UCT-5';
413
414 $aTimeZones['Asia/Bangkok']['NAME']='Thailand';
415 $aTimeZones['Asia/Bangkok']['TZ']='UCT-7';
416
417 $aTimeZones['Asia/Ashgabat']['NAME']='Turkmenistan';
418 $aTimeZones['Asia/Ashgabat']['TZ']='UCT-5';
419
420 $aTimeZones['Asia/Dubai']['NAME']='United Arab Emirates';
421 $aTimeZones['Asia/Dubai']['TZ']='UCT-4';
422
423 // Uzbekistan
424 $aTimeZones['Asia/Samarkand']['TZ']='UCT-5';
425 $aTimeZones['Asia/Tashkent']['TZ']='UCT-5';
426
427 $aTimeZones['Asia/Saigon']['NAME']='Vietnam';
428 $aTimeZones['Asia/Saigon']['TZ']='UCT-7';
429
430 $aTimeZones['Asia/Aden']['NAME']='Yemen';
431 $aTimeZones['Asia/Aden']['TZ']='UCT-3';
432
433 /** Australia, Oceania, Pacific **/
434 // Northern Territory, Australia
435 $aTimeZones['Australia/Darwin']['TZ']='UCT-9:30';
436 // Western Australia
437 $aTimeZones['Australia/Perth']['TZ']='UCT-8';
438 // Queensland
439 $aTimeZones['Australia/Brisbane']['TZ']='UCT-10';
440 $aTimeZones['Australia/Lindeman']['TZ']='UCT-10';
441 // South Australia
442 // 1987 max - Oct lastSun 2:00s 1:00 -
443 // 1995 max - Mar lastSun 2:00s 0 -
444 $aTimeZones['Australia/Adelaide']['TZ']='CST-9:30CDT';
445 // Tasmania
446 // 1991 max - Mar lastSun 2:00s 0 -
447 // 2001 max - Oct Sun>=1 2:00s 1:00 -
448 $aTimeZones['Australia/Hobart']['TZ']='TST-10TDT';
449 // Victoria
450 // 1995 max - Mar lastSun 2:00s 0 -
451 // 2001 max - Oct lastSun 2:00s 1:00 -
452 $aTimeZones['Australia/Melbourne']['TZ']='EST-10EDT';
453 // New South Wales
454 // 1996 max - Mar lastSun 2:00s 0 -
455 // 2001 max - Oct lastSun 2:00s 1:00 -
456 $aTimeZones['Australia/Sydney']['TZ']='EST-10EDT';
457 $aTimeZones['Australia/Broken_Hill']['TZ']='CST-9:30CDT';
458 // Lord Howe Island
459 // 1996 max - Mar lastSun 2:00 0 -
460 // 2001 max - Oct lastSun 2:00 0:30 -
461 $aTimeZones['Australia/Lord_Howe']['TZ']='LHT-10:30LHDT';
462
463 $aTimeZones['Indian/Christmas']['TZ']='UCT-7';
464 // Cook Islands
465 $aTimeZones['Pacific/Rarotonga']['TZ']='UCT10';
466
467 $aTimeZones['Indian/Cocos']['TZ']='UCT-6:30';
468
469 $aTimeZones['Pacific/Fiji']['TZ']='UCT-12';
470 // French Polynesia
471 $aTimeZones['Pacific/Gambier']['TZ']='UCT9';
472 $aTimeZones['Pacific/Marquesas']['TZ']='UCT9:30';
473 $aTimeZones['Pacific/Tahiti']['TZ']='UCT10';
474 // Guam
475 $aTimeZones['Pacific/Guam']['TZ']='UCT-10';
476 // Kiribati
477 $aTimeZones['Pacific/Tarawa']['TZ']='UCT-12';
478 $aTimeZones['Pacific/Enderbury']['TZ']='UCT-13';
479 $aTimeZones['Pacific/Kiritimati']['TZ']='UCT-14';
480 // North Marianas
481 $aTimeZones['Pacific/Saipan']['TZ']='UCT-10';
482 // Marshall Islands
483 $aTimeZones['Pacific/Majuro']['TZ']='UCT-12';
484 $aTimeZones['Pacific/Kwajalein']['TZ']='UCT-12';
485 // Micronesia
486 $aTimeZones['Pacific/Yap']['TZ']='UCT-10';
487 $aTimeZones['Pacific/Truk']['TZ']='UCT-10';
488 $aTimeZones['Pacific/Ponape']['TZ']='UCT-11';
489 $aTimeZones['Pacific/Kosrae']['TZ']='UCT-11';
490 // Nauru
491 $aTimeZones['Pacific/Nauru']['TZ']='UCT-12';
492 // New Caledonia
493 $aTimeZones['Pacific/Noumea']['TZ']='UCT-11';
494 // New Zealand
495 // NZ 1990 max - Oct Sun>=1 2:00s 1:00 D
496 // Chatham 1990 max - Oct Sun>=1 2:45s 1:00 D
497 // NZ 1990 max - Mar Sun>=15 2:00s 0 S
498 // Chatham 1990 max - Mar Sun>=15 2:45s 0 S
499 $aTimeZones['Pacific/Auckland']['TZ']='NZST-12NZDT';
500 $aTimeZones['Pacific/Chatham']['TZ']='CIST-12:45CIDT';
501 // Niue Islands
502 $aTimeZones['Pacific/Niue']['TZ']='UCT11';
503 // Norfolk
504 $aTimeZones['Pacific/Norfolk']['TZ']='UCT-11:30';
505 // Palau
506 $aTimeZones['Pacific/Palau']['TZ']='UCT-9';
507 // Papua New Guinea
508 $aTimeZones['Pacific/Port_Moresby']['TZ']='UCT-10';
509 // Pitcairn
510 $aTimeZones['Pacific/Pitcairn']['TZ']='UCT8';
511 // American Samoa
512 $aTimeZones['Pacific/Pago_Pago']['TZ']='UCT11';
513 // Samoa
514 $aTimeZones['Pacific/Apia']['TZ']='UCT11';
515 // Solomon Islands
516 $aTimeZones['Pacific/Guadalcanal']['TZ']='UCT-11';
517 // Tokelau Islands
518 $aTimeZones['Pacific/Fakaofo']['TZ']='UCT10';
519 // Tonga
520 $aTimeZones['Pacific/Tongatapu']['TZ']='UCT-13';
521 // Tuvalu
522 $aTimeZones['Pacific/Funafuti']['TZ']='UCT-12';
523 // Johnston
524 $aTimeZones['Pacific/Johnston']['TZ']='UCT10';
525 // Midway
526 $aTimeZones['Pacific/Midway']['TZ']='UCT11';
527 // Wake
528 $aTimeZones['Pacific/Wake']['TZ']='UCT-12';
529 // Vanuatu
530 $aTimeZones['Pacific/Efate']['TZ']='UCT-11';
531 // Wallis and Futuna
532 $aTimeZones['Pacific/Wallis']['TZ']='UCT-12';
533
534 /** old timezone names (backward compatibility) **/
535 $aTimeZones['America/Buenos_Aires']['LINK']='America/Argentina/Buenos_Aires';
536 $aTimeZones['America/Catamarca']['LINK']='America/Argentina/Catamarca';
537 $aTimeZones['America/Cordoba']['LINK']='America/Argentina/Cordoba';
538 $aTimeZones['America/Jujuy']['LINK']='America/Argentina/Jujuy';
539 $aTimeZones['America/Atka']['LINK']='America/Adak';
540 $aTimeZones['America/Ensenada']['LINK']='America/Tijuana';
541 $aTimeZones['America/Fort_Wayne']['LINK']='America/Indianapolis';
542 $aTimeZones['America/Knox_IN']['LINK']='America/Indiana/Knox';
543 $aTimeZones['America/Mendoza']['LINK']='America/Argentina/Mendoza';
544 $aTimeZones['America/Porto_Acre']['LINK']='America/Rio_Branco';
545 $aTimeZones['America/Rosario']['LINK']='America/Argentina/Cordoba';
546 $aTimeZones['America/Virgin']['LINK']='America/St_Thomas';
547 $aTimeZones['Asia/Ashkhabad']['LINK']='Asia/Ashgabat';
548 $aTimeZones['Asia/Chungking']['LINK']='Asia/Chongqing';
549 $aTimeZones['Asia/Dacca']['LINK']='Asia/Dhaka';
550 $aTimeZones['Asia/Macao']['LINK']='Asia/Macau';
551 $aTimeZones['Asia/Ujung_Pandang']['LINK']='Asia/Makassar';
552 $aTimeZones['Asia/Tel_Aviv']['LINK']='Asia/Jerusalem';
553 $aTimeZones['Asia/Thimbu']['LINK']='Asia/Thimphu';
554 $aTimeZones['Asia/Ulan_Bator']['LINK']='Asia/Ulaanbaatar';
555 $aTimeZones['Australia/ACT']['LINK']='Australia/Sydney';
556 $aTimeZones['Australia/Canberra']['LINK']='Australia/Sydney';
557 $aTimeZones['Australia/LHI']['LINK']='Australia/Lord_Howe';
558 $aTimeZones['Australia/NSW']['LINK']='Australia/Sydney';
559 $aTimeZones['Australia/North']['LINK']='Australia/Darwin';
560 $aTimeZones['Australia/Queensland']['LINK']='Australia/Brisbane';
561 $aTimeZones['Australia/South']['LINK']='Australia/Adelaide';
562 $aTimeZones['Australia/Tasmania']['LINK']='Australia/Hobart';
563 $aTimeZones['Australia/Victoria']['LINK']='Australia/Melbourne';
564 $aTimeZones['Australia/West']['LINK']='Australia/Perth';
565 $aTimeZones['Australia/Yancowinna']['LINK']='Australia/Broken_Hill';
566 $aTimeZones['Brazil/Acre']['LINK']='America/Rio_Branco';
567 $aTimeZones['Brazil/DeNoronha']['LINK']='America/Noronha';
568 $aTimeZones['Brazil/East']['LINK']='America/Sao_Paulo';
569 $aTimeZones['Brazil/West']['LINK']='America/Manaus';
570 $aTimeZones['Canada/Atlantic']['LINK']='America/Halifax';
571 $aTimeZones['Canada/Central']['LINK']='America/Winnipeg';
572 $aTimeZones['Canada/East-Saskatchewan']['LINK']='America/Regina';
573 $aTimeZones['Canada/Eastern']['LINK']='America/Toronto';
574 $aTimeZones['Canada/Mountain']['LINK']='America/Edmonton';
575 $aTimeZones['Canada/Newfoundland']['LINK']='America/St_Johns';
576 $aTimeZones['Canada/Pacific']['LINK']='America/Vancouver';
577 $aTimeZones['Canada/Saskatchewan']['LINK']='America/Regina';
578 $aTimeZones['Canada/Yukon']['LINK']='America/Whitehorse';
579 $aTimeZones['Chile/Continental']['LINK']='America/Santiago';
580 $aTimeZones['Chile/EasterIsland']['LINK']='Pacific/Easter';
581 $aTimeZones['Cuba']['LINK']='America/Havana';
582 $aTimeZones['Egypt']['LINK']='Africa/Cairo';
583 $aTimeZones['Eire']['LINK']='Europe/Dublin';
584 $aTimeZones['Europe/Tiraspol']['LINK']='Europe/Chisinau';
585 $aTimeZones['GB']['LINK']='Europe/London';
586 $aTimeZones['GB-Eire']['LINK']='Europe/London';
587 $aTimeZones['GMT+0']['LINK']='Etc/GMT';
588 $aTimeZones['GMT-0']['LINK']='Etc/GMT';
589 $aTimeZones['GMT0']['LINK']='Etc/GMT';
590 $aTimeZones['Greenwich']['LINK']='Etc/GMT';
591 $aTimeZones['Hongkong']['LINK']='Asia/Hong_Kong';
592 $aTimeZones['Iceland']['LINK']='Atlantic/Reykjavik';
593 $aTimeZones['Iran']['LINK']='Asia/Tehran';
594 $aTimeZones['Israel']['LINK']='Asia/Jerusalem';
595 $aTimeZones['Jamaica']['LINK']='America/Jamaica';
596 $aTimeZones['Japan']['LINK']='Asia/Tokyo';
597 $aTimeZones['Kwajalein']['LINK']='Pacific/Kwajalein';
598 $aTimeZones['Libya']['LINK']='Africa/Tripoli';
599 $aTimeZones['Mexico/BajaNorte']['LINK']='America/Tijuana';
600 $aTimeZones['Mexico/BajaSur']['LINK']='America/Mazatlan';
601 $aTimeZones['Mexico/General']['LINK']='America/Mexico_City';
602 $aTimeZones['Navajo']['LINK']='America/Denver';
603 $aTimeZones['NZ']['LINK']='Pacific/Auckland';
604 $aTimeZones['NZ-CHAT']['LINK']='Pacific/Chatham';
605 $aTimeZones['Pacific/Samoa']['LINK']='Pacific/Pago_Pago';
606 $aTimeZones['Poland']['LINK']='Europe/Warsaw';
607 $aTimeZones['Portugal']['LINK']='Europe/Lisbon';
608 $aTimeZones['PRC']['LINK']='Asia/Shanghai';
609 $aTimeZones['ROC']['LINK']='Asia/Taipei';
610 $aTimeZones['ROK']['LINK']='Asia/Seoul';
611 $aTimeZones['Singapore']['LINK']='Asia/Singapore';
612 $aTimeZones['Turkey']['LINK']='Europe/Istanbul';
613 $aTimeZones['UCT']['LINK']='Etc/UCT';
614 $aTimeZones['US/Alaska']['LINK']='America/Anchorage';
615 $aTimeZones['US/Aleutian']['LINK']='America/Adak';
616 $aTimeZones['US/Arizona']['LINK']='America/Phoenix';
617 $aTimeZones['US/Central']['LINK']='America/Chicago';
618 $aTimeZones['US/East-Indiana']['LINK']='America/Indianapolis';
619 $aTimeZones['US/Eastern']['LINK']='America/New_York';
620 $aTimeZones['US/Hawaii']['LINK']='Pacific/Honolulu';
621 $aTimeZones['US/Indiana-Starke']['LINK']='America/Indiana/Knox';
622 $aTimeZones['US/Michigan']['LINK']='America/Detroit';
623 $aTimeZones['US/Mountain']['LINK']='America/Denver';
624 $aTimeZones['US/Pacific']['LINK']='America/Los_Angeles';
625 $aTimeZones['US/Samoa']['LINK']='Pacific/Pago_Pago';
626 $aTimeZones['UTC']['LINK']='Etc/UTC';
627 $aTimeZones['Universal']['LINK']='Etc/UTC';
628 $aTimeZones['W-SU']['LINK']='Europe/Moscow';
629 $aTimeZones['Zulu']['LINK']='Etc/UTC';
630 // zones that were present in SquirrelMail timezones.cfg and
631 // not available in GNU C
632 $aTimeZones['Asia/Ishigaki']['LINK']='Asia/Tokyo';
633 $aTimeZones['China/Beijing']['LINK']='Asia/Shanghai';
634 $aTimeZones['China/Shanghai']['LINK']='Asia/Shanghai';
635 $aTimeZones['GMT']['LINK']='Etc/GMT';
636 $aTimeZones['Factory']['LINK']='Etc/GMT';
637
638 /** etcetera (GMT,UTC, UCT zones) **/
639 $aTimeZones['Etc/GMT']['TZ']='GMT';
640 $aTimeZones['Etc/UTC']['TZ']='UTC';
641 $aTimeZones['Etc/UCT']['TZ']='UCT';
642
643 $aTimeZones['Etc/Universal']['LINK']='Etc/UTC';
644 $aTimeZones['Etc/Zulu']['LINK']='Etc/UTC';
645 $aTimeZones['Etc/Greenwich']['LINK']='Etc/GMT';
646 $aTimeZones['Etc/GMT-0']['LINK']='Etc/GMT';
647 $aTimeZones['Etc/GMT+0']['LINK']='Etc/GMT';
648 $aTimeZones['Etc/GMT0']['LINK']='Etc/GMT';
649
650 $aTimeZones['Etc/GMT-14']['TZ']='GMT-14';
651 $aTimeZones['Etc/GMT-13']['TZ']='GMT-13';
652 $aTimeZones['Etc/GMT-12']['TZ']='GMT-12';
653 $aTimeZones['Etc/GMT-11']['TZ']='GMT-11';
654 $aTimeZones['Etc/GMT-10']['TZ']='GMT-10';
655 $aTimeZones['Etc/GMT-9']['TZ']='GMT-9';
656 $aTimeZones['Etc/GMT-8']['TZ']='GMT-8';
657 $aTimeZones['Etc/GMT-7']['TZ']='GMT-7';
658 $aTimeZones['Etc/GMT-6']['TZ']='GMT-6';
659 $aTimeZones['Etc/GMT-5']['TZ']='GMT-5';
660 $aTimeZones['Etc/GMT-4']['TZ']='GMT-4';
661 $aTimeZones['Etc/GMT-3']['TZ']='GMT-3';
662 $aTimeZones['Etc/GMT-2']['TZ']='GMT-2';
663 $aTimeZones['Etc/GMT-1']['TZ']='GMT-1';
664 $aTimeZones['Etc/GMT+1']['TZ']='GMT+1';
665 $aTimeZones['Etc/GMT+2']['TZ']='GMT+2';
666 $aTimeZones['Etc/GMT+3']['TZ']='GMT+3';
667 $aTimeZones['Etc/GMT+4']['TZ']='GMT+4';
668 $aTimeZones['Etc/GMT+5']['TZ']='GMT+5';
669 $aTimeZones['Etc/GMT+6']['TZ']='GMT+6';
670 $aTimeZones['Etc/GMT+7']['TZ']='GMT+7';
671 $aTimeZones['Etc/GMT+8']['TZ']='GMT+8';
672 $aTimeZones['Etc/GMT+9']['TZ']='GMT+9';
673 $aTimeZones['Etc/GMT+10']['TZ']='GMT+10';
674 $aTimeZones['Etc/GMT+11']['TZ']='GMT+11';
675 $aTimeZones['Etc/GMT+12']['TZ']='GMT+12';
676
677 /** europe **/
678 // EU daylight saving rules apply unless noted other
679 // EU 1981 max - Mar lastSun 1:00u 1:00 S
680 // EU 1996 max - Oct lastSun 1:00u 0 -
681 // W-Eur 1981 max - Mar lastSun 1:00s 1:00 S
682 // W-Eur 1996 max - Oct lastSun 1:00s 0 -
683 // C-Eur 1981 max - Mar lastSun 2:00s 1:00 S
684 // C-Eur 1996 max - Oct lastSun 2:00s 0 -
685 // E-Eur 1981 max - Mar lastSun 0:00 1:00 S
686 // E-Eur 1996 max - Oct lastSun 0:00 0 -
687 // Russia 1993 max - Mar lastSun 2:00s 1:00 S
688 // Russia 1996 max - Oct lastSun 2:00s 0 -
689 // Thule 1993 max - Apr Sun>=1 2:00 1:00 D
690 // Thule 1993 max - Oct lastSun 2:00 0 S
691
692 // Britain (United Kingdom) and Ireland (Eire)
693 $aTimeZones['Europe/London']['TZ']='GMT';
694 $aTimeZones['Europe/Belfast']['TZ']='GMT';
695 $aTimeZones['Europe/Dublin']['TZ']='GMT';
696 // Old tz names
697 $aTimeZones['WET']['TZ']='WET0WEST'; // EU (WET/WEST)
698 $aTimeZones['CET']['TZ']='CET-1CEST'; // C-Eur (CET/CEST)
699 $aTimeZones['MET']['TZ']='MET-1MEST'; // C-Eur (MET/MEST)
700 $aTimeZones['EET']['TZ']='EET-2EEST'; // EU (EET/EEST)
701
702 $aTimeZones['Europe/Tirane']['NAME']='Albania';
703 $aTimeZones['Europe/Tirane']['TZ']='MET-1METDST'; // ? CE%sT
704 $aTimeZones['Europe/Andorra']['NAME']='Andorra';
705 $aTimeZones['Europe/Andorra']['TZ']='MET-1METDST';
706 $aTimeZones['Europe/Vienna']['NAME']='Austria';
707 $aTimeZones['Europe/Vienna']['TZ']='MEZ-1MESZ'; // ? should be CE%sT
708 $aTimeZones['Europe/Minsk']['NAME']='Belorus'; // Russia daylight saving rules
709 $aTimeZones['Europe/Minsk']['TZ']='EET-2EETDST';
710 $aTimeZones['Europe/Brussels']['NAME']='Belgium';
711 $aTimeZones['Europe/Brussels']['TZ']='MET-1METDST';
712 $aTimeZones['Europe/Sofia']['NAME']='Bulgaria';
713 $aTimeZones['Europe/Sofia']['TZ']='EET-2EETDST'; // ? EE%sT
714 $aTimeZones['Europe/Prague']['NAME']='Czech Republic';
715 $aTimeZones['Europe/Prague']['TZ']='MET-1METDST';
716 $aTimeZones['Europe/Copenhagen']['NAME']='Denmark';
717 $aTimeZones['Europe/Copenhagen']['TZ']='MET-1METDST';
718 $aTimeZones['Atlantic/Faeroe']['NAME']='Faroe Islands';
719 $aTimeZones['Atlantic/Faeroe']['TZ']='WET0WETDST';
720
721 // Greenland
722 $aTimeZones['America/Danmarkshavn']['TZ']='GMT'; // no daylight saving rules
723 $aTimeZones['America/Scoresbysund']['TZ']='EUT1EUTDST';
724 $aTimeZones['America/Godthab']['TZ']='EUT3EUTDST'; // gmt-3, eu daylight saving rules
725 $aTimeZones['America/Thule']['TZ']='AST4ADT'; // Thule daylight saving rules
726
727 $aTimeZones['Europe/Tallinn']['NAME']='Estonia';
728 $aTimeZones['Europe/Tallinn']['TZ']='EET-2EETDST';
729 $aTimeZones['Europe/Helsinki']['NAME']='Finland';
730 $aTimeZones['Europe/Helsinki']['TZ']='EET-2EETDST';
731 // Aaland Islands
732 $aTimeZones['Europe/Mariehamn']['LINK']='Europe/Helsinki';
733 $aTimeZones['Europe/Paris']['NAME']='France';
734 $aTimeZones['Europe/Paris']['TZ']='MET-1METDST';
735 $aTimeZones['Europe/Berlin']['NAME']='Germany';
736 $aTimeZones['Europe/Berlin']['TZ']='MET-1METDST'; // ? or MEZ-1MESZ
737 $aTimeZones['Europe/Gibraltar']['NAME']='Gibraltar';
738 $aTimeZones['Europe/Gibraltar']['TZ']='MET-1METDST';
739 $aTimeZones['Europe/Athens']['NAME']='Greece';
740 $aTimeZones['Europe/Athens']['TZ']='EET-2EETDST';
741 $aTimeZones['Europe/Budapest']['NAME']='Hungary';
742 $aTimeZones['Europe/Budapest']['TZ']='MET-1METDST';
743 $aTimeZones['Atlantic/Reykjavik']['NAME']='Iceland';
744 $aTimeZones['Atlantic/Reykjavik']['TZ']='GMT'; // no daylight saving rules
745 $aTimeZones['Europe/Rome']['NAME']='Italy';
746 $aTimeZones['Europe/Rome']['TZ']='MET-1METDST';
747 $aTimeZones['Europe/Vatican']['LINK']='Europe/Rome';
748 $aTimeZones['Europe/San_Marino']['LINK']='Europe/Rome';
749 $aTimeZones['Europe/Riga']['NAME']='Latvia';
750 $aTimeZones['Europe/Riga']['TZ']='EET-2EETDST';
751 $aTimeZones['Europe/Vaduz']['NAME']='Liechtenstein';
752 $aTimeZones['Europe/Vaduz']['TZ']='MET-1METDST';
753 $aTimeZones['Europe/Vilnius']['NAME']='Lithuania';
754 $aTimeZones['Europe/Vilnius']['TZ']='EET-2EETDST';
755 $aTimeZones['Europe/Luxembourg']['NAME']='Luxembourg';
756 $aTimeZones['Europe/Luxembourg']['TZ']='MET-1METDST';
757 $aTimeZones['Europe/Malta']['NAME']='Malta';
758 $aTimeZones['Europe/Malta']['TZ']='MET-1METDST';
759 $aTimeZones['Europe/Chisinau']['NAME']='Moldova';
760 $aTimeZones['Europe/Chisinau']['TZ']='EET-2EETDST';
761 $aTimeZones['Europe/Monaco']['NAME']='Monaco';
762 $aTimeZones['Europe/Monaco']['TZ']='MET-1METDST';
763 $aTimeZones['Europe/Amsterdam']['NAME']='Netherlands';
764 $aTimeZones['Europe/Amsterdam']['TZ']='MET-1METDST';
765 $aTimeZones['Europe/Oslo']['NAME']='Norway';
766 $aTimeZones['Europe/Oslo']['TZ']='MET-1METDST';
767 $aTimeZones['Arctic/Longyearbyen']['LINK']='Europe/Oslo';
768 $aTimeZones['Atlantic/Jan_Mayen']['LINK']='Europe/Oslo';
769 $aTimeZones['Europe/Warsaw']['NAME']='Poland';
770 $aTimeZones['Europe/Warsaw']['TZ']='MET-1METDST';
771 $aTimeZones['Europe/Lisbon']['NAME']='Portugal';
772 $aTimeZones['Europe/Lisbon']['TZ']='PWT0PST'; // ? WET0WETDST
773 $aTimeZones['Atlantic/Azores']['NAME']='Azores';
774 $aTimeZones['Atlantic/Azores']['TZ']='EUT1EUTDST'; // ? gmt-1 eu daylight saving rules
775 $aTimeZones['Atlantic/Madeira']['NAME']='Madeira';
776 $aTimeZones['Atlantic/Madeira']['TZ']='WET0WETDST'; // ?
777 $aTimeZones['Europe/Bucharest']['NAME']='Romania';
778 $aTimeZones['Europe/Bucharest']['TZ']='EET-2EETDST';
779
780 // Russia (Russia daylight saving rules)
781 $aTimeZones['Europe/Kaliningrad']['NAME']='Russia, Kaliningrad'; // gmt+2
782 $aTimeZones['Europe/Kaliningrad']['TZ']='RFT-2RFTDST'; // Russian Fed. Zone 1
783 $aTimeZones['Europe/Moscow']['NAME']='Russia, Moscow'; // gmt+3
784 $aTimeZones['Europe/Moscow']['TZ']='RFT-3RFTDST'; // Russian Fed. Zone 2
785 $aTimeZones['Europe/Samara']['NAME']='Russia, Samara'; // gmt+4
786 $aTimeZones['Europe/Samara']['TZ']='RFT-4RFTDST'; // Russian Fed. Zone 3
787 $aTimeZones['Asia/Yekaterinburg']['NAME']='Russia, Yekaterinburg'; // gmt+5
788 $aTimeZones['Asia/Yekaterinburg']['TZ']='RFT-5RFTDST'; // Russian Fed. Zone 4
789 $aTimeZones['Asia/Omsk']['NAME']='Russia, Omsk'; // gmt+6
790 $aTimeZones['Asia/Omsk']['TZ']='RFT-6RFTDST'; // Russian Fed. Zone 5
791 $aTimeZones['Asia/Novosibirsk']['NAME']='Russia, Novosibirsk'; // gmt+6
792 $aTimeZones['Asia/Novosibirsk']['TZ']='RFT-6RFTDST'; // Russian Fed. Zone 5
793 $aTimeZones['Asia/Krasnoyarsk']['NAME']='Russia, Krasnoyarsk'; // gmt+7
794 $aTimeZones['Asia/Krasnoyarsk']['TZ']='RFT-7RFTDST'; // Russian Fed. Zone 6
795 $aTimeZones['Asia/Irkutsk']['NAME']='Russia, Irkutsk'; // gmt+8
796 $aTimeZones['Asia/Irkutsk']['TZ']='RFT-8RFTDST'; // Russian Fed. Zone 7
797 $aTimeZones['Asia/Yakutsk']['NAME']='Russia, Yakutsk'; // gmt+9
798 $aTimeZones['Asia/Yakutsk']['TZ']='RFT-9RFTDST'; // Russian Fed. Zone 8
799 $aTimeZones['Asia/Vladivostok']['NAME']='Russia, Vladivostok'; // gmt+10
800 $aTimeZones['Asia/Vladivostok']['TZ']='RFT-10RFTDST'; // Russian Fed. Zone 9
801 $aTimeZones['Asia/Sakhalin']['NAME']='Russia, Sakhalin'; // gmt+10
802 $aTimeZones['Asia/Sakhalin']['TZ']='RFT-10RFTDST'; // Russian Fed. Zone 9
803 $aTimeZones['Asia/Magadan']['NAME']='Russia, Magadan'; // gmt+11
804 $aTimeZones['Asia/Magadan']['TZ']='RFT-11RFTDST'; // Russian Fed. Zone 10
805 $aTimeZones['Asia/Kamchatka']['NAME']='Russia, Kamchatka'; // gmt+12
806 $aTimeZones['Asia/Kamchatka']['TZ']='RFT-12RFTDST'; // Russian Fed. Zone 11
807 $aTimeZones['Asia/Anadyr']['NAME']='Russia, Chukotka'; // gmt+12 Chukotskij avtonomnyj okrug
808 $aTimeZones['Asia/Anadyr']['TZ']='RFT-12RFTDST'; // Russian Fed. Zone 11
809
810 $aTimeZones['Europe/Belgrade']['NAME']='Serbia and Montenegro';
811 $aTimeZones['Europe/Belgrade']['TZ']='MET-1METDST';
812
813 // These independent countries are represented as links to other TZs
814 // in GNU C. Use real entries instead of a links in order to have them on menu
815 $aTimeZones['Europe/Ljubljana']['NAME']='Slovenia';
816 $aTimeZones['Europe/Ljubljana']['TZ']='MET-1METDST';
817 $aTimeZones['Europe/Sarajevo']['NAME']='Bosnia and Herzegovina';
818 $aTimeZones['Europe/Sarajevo']['TZ']='MET-1METDST';
819 $aTimeZones['Europe/Skopje']['NAME']='Macedonia';
820 $aTimeZones['Europe/Skopje']['TZ']='MET-1METDST';
821 $aTimeZones['Europe/Zagreb']['NAME']='Croatia';
822 $aTimeZones['Europe/Zagreb']['TZ']='MET-1METDST';
823 $aTimeZones['Europe/Bratislava']['NAME']='Slovakia';
824 $aTimeZones['Europe/Bratislava']['TZ']='MET-1METDST';
825
826 // Spain
827 $aTimeZones['Europe/Madrid']['NAME']='Spain';
828 $aTimeZones['Europe/Madrid']['TZ']='MET-1METDST';
829 $aTimeZones['Africa/Ceuta']['NAME']='Ceuta';
830 $aTimeZones['Africa/Ceuta']['TZ']='MET-1METDST';
831 $aTimeZones['Atlantic/Canary']['NAME']='Canary';
832 $aTimeZones['Atlantic/Canary']['TZ']='WET0WETDST';
833
834 $aTimeZones['Europe/Stockholm']['NAME']='Sweden';
835 $aTimeZones['Europe/Stockholm']['TZ']='MET-1METDST';
836 $aTimeZones['Europe/Zurich']['NAME']='Switzerland';
837 $aTimeZones['Europe/Zurich']['TZ']='MET-1METDST';
838 $aTimeZones['Europe/Istanbul']['NAME']='Turkey';
839 $aTimeZones['Europe/Istanbul']['TZ']='EET-2EETDST';
840 $aTimeZones['Asia/Istanbul']['LINK']='Europe/Istanbul';
841
842 // Ukraine
843 $aTimeZones['Europe/Kiev']['NAME']='Ukraine';
844 $aTimeZones['Europe/Kiev']['TZ']='EET-2EETDST';
845 $aTimeZones['Europe/Uzhgorod']['NAME']='Ukraine, Ruthenia';
846 $aTimeZones['Europe/Uzhgorod']['TZ']='EET-2EETDST';
847 $aTimeZones['Europe/Zaporozhye']['NAME']='Ukraine, Zaporozhye';
848 $aTimeZones['Europe/Zaporozhye']['TZ']='EET-2EETDST';
849 $aTimeZones['Europe/Simferopol']['NAME']='Ukraine, Crimea';
850 $aTimeZones['Europe/Simferopol']['TZ']='EET-2EETDST';
851
852 /** northamerica **/
853 // Rule US 1967 max - Oct lastSun 2:00 0 S
854 // Rule US 1987 max - Apr Sun>=1 2:00 1:00 D
855 //
856 $aTimeZones['America/New_York']['NAME']='US Eastern standard time';
857 $aTimeZones['America/New_York']['TZ']='EST5EDT';
858 $aTimeZones['America/Chicago']['NAME']='US Central standard time';
859 $aTimeZones['America/Chicago']['TZ']='CST6CDT';
860
861 // Oliver County, ND
862 $aTimeZones['America/North_Dakota/Center']['NAME']='US, Oliver County [ND]';
863 $aTimeZones['America/North_Dakota/Center']['TZ']='CST6CDT'; // CST since 1992
864
865 $aTimeZones['America/Denver']['NAME']='US Mountain standard time';
866 $aTimeZones['America/Denver']['TZ']='MST7MDT';
867 $aTimeZones['America/Los_Angeles']['NAME']='US Pacific standard time';
868 $aTimeZones['America/Los_Angeles']['TZ']='PST8PDT';
869
870 // Aliaska
871 //$aTimeZones['America/Juneau']['NAME']='US, Juneau [AL]';
872 $aTimeZones['America/Juneau']['TZ']='NAST9NADT';
873 //$aTimeZones['America/Yakutat']['NAME']='US, Yakutat [AL]';
874 $aTimeZones['America/Yakutat']['TZ']='NAST9NADT';
875 //$aTimeZones['America/Anchorage']['NAME']='US, Anchorage [AL]';
876 $aTimeZones['America/Anchorage']['TZ']='NAST9NADT';
877 //$aTimeZones['America/Nome']['NAME']='US, Nome [AL]';
878 $aTimeZones['America/Nome']['TZ']='NAST9NADT';
879 // $aTimeZones['America/Adak']['NAME']='US, Aleutian Islands';
880 $aTimeZones['America/Adak']['TZ']='AST10ADT';
881
882 $aTimeZones['Pacific/Honolulu']['NAME']='US, Hawaii';
883 $aTimeZones['Pacific/Honolulu']['TZ']='UCT10';
884 $aTimeZones['America/Phoenix']['NAME']='US, Arizona';
885 $aTimeZones['America/Phoenix']['TZ']='MST7'; // gmt-7
886 $aTimeZones['America/Shiprock']['LINK']='America/Denver';
887
888 $aTimeZones['America/Boise']['NAME']='US, South Idaho';
889 $aTimeZones['America/Boise']['TZ']='MST7MDT';
890 $aTimeZones['America/Indianapolis']['NAME']='US, Indiana';
891 $aTimeZones['America/Indianapolis']['TZ']='EST5';
892 $aTimeZones['America/Indiana/Indianapolis']['LINK']='America/Indianapolis';
893 // Crawford County, Indiana
894 $aTimeZones['America/Indiana/Marengo']['NAME']='US, Crawford County [IN]';
895 $aTimeZones['America/Indiana/Marengo']['TZ']='EST5';
896 // Starke County, Indiana
897 $aTimeZones['America/Indiana/Knox']['NAME']='US, Starke County [IN]';
898 $aTimeZones['America/Indiana/Knox']['TZ']='EST5';
899 // Switzerland County, Indiana
900 $aTimeZones['America/Indiana/Vevay']['NAME']='US, Switzerland County [IN]';
901 $aTimeZones['America/Indiana/Vevay']['TZ']='EST5';
902 $aTimeZones['America/Louisville']['NAME']='US, Louisville [KY';
903 $aTimeZones['America/Louisville']['TZ']='EST5EDT';
904 $aTimeZones['America/Kentucky/Louisville']['LINK']='America/Louisville';
905 // Wayne, Clinton, and Russell Counties, Kentucky
906 $aTimeZones['America/Kentucky/Monticello']['NAME']='US, Wayne, Clinton, and Russell Counties [KY]';
907 $aTimeZones['America/Kentucky/Monticello']['TZ']='EST5EDT';
908 // Michigan
909 $aTimeZones['America/Detroit']['NAME']='US, Michigan';
910 $aTimeZones['America/Detroit']['TZ']='EST5EDT';
911 // The Michigan border with Wisconsin switched from EST to CST/CDT in 1973.
912 $aTimeZones['America/Menominee']['NAME']='US, Menominee [MI]';
913 $aTimeZones['America/Menominee']['TZ']='CST6CDT';
914
915 $aTimeZones['EST5EDT']['LINK']='America/New_York';
916 $aTimeZones['CST6CDT']['LINK']='America/Chicago';
917 $aTimeZones['MST7MDT']['LINK']='America/Denver';
918 $aTimeZones['PST8PDT']['LINK']='America/Los_Angeles';
919 $aTimeZones['EST']['LINK']='America/Indianapolis';
920 $aTimeZones['MST']['LINK']='America/Phoenix';
921 $aTimeZones['HST']['LINK']='Pacific/Honolulu';
922
923
924 // Canada
925 // Rule Canada 1974 max - Oct lastSun 2:00 0 S
926 // Rule Canada 1987 max - Apr Sun>=1 2:00 1:00 D
927 // Rule StJohns 1987 max - Oct lastSun 0:01 0 S
928 // Rule StJohns 1989 max - Apr Sun>=1 0:01 1:00 D
929 $aTimeZones['America/St_Johns']['NAME']='Canada, Newfoundland';
930 $aTimeZones['America/St_Johns']['TZ']='NST3:30NDT';
931 $aTimeZones['America/Goose_Bay']['NAME']='Canada, Atlantic';
932 $aTimeZones['America/Goose_Bay']['TZ']='AST4ADT'; // gmt-4 StJohns daylight savings
933 //$aTimeZones['America/Halifax']['NAME']='';
934 $aTimeZones['America/Halifax']['TZ']='AST4ADT'; // gmt-4 Canada daylight savings
935 //$aTimeZones['America/Glace_Bay']['NAME']='';
936 $aTimeZones['America/Glace_Bay']['TZ']='AST4ADT'; // gmt-4 Canada daylight savings
937 // Ontario, Quebec
938 //$aTimeZones['America/Montreal']['NAME']='';
939 $aTimeZones['America/Montreal']['TZ']='EST5EDT';
940 //$aTimeZones['America/Toronto']['NAME']='';
941 $aTimeZones['America/Toronto']['TZ']='EST5EDT';
942 //$aTimeZones['America/Thunder_Bay']['NAME']='';
943 $aTimeZones['America/Thunder_Bay']['TZ']='EST5EDT';
944 //$aTimeZones['America/Nipigon']['NAME']='';
945 $aTimeZones['America/Nipigon']['TZ']='EST5EDT';
946 //$aTimeZones['America/Rainy_River']['NAME']='';
947 $aTimeZones['America/Rainy_River']['TZ']='CST6CDT';
948 // Manitoba
949 // Rule Winn 1987 max - Apr Sun>=1 2:00 1:00 D
950 // Rule Winn 1987 max - Oct lastSun 2:00s 0 S
951 $aTimeZones['America/Winnipeg']['NAME']='Canada, Manitoba';
952 $aTimeZones['America/Winnipeg']['TZ']='CST6CDT';
953 // Saskatchewan
954 //$aTimeZones['America/Regina']['NAME']='';
955 $aTimeZones['America/Regina']['TZ']='CST6';
956 //$aTimeZones['America/Swift_Current']['NAME']='';
957 $aTimeZones['America/Swift_Current']['TZ']='CST6';
958 // Alberta
959 // Rule Edm 1972 max - Oct lastSun 2:00 0 S
960 // Rule Edm 1987 max - Apr Sun>=1 2:00 1:00 D
961 $aTimeZones['America/Edmonton']['NAME']='Canada, Alberta';
962 $aTimeZones['America/Edmonton']['TZ']='MST7MDT';
963 // British Columbia
964 // Rule Vanc 1962 max - Oct lastSun 2:00 0 S
965 // Rule Vanc 1987 max - Apr Sun>=1 2:00 1:00 D
966 $aTimeZones['America/Vancouver']['NAME']='Canada, British Columbia';
967 $aTimeZones['America/Vancouver']['TZ']='PST8PDT';
968 $aTimeZones['America/Dawson_Creek']['NAME']='Canada, Dawson Creek';
969 $aTimeZones['America/Dawson_Creek']['TZ']='MST7';
970 // Northwest Territories, Nunavut, Yukon
971 // Rule NT_YK 1980 max - Oct lastSun 2:00 0 S
972 // Rule NT_YK 1987 max - Apr Sun>=1 2:00 1:00 D
973 //$aTimeZones['America/Pangnirtung']['NAME']='';
974 $aTimeZones['America/Pangnirtung']['TZ']='EST5EDT'; // Canada daylight saving
975 //$aTimeZones['America/Iqaluit']['NAME']='';
976 $aTimeZones['America/Iqaluit']['TZ']='EST5EDT'; // Canada daylight saving
977 //$aTimeZones['America/Rankin_Inlet']['NAME']='';
978 $aTimeZones['America/Rankin_Inlet']['TZ']='CST6CDT'; // Canada daylight saving
979 //$aTimeZones['America/Cambridge_Bay']['NAME']='';
980 $aTimeZones['America/Cambridge_Bay']['TZ']='MST7MDT'; // Canada daylight saving
981 //$aTimeZones['America/Yellowknife']['NAME']='';
982 $aTimeZones['America/Yellowknife']['TZ']='MST7MDT'; // NT_YK daylight saving
983 //$aTimeZones['America/Inuvik']['NAME']='';
984 $aTimeZones['America/Inuvik']['TZ']='MST7MDT'; // NT_YK daylight saving
985 //$aTimeZones['America/Whitehorse']['NAME']='';
986 $aTimeZones['America/Whitehorse']['TZ']='PST8PDT'; // NT_YK daylight saving
987 //$aTimeZones['America/Dawson']['NAME']='';
988 $aTimeZones['America/Dawson']['TZ']='PST8PDT'; // NT_YK daylight saving
989
990 // Mexico
991 // Rule Mexico 2002 max - Apr Sun>=1 2:00 1:00 D
992 // Rule Mexico 2002 max - Oct lastSun 2:00 0 S
993 // Quintana Roo
994 //$aTimeZones['America/Cancun']['NAME']='';
995 $aTimeZones['America/Cancun']['TZ']='CST6CDT';
996 // Campeche, Yucatan
997 //$aTimeZones['America/Merida']['NAME']='';
998 $aTimeZones['America/Merida']['TZ']='CST6CDT';
999 // Coahuila, Durango, Nuevo Leon, Tamaulipas
1000 //$aTimeZones['America/Monterrey']['NAME']='';
1001 $aTimeZones['America/Monterrey']['TZ']='CST6CDT';
1002 // Central Mexico
1003 //$aTimeZones['America/Mexico_City']['NAME']='';
1004 $aTimeZones['America/Mexico_City']['TZ']='CST6CDT';
1005 // Chihuahua
1006 //$aTimeZones['America/Chihuahua']['NAME']='';
1007 $aTimeZones['America/Chihuahua']['TZ']='MST7MDT';
1008 // Sonora
1009 //$aTimeZones['America/Hermosillo']['NAME']='';
1010 $aTimeZones['America/Hermosillo']['TZ']='MST7';
1011 // Baja California Sur, Nayarit, Sinaloa
1012 //$aTimeZones['America/Mazatlan']['NAME']='';
1013 $aTimeZones['America/Mazatlan']['TZ']='MST7MDT';
1014 // Baja California
1015 //$aTimeZones['America/Tijuana']['NAME']='';
1016 $aTimeZones['America/Tijuana']['TZ']='PST8PDT';
1017
1018 $aTimeZones['America/Anguilla']['NAME']='Anguilla';
1019 $aTimeZones['America/Anguilla']['TZ']='UCT4'; // gmt-4 AST
1020 $aTimeZones['America/Antigua']['NAME']='Antigua';
1021 $aTimeZones['America/Antigua']['TZ']='UCT4';
1022
1023 // Bahamas
1024 // 1964 max - Oct lastSun 2:00 0 S
1025 // 1987 max - Apr Sun>=1 2:00 1:00 D
1026 $aTimeZones['America/Nassau']['NAME']='Bahamas';
1027 $aTimeZones['America/Nassau']['TZ']='EST5EDT';
1028
1029 $aTimeZones['America/Barbados']['NAME']='Barbados';
1030 $aTimeZones['America/Barbados']['TZ']='UCT4';
1031 $aTimeZones['America/Belize']['NAME']='Belize';
1032 $aTimeZones['America/Belize']['TZ']='UCT6';
1033 $aTimeZones['Atlantic/Bermuda']['NAME']='Bermuda';
1034 $aTimeZones['Atlantic/Bermuda']['TZ']='AST4ADT'; // Bahamas daylight saving rules
1035 $aTimeZones['America/Cayman']['NAME']='Cayman Islands';
1036 $aTimeZones['America/Cayman']['TZ']='EST5';
1037 $aTimeZones['America/Costa_Rica']['NAME']='Costa Rica';
1038 $aTimeZones['America/Costa_Rica']['TZ']='UCT6';
1039 // Cuba
1040 // 2000 max - Apr Sun>=1 0:00s 1:00 D
1041 // 2005 max - Oct lastSun 0:00s 0 S
1042 $aTimeZones['America/Havana']['NAME']='Cuba';
1043 $aTimeZones['America/Havana']['TZ']='UCT5'; // ? C%sT check daylight savings
1044
1045 $aTimeZones['America/Dominica']['NAME']='Dominica';
1046 $aTimeZones['America/Dominica']['TZ']='UCT4'; // AST4
1047 $aTimeZones['America/Santo_Domingo']['NAME']='Dominican Republic';
1048 $aTimeZones['America/Santo_Domingo']['TZ']='UCT4';
1049 $aTimeZones['America/El_Salvador']['NAME']='El_Salvador';
1050 $aTimeZones['America/El_Salvador']['TZ']='UCT6';
1051 $aTimeZones['America/Grenada']['NAME']='Grenada';
1052 $aTimeZones['America/Grenada']['TZ']='UCT4';
1053 $aTimeZones['America/Guadeloupe']['NAME']='Guadeloupe';
1054 $aTimeZones['America/Guadeloupe']['TZ']='UCT4';
1055 $aTimeZones['America/Guatemala']['NAME']='Guatemala';
1056 $aTimeZones['America/Guatemala']['TZ']='UCT6';
1057 $aTimeZones['America/Port-au-Prince']['NAME']='Haiti';
1058 $aTimeZones['America/Port-au-Prince']['TZ']='EST5EDT';
1059 $aTimeZones['America/Tegucigalpa']['NAME']='Honduras';
1060 $aTimeZones['America/Tegucigalpa']['TZ']='UCT6';
1061 $aTimeZones['America/Jamaica']['NAME']='Jamaica';
1062 $aTimeZones['America/Jamaica']['TZ']='EST5';
1063 $aTimeZones['America/Martinique']['NAME']='Martinique';
1064 $aTimeZones['America/Martinique']['TZ']='UCT4'; // AST4
1065 $aTimeZones['America/Montserrat']['NAME']='Montserrat';
1066 $aTimeZones['America/Montserrat']['TZ']='UCT4';
1067 // Nicaragua
1068 // Rule Nic 2005 only - Apr 10 0:00 1:00 D
1069 // Rule Nic 2005 only - Sep 11 0:00 0 S
1070 $aTimeZones['America/Managua']['NAME']='Nicaragua';
1071 $aTimeZones['America/Managua']['TZ']='CST6CDT';
1072 $aTimeZones['America/Panama']['NAME']='Panama';
1073 $aTimeZones['America/Panama']['TZ']='EST5';
1074 $aTimeZones['America/Puerto_Rico']['NAME']='Puerto Rico';
1075 $aTimeZones['America/Puerto_Rico']['TZ']='UCT4'; // AST4
1076 $aTimeZones['America/St_Kitts']['NAME']='St Kitts-Nevis';
1077 $aTimeZones['America/St_Kitts']['TZ']='UCT4'; // AST4
1078 $aTimeZones['America/St_Lucia']['NAME']='St Lucia';
1079 $aTimeZones['America/St_Lucia']['TZ']='UCT4'; // AST4
1080 $aTimeZones['America/Miquelon']['NAME']='St Pierre and Miquelon';
1081 $aTimeZones['America/Miquelon']['TZ']='UCT3'; // gmt-3 Canada daylight saving rules PMST3PMDT
1082 $aTimeZones['America/St_Vincent']['NAME']='St Vincent and the Grenadines';
1083 $aTimeZones['America/St_Vincent']['TZ']='UCT4'; // AST4
1084
1085 // Rule TC 1979 max - Oct lastSun 0:00 0 S
1086 // Rule TC 1987 max - Apr Sun>=1 0:00 1:00 D
1087 $aTimeZones['America/Grand_Turk']['NAME']='Turks and Caicos';
1088 $aTimeZones['America/Grand_Turk']['TZ']='EST5EDT';
1089
1090 $aTimeZones['America/Tortola']['NAME']='British Virgin Islands';
1091 $aTimeZones['America/Tortola']['TZ']='UCT4'; // AST4
1092 $aTimeZones['America/St_Thomas']['NAME']='Virgin Islands';
1093 $aTimeZones['America/St_Thomas']['TZ']='UCT4'; // AST4
1094
1095 // Pacific Presidential Election Time
1096 $aTimeZones['US/Pacific-New']['LINK']='America/Los_Angeles';
1097
1098 /** southamerica **/
1099
1100 // Argentina
1101 // Buenos Aires (BA), Capital Federal (CF)
1102 //$aTimeZones['America/Argentina/Buenos_Aires']['NAME']='';
1103 $aTimeZones['America/Argentina/Buenos_Aires']['TZ']='SAT3'; // gmt-3 2000
1104 // Santa Fe (SF), Entre Rios (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
1105 // Formosa (FM), Salta (SA), Santiago del Estero (SE), Cordoba (CB),
1106 // San Luis (SL), La Pampa (LP), Neuquen (NQ), Rio Negro (RN)
1107 //$aTimeZones['America/Argentina/Cordoba']['NAME']='';
1108 $aTimeZones['America/Argentina/Cordoba']['TZ']='SAT3'; // gmt-3 since 2000
1109 // Tucuman (TM)
1110 //$aTimeZones['America/Argentina/Tucuman']['NAME']='';
1111 $aTimeZones['America/Argentina/Tucuman']['TZ']='SAT3'; // gmt-3 since 2004
1112 // La Rioja (LR)
1113 //$aTimeZones['America/Argentina/La_Rioja']['NAME']='';
1114 $aTimeZones['America/Argentina/La_Rioja']['TZ']='SAT3'; // gmt-3 since 2004
1115 // San Juan (SJ)
1116 //$aTimeZones['America/Argentina/San_Juan']['NAME']='';
1117 $aTimeZones['America/Argentina/San_Juan']['TZ']='SAT3'; // gmt-3 since 2004
1118 // Jujuy (JY)
1119 //$aTimeZones['America/Argentina/Jujuy']['NAME']='';
1120 $aTimeZones['America/Argentina/Jujuy']['TZ']='SAT3'; // gmt-3 since 2000
1121 // Catamarca (CT)
1122 //$aTimeZones['America/Argentina/Catamarca']['NAME']='';
1123 $aTimeZones['America/Argentina/Catamarca']['TZ']='SAT3'; // gmt-3 since 2004
1124 // Mendoza (MZ)
1125 //$aTimeZones['America/Argentina/Mendoza']['NAME']='';
1126 $aTimeZones['America/Argentina/Mendoza']['TZ']='SAT3'; // gmt-3 since 2004
1127 // Chubut (CH)
1128 //$aTimeZones['America/Argentina/ComodRivadavia']['NAME']='';
1129 $aTimeZones['America/Argentina/ComodRivadavia']['TZ']='SAT3'; // gmt-3 since 2004
1130 // Santa Cruz (SC)
1131 // $aTimeZones['America/Argentina/Rio_Gallegos']['NAME']='';
1132 $aTimeZones['America/Argentina/Rio_Gallegos']['TZ']='SAT3'; // gmt-3 since 2004
1133 // Tierra del Fuego, Antartida e Islas del Atlantico Sur (TF)
1134 //$aTimeZones['America/Argentina/Ushuaia']['NAME']='';
1135 $aTimeZones['America/Argentina/Ushuaia']['TZ']='SAT3'; // gmt-3 since 2004
1136
1137 $aTimeZones['America/Aruba']['NAME']='Aruba';
1138 $aTimeZones['America/Aruba']['TZ']='UCT4'; // AST4
1139 $aTimeZones['America/La_Paz']['NAME']='Bolivia';
1140 $aTimeZones['America/La_Paz']['TZ']='UCT4'; // BOT4
1141
1142 // Brazil
1143 // 2001 max - Feb Sun>=15 0:00 0 -
1144 // 2004 only - Nov 2 0:00 1:00 S
1145 // 2005 max - Oct Sun>=15 0:00 1:00 S
1146 // Fernando de Noronha (administratively part of PE)
1147 // $aTimeZones['America/Noronha']['NAME']='';
1148 $aTimeZones['America/Noronha']['TZ']='NORO2';
1149 // Amapa (AP), east Para (PA)
1150 //$aTimeZones['America/Belem']['NAME']='';
1151 $aTimeZones['America/Belem']['TZ']='BRT3'; // gmt-3
1152 // Maranhao (MA), Piaui (PI), Ceara (CE), Rio Grande do Norte (RN), Paraiba (PB)
1153 //$aTimeZones['America/Fortaleza']['NAME']='';
1154 $aTimeZones['America/Fortaleza']['TZ']='BRT3'; // gmt-3
1155 // Pernambuco (PE) (except Atlantic islands)
1156 //$aTimeZones['America/Recife']['NAME']='';
1157 $aTimeZones['America/Recife']['TZ']='BRT3'; // gmt-3
1158 // Tocantins (TO)
1159 //$aTimeZones['America/Araguaina']['NAME']='';
1160 $aTimeZones['America/Araguaina']['TZ']='BRT3';
1161 // Alagoas (AL), Sergipe (SE)
1162 //$aTimeZones['America/Maceio']['NAME']='';
1163 $aTimeZones['America/Maceio']['TZ']='BRT3';
1164 // Bahia (BA)
1165 //$aTimeZones['America/Bahia']['NAME']='';
1166 $aTimeZones['America/Bahia']['TZ']='BRT3';
1167 // Goias (GO), Distrito Federal (DF), Minas Gerais (MG),
1168 // Espirito Santo (ES), Rio de Janeiro (RJ), Sao Paulo (SP), Parana (PR),
1169 // Santa Catarina (SC), Rio Grande do Sul (RS)
1170 //$aTimeZones['America/Sao_Paulo']['NAME']='';
1171 $aTimeZones['America/Sao_Paulo']['TZ']='BRT3BRST'; // ? gmt-3 Brasil daylight saving rules
1172 // Mato Grosso do Sul (MS)
1173 //$aTimeZones['America/Campo_Grande']['NAME']='';
1174 $aTimeZones['America/Campo_Grande']['TZ']='AMT4AMST'; // ? gmt-4 Brasil daylight saving rules
1175 // Mato Grosso (MT)
1176 //$aTimeZones['America/Cuiaba']['NAME']='';
1177 $aTimeZones['America/Cuiaba']['TZ']='AMT4AMST'; // ? gmt-4 Brasil daylight saving rules
1178 // west Para (PA), Rondonia (RO)
1179 //$aTimeZones['America/Porto_Velho']['NAME']='';
1180 $aTimeZones['America/Porto_Velho']['TZ']='AMT4'; // gmt-4
1181 // Roraima (RR)
1182 //$aTimeZones['America/Boa_Vista']['NAME']='';
1183 $aTimeZones['America/Boa_Vista']['TZ']='AMT4'; // gmt-4
1184 // east Amazonas (AM): Boca do Acre, Jutai, Manaus, Floriano Peixoto
1185 //$aTimeZones['America/Manaus']['NAME']='';
1186 $aTimeZones['America/Manaus']['TZ']='AMT4';
1187 // west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
1188 // Eirunepe, Envira, Ipixuna
1189 //$aTimeZones['America/Eirunepe']['NAME']='';
1190 $aTimeZones['America/Eirunepe']['TZ']='ACT5';
1191 // Acre (AC)
1192 //$aTimeZones['America/Rio_Branco']['NAME']='';
1193 $aTimeZones['America/Rio_Branco']['TZ']='ACT5';
1194
1195 // Chile
1196 //Rule Chile 1999 max - Oct Sun>=9 4:00u 1:00 S
1197 //Rule Chile 2000 max - Mar Sun>=9 3:00u 0 -
1198 $aTimeZones['America/Santiago']['NAME']='Chile';
1199 $aTimeZones['America/Santiago']['TZ']='CST4CDT';
1200 $aTimeZones['Pacific/Easter']['NAME']='Chile, Easter Island';
1201 $aTimeZones['Pacific/Easter']['TZ']='EIST6EIDT';
1202
1203 $aTimeZones['America/Bogota']['NAME']='Colombia';
1204 $aTimeZones['America/Bogota']['TZ']='UCT5'; // COT5
1205 $aTimeZones['America/Curacao']['NAME']='Curacao';
1206 $aTimeZones['America/Curacao']['TZ']='UCT4'; // AST4
1207 $aTimeZones['America/Guayaquil']['NAME']='Equador';
1208 $aTimeZones['America/Guayaquil']['TZ']='UCT5'; // ECT5
1209 $aTimeZones['Pacific/Galapagos']['NAME']='Equador, Galapagos';
1210 $aTimeZones['Pacific/Galapagos']['TZ']='UCT6'; // GALT6
1211
1212 // Falklands
1213 //Rule Falk 2001 max - Apr Sun>=15 2:00 0 -
1214 //Rule Falk 2001 max - Sep Sun>=1 2:00 1:00 S
1215 $aTimeZones['Atlantic/Stanley']['NAME']='Falklands';
1216 $aTimeZones['Atlantic/Stanley']['TZ']='FKT4FKST';
1217
1218 $aTimeZones['America/Cayenne']['NAME']='French Guiana';
1219 $aTimeZones['America/Cayenne']['TZ']='SAT3';
1220 $aTimeZones['America/Guyana']['NAME']='Guyana';
1221 $aTimeZones['America/Guyana']['TZ']='UCT4';
1222 // Paraguay
1223 // Rule Para 2004 max - Oct Sun>=15 0:00 1:00 S
1224 // Rule Para 2005 max - Mar Sun>=8 0:00 0 -
1225 $aTimeZones['America/Asuncion']['NAME']='Paraguay';
1226 $aTimeZones['America/Asuncion']['TZ']='PYT4PYST';
1227
1228 $aTimeZones['America/Lima']['NAME']='Peru';
1229 $aTimeZones['America/Lima']['TZ']='PET5';
1230 $aTimeZones['Atlantic/South_Georgia']['NAME']='South Georgia';
1231 $aTimeZones['Atlantic/South_Georgia']['TZ']='UCT2'; // gmt-2 GST2
1232 $aTimeZones['America/Paramaribo']['NAME']='Suriname';
1233 $aTimeZones['America/Paramaribo']['TZ']='UCT3'; // gmt-3 SRT3
1234 $aTimeZones['America/Port_of_Spain']['NAME']='Trinidad and Tobago';
1235 $aTimeZones['America/Port_of_Spain']['TZ']='UCT4'; // AST4
1236
1237 // Uruguay
1238 //Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
1239 //Rule Uruguay 2005 only - Mar 27 2:00 0 -
1240 $aTimeZones['America/Montevideo']['NAME']='Uruguay';
1241 $aTimeZones['America/Montevideo']['TZ']='SAT3'; // ?
1242
1243 $aTimeZones['America/Caracas']['NAME']='Venezuela';
1244 $aTimeZones['America/Caracas']['TZ']='UCT4'; // VET4
1245
1246 /** SystemV **/
1247 $aTimeZones['SystemV/AST4ADT']['LINK']='America/Halifax';
1248 $aTimeZones['SystemV/EST5EDT']['LINK']='America/New_York';
1249 $aTimeZones['SystemV/CST6CDT']['LINK']='America/Chicago';
1250 $aTimeZones['SystemV/MST7MDT']['LINK']='America/Denver';
1251 $aTimeZones['SystemV/PST8PDT']['LINK']='America/Los_Angeles';
1252 $aTimeZones['SystemV/YST9YDT']['LINK']='America/Anchorage';
1253 $aTimeZones['SystemV/AST4']['LINK']='America/Puerto_Rico';
1254 $aTimeZones['SystemV/EST5']['LINK']='America/Indianapolis';
1255 $aTimeZones['SystemV/CST6']['LINK']='America/Regina';
1256 $aTimeZones['SystemV/MST7']['LINK']='America/Phoenix';
1257 $aTimeZones['SystemV/PST8']['LINK']='Pacific/Pitcairn';
1258 $aTimeZones['SystemV/YST9']['LINK']='Pacific/Gambier';
1259 $aTimeZones['SystemV/HST10']['LINK']='Pacific/Honolulu';
1260
1261 // Saudi Arabia (solar87/solar88/solar89)
1262 //$aTimeZones['Asia/Riyadh87']['NAME']='';
1263 $aTimeZones['Asia/Riyadh87']['TZ']='UCT-3:07:04';
1264 $aTimeZones['Mideast/Riyadh87']['LINK']='Asia/Riyadh87';
1265 //$aTimeZones['Asia/Riyadh88']['NAME']='';
1266 $aTimeZones['Asia/Riyadh88']['TZ']='UCT-3:07:04';
1267 $aTimeZones['Mideast/Riyadh88']['LINK']='Asia/Riyadh88';
1268 //$aTimeZones['Asia/Riyadh89']['NAME']='';
1269 $aTimeZones['Asia/Riyadh89']['TZ']='UCT-3:07:04';
1270 $aTimeZones['Mideast/Riyadh89']['LINK']='Asia/Riyadh89';
1271
1272 ?>