[ Index ]

PHP Cross Reference of Drupal 6 (yi-drupal)

title

Body

[close]

/sites/all/modules/date/date_timezone/ -> date_timezone.install (source)

   1  <?php
   2  
   3  function date_timezone_install() {
   4    $ret = array();
   5    module_enable(array('date_api'));
   6    if (version_compare(PHP_VERSION, '5.2', '<')) {
   7      module_enable(array('date_php4'));
   8    }
   9    return $ret;
  10  }
  11  
  12  function date_timezone_enable() {
  13    module_enable(array('date_api'));
  14    if (version_compare(PHP_VERSION, '5.2', '<')) {
  15      module_enable(array('date_php4'));
  16    }
  17  }
  18  
  19  function date_timezone_module_uninstall() {
  20    $ret = array();
  21    variable_del('date_default_timezone_name');
  22    return $ret;
  23  }
  24  
  25  /**
  26   * @file
  27   * Installation file for Date Timezone
  28   */
  29  /**
  30   * Implementation of hook_requirements().
  31   * Make sure a site timezone name has been selected.
  32   */
  33  function date_timezone_requirements($phase) {
  34    $requirements = array();
  35    $t = get_t();
  36    $error = FALSE;
  37    $value = array();
  38  
  39    switch ($phase) {
  40      case 'runtime':
  41        $tz_name = variable_get('date_default_timezone_name', NULL);
  42        if ($tz_name === NULL) {
  43          $error = TRUE;
  44          $severity = REQUIREMENT_ERROR;
  45          $value = $t('The Date Timezone module requires you to !link.', array('!link' => l($t('set the site timezone name'), 'admin/settings/date-time')));
  46        }
  47        elseif (function_exists('date_create')) {
  48          $date = date_make_date('now', $tz_name);
  49          if (date_offset_get($date) != variable_get('date_default_timezone', 0)) {
  50            $error = TRUE;
  51            $value = $t('The !link may not be correct.', array('!link' => l($t('site timezone name'), 'admin/settings/date-time')));
  52            $severity = REQUIREMENT_WARNING;
  53          }
  54        }
  55    }
  56    if ($error) {
  57        $requirements['date_default_timezone'] = array(
  58          'title' => $t('Date Timezone requirements'),
  59          'value' => $value,
  60          'severity' => $severity,
  61          );
  62      }
  63    return $requirements;
  64  }
  65  
  66  /**
  67   * Get rid of deprecated timezone names.
  68   */
  69  function date_timezone_update_5200() {
  70    $ret = array();
  71    $old = variable_get('date_default_timezone_name', NULL);
  72    if (!empty($old)) {
  73      $new = _date_timezone_replacement($old);
  74      if (!empty($new) && $new != $old) {
  75        variable_set('date_default_timezone_name', $new);
  76      }
  77    }
  78    $results = db_query("SELECT DISTINCT timezone_name FROM {users} ORDER BY timezone_name");
  79    while($row = db_fetch_object($results)) {
  80      if (!empty($row->timezone_name)) {
  81        $new = _date_timezone_replacement($row->timezone_name);
  82        if (!empty($new) && $new != $row->timezone_name) {
  83          db_query("UPDATE {users} SET timezone_name = '%s' WHERE timezone_name = '%s'", $new, $row->timezone_name);
  84        }
  85      }
  86    }
  87    // Make sure the timezone name list gets updated.
  88    cache_clear_all('date_timezone_identifiers_list', 'cache');
  89    return $ret;
  90  }
  91  
  92  /**
  93   * Create replacement values for deprecated timezone names.
  94   */
  95  function _date_timezone_replacement($old) {
  96    $replace = array (
  97    'Brazil/Acre' => 'America/Rio_Branco',
  98    'Brazil/DeNoronha' => 'America/Noronha',
  99    'Brazil/East' => 'America/Recife',
 100    'Brazil/West' => 'America/Manaus',
 101    'Canada/Atlantic' => 'America/Halifax',
 102    'Canada/Central' => 'America/Winnipeg',
 103    'Canada/East-Saskatchewan' => 'America/Regina',
 104    'Canada/Eastern' => 'America/Toronto',
 105    'Canada/Mountain' =>'America/Edmonton',
 106    'Canada/Newfoundland' => 'America/St_Johns',
 107    'Canada/Pacific' => 'America/Vancouver',
 108    'Canada/Saskatchewan' => 'America/Regina',
 109    'Canada/Yukon' => 'America/Whitehorse',
 110    'CET' => 'Europe/Berlin',
 111    'Chile/Continental' => 'America/Santiago',
 112    'Chile/EasterIsland' => 'Pacific/Easter',
 113    'CST6CDT' => 'America/Chicago',
 114    'Cuba' => 'America/Havana',
 115    'EET' => 'Europe/Bucharest',
 116    'Egypt' => 'Africa/Cairo',
 117    'Eire' => 'Europe/Belfast',
 118    'EST' => 'America/New_York',
 119    'EST5EDT' => 'America/New_York',
 120    'GB' => 'Europe/London',
 121    'GB-Eire' => 'Europe/Belfast',
 122    'Etc/GMT' => 'UTC',
 123    'Etc/GMT+0' => 'UTC',
 124    'Etc/GMT+1' => 'UTC',
 125    'Etc/GMT+10' => 'UTC',
 126    'Etc/GMT+11' => 'UTC',
 127    'Etc/GMT+12' => 'UTC',
 128    'Etc/GMT+2' => 'UTC',
 129    'Etc/GMT+3' => 'UTC',
 130    'Etc/GMT+4' => 'UTC',
 131    'Etc/GMT+5' => 'UTC',
 132    'Etc/GMT+6' => 'UTC',
 133    'Etc/GMT+7' => 'UTC',
 134    'Etc/GMT+8' => 'UTC',
 135    'Etc/GMT+9' => 'UTC',
 136    'Etc/GMT-0' => 'UTC',
 137    'Etc/GMT-1' => 'UTC',
 138    'Etc/GMT-10' => 'UTC',
 139    'Etc/GMT-11' => 'UTC',
 140    'Etc/GMT-12' => 'UTC',
 141    'Etc/GMT-13' => 'UTC',
 142    'Etc/GMT-14' => 'UTC',
 143    'Etc/GMT-2' => 'UTC',
 144    'Etc/GMT-3' => 'UTC',
 145    'Etc/GMT-4' => 'UTC',
 146    'Etc/GMT-5' => 'UTC',
 147    'Etc/GMT-6' => 'UTC',
 148    'Etc/GMT-7' => 'UTC',
 149    'Etc/GMT-8' => 'UTC',
 150    'Etc/GMT-9' => 'UTC',
 151    'Etc/GMT0' => 'UTC',
 152    'Etc/Greenwich' => 'UTC',
 153    'Etc/UCT' => 'UTC',
 154    'Etc/Universal' => 'UTC',
 155    'Etc/UTC' => 'UTC',
 156    'Etc/Zulu' => 'UTC',
 157    'Factory' => 'UTC',
 158    'GMT' => 'UTC',
 159    'GMT+0' => 'UTC',
 160    'GMT-0' => 'UTC',
 161    'GMT0' => 'UTC',
 162    'Hongkong' => 'Asia/Hong_Kong',
 163    'HST' => 'Pacific/Honolulu',
 164    'Iceland' => 'Atlantic/Reykjavik',
 165    'Iran' => 'Asia/Tehran',
 166    'Israel' => 'Asia/Tel_Aviv',
 167    'Jamaica' => 'America/Jamaica',
 168    'Japan' => 'Asia/Tokyo',
 169    'Kwajalein' => 'Pacific/Kwajalein',
 170    'Libya' => 'Africa/Tunis',
 171    'MET' => 'Europe/Budapest',
 172    'Mexico/BajaNorte' => 'America/Tijuana',
 173    'Mexico/BajaSur' => 'America/Mazatlan',
 174    'Mexico/General' => 'America/Mexico_City',
 175    'MST' => 'America/Boise',
 176    'MST7MDT' => 'America/Boise',
 177    'Navajo' => 'America/Phoenix',
 178    'NZ' => 'Pacific/Auckland',
 179    'NZ-CHAT' => 'Pacific/Chatham',
 180    'Poland' => 'Europe/Warsaw',
 181    'Portugal' => 'Europe/Lisbon',
 182    'PRC' => 'Asia/Chongqing',
 183    'PST8PDT' => 'America/Los_Angeles',
 184    'ROC' => 'Asia/Taipei',
 185    'ROK' => 'Asia/Seoul',
 186    'Singapore' =>'Asia/Singapore',
 187    'Turkey' => 'Europe/Istanbul',
 188    'US/Alaska' => 'America/Anchorage',
 189    'US/Aleutian' => 'America/Adak',
 190    'US/Arizona' => 'America/Phoenix',
 191    'US/Central' => 'America/Chicago',
 192    'US/East-Indiana' => 'America/Indianapolis',
 193    'US/Eastern' => 'America/New_York',
 194    'US/Hawaii' => 'Pacific/Honolulu',
 195    'US/Indiana-Starke' => 'America/Indiana/Knox',
 196    'US/Michigan' => 'America/Detroit',
 197    'US/Mountain' => 'America/Boise',
 198    'US/Pacific' => 'America/Los_Angeles',
 199    'US/Pacific-New' => 'America/Los_Angeles',
 200    'US/Samoa' => 'Pacific/Samoa',
 201    'W-SU' => 'Europe/Moscow',
 202    'WET' => 'Europe/Paris',
 203    );
 204    if (array_key_exists($old, $replace)) {
 205      return $replace[$old];
 206    }
 207    else {
 208      return $old;
 209    }
 210  }
 211  
 212  /**
 213   * These strings exist only for the extractor to pick them up and make them
 214   * available for translation. Putting them here keeps them from being parsed
 215   * on normal pages.
 216   *
 217   * Idea borrowed from Event module. Thanks killes!
 218   */
 219  function date_timezone_translate() {
 220  t('Africa/Algiers');
 221  t('Africa/Asmera');
 222  t('Africa/Bangui');
 223  t('Africa/Blantyre');
 224  t('Africa/Brazzaville');
 225  t('Africa/Bujumbura');
 226  t('Africa/Cairo');
 227  t('Africa/Ceuta');
 228  t('Africa/Dar_es_Salaam');
 229  t('Africa/Djibouti');
 230  t('Africa/Douala');
 231  t('Africa/Gaborone');
 232  t('Africa/Harare');
 233  t('Africa/Johannesburg');
 234  t('Africa/Kampala');
 235  t('Africa/Khartoum');
 236  t('Africa/Kigali');
 237  t('Africa/Kinshasa');
 238  t('Africa/Lagos');
 239  t('Africa/Libreville');
 240  t('Africa/Luanda');
 241  t('Africa/Lubumbashi');
 242  t('Africa/Lusaka');
 243  t('Africa/Malabo');
 244  t('Africa/Maputo');
 245  t('Africa/Maseru');
 246  t('Africa/Mbabane');
 247  t('Africa/Mogadishu');
 248  t('Africa/Nairobi');
 249  t('Africa/Ndjamena');
 250  t('Africa/Niamey');
 251  t('Africa/Porto-Novo');
 252  t('Africa/Tripoli');
 253  t('Africa/Tunis');
 254  t('Africa/Windhoek');
 255  t('America/Adak');
 256  t('America/Anchorage');
 257  t('America/Anguilla');
 258  t('America/Antigua');
 259  t('America/Araguaina');
 260  t('America/Aruba');
 261  t('America/Asuncion');
 262  t('America/Atka');
 263  t('America/Barbados');
 264  t('America/Belem');
 265  t('America/Belize');
 266  t('America/Boa_Vista');
 267  t('America/Bogota');
 268  t('America/Boise');
 269  t('America/Buenos_Aires');
 270  t('America/Cambridge_Bay');
 271  t('America/Cancun');
 272  t('America/Caracas');
 273  t('America/Catamarca');
 274  t('America/Cayenne');
 275  t('America/Cayman');
 276  t('America/Chicago');
 277  t('America/Chihuahua');
 278  t('America/Cordoba');
 279  t('America/Costa_Rica');
 280  t('America/Cuiaba');
 281  t('America/Curacao');
 282  t('America/Dawson');
 283  t('America/Dawson_Creek');
 284  t('America/Denver');
 285  t('America/Detroit');
 286  t('America/Dominica');
 287  t('America/Edmonton');
 288  t('America/Eirunepe');
 289  t('America/El_Salvador');
 290  t('America/Ensenada');
 291  t('America/Fort_Wayne');
 292  t('America/Fortaleza');
 293  t('America/Glace_Bay');
 294  t('America/Godthab');
 295  t('America/Goose_Bay');
 296  t('America/Grand_Turk');
 297  t('America/Grenada');
 298  t('America/Guadeloupe');
 299  t('America/Guatemala');
 300  t('America/Guayaquil');
 301  t('America/Guyana');
 302  t('America/Halifax');
 303  t('America/Havana');
 304  t('America/Hermosillo');
 305  t('America/Indiana/Indianapolis');
 306  t('America/Indiana/Knox');
 307  t('America/Indiana/Marengo');
 308  t('America/Indiana/Vevay');
 309  t('America/Indianapolis');
 310  t('America/Inuvik');
 311  t('America/Iqaluit');
 312  t('America/Jamaica');
 313  t('America/Jujuy');
 314  t('America/Juneau');
 315  t('America/Kentucky/Louisville');
 316  t('America/Kentucky/Monticello');
 317  t('America/Knox_IN');
 318  t('America/La_Paz');
 319  t('America/Lima');
 320  t('America/Los_Angeles');
 321  t('America/Louisville');
 322  t('America/Maceio');
 323  t('America/Managua');
 324  t('America/Manaus');
 325  t('America/Martinique');
 326  t('America/Mazatlan');
 327  t('America/Mendoza');
 328  t('America/Menominee');
 329  t('America/Merida');
 330  t('America/Mexico_City');
 331  t('America/Miquelon');
 332  t('America/Monterrey');
 333  t('America/Montevideo');
 334  t('America/Montreal');
 335  t('America/Montserrat');
 336  t('America/Nassau');
 337  t('America/New_York');
 338  t('America/Nipigon');
 339  t('America/Nome');
 340  t('America/Noronha');
 341  t('America/Panama');
 342  t('America/Pangnirtung');
 343  t('America/Paramaribo');
 344  t('America/Phoenix');
 345  t('America/Port-au-Prince');
 346  t('America/Port_of_Spain');
 347  t('America/Porto_Acre');
 348  t('America/Porto_Velho');
 349  t('America/Puerto_Rico');
 350  t('America/Rainy_River');
 351  t('America/Rankin_Inlet');
 352  t('America/Recife');
 353  t('America/Regina');
 354  t('America/Rio_Branco');
 355  t('America/Rosario');
 356  t('America/Santiago');
 357  t('America/Santo_Domingo');
 358  t('America/Sao_Paulo');
 359  t('America/Scoresbysund');
 360  t('America/Shiprock');
 361  t('America/St_Johns');
 362  t('America/St_Kitts');
 363  t('America/St_Lucia');
 364  t('America/St_Thomas');
 365  t('America/St_Vincent');
 366  t('America/Swift_Current');
 367  t('America/Tegucigalpa');
 368  t('America/Thule');
 369  t('America/Thunder_Bay');
 370  t('America/Tijuana');
 371  t('America/Tortola');
 372  t('America/Vancouver');
 373  t('America/Virgin');
 374  t('America/Whitehorse');
 375  t('America/Winnipeg');
 376  t('America/Yakutat');
 377  t('America/Yellowknife');
 378  t('Antarctica/Casey');
 379  t('Antarctica/Davis');
 380  t('Antarctica/DumontDUrville');
 381  t('Antarctica/Mawson');
 382  t('Antarctica/McMurdo');
 383  t('Antarctica/Palmer');
 384  t('Antarctica/South_Pole');
 385  t('Antarctica/Syowa');
 386  t('Antarctica/Vostok');
 387  t('Arctic/Longyearbyen');
 388  t('Asia/Aden');
 389  t('Asia/Almaty');
 390  t('Asia/Amman');
 391  t('Asia/Anadyr');
 392  t('Asia/Aqtau');
 393  t('Asia/Aqtobe');
 394  t('Asia/Ashgabat');
 395  t('Asia/Ashkhabad');
 396  t('Asia/Baghdad');
 397  t('Asia/Bahrain');
 398  t('Asia/Baku');
 399  t('Asia/Bangkok');
 400  t('Asia/Beirut');
 401  t('Asia/Bishkek');
 402  t('Asia/Brunei');
 403  t('Asia/Calcutta');
 404  t('Asia/Chungking');
 405  t('Asia/Colombo');
 406  t('Asia/Dacca');
 407  t('Asia/Damascus');
 408  t('Asia/Dhaka');
 409  t('Asia/Dili');
 410  t('Asia/Dubai');
 411  t('Asia/Dushanbe');
 412  t('Asia/Gaza');
 413  t('Asia/Harbin');
 414  t('Asia/Hong_Kong');
 415  t('Asia/Hovd');
 416  t('Asia/Irkutsk');
 417  t('Asia/Istanbul');
 418  t('Asia/Jakarta');
 419  t('Asia/Jayapura');
 420  t('Asia/Jerusalem');
 421  t('Asia/Kabul');
 422  t('Asia/Kamchatka');
 423  t('Asia/Karachi');
 424  t('Asia/Kashgar');
 425  t('Asia/Katmandu');
 426  t('Asia/Krasnoyarsk');
 427  t('Asia/Kuala_Lumpur');
 428  t('Asia/Kuching');
 429  t('Asia/Kuwait');
 430  t('Asia/Macao');
 431  t('Asia/Magadan');
 432  t('Asia/Manila');
 433  t('Asia/Muscat');
 434  t('Asia/Nicosia');
 435  t('Asia/Novosibirsk');
 436  t('Asia/Omsk');
 437  t('Asia/Phnom_Penh');
 438  t('Asia/Pyongyang');
 439  t('Asia/Qatar');
 440  t('Asia/Rangoon');
 441  t('Asia/Riyadh');
 442  t('Asia/Riyadh87');
 443  t('Asia/Riyadh88');
 444  t('Asia/Riyadh89');
 445  t('Asia/Saigon');
 446  t('Asia/Samarkand');
 447  t('Asia/Seoul');
 448  t('Asia/Shanghai');
 449  t('Asia/Singapore');
 450  t('Asia/Taipei');
 451  t('Asia/Tashkent');
 452  t('Asia/Tbilisi');
 453  t('Asia/Tehran');
 454  t('Asia/Tel_Aviv');
 455  t('Asia/Thimbu');
 456  t('Asia/Thimphu');
 457  t('Asia/Tokyo');
 458  t('Asia/Ujung_Pandang');
 459  t('Asia/Ulaanbaatar');
 460  t('Asia/Ulan_Bator');
 461  t('Asia/Urumqi');
 462  t('Asia/Vientiane');
 463  t('Asia/Vladivostok');
 464  t('Asia/Yakutsk');
 465  t('Asia/Yekaterinburg');
 466  t('Asia/Yerevan');
 467  t('Atlantic/Azores');
 468  t('Atlantic/Bermuda');
 469  t('Atlantic/Canary');
 470  t('Atlantic/Cape_Verde');
 471  t('Atlantic/Faeroe');
 472  t('Atlantic/Jan_Mayen');
 473  t('Atlantic/Madeira');
 474  t('Atlantic/South_Georgia');
 475  t('Atlantic/Stanley');
 476  t('Australia/ACT');
 477  t('Australia/Adelaide');
 478  t('Australia/Brisbane');
 479  t('Australia/Broken_Hill');
 480  t('Australia/Canberra');
 481  t('Australia/Darwin');
 482  t('Australia/Hobart');
 483  t('Australia/LHI');
 484  t('Australia/Lindeman');
 485  t('Australia/Lord_Howe');
 486  t('Australia/Melbourne');
 487  t('Australia/NSW');
 488  t('Australia/North');
 489  t('Australia/Perth');
 490  t('Australia/Queensland');
 491  t('Australia/South');
 492  t('Australia/Sydney');
 493  t('Australia/Tasmania');
 494  t('Australia/Victoria');
 495  t('Australia/West');
 496  t('Australia/Yancowinna');
 497  t('Europe/Amsterdam');
 498  t('Europe/Andorra');
 499  t('Europe/Athens');
 500  t('Europe/Belfast');
 501  t('Europe/Belgrade');
 502  t('Europe/Berlin');
 503  t('Europe/Bratislava');
 504  t('Europe/Brussels');
 505  t('Europe/Bucharest');
 506  t('Europe/Budapest');
 507  t('Europe/Chisinau');
 508  t('Europe/Copenhagen');
 509  t('Europe/Dublin');
 510  t('Europe/Gibraltar');
 511  t('Europe/Helsinki');
 512  t('Europe/Istanbul');
 513  t('Europe/Kaliningrad');
 514  t('Europe/Kiev');
 515  t('Europe/Lisbon');
 516  t('Europe/Ljubljana');
 517  t('Europe/London');
 518  t('Europe/Luxembourg');
 519  t('Europe/Madrid');
 520  t('Europe/Malta');
 521  t('Europe/Minsk');
 522  t('Europe/Monaco');
 523  t('Europe/Moscow');
 524  t('Europe/Nicosia');
 525  t('Europe/Oslo');
 526  t('Europe/Paris');
 527  t('Europe/Prague');
 528  t('Europe/Riga');
 529  t('Europe/Rome');
 530  t('Europe/Samara');
 531  t('Europe/San_Marino');
 532  t('Europe/Sarajevo');
 533  t('Europe/Simferopol');
 534  t('Europe/Skopje');
 535  t('Europe/Sofia');
 536  t('Europe/Stockholm');
 537  t('Europe/Tallinn');
 538  t('Europe/Tirane');
 539  t('Europe/Tiraspol');
 540  t('Europe/Uzhgorod');
 541  t('Europe/Vaduz');
 542  t('Europe/Vatican');
 543  t('Europe/Vienna');
 544  t('Europe/Vilnius');
 545  t('Europe/Warsaw');
 546  t('Europe/Zagreb');
 547  t('Europe/Zaporozhye');
 548  t('Europe/Zurich');
 549  t('Indian/Antananarivo');
 550  t('Indian/Chagos');
 551  t('Indian/Christmas');
 552  t('Indian/Cocos');
 553  t('Indian/Comoro');
 554  t('Indian/Kerguelen');
 555  t('Indian/Mahe');
 556  t('Indian/Maldives');
 557  t('Indian/Mauritius');
 558  t('Indian/Mayotte');
 559  t('Indian/Reunion');
 560  t('Pacific/Apia');
 561  t('Pacific/Auckland');
 562  t('Pacific/Chatham');
 563  t('Pacific/Easter');
 564  t('Pacific/Efate');
 565  t('Pacific/Enderbury');
 566  t('Pacific/Fakaofo');
 567  t('Pacific/Fiji');
 568  t('Pacific/Funafuti');
 569  t('Pacific/Galapagos');
 570  t('Pacific/Gambier');
 571  t('Pacific/Guadalcanal');
 572  t('Pacific/Guam');
 573  t('Pacific/Honolulu');
 574  t('Pacific/Johnston');
 575  t('Pacific/Kiritimati');
 576  t('Pacific/Kosrae');
 577  t('Pacific/Kwajalein');
 578  t('Pacific/Majuro');
 579  t('Pacific/Marquesas');
 580  t('Pacific/Midway');
 581  t('Pacific/Nauru');
 582  t('Pacific/Niue');
 583  t('Pacific/Norfolk');
 584  t('Pacific/Noumea');
 585  t('Pacific/Pago_Pago');
 586  t('Pacific/Palau');
 587  t('Pacific/Pitcairn');
 588  t('Pacific/Ponape');
 589  t('Pacific/Port_Moresby');
 590  t('Pacific/Rarotonga');
 591  t('Pacific/Saipan');
 592  t('Pacific/Samoa');
 593  t('Pacific/Tahiti');
 594  t('Pacific/Tarawa');
 595  t('Pacific/Tongatapu');
 596  t('Pacific/Truk');
 597  t('Pacific/Wake');
 598  t('Pacific/Wallis');
 599  t('Pacific/Yap');
 600  t('Pacific/French_Polynesia-Marquesas_Islands');
 601  t('UTC');
 602  }


Generated: Mon Jul 9 18:01:44 2012 Cross-referenced by PHPXref 0.7