<?php

/**
 * Implements hook_install() using the name of the country as the base of
 * the function name.
 */
function venezuela_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' => 862,
      'country_name' => 'Venezuela, Bolivarian Republic of',
      'country_iso_code_2' => 'VE',
      'country_iso_code_3' => 'VEN',
      'version' => 2,
    ))
    ->execute();

  // Make the entries in the zones table.
  $zones = array(
    array(862, 'AM', 'Amazonas'),
    array(862, 'AN', 'Anzoátegui'),
    array(862, 'AP', 'Apure'),
    array(862, 'AR', 'Aragua'),
    array(862, 'BA', 'Barinas'),
    array(862, 'BO', 'Bolívar'),
    array(862, 'CA', 'Carabobo'),
    array(862, 'CO', 'Cojedes'),
    array(862, 'DA', 'Delta Amacuro'),
    array(862, 'DF', 'Dependencias Federales'),
    array(862, 'DC', 'Distrito Capital'),
    array(862, 'FA', 'Falcón'),
    array(862, 'GU', 'Guárico'),
    array(862, 'LA', 'Lara'),
    array(862, 'ME', 'Mérida'),
    array(862, 'MI', 'Miranda'),
    array(862, 'MO', 'Monagas'),
    array(862, 'NE', 'Nueva Esparta'),
    array(862, 'PO', 'Portuguesa'),
    array(862, 'SU', 'Sucre'),
    array(862, 'TA', 'Táchira'),
    array(862, 'TR', 'Trujillo'),
    array(862, 'VA', 'Vargas'),
    array(862, 'YA', 'Yaracuy'),
    array(862, 'ZU', 'Zulia'),
  );

  $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
  uc_set_address_format(
    862,
    "!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"
  );
}

function venezuela_update($version) {
  switch ($version) {
    case 2:
      // Correct ISO-3166-1 country name
      db_update('uc_countries')
        ->fields(array('country_name' => 'Venezuela, Bolivarian Republic of'))
        ->condition('country_id', 862)
        ->execute();

      break;
  }
}
