$(document).ready(function() {
  html.links();
  html.search();
  html.corners();
  html.regions();
  html.lightbox();
});

var my_cities;
var my_prefix;
var my_switch_region_span;
var my_switch_region_span_html;
var my_switch_city_span;
var my_switch_city_span_html;

if (window.location.pathname == '/en/geography') {
  my_cities = ["Moscow", "St. Petersburg", "Abakan", "Anadyr", "Arkhangelsk", "Astrakhan", "Barnaul", "Belgorod", "Birobidzhan", "Blagoveschensk", "Bryansk", "Novgorod Velikij", "Vladivostok", "Vladikavkaz", "Vladimir", "Volgograd", "Vologda", "Voronezh", "Gorno-Altaysk", "Grozny", "Ekaterinburg", "Ivanovo", "Izhevsk", "Irkutsk", "Yoshkar-ola", "Kaliningrad", "Kaluga", "Kemerovo"];
  my_switch_region_span = 'Areas and regions';
  my_switch_region_span_html = '<a href="javascript://" id="switch-region" class="local">Areas and regions</a>';
  my_switch_city_span = 'Cities';
  my_switch_city_span_html ='<a href="javascript://" id="switch-city" class="local">Cities</a>';
  my_prefix = '/en/geography/';
} else {
  my_cities = ["Москва", "Санкт-Петербург", "Абакан", "Анадырь", "Архангельск", "Астрахань", "Барнаул", "Белгород", "Биробиджан", "Благовещенск", "Брянск", "Великий Новгород", "Владивосток", "Владикавказ", "Владимир", "Волгоград", "Вологда", "Воронеж", "Горно-Алтайск", "Грозный", "Екатеринбург", "Иваново", "Ижевск", "Иркутск", "Йошкар-Ола", "Калининград", "Калуга", "Кемерово"];
  my_switch_region_span = 'Области и регионы';
  my_switch_region_span_html ='<a href="javascript://" id="switch-region" class="local">Области и регионы</a>';
  my_switch_city_span = 'Города';
  my_switch_city_span_html = '<a href="javascript://" id="switch-city" class="local">Города</a>';
  my_prefix = '/geography/';
}

maps = {
  cities: my_cities,
  links: ["moscow", "spb", "abakan", "anadyr", "arkhangelsk", "astrakhan", "barnaul", "belgorod", "birobidzhan", "blagoveschensk", "bryansk", "novgorod", "vladivostok", "vladikavkaz", "vladimir", "volgograd", "vologda", "voronezh", "gorno-altaysk", "grozny", "ekaterinburg", "ivanovo", "izhevsk", "irkutsk", "yoshkar-ola", "kaliningrad", "kaluga", "kemerovo"],
  x: [55.7535, 59.9385,  53.7209, 64.7366, 64.5458, 46.3496, 53.3563, 50.6004, 48.8006, 50.2749, 53.2810, 58.5227, 43.1340, 43.0186, 56.1197, 48.7088, 59.2230, 51.6625, 51.9581, 43.3318, 56.8380, 57.0086, 56.8567, 52.3130, 56.6363, 54.7197, 54.5351, 55.3712],
  y: [37.6092, 30.3134, 91.4424, 177.4773, 40.5517, 48.0303, 83.7616, 36.5981, 132.8991, 127.5341, 34.3762, 31.2703, 131.9284, 44.6801, 40.3413, 44.5142, 39.8838, 39.2040, 85.9712, 45.6448, 60.597, 40.9967, 53.1740, 104.2756, 47.8745, 20.5008, 36.2476, 86.0524],
  healthIcon: null,

  init: function() {
    $("#map-geography").each(function() {
      map = new google.maps.Map2(this);
      map.setCenter(new google.maps.LatLng(55.7864, 79), 3);
      map.addControl(new GSmallMapControl());

      maps.healthIcon = new GIcon();
      maps.healthIcon.image = "/images/marker.png";
      maps.healthIcon.iconSize = new GSize(17, 17);
      maps.healthIcon.iconAnchor = new GPoint(6, 20);
      maps.healthIcon.infoWindowAnchor = new GPoint(5, 1);

      for (i=0; i<maps.cities.length; i++) {
        var point = new GLatLng(maps.x[i], maps.y[i]);
        map.addOverlay(maps.createMarker(point, i));
      }
    });

    $("#map-geography-moscow").each(function() {
      map = new google.maps.Map2(this);
      map.setCenter(new google.maps.LatLng(53.7209, 91.4424), 10);
      map.addControl(new GSmallMapControl());
    });
  },

  createMarker: function(point, number) {
    var marker = new GMarker(point, { title: maps.cities[i], icon: maps.healthIcon });
    marker.value = number;
    GEvent.addListener(marker,"click", function() {
      window.location = my_prefix + maps.links[number];
    });
    return marker;
  }
}

ajax = {
}

html = {
  regions: function() {
    if (("#map-regions").length) {

      $switchRegion = $("#switch-region");
      $switchRegionSpan = $switchRegion.parent();
      $switchCity = $("#switch-city");
      $switchCitySpan = $switchCity.parent();

      $districts = $("#districts").find("a");
      $districtLists = $("#districts").find("li");
      $districtBlocks = $("#map-regions div.district-block");
      $activeDistrict = null;

      $regions = $("#map-regions span.region");
      $cities = $("#map-regions span.city");

      $switchRegion.live("click", function() {
        $cities.hide();
        $regions.show();
        $switchRegionSpan.html(my_switch_region_span);
        $switchCitySpan.html(my_switch_city_span_html);
      });
      $switchCity.live("click", function() {
        $regions.hide();
        $cities.show();
        $switchCitySpan.html(my_switch_city_span);
        $switchRegionSpan.html(my_switch_region_span_html);
      });

      $districts.live("click", function() {
        if ($activeDistrict != null) {
          $districtLists.eq($activeDistrict).removeClass("selected");
          $districtBlocks.eq($activeDistrict).hide();
          $districtLists.eq($activeDistrict).html('<a href="javascript://" class="local">' + $districtLists.eq($activeDistrict).text() + '</a>');
          $districts = $("#districts").find("a");
          $districtLists = $("#districts").find("li");
        }
        var i = $districts.index(this);
        $districtLists.eq(i).addClass("selected");
        $districtLists.eq(i).html($districts.eq(i).text());
        $districtBlocks.eq(i).show();
        $activeDistrict = i;
      });

      $districts.eq(0).click();
      $switchRegion.click();
    }
  },
  quote: function() {
    $quote = $("blockquote");
    var html = $quote.html();
    $quote.html("");
    $quote.append("<div>" + html + "</div>");
  },
  links: function() {
    $("a[rel=external]").attr({target:"_blank"}).addClass("external");
  },
  zebra: function() {
    $("table.data tr:odd td").addClass("zebra");
  },
  flash: function() {
    setTimeout(function() {
      $("#flashMessage").slideUp(200);
    }, 3000);
  },
  history: function() {
    var $lists = $(".history > ul > li");
    var $pads = $(".history ul li ul li");
    $pads.append("<a class=\"close\"></a>");
    var $openLinks = $(".history a.open");
    var $closeLinks = $(".history a.close");

    $openLinks.each(function(i, item) {
      $(this).click(function() {
        $lists.addClass("fade");
        $lists.removeClass("selected");
        $lists.eq(i).addClass("selected");
      });
    });

    $closeLinks.each(function(i, item) {
      $(this).click(function() {
        $lists.removeClass("fade");
        $lists.removeClass("selected");
      });
    });
  },
  product: function() {
    if ($(".product").size()) {
      var $links = $(".product-sizes a");
      var $images = $(".product img");
      var $lists = $(".product-sizes li");
      $images.eq(0).show();

      $lists.eq(0).addClass("selected");
      $links.eq(0).replaceWith("<span>" + $links.eq(0).text() +"</span>");

      $links.live("click", function() {

        var index = $lists.index($(this).parent());

        $images.hide();
        $images.eq(index).show();

        $lists.removeClass("selected");
        $spans = $(".product-sizes span");
        $spans.each(function() {
          $(this).replaceWith("<a href=\"javascript://\">" + $(this).text() +"</a>");
        });

        $(this).parent().addClass("selected");
        $(this).replaceWith("<span>" + $(this).text() +"</span>");
      });
    }
  },
  menu: function() {
    $(".menu li.selected").each(function() {
      $element = $(this);
      var height = $element.height() + 8;
      if ($element.hasClass("sub")) {
        height = height - 2;
      }
      if (height > 25)
        height += 2;
      $element.append("<span class=\"corner-top\"></span>").append("<span class=\"corner-bottom\" style=\"margin-top:" + height + "px\"></span>").append("<span class=\"corner-top2\"></span>").append("<span class=\"corner-bottom2\" style=\"margin-top:" + height + "px\"></span>");
    });
  },
  corners: function() {
    $(".rounded").each(function() {
      $element = $(this);
      $element.append("<div class=\"tl\"></div>").append("<div class=\"tr\"></div>").append("<div class=\"bl\"></div>").append("<div class=\"br\"></div>");
    });
  },
  search: function() {
    $searchInput = $("input[name=search_theme_form]");
    $searchValue = $searchInput.val();

    $searchInput.click(function() {
      if ($searchInput.val()==$searchValue)
        $searchInput.val("");
    }).blur(function() {
      if ($searchInput.val()=="") {
        $searchInput.val($searchValue);
      }
      $searchValue = $searchInput.val();
    });
  },
  lightbox: function() {
    $("div.photo-gallery div.photo a").lightBox({
      overlayBgColor: '#000',
      overlayOpacity: 0.75,
      imageLoading: '/images/lightbox-ico-loading.gif',
      imageBtnClose: '/images/lightbox-btn-close.gif',
      imageBtnPrev: '/images/lightbox-btn-prev.gif',
      imageBtnNext: '/images/lightbox-btn-next.gif',
      containerResizeSpeed: 350,
      txtImage: 'Фото',
      txtOf: 'из'
   });
  }
}


