<?php

/**
 * Implements hook_install() using the name of the country as the base of
 * the function name.
 */
function bosnia_herzegovina_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' => 70,
      'country_name' => 'Bosnia and Herzegovina',
      'country_iso_code_2' => 'BA',
      'country_iso_code_3' => 'BIH',
      'version' => 2,
    ))
    ->execute();

  // Make the entries in the zones table.
  $zones = array(
    array(70, 'BIH', 'Federacija Bosna i Hercegovina'),
    array(70, 'SRP', 'Republika Srpska'),
    array(70, '05', 'Bosansko-Podrinjski Kanton'),
    array(70, '10', 'Hercegovacko-Bosanski Kanton'),
    array(70, '07', 'Hercegovacko-Neretvanski Kanton'),
    array(70, '09', 'Kanton Sarajevo'),
    array(70, '02', 'Posavski Kanton'),
    array(70, '06', 'Srednjobosanski Kanton'),
    array(70, '03', 'Tuzlanski Kanton'),
    array(70, '01', 'Unsko-Sanski Kanton'),
    array(70, '08', 'Zapadno-Hercegovacki Kanton'),
    array(70, '04', 'Zenicko-Dobojski Kanton'),
  );

  $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(
    70,
    "!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 bosnia_herzegovina_update($version) {
  switch ($version) {
    case 2:
      // Correct ISO-3166-1 country name
      db_update('uc_countries')
        ->fields(array('country_name' => 'Bosnia and Herzegovina'))
        ->condition('country_id', 70)
        ->execute();

      break;
  }
}
