var browser_name = navigator.appName;

function WindowShow(src, width, height) {

	var scroll = "yes";
	var top=0, left=0;

	if(width > screen.width-10 || height > screen.height-28) scroll = "yes";
	if(height < screen.height-28) top = Math.floor((screen.height - height)/2-14);
	if(width < screen.width-10) left = Math.floor((screen.width - width)/2-5);

	width = Math.min(width, screen.width-10);
	height = Math.min(height, screen.height-28);

	var wnd = window.open(src, "", "scrollbars=" + scroll + ",resizable=yes,width=" + width + ",height=" + height + ",left=" + left + ",top=" + top);
}


function printit() {

	if (window.print) {
		window.print() ;
	} else if (browser_name == "Netscape") {
		window.print();
	} else {
		var WebBrowser = '<object id="WebBrowser1" width=0 height=0 classid="clsid:8856F961-340A-11D0-A96B-00C04FD705A2"></object>';
		document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
		WebBrowser1.ExecWB(6, 2);
	}
}

(function(d){var k=d.scrollTo=function(a,i,e){d(window).scrollTo(a,i,e)};k.defaults={axis:'xy',duration:parseFloat(d.fn.jquery)>=1.3?0:1};k.window=function(a){return d(window)._scrollable()};d.fn._scrollable=function(){return this.map(function(){var a=this,i=!a.nodeName||d.inArray(a.nodeName.toLowerCase(),['iframe','#document','html','body'])!=-1;if(!i)return a;var e=(a.contentWindow||a).document||a.ownerDocument||a;return d.browser.safari||e.compatMode=='BackCompat'?e.body:e.documentElement})};d.fn.scrollTo=function(n,j,b){if(typeof j=='object'){b=j;j=0}if(typeof b=='function')b={onAfter:b};if(n=='max')n=9e9;b=d.extend({},k.defaults,b);j=j||b.speed||b.duration;b.queue=b.queue&&b.axis.length>1;if(b.queue)j/=2;b.offset=p(b.offset);b.over=p(b.over);return this._scrollable().each(function(){var q=this,r=d(q),f=n,s,g={},u=r.is('html,body');switch(typeof f){case'number':case'string':if(/^([+-]=)?\d+(\.\d+)?(px|%)?$/.test(f)){f=p(f);break}f=d(f,this);case'object':if(f.is||f.style)s=(f=d(f)).offset()}d.each(b.axis.split(''),function(a,i){var e=i=='x'?'Left':'Top',h=e.toLowerCase(),c='scroll'+e,l=q[c],m=k.max(q,i);if(s){g[c]=s[h]+(u?0:l-r.offset()[h]);if(b.margin){g[c]-=parseInt(f.css('margin'+e))||0;g[c]-=parseInt(f.css('border'+e+'Width'))||0}g[c]+=b.offset[h]||0;if(b.over[h])g[c]+=f[i=='x'?'width':'height']()*b.over[h]}else{var o=f[h];g[c]=o.slice&&o.slice(-1)=='%'?parseFloat(o)/100*m:o}if(/^\d+$/.test(g[c]))g[c]=g[c]<=0?0:Math.min(g[c],m);if(!a&&b.queue){if(l!=g[c])t(b.onAfterFirst);delete g[c]}});t(b.onAfter);function t(a){r.animate(g,j,b.easing,a&&function(){a.call(this,n,b)})}}).end()};k.max=function(a,i){var e=i=='x'?'Width':'Height',h='scroll'+e;if(!d(a).is('html,body'))return a[h]-d(a)[e.toLowerCase()]();var c='client'+e,l=a.ownerDocument.documentElement,m=a.ownerDocument.body;return Math.max(l[h],m[h])-Math.min(l[c],m[c])};function p(a){return typeof a=='object'?a:{top:a,left:a}}})(jQuery);

function fixPNG(element) {

	//Если браузер IE версии 5.5-6
	if (/MSIE (5\.5|6).+Win/.test(navigator.userAgent)) {

		var src;

		if (element.tagName=='IMG') {
			if (/\.png$/.test(element.src)) {
				src = element.src;
				element.src = "/bitrix/templates/two_columns/images/empty.gif"; //заменяем изображение прозрачным gif-ом
			}
		} else {
			src = element.currentStyle.backgroundImage.match(/url\("(.+\.png)"\)/i);
			if (src) {
				src = src[1];
				element.runtimeStyle.backgroundImage="none"; //убираем фоновое изображение
			}
		}
		if (src) element.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "',sizingMethod='scale')";
	}
}

function onChangeIBlockType(id) {
	if($('input[name=ID]').val() > 0) {		alert('Для редактируемого объекта нельзя менять данный параметр.');	} else {		$('.iblock-type').hide();
		$('.iblock-type-line').removeClass('item-selected');

		$('#iblock-type-' + id).show();
		$('#iblock-type-line-' + id).addClass('item-selected');

		$('input[name=IBLOCK_ID]').val(id);
	}}

function onClonePhoneInput() {
	id = $("input[name=IBLOCK_ID]").val();
	$("input[name^='PHONES[" + id + "]']").parent().parent().append('<div class="phone"><input name="' + $("input[name^='PHONES[" + id + "]']").attr("name") + '" value="" /></div>');}

function OnDeleteMorePhoto(id) {	$('#more-photo').append('<input type="hidden" name="DELETE_MORE_PHOTO[]" value="' + id + '" />');
}

function OnDeleteObject(id) {	if(confirm("Вы уверены, что хотите удалить объект?")) {		$("#map-element-btns-" + id).load("/tools/delete-object.php?ID=" + id);
		//$arBigPicture["ID"]
	}
}

function reloadFancyBox() {

	showSlideBar();

	$("a.popupbox").fancybox({autoScale: false, centerOnScroll: false});
	$("a.popupbox-text").fancybox({autoScale: false, centerOnScroll: false});
	$("a.popupbox-form").fancybox({autoScale: false, hideOnContentClick: false, width: 640, height: 400});
	$("a.popupbox-form-small").fancybox({autoScale: false, hideOnContentClick: false, width: 320, height: 280});

	$("a.popupbox-google").fancybox({autoScale: false, centerOnScroll: false, width: 640, height: 480, hideOnContentClick: false});
	$("a.popupbox-hitta").fancybox({autoScale: false, centerOnScroll: false, width: 640, height: 480});
	$("a.popupbox-photos").fancybox({autoScale: false, centerOnScroll: false, onComplete: showMorePhotos, width: 640, height: 480, hideOnContentClick: false});

	$("a.popupbox-note").fancybox({autoScale: false, hideOnContentClick: false, width: 400, height: 40});

	$("a.popupbox-basket").fancybox({autoScale: false, centerOnScroll: false, hideOnContentClick: false, width: 800, height: 480});

	$("a.popupbox-tree").fancybox({autoScale: false, centerOnScroll: false, onComplete: showTree, width: 320, height: 480, hideOnContentClick: false});

	$("a.popupbox-upload").fancybox({autoScale: false, centerOnScroll: false, width: 480, height: 60, hideOnContentClick: false});

	$("a.popupbox-article").fancybox({width: 640, height: 480, hideOnContentClick: false});
	$("a.popupbox-article-small").fancybox({width: 640, height: 240, hideOnContentClick: false});
	$("a.popupbox-friend").fancybox({width: 600, height: 85, hideOnContentClick: false});

	$("a.popupbox-bron").fancybox({width: 400, height: 450, hideOnContentClick: false});
}

function onLoadPersonalPreviewPicture(type, file_sid, file_id, timage) {

	if(type == "PREVIEW_PICTURE") {

		$('#personal-preview-picture').load(
			'/tools/fileinfo.php?TYPE=' + type + '&FILE_SID=' + file_sid + '&FILE_ID=' + file_id + '&TIMAGE=' + timage,
			function() {
				reloadFancyBox();
				$.fancybox.close();
			});
	} else {
		$('#new-more-photo').load(
			'/tools/fileinfo.php?TYPE=' + type + '&FILE_SID=' + file_sid + '&FILE_ID=' + file_id + '&TIMAGE=' + timage, 
			function() { reloadFancyBox(); $.fancybox.close(); }
		);
		$('#new-more-photo').removeAttr('id');
		$('#more-photo').append('<div class="photo" id="new-more-photo"></div>');
	}
}

function onSubmitForm(form, target) {

	if(target == '#form-feedback') {
		$(form).attr('action', '/tools/search.php');
	}

	var options = {
	  target: target,
  	  scriptCharset: "windows-1251"
	};

	$(form).ajaxSubmit(options);
}

function onSubmitTreeForm(form, target) {

	var options = {
	  target: target,
  	  scriptCharset: "windows-1251",
  	  success: onApplyTree
	};

	$(form).ajaxSubmit(options);
}

function onApplyTree() {	$.fancybox.close();}

function topMouseOver(element, path) {

	$(element).children('img').attr('src', path + 'smenu.png');
}

function topMouseOut(element, path) {

	$(element).children('img').attr('src', path + 'menu.png');
}

function showMorePhotos() {

  var div = $('div.sc_menu'),
               ul = $('ul.sc_menu'),
               // unordered list's left margin
               ulPadding = 15;

  if(div.length > 0 && ul.length > 0) {
	  //Get menu width
	  var divWidth = div.width();

	  //Remove scrollbars
	  div.css({overflow: 'hidden'});

	  //Find last image container
	  var lastLi = ul.find('li:last-child');

	  //When user move mouse over menu
	  div.mousemove(function(e){

	    //As images are loaded ul width increases,
	    //so we recalculate it each time
	    var ulWidth = lastLi[0].offsetLeft + lastLi.outerWidth() + ulPadding;

	    var left = (e.pageX - div.offset().left) * (ulWidth-divWidth) / divWidth;
	    div.scrollLeft(left);
	  });
	}
}

function showSlideBar() {

  var div = $('div.bar_sc_menu'),
               ul = $('ul.bar_sc_menu'),
               // unordered list's left margin
               ulPadding = 15;

  //Get menu width
  var divHeight = div.height();

  //Find last image container
  var lastLi = ul.find('li:last-child');

  //When user move mouse over menu
  div.mousemove(function(e){

    //As images are loaded ul width increases,
    //so we recalculate it each time
    var ulHeight = lastLi[0].offsetTop + lastLi.outerHeight() + ulPadding;

    var top = Math.round((e.pageY - div.offset().top) * (ulHeight-divHeight) / divHeight);
    ul.scrollTop(top);
  });


	var div2 = $('div.bar_sc_menu_2'),
               ul2 = $('ul.bar_sc_menu_2'),
               // unordered list's left margin
               ulPadding2 = 15;

  //Get menu width
  var divHeight2 = div2.height();

  //Find last image container
  var lastLi2 = ul2.find('li:last-child');

  //When user move mouse over menu
  div2.mousemove(function(e){

    //As images are loaded ul width increases,
    //so we recalculate it each time
    var ulHeight2 = lastLi2[0].offsetTop + lastLi2.outerHeight() + ulPadding2;

    var top2 = Math.round((e.pageY - div2.offset().top) * (ulHeight2-divHeight2) / divHeight2);
    ul2.scrollTop(top2);
  });
}

function hmenuBodyOver(id, url) {

	if($("#" + id).html().length() <= 0) {
		alert('ok');
	}
}

function onclick_rightmenu(id) {

	if($('#menu-right-ul-' + id).is(':hidden')) {
		$('#menu-right-icon-' + id).attr('src', '/bitrix/templates/web20/images/minus.gif');
		$('#menu-right-li-' + id).addClass('root-item-selected');
		$('#menu-right-ul-' + id).show(500);
		$.cookie('menu-right-ul-' + id, 'show', { path: '/' });
	} else  {
		$('#menu-right-icon-' + id).attr('src', '/bitrix/templates/web20/images/plus.gif');
		$('#menu-right-li-' + id).removeClass('root-item-selected');
		$('#menu-right-ul-' + id).hide(500);
		$.cookie('menu-right-ul-' + id, 'hidden', { path: '/' });
	}
}

function scMenuUp() {
	var ul = $('ul.bar_sc_menu');
	ul.scrollTop(ul.scrollTop() - 116);
}

function scMenuDown() {

	var ul = $('ul.bar_sc_menu');
	ul.scrollTop(ul.scrollTop() + 116);
}

function scMenuUp2() {
	var ul = $('ul.bar_sc_menu_2');
	ul.scrollTop(ul.scrollTop() - 116);
}

function scMenuDown2() {

	var ul = $('ul.bar_sc_menu_2');
	ul.scrollTop(ul.scrollTop() + 116);
}


function onSelectMapGroup(element, group) {

	if($(element).attr('class') == 'selected') {
		$(element).removeClass('selected');
		gmRemoveGroupMarker(group);
		$('#map-level-0-' + group).hide();
		$('.map-level-2-' + group).hide();
		$('.map-group-element-' + group).hide();
	} else {
		$(element).addClass('selected');
		gmCreateGroupMarker(group);
		$('#map-level-0-' + group).show();
		$('.map-level-2-' + group).show();
		$('.map-group-element-' + group).show();
	}
}

/* Start : Google Maps */

var gmMap;
var gmPopupMap;

function gmLoad(lat, lng, zoom) {

	gmMap = new GMap2(document.getElementById('map'));
	//gmMap.addMapType(G_PHYSICAL_MAP);
	var burnsvilleMN = new GLatLng(lat, lng);
	gmMap.setCenter(burnsvilleMN, zoom);

	var map_ctrl = new GLargeMapControl3D();
	var map_scale_ctrl = new GScaleControl();

	gmMap.addControl(map_ctrl);
	gmMap.addControl(map_scale_ctrl);


	if($('#map-pano').length) {

		jQuery('#map').streetview({
			map: gmMap, 
			icon_image: "/bitrix/templates/web20/images/street-view.png",
	                control:true,
        	        selector_ids: {
	        	        map_container: true,
	                        //control_container:"sv_control",
        	                //control_ui:"sv_ui",
                	        //control_text:"sv_text",
        	        	street_view: "map-pano"
	                }
		});
	}

	$("#map-label").appendTo(gmMap.getPane(G_MAP_FLOAT_SHADOW_PANE));
}

function gmPopupLoad(lat, lng, zoom, offsetX, offsetY) {

	if(!offsetX) offsetX = 0;
	if(!offsetY) offsetY = 0;

	gmPopupMap = new GMap2(document.getElementById('map-popup'));
	var burnsvilleMN = new GLatLng(lat - offsetX, lng - offsetY);
	gmPopupMap.setCenter(burnsvilleMN, zoom);

	var map_ctrl = new GLargeMapControl3D();
	var map_scale_ctrl = new GScaleControl();

	gmPopupMap.addControl(map_ctrl);
	gmPopupMap.addControl(map_scale_ctrl);

	$("#map-label-popup").appendTo(gmPopupMap.getPane(G_MAP_FLOAT_SHADOW_PANE));
}

var iLoadTransport = 0;
var iLoadTransportCode = 0;

function gmLoadTransport(arr, zoom) {
	lat = 0;
	lng = 0;

	var iCnt = 0;
	var iTotalCnt = arr.length;
	var iTotalCnt2Max = 0;
	for(i = 0; i < iTotalCnt; i++) {
		lat += arr[i]["posnA"][0];
		lng += arr[i]["posnA"][1];
		iCnt++;

		lat += arr[i]["posnB"][0];
		lng += arr[i]["posnB"][1];
		iCnt++;

		if(arr[i]["points"] && arr[i]["points"].length > 0) {
			var iTotalCnt2 = arr[i]["points"].length;
			if(iTotalCnt2Max < iTotalCnt2) iTotalCnt2Max = iTotalCnt2;
			for(j = 0; j < iTotalCnt2; j++) {
				lat += arr[i]["points"][j][0];
				lng += arr[i]["points"][j][1];
				iCnt++;			}
		}
	}

	lat = Number(lat / (iCnt));
	lng = Number(lng / (iCnt));

	gmMap = new GMap2(document.getElementById('map'));
	var burnsvilleMN = new GLatLng(lat, lng);
	gmMap.setCenter(burnsvilleMN, zoom);

	var map_ctrl = new GLargeMapControl3D();
	var map_scale_ctrl = new GScaleControl();

	gmMap.addControl(map_ctrl);
	gmMap.addControl(map_scale_ctrl);

	var sHTML1 = '', sHTML2 = '';

	for(i = 0; i < iTotalCnt2Max; i++) {		$("#map-label-extra").append('<div id="map-label-' + i + '" style="display: none;"></div>');	}

	for(i = 0; i < iTotalCnt; i++) {

		if(i % 2 == 0) sHTML1 += '<div class="map-group-item"><a' + (i == 0?' class="selected"':'') + ' href="javascript:void(0);" onclick="changeTransport(this, transportLayer, ' + i + ', \'' + arr[i]["aferry"] + '\', ' + arr[i]["id"] + ');">' + arr[i]["name"] + '</a></div>';
		else  sHTML2 += '<div class="map-group-item"><a' + (i == 0?' class="selected"':'') + ' href="javascript:void(0);" onclick="changeTransport(this, transportLayer, ' + i + ', \'' + arr[i]["aferry"] + '\', ' + arr[i]["id"] + ');">' + arr[i]["name"] + '</a></div>';
		var point1 = new GLatLng(arr[i]["posnA"][0], arr[i]["posnA"][1]);
		mIcon1 = gmGetSelectedIcon("MIDDLE");
		marker1 = new GMarker(point1, mIcon1);

		gmMap.addOverlay(marker1);

		if(i > 0) marker1.hide();
		else {
			var markerOffset = gmMap.fromLatLngToDivPixel(marker1.getPoint());
			$("#map-label-a").html(arr[i]["nameA"]);
			$("#map-label-a").show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7, left: markerOffset.x + $("#map-outer").offset().left + 7 });		}

		var point2 = new GLatLng(arr[i]["posnB"][0], arr[i]["posnB"][1]);
		mIcon2 = gmGetSelectedIcon("MIDDLE");
		marker2 = new GMarker(point2, mIcon2);

		gmMap.addOverlay(marker2);

		if(i > 0) marker2.hide();
		else {

			var markerOffset = gmMap.fromLatLngToDivPixel(marker2.getPoint());
			$("#map-label-b").html(arr[i]["nameB"]);
			$("#map-label-b").show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7, left: markerOffset.x + $("#map-outer").offset().left + 7 });
		}

		arr[i]["markers"] = new Array(marker1, marker2);

		if(arr[i]["points"] && arr[i]["points"].length > 0) {

			var iTotalCnt2 = arr[i]["points"].length;
			for(j = 0; j < iTotalCnt2; j++) {

				var point = new GLatLng(arr[i]["points"][j][0], arr[i]["points"][j][1]);
				mIcon = gmGetSelectedIcon("MIDDLE");
				marker = new GMarker(point, mIcon);

				gmMap.addOverlay(marker);

				if(i > 0) marker.hide();
				else {

					var markerOffset = gmMap.fromLatLngToDivPixel(marker.getPoint());
					$("#map-label-" + j).html(arr[i]["points"][j][2]);
					$("#map-label-" + j).show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7, left: markerOffset.x + $("#map-outer").offset().left + 7 });
				}

				arr[i]["markers"].push(marker);

			}
		}


		if(i == 0) {			iLoadTransport = arr[i]["id"];
			iLoadTransportCode = arr[i]["aferry"];		}
	}

	$('#map-group-column-1').html(sHTML1);
	$('#map-group-column-2').html(sHTML2);}

function changeTransport(element, arr, code, aferryCode, id) {
	$(".map-group-item a").removeClass("selected");
	$(element).addClass("selected");

	$("#map-label-extra div").hide();

	var iTotalCnt = arr.length;
	for(i = 0; i < iTotalCnt; i++) {
		if(i == code) {
			arr[i]["markers"][0].show();

			var markerOffset = gmMap.fromLatLngToDivPixel(arr[i]["markers"][0].getPoint());
			$("#map-label-a").html(arr[i]["nameA"]);
			$("#map-label-a").show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7.5, left: markerOffset.x + $("#map-outer").offset().left + 7 });

			arr[i]["markers"][1].show();
			var markerOffset = gmMap.fromLatLngToDivPixel(arr[i]["markers"][1].getPoint());
			$("#map-label-b").html(arr[i]["nameB"]);
			$("#map-label-b").show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7.5, left: markerOffset.x + $("#map-outer").offset().left + 7 });

			iTotalCnt2 = arr[i]["markers"].length;
			for(j = 2; j < iTotalCnt2; j++) {				arr[i]["markers"][j].show();
				var markerOffset = gmMap.fromLatLngToDivPixel(arr[i]["markers"][j].getPoint());
				$("#map-label-" + (j - 2)).html(arr[i]["points"][j - 2][2]);
				$("#map-label-" + (j - 2)).show().css({ top: markerOffset.y + $("#map-outer").offset().top + 7.5, left: markerOffset.x + $("#map-outer").offset().left + 7 });
			}
		} else {			arr[i]["markers"][0].hide();
			arr[i]["markers"][1].hide();

			iTotalCnt2 = arr[i]["markers"].length;
			for(j = 2; j < iTotalCnt2; j++) {				arr[i]["markers"][j].hide();
			}		}	}

	$('#iframe-aferry').contents().find("#selRouteLong").val(aferryCode);
	$('#aferry-info').load('/tools/aferry-info.php?ID=' + id);
	$('#aferry-info-bottom').load('/tools/aferry-info-bottom.php?ID=' + id, function() { reloadFancyBox(); });
}

function gmGetIcon(type) {

	icon = new GIcon(G_DEFAULT_ICON, iconData[type]['src']);
	icon.iconSize = GSize(iconData[type]['width'], iconData[type]['height']);
	icon.shadow = false;
	return icon;
}

function gmGetSelectedIcon(type) {

	icon = new GIcon(G_DEFAULT_ICON, iconSelectedData[type]['src']);
	icon.iconSize = GSize(iconSelectedData[type]['width'], iconSelectedData[type]['height']);
	icon.shadow = false;
	return icon;
}

function gmCreateSimpleMarker(lat, lng, type, name, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);
}

function gmPopupCreateSimpleMarker(lat, lng, type, name, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmPopupMap.addOverlay(marker);
}


function gmCreateMarker(lat, lng, type, name, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = '#e' + id;
	});

	return marker;
}

function gmCCreateMarker(lat, lng, type, name, link) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		window.open(link,'new','width=640,height=480,toolbar=1,scrollbars=1');
	});

	return marker;
}

function gmCCPolyline(arPoints, color) {

	polyline = new GPolyline(arPoints, color, 5, 0.7);
	gmMap.addOverlay(polyline);
}

function gmKCreateMarker(lat, lng, type, name, sid, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = '/bron-kottedges/base/' + sid + '/' + (id > 0?id + '/':'');
	});

	return marker;
}

function gmTCreateMarker(lat, lng, type, name, sid, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = '/bron-tures/' + sid + '/' + (id > 0?id + '/':'');
	});

	return marker;
}

function gmSCreateMarker(lat, lng, type, name, sid, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = '/skandinaviya/' + sid + '/' + (id > 0?id + '/':'');
	});

	return marker;
}

function gmRCreateMarker(lat, lng, type, name, sid, id) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = '/piter/' + sid + '/' + (id > 0?id + '/':'');
	});

	return marker;
}

function gmLCreateMarker(lat, lng, type, name, link) {

	var point = new GLatLng(lat, lng);
	mIcon = gmGetIcon(type);
	marker = new GMarker(point, mIcon);

	gmMap.addOverlay(marker);

	GEvent.addListener(marker, "mouseover", function(){

		this.setImage(iconSelectedData[type]['src']);
		var markerOffset = gmMap.fromLatLngToDivPixel(this.getPoint());
		$("#map-label").html(name);
		$("#map-label").show().css({ top:markerOffset.y, left:markerOffset.x });
	});

	GEvent.addListener(marker, "mouseout", function(){
		this.setImage(iconData[type]['src']);
		$("#map-label").hide();
	});

	GEvent.addListener(marker, "click", function(){

		location.href = link;
	});

	return marker;
}

function gmRemoveMarker(marker) {

	gmMap.removeOverlay(marker);
}

function gmCreateGroupMarker(group) {

	for (var i in markerLayer) {

		markerGroup = markerLayer[i];

		for (var j in markerGroup['places']) {

			marker = markerGroup['places'][j];
			if(group == marker['group']) {
				marker = markerLayer[i]['places'][j]['marker'] = gmCreateMarker(marker['posn'][0], marker['posn'][1], marker['icon'], marker['name'], marker['id']);
			}
		}
	}
}

function gmRemoveGroupMarker(group) {

	for (var i in markerLayer) {

		markerGroup = markerLayer[i];

		for (var j in markerGroup['places']) {

			marker = markerGroup['places'][j];
			if(group == marker['group']) {

				gmRemoveMarker(marker['marker']);
				markerLayer[i]['places'][j]['marker'] = false;
			}
		}
	}
}

/* End : Google Maps */

function changePersonType(select) {
	$('#person-type-1').hide(100);
	$('#person-type-2').hide(100);
	$('#person-type-3').hide(100);
	$('#person-type-' + $(select).val()).show(100);
}



Array.prototype.removeByValue = function(item){

	var itemIndex = -1;

	for (var index = 0; index < this.length; index++) {
		if (this[index] == item) {			itemIndex=index;
			}
		}

		if (itemIndex == -1) {			return this;
		}

		var resultLeft = this.slice(0, itemIndex);
		var resultRight = this.slice(itemIndex+1, this.length);
		var resultTotal = resultLeft.concat(resultRight);

		return resultTotal;
};


function onChangeObjectType(element, type) {

	$('.map-groups .map-group-item a').removeClass('selected');
	$(element).addClass('selected');

	$('#ajax-content').load('/tools/personal-objects.php', {'TYPE': type});
}

function showTree() {
	$("#browser").treeview();
	
	if($("input[name='LOCATION[]']").length) {
		$("input[name='LOCATION[]']").each(function() {
		$(".treeview input[value=" + $(this).val() + "]").attr("checked", true);		});
	}
}

jQuery.preloadImages = function() {
	jQuery.each (arguments,function (e) {
		jQuery("<img>").attr("src", this);
	});
}

function str_replace(search, replace, subject) {

    return subject.split(search).join(replace);
}

var iCntNavi = 1;

function OnIndexNavi(element, country, type, bCT, cnt) {
	iIndexNaviCountry = country;
	iIndexNaviType = type;

	if(bCT == 'C') {

		$('.index-navi .country a.selected').removeClass('selected');
		$(element).addClass('selected');

	} else if(bCT == 'T') {

		$('.index-navi .type a.selected').removeClass('selected');
		$(element).addClass('selected');

		$('.index-navi .type img').each(function() {
			$(this).attr('src', str_replace('s.png', '.png', $(this).attr('src')))
		});

		$(element).children('img').attr('src', str_replace(cnt + '.png', cnt + 's.png', $(element).children('img').attr('src')));

	}

	$("#index-navi-links").html('<div class="preloader"><img src="/bitrix/templates/web20/images/89.gif" width="64" height="64" alt="" />');
	$("#index-navi-links").load("/tools/index-navi.php", {'COUNTRY': country, 'TYPE': type}, function() {		$("#index-navi-list").load("/tools/index-navi-list.php", {'COUNTRY': country, 'TYPE': type});	});}

function OnIndexNaviN(element, country, type, bCT, cnt) {

	iIndexNaviCountry = country;
	iIndexNaviType = type;

	if(bCT == 'C') {

		$('.index-navi .country a.selected').removeClass('selected');
		$(element).addClass('selected');

	} else if(bCT == 'T') {

		$('.index-navi .type a.selected').removeClass('selected');
		$(element).addClass('selected');

		$('.index-navi .type img').each(function() {
			$(this).attr('src', str_replace('s.png', '.png', $(this).attr('src')))
		});

		$(element).children('img').attr('src', str_replace(cnt + '.png', cnt + 's.png', $(element).children('img').attr('src')));

	}

	$("#index-navi-links").html('<div class="preloader"><img src="/bitrix/templates/web20/images/89.gif" width="64" height="64" alt="" />');
	$("#index-navi-links").load("/tools/index-navi-n.php", {'COUNTRY': country, 'TYPE': type});

	$("#index-navi-realty").html('<div class="preloader"><img src="/bitrix/templates/web20/images/89.gif" width="64" height="64" alt="" />');
	$("#index-navi-realty").load("/tools/index-navi-realty.php", {'COUNTRY': country, 'TYPE': type}, function() { reloadFancyBox(); } );

}

function explode( delimiter, string ) { // Split a string by string

	var emptyArray = { 0: '' };

	if ( arguments.length != 2
		|| typeof arguments[0] == 'undefined'
		|| typeof arguments[1] == 'undefined' )
	{
		return null;
	}

	if ( delimiter === ''
		|| delimiter === false
		|| delimiter === null )
	{
		return false;
	}

	if ( typeof delimiter == 'function'
		|| typeof delimiter == 'object'
		|| typeof string == 'function'
		|| typeof string == 'object' )
	{
		return emptyArray;
	}

	if ( delimiter === true ) {
		delimiter = '1';
	}

	return string.toString().split ( delimiter.toString() );
}

$(document).ready(function() {

	reloadFancyBox();
	$.preloadImages('/bitrix/templates/web20/images/89.gif');

	showMorePhotos();

	if(iLoadTransport > 0) {		$('#aferry-info').load('/tools/aferry-info.php?ID=' + iLoadTransport);
		$('#aferry-info-bottom').load('/tools/aferry-info-bottom.php?ID=' + iLoadTransport, function() { reloadFancyBox(); } );
		$('#iframe-aferry').contents().find("#selRouteLong").val(iLoadTransportCode);
	}

});

