<?php

function russia_install() {
  db_query("INSERT INTO {uc_countries} (country_id, country_name, country_iso_code_2, country_iso_code_3, version) VALUES ('643', 'Russian Federation', 'RU', 'RUS', 2)");

  // Make the entries in the zones table.
  $zones = array(
    array(643, 'AD', 'Республика Адыгея'),
    array(643, 'AL', 'Республика Алтай'),
    array(643, 'BA', 'Республика Башкортостан'),
    array(643, 'BU', 'Республика Бурятия'),
    array(643, 'DA', 'Республика Дагестан'),
    array(643, 'IN', 'Республика Ингушетия'),
    array(643, 'KB', 'Кабардино-Балкарская Республика'),
    array(643, 'KL', 'Республика Калмыкия'),
    array(643, 'KC', 'Карачаево-Черкесская республика'),
    array(643, 'KR', 'Республика Карелия'),
    array(643, 'KO', 'Республика Коми'),
    array(643, 'ME', 'Республика Марий Эл'),
    array(643, 'MO', 'Республика Мордовия'),
    array(643, 'SA', 'Республика Саха (Якутия)'),
    array(643, 'SE', 'Республика Северная Осетия-Алания'),
    array(643, 'TA', 'Республика Татарстан'),
    array(643, 'TY', 'Республика Тыва'),
    array(643, 'UD', 'Удмуртская Республика'),
    array(643, 'KK', 'Республика Хакасия'),
    array(643, 'CE', 'Чеченская республика'),
    array(643, 'CU', 'Чувашская Республика'),
    array(643, 'ALT', 'Алтайский край'),
    array(643, 'KDA', 'Краснодарский край'),
    array(643, 'KIA', 'Красноярский край'),
    array(643, 'PER', 'Пермский край'),
    array(643, 'PRI', 'Приморский край'),
    array(643, 'STA', 'Ставропольский край'),
    array(643, 'KHA', 'Хабаровский край'),
    array(643, 'AMU', 'Амурская область'),
    array(643, 'ARK', 'Архангельская область'),
    array(643, 'AST', 'Астраханская область'),
    array(643, 'BEL', 'Белгородская область'),
    array(643, 'BRY', 'Брянская область'),
    array(643, 'VLA', 'Владимирская область'),
    array(643, 'VGG', 'Волгоградская область'),
    array(643, 'VLG', 'Вологодская область'),
    array(643, 'VOR', 'Воронежская область'),
    array(643, 'IVA', 'Ивановская область'),
    array(643, 'IRK', 'Иркутская область'),
    array(643, 'KGD', 'Калининградская область'),
    array(643, 'KLU', 'Калужская область'),
    array(643, 'KAM', 'Камчатский край'),
    array(643, 'KEM', 'Кемеровская область'),
    array(643, 'KIR', 'Кировская область'),
    array(643, 'KOS', 'Костромская область'),
    array(643, 'KGN', 'Курганская область'),
    array(643, 'KRS', 'Курская область'),
    array(643, 'LEN', 'Ленинградская область'),
    array(643, 'LIP', 'Липецкая область'),
    array(643, 'MAG', 'Магаданская область'),
    array(643, 'MOS', 'Московская область'),
    array(643, 'MUR', 'Мурманская область'),
    array(643, 'NIZ', 'Нижегородская область'),
    array(643, 'NGR', 'Новгородская область'),
    array(643, 'NVS', 'Новосибирская область'),
    array(643, 'OMS', 'Омская область'),
    array(643, 'ORE', 'Оренбургская область'),
    array(643, 'ORL', 'Орловская область'),
    array(643, 'PNZ', 'Пензенская область'),
    array(643, 'PSK', 'Псковская область'),
    array(643, 'ROS', 'Ростовская область'),
    array(643, 'RYA', 'Рязанская область'),
    array(643, 'SAM', 'Самарская область'),
    array(643, 'SAR', 'Саратовская область'),
    array(643, 'SAK', 'Сахалинская область'),
    array(643, 'SVE', 'Свердловская область'),
    array(643, 'SMO', 'Смоленская область'),
    array(643, 'TAM', 'Тамбовская область'),
    array(643, 'TVE', 'Тверская область'),
    array(643, 'TOM', 'Томская область'),
    array(643, 'TUL', 'Тульская область'),
    array(643, 'TYU', 'Тюменская область'),
    array(643, 'ULY', 'Ульяновская область'),
    array(643, 'CHE', 'Челябинская область'),
    array(643, 'YAR', 'Ярославская область'),
    array(643, 'MOW', 'Москва'),
    array(643, 'SPE', 'Санкт-Петербург'),
    array(643, 'YEV', 'Еврейская автономная область'),
    array(643, 'NEN', 'Ненецкий автономный округ'),
    array(643, 'KHM', 'Ханты-Мансийский автономный округ - Югра'),
    array(643, 'CHU', 'Чукотский автономный округ'),
    array(643, 'YAN', 'Ямало-Ненецкий автономный округ'),
    array(643, 'ZAB', 'Забайкальский край'),
  );

  foreach ($zones as $zone) {
    db_query("INSERT INTO {uc_zones} (zone_country_id, zone_code, zone_name) VALUES (%d, '%s', '%s')", $zone);
  }

  uc_set_address_format(643, "!company\n!first_name !last_name\n!street1\n!street2\n!postal_code !city\n!country_name_if");
}

function russia_update($version) {
  switch ($version) {
    case 2:
      // Correct ISO-3166-1 country name
      db_query("UPDATE {uc_countries} SET country_name = 'Russian Federation' WHERE country_id = '643'");

      // Remove old obsolete zones
      $zones = array(
        array(643, 'AGB', 'Агинский Бурятский автономный округ'),
        array(643, 'CHI', 'Читинская область'),
        array(643, 'KOR', 'Корякский автономный округ'),
        array(643, 'UOB', 'Усть-Ордынский Бурятский автономный округ'),
      );

      foreach ($zones as $zone) {
        db_query("DELETE FROM {uc_zones} WHERE zone_country_id = %d AND zone_code = '%s'", $zone[0], $zone[1]);
      }

      // Add some new zones
      $zones = array(
        array(643, 'ZAB', 'Забайкальский край'),
      );

      foreach ($zones as $zone) {
        db_query("INSERT INTO {uc_zones} (zone_country_id, zone_code, zone_name) VALUES (%d, '%s', '%s')", $zone);
      }

      // Rename other zones
      $zones = array(
        array(643, 'KAM', 'KAM', 'Камчатский край'),
      );

      foreach ($zones as $zone) {
        db_query("UPDATE {uc_zones} SET zone_name = '%s', zone_code = '%s' WHERE zone_country_id = %d AND zone_code = '%s'", $zone[3], $zone[2], $zone[0], $zone[1]);
      }

      break;
  }
}
