1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <?php
- /**
- * Implements hook_install() using the name of the country as the base of
- * the function name.
- */
- function canada_install() {
- // Make the entry in the country table.
- // VALUES = Country ID, Country Name, 2-digit Code, 3-digit Code, File Version
- db_insert('uc_countries')
- ->fields(array(
- 'country_id' => 124,
- 'country_name' => 'Canada',
- 'country_iso_code_2' => 'CA',
- 'country_iso_code_3' => 'CAN',
- 'version' => 2,
- ))
- ->execute();
- // Make the entries in the zones table.
- $zones = array(
- array(124, 'AB', 'Alberta'),
- array(124, 'BC', 'British Columbia'),
- array(124, 'MB', 'Manitoba'),
- array(124, 'NL', 'Newfoundland and Labrador'),
- array(124, 'NB', 'New Brunswick'),
- array(124, 'NS', 'Nova Scotia'),
- array(124, 'NT', 'Northwest Territories'),
- array(124, 'NU', 'Nunavut'),
- array(124, 'ON', 'Ontario'),
- array(124, 'PE', 'Prince Edward Island'),
- array(124, 'QC', 'Quebec'),
- array(124, 'SK', 'Saskatchewan'),
- array(124, 'YT', 'Yukon Territory'),
- );
- $query = db_insert('uc_zones')->fields(array('zone_country_id', 'zone_code', 'zone_name'));
- foreach ($zones as $zone) {
- $query->values($zone);
- }
- $query->execute();
- // Set address format
- // Have to call variable_set() instead of uc_set_address_format()
- // because the Canada .cif file is loaded during the installation
- // of the uc_store module, before uc_set_address_format() is available
- // to use.
- variable_set(
- 'uc_address_format_124',
- "!company\r\n" .
- "!first_name !last_name\r\n" .
- "!street1\r\n" .
- "!street2\r\n" .
- "!city !zone_code !postal_code\r\n" .
- "!country_name_if"
- );
- }
- /**
- * Implements hook_update() with $version being the only argument.
- * Add a new case for each version update, and be sure to always include the
- * latest changes in the install function.
- */
- function canada_update($version) {
- switch ($version) {
- case 2:
- // Rename zone
- db_update('uc_zones')
- ->fields(array('zone_name' => 'Newfoundland and Labrador', 'zone_code' => 'NL'))
- ->condition('zone_country_id', 124)
- ->condition('zone_code', 'NF')
- ->execute();
- break;
- }
- }
|