// JavaScript Document
// #corp/become/request
var Anchors = {};
Anchors.Hash = {
	"corp":    { "anchor":"corp",			"id":"choice_corp",		"menuId":"ufo_menu",	"replacement":"" },
	"commiss": { "anchor":"commiss",		"id":"choice_commiss",	"menuId":"ufo_menu",	"replacement":"" },
	"agents":  { "anchor":"agents",			"id":"choice_agents",	"menuId":"ufo_menu",	"replacement":"" },
	"become":  { "anchor":"become",			"id":"submenu_{dlm}_1", "menuId":"ufo_{dlm}",	"replacement":"{dlm}" }, // submenu_corp_1, submenu_commiss_1, submenu_agents_1
	"advantages": { "anchor":"advantages",	"id":"submenu_{dlm}_2", "menuId":"ufo_{dlm}",	"replacement":"{dlm}" }, // submenu_corp_2, submenu_commiss_2, 
	"marketinfo": { "anchor":"marketinfo",	"id":"submenu_agents_2","menuId":"ufo_agents",	"replacement":"" },
	//"partnership":{ "anchor":"partnership", "id":"submenu_{dlm}_3", "menuId":"",			"replacement":"{dlm}" },
	"scheme":	  { "anchor":"scheme",		"id":"{dlm}_partnership_scheme", "menuId":"",	"replacement":"{dlm}" }
};
Anchors.State = "";


(function($) {
	$.fn.slideToggleAlt = function(_duration, _func) {
		    //var _height = document.body.scrollHeight;
            var _height = $(window).scrollTop();
            //if (_height > 1) {
            if ((_height+window.innerHeight == document.body.scrollHeight) && (_height > 2)) {
                $.scrollTo(_height-2, 100);
            }
		    $(this).slideToggle(_duration, _func);
	};
})(jQuery);


// ajax-обновление каптчи
function _myReloadCaptcha(captchaNumber) {
    if (typeof captchaNumber == "undefined") {
		FadeIn('blue');
		ShowLoader();
        $.ajax({
            type: "post",
            url: "/ajax/captcha.html",
            beforeSend: function() {
                $("#CaptchaImg").css("visibility", "hidden");
            },
            success: function(res) {
                FadeOut();
                HideLoader();
                var _newCaptchaId = res.getElementsByTagName('Number')[0].textContent;
                $("#CaptchaImg").attr("src", "/ajax/captcha.html?Picture="+_newCaptchaId);
                $("#Number").attr("value", _newCaptchaId);
                $("#Approval").attr("value", "");
                $("#CaptchaImg").css("visibility", "visible");
            },
            error: function() {
                FadeOut();
                HideLoader();
                alert(MO_str_ajax_noResponse);
            }
        });
    } else {
        FadeOut();
        HideLoader();
        var _newCaptchaId = captchaNumber;
        $("#CaptchaImg").attr("src", "/ajax/captcha.html?Picture="+_newCaptchaId);
        $("#Number").attr("value", _newCaptchaId);
        $("#Approval").attr("value", "");
        $("#CaptchaImg").css("visibility", "visible");
    }
}
//ENDF _myReloadCaptcha()



function FormClass(objForm) {
    var self = this;
    this.Form = objForm;
    this.Error = false;
    this.Select = [];

    $(this.Form).submit(function() { self.CheckForm(); return false; });
}
FormClass.prototype.CheckEmpty = function(input) {
    if (input.value == '') {
        this.Error = true;
        $(input).addClass('error');
        this.Select.push(input);
    }
}
FormClass.prototype.CheckForm = function() {
    var self = this;
    this.Error = false;
    this.Select = [];
    
    // next fields should be filled: ContactName, Phone, EMail, CompanyName, City, Approval (captcha)
    this.CheckEmpty(this.Form.ContactName);
    this.CheckEmpty(this.Form.Phone);
    this.CheckEmpty(this.Form.EMail);
    this.CheckEmpty(this.Form.CompanyName);
    this.CheckEmpty(this.Form.City);
    this.CheckEmpty(this.Form.Approval);

    if (this.Error == true) {
        this.Select[0].select();
        return false;
    } else {
        $.ajax({
            type: "post",
            url: "formpost.html",
            data: $(this.Form).serialize(),
            dataType: "xml",
            beforeSend: function() {
                $("#captchaError").hide();
                FadeIn('blue');
                ShowLoader();
            },
            success: function(xml) {
                var _captchaResult    = xml.getElementsByTagName('CaptchaResult')[0].textContent;
                var _controllerResult = xml.getElementsByTagName('ControllerResult')[0].textContent;
                var _captchaNumber    = xml.getElementsByTagName('CaptchaNumber')[0].textContent;
                if ($.browser.msie) {
                    _captchaResult    = xml.getElementsByTagName('CaptchaResult')[0].firstChild.nodeValue;
                    _controllerResult = xml.getElementsByTagName('ControllerResult')[0].firstChild.nodeValue;
                    _captchaNumber    = xml.getElementsByTagName('CaptchaNumber')[0].firstChild.nodeValue;
                }
                if (_captchaResult=="CaptchaOk") {
                    if (_controllerResult == "OK") {
                        FadeOut();
                        HideLoader();
                        alert($("#reqResponse").attr("value"));
                        // nulling the form
                        $("#ContactName").attr("value", "");
                        $("#Phone"      ).attr("value", "");
                        $("#EMail"      ).attr("value", "");
                        $("#CompanyName").attr("value", "");
                        $("#City"       ).attr("value", "");
                        $("#SiteURL"    ).attr("value", "");
                        $("#Comments"   ).attr("value", "");
                        $("#Approval"   ).attr("value", "");
                        // reload captcha
                        _myReloadCaptcha();
                        // hide the form
                        $("#partnership_request_hidden").slideToggleAlt(1200);
                        // remove white color from the "partnership request" button
                        $("div.become_a_partner_container table span.pseudolink_white_dashed").removeClass("pseudolink_white_dashed");
                    } else {
                        FadeOut();
                        HideLoader();
                        alert($("#reqResponseErr").attr("value"));
                    }
                } else { // _captchaResult == "CaptchaError";
                    // captcha error, it should be refreshed
                    $("#captchaError").show();
                    $("#Approval").addClass("error");
                    document.getElementById("Approval").select();
                    _myReloadCaptcha(_captchaNumber);
                }
            },
            error: function() {
                FadeOut();
                HideLoader();
                alert(MO_str_ajax_noResponse);
            }
        });
    }
}




// <s>отображение UFO + включение/</s>выключение элементов верхнего уровня
function hideAllByChoiceId(choiceId) {
    $("#container_level_1").addClass("check_animating");
    window.location.hash = "";

    // скрываю "схему сотрудничества" из "как стать choiceId", даже если ее нет
    $("#scheme_"+choiceId).hide();
    $(".become_a_partner_container .pseudolink_dashed").removeClass("pseudolink_white_dashed");

    // скрываю контент второго уровня (а так же вложенный в нем блоки) + стоящий перед ним ufo
    $("#content_"+choiceId+">div.content_elements:visible").hide(); // скрываю вложенные блоки
    $("#partnership_request_hidden").hide(); // hide partnership request
    $("#content_"+choiceId).hide(); // hide content
    $("#ufo_"+choiceId).hide(); // hide ufo
    $("#ufo_"+choiceId+" div").removeClass("ufo_img"); // remove the plane from the ufo

    // скрываю контент первого уровня + следом за ним ufo
    $("#container_"+choiceId).slideToggleAlt("slow", function() {
        $("#ufo_menu").hide();
        $("#ufo_menu div").removeClass("ufo_img");
        showClosedPartners();
        $("#container_level_1").removeClass("check_animating");
        removeTopButtonHover(choiceId);
        //$("#container_"+choiceId).hide();
    });
}
function toggle_choiceMenu(choiceId) {
    // проверка - выполняется ли в текущий момент какая-нибудь анимация
    if ($("#container_level_1").hasClass("check_animating")) {
        return false;
    }

    // убирает класс clicked с тех, у кого он есть и убирает "затемнение" со старого логотипа
    var _clickedButton = $(".menu_button>table span.clicked");
    var _clickedButtonId;
    if (_clickedButton.length != 0) {
        _clickedButtonId = _clickedButton.attr("id").split("_")[1];
        removeTopButtonHover(_clickedButtonId);
    }

    // закрываю схему сотрудничества
    $(".scheme_container").hide();

    // убираю белое выделение с внутренних ссылок
    $("table.description_choice td div.elem>span.pseudolink_white_dashed").removeClass("pseudolink_white_dashed");

    // добавляю класс clicked и затемняю логотип
    $("#choice_"+choiceId).addClass("clicked");
    $("#choice_"+choiceId+">span.button_top").addClass("button_"+choiceId+"_hover");
	$("#choice_"+choiceId+">span.pseudolink_dashed").addClass("pseudolink_white_dashed");

	var _ufo_order;
	switch (choiceId) {
		case 'corp':
			_ufo_order = 0;
			break
		case 'commiss':
			_ufo_order = 1;
			break
		case 'agents':
			_ufo_order = 2;
			break
	}

	// меняю ссылку в браузере
	if (Anchors.State!="HASH" && choiceId!="hide_all") {
		window.location.hash = choiceId;
	}

	if (Anchors.State=="HASH") {
		// console.log('toggle_choiceMenu('+choiceId+') and check HASH');
        $("#ufo_menu div").removeClass("ufo_img");
        $("#ufo_menu div:eq("+_ufo_order+")").addClass("ufo_img");
        $("#container_"+choiceId).show();
	}
    // если я кликнул на ту же иконку и есть видимые #ufo_menu (блок раскрыт) - нужно закрыть раскрытый блок и все подблоки
    else if ((choiceId==_clickedButtonId || choiceId=="hide_all") && ($("#ufo_menu:visible").length!=0)) {
        // нужно определить верный choiceId
        if (choiceId=="hide_all") {
            var _choiceContainer = $("#container_level_1 div.container_elements:visible");
            if (_choiceContainer.length!=0) {
                choiceId = _choiceContainer.attr("id").split("_")[1];
            }
        }
        hideAllByChoiceId(choiceId);
    } else if (choiceId != "hide_all") {
        if ($("#ufo_menu div.ufo_img").length == 0) {
			//console.log('$("#ufo_menu div.ufo_img").length == 0');
            $("#container_level_1").addClass("check_animating");
            $("#ourpartners_block").hide();
            $("#ufo_menu div:eq("+_ufo_order+")").addClass("ufo_img");
            $("#ufo_menu").show();
                $("#container_"+choiceId).slideToggleAlt("slow", function() {
                    $("#container_level_1").removeClass("check_animating");
                });
        } else {
			//console.log('else of $("#ufo_menu div.ufo_img").length == 0');
            //$("#container_level_1").addClass("check_animating");
            $("#ufo_menu div").removeClass("ufo_img");
            $("#ufo_menu div:eq("+_ufo_order+")").addClass("ufo_img");
            
            // закрывает менюшки, контент и заявку на подключения блока, на который кликнули
            // проще закрывать контент блока, на который я кликнул, чем закрывать контент блока, с которого я "ушел".
			$("#ufo_"+choiceId).hide();
			$("#ufo_"+choiceId+" div").removeClass("ufo_img");
			$("#content_"+choiceId).hide();
			$("#content_"+choiceId+">div.content_elements").hide();
			$("#partnership_request_hidden").hide();
			$("div.container_elements").hide();

            $("#container_"+choiceId).show();
        } // else
    } // if else
}
// ENDF


// отображение UFO + включение/выключение элементов второго уровня (идущих после описания "объекта") + схема
function partnershipFormHide() {
    $("#partnership_request_hidden").hide();
}


// делаем неактивной верхнюю иконку (убираем hover)
function removeTopButtonHover(buttonType) {
    $(".menu_button>table span.clicked>span.button_top").removeClass("button_"+buttonType+"_hover");
    $(".menu_button>table span.clicked>span.pseudolink_white_dashed").removeClass("pseudolink_white_dashed");
    $(".menu_button>table span.clicked").removeClass("clicked");
}


// сокрытие content_id (блок после description_id)
function hideContent(closeId, func) {
    $("#container_level_1").addClass("check_animating");
    var _elemPath;
//    if ($("#partnership_request_hidden:visible").length==0) {
        _elemPath = "#content_"+closeId;
//    } else {
//        _elemPath = "#partnership_request_hidden";
//    }
    $("#partnership_request_hidden").hide();
    $(_elemPath).slideToggleAlt("slow", function() {
        $('#ufo_'+closeId).hide();
            if (func != undefined) {
                func();
            }
            $("table.description_choice td div.elem>span.pseudolink_white_dashed").removeClass("pseudolink_white_dashed");
            $('#content_'+closeId+'>div.content_elements').hide();
            $('#ufo_'+closeId+' div.ufo_img').removeClass('ufo_img');
            $("#container_level_1").removeClass("check_animating");
            $.scrollTo(0, 500);
    });
}


// сокрытие description_id (блок после кнопок с выбором корп/коммисс/агентс
function hideDescription(closeId) {
    //$("#partnership_request_hidden").hide();
    $("#container_"+closeId).slideToggleAlt("slow", function() {
        $("#ufo_menu").hide();
            //$("#"+closeId).hide();
            $('#ufo_menu div.ufo_img').removeClass('ufo_img');
            removeTopButtonHover(closeId);
			showClosedPartners();
    });
}


function toggle_contentElements(elemId) {
	// corp_1, corp_2, commiss_1, commiss_2, agents_1, agents_2
    // проверка - выполняется ли в текущий момент какая-нибудь анимация
    if ($("#container_level_1").hasClass("check_animating")) {
        return false;
    }

    var choiceId = elemId.substring(0,(elemId.length-2));
    var _ufoId = "ufo_"+choiceId;
    // скрываю "заявку на подключение" и "схему сотрудничества", убираю белое выделение с этих же кнопок.
    $(".scheme_container").hide();
    $("#partnership_request_hidden").hide();
    $(".become_a_partner_container .pseudolink_dashed").removeClass("pseudolink_white_dashed");

    // убираю белое выделение с "ссылки" и ставлю белое на кликнутое
    $("table.description_choice td div.elem>span.pseudolink_white_dashed").removeClass("pseudolink_white_dashed");
    $("#submenu_"+elemId).addClass("pseudolink_white_dashed");


	// меняю ссылку в браузере
	if (Anchors.State!="HASH") {
		// если я сюда попадаю, значит topCategory уже выставлен и я могу его определить
		var topCategory = "";
		var anchorId = "";
		var newAnchor = "";
		if (window.location.hash.length > 0) {
			topCategory = window.location.hash.substring(1).split('/')[0];
			$.each(Anchors.Hash, function(key, anchorObj) {
				anchorId = anchorObj.id;
				if (anchorObj.replacement != "") {
					anchorId = anchorObj.id.replace(new RegExp(anchorObj.replacement,'g'), topCategory);
				}
				// console.log('anchorId: '+anchorId+'; elemId: '+elemId);
				if (anchorId == "submenu_"+elemId) {
					// console.log('!!! anchorId: '+anchorId+'; elemId: '+elemId);
					newAnchor = topCategory+'/'+anchorObj.anchor;
				}
			});
			window.location.hash = newAnchor;
		}
	}

	if (Anchors.State=="HASH") {
		// console.log('toggle_contentElements('+elemId+') and check HASH');
		$("#"+_ufoId+" div").removeClass("ufo_img");
		$("#"+_ufoId+" div:eq("+(elemId.substring(elemId.length-1)-1)+")").addClass("ufo_img");
		$("#content_"+choiceId).show();
		$("#content_"+elemId).show();
	}
    // если в блоке под кликнутым элементом нет самолетиков, значит это первый клик и нужно контенту сделать slideToggleAlt
	else if ($("#"+_ufoId+" div.ufo_img").length == 0) {
		//console.log('$("#'+_ufoId+' div.ufo_img").length == 0');
        $("#container_level_1").addClass("check_animating");
        $("#"+_ufoId+" div:eq("+(elemId.substring(elemId.length-1)-1)+")").addClass("ufo_img");
        $("#"+_ufoId).show();
        $("#content_"+choiceId).show();
        $("#content_"+elemId).slideToggleAlt("slow", function() {
            $.scrollTo($("#description_"+choiceId+" table.description_choice").offset(), 500);
            $("#container_level_1").removeClass("check_animating");
        });
    } else {
		//console.log('else of >> $("#"+_ufoId+" div.ufo_img").length == 0');
		// иначе, если самолетики есть - я уже кликал, значит нужно скрыть всё что кликнуто-открыто и показать нужный.
		// а если кликнуто тудаже - то показывать повторно нужный не стоит. т.к. всё скрыто - то мы ничего не выполняем.
        // определяю, что я кликнул в тот же блок
        if ($("#"+_ufoId+" div:eq("+(elemId.substring(elemId.length-1)-1)+")").hasClass("ufo_img")) {
			//console.log('ufoId div:eq() has class ufo_img');
            // если да - то я делаю слайдтоггл открытому блоку (скрываю его)
            hideContent(choiceId);
        } else {
			//console.log('ufoId div:eq() does NOT have class ufo_img');
            // иначе - закрываю всё что есть и отображаю другой открытый блок
            $("#"+_ufoId+" div").removeClass("ufo_img");
            $("#"+_ufoId+" div:eq("+(elemId.substring(elemId.length-1)-1)+")").addClass("ufo_img");
            $("div.content_elements").hide();
            $("#content_"+choiceId).show();
            $("#content_"+elemId).show();
        }
    }
}
// ENDF toggle_contentElements()



// Скрываю/отображаю форму с заявкой на подключение
function toggle_partnershipRequestForm(elemId) {
    // corp_3 / commiss_3 / agents_3
    // проверка - выполняется ли в текущий момент какая-нибудь анимация
    if ($("#container_level_1").hasClass("check_animating")) {
        return false;
    }

    // проставляю нужные значения в форме.
    var choiceId = elemId.split("_")[0];
    $("#CooperationType>option[value='"+choiceId+"']").attr('selected', 'selected');
    //$("#partnership_request_hidden .description_buttons>.buttons_close").attr("closeid", "content_"+choiceId);


	// меняю ссылку в браузере
	if (Anchors.State!="HASH") {
		// если я сюда попадаю, значит topCategory и subCategory уже выставлены и я могу определить их
		var topCategory = "";
		var subCategory = "";
		var anchorId = "";
		var newAnchor = "";

		var inputAnchorsList = window.location.hash.substring(1).split('/');
		if (inputAnchorsList.length >= 2) {
			topCategory = inputAnchorsList[0];
			subCategory = inputAnchorsList[1];
			$.each(Anchors.Hash, function(key, anchorObj) {
				anchorId = anchorObj.id;
				if (anchorObj.replacement != "") {
					anchorId = anchorObj.id.replace(new RegExp(anchorObj.replacement,'g'), topCategory);
				}
				// console.log('anchorId: '+anchorId+'; elemId: '+elemId);
				if (anchorId == "submenu_"+elemId) {
					// console.log('!!! anchorId: '+anchorId+'; elemId: '+elemId);
					newAnchor = topCategory+'/'+subCategory+'/'+anchorObj.anchor;
				}
			});
			window.location.hash = newAnchor;
		}
	}

	if (Anchors.State=="HASH") {
		// console.log('toggle_partnershipRequestForm('+elemId+') and check HASH');
		$("#submenu_"+choiceId+"_3").addClass("pseudolink_white_dashed");
		$("#partnership_request_hidden").show();
	}
	else if ($("div.scheme_container:visible").length!=0) {
        // Была открыта схема. Кликаю на форму. Схему нужно скрыть, форме сделать .show()
        $("#"+choiceId+"_partnership_scheme").removeClass("pseudolink_white_dashed");
        $("#submenu_"+choiceId+"_3").addClass("pseudolink_white_dashed");
        $("div.scheme_container:visible").hide();
        $("#partnership_request_hidden").show();
    } else if ($("#partnership_request_hidden:visible").length!=0) {
        // Была открыта форма. И я по ней же кликаю. Форму нужно скрыть, форме делаю .slideToggleAlt("slow");
        $("#submenu_"+choiceId+"_3").removeClass("pseudolink_white_dashed");
        $("#partnership_request_hidden").slideToggleAlt("slow");
    } else {
        $("#submenu_"+choiceId+"_3").addClass("pseudolink_white_dashed");
        $("#partnership_request_hidden").slideToggleAlt("slow", function() {
            $.scrollTo($("#partnership_request_hidden").offset(), 500);
        });
    }
}
// ENDF toggle_partnershipRequestForm()




// включение/выключение схемы сотрудничества
function toggle_partnershipSchemeElements(schemeId) {
    // corp/commiss/agents
    // проверка - выполняется ли в текущий момент какая-нибудь анимация
    if ($("#container_level_1").hasClass("check_animating")) {
        return false;
    }


	// меняю ссылку в браузере
	if (Anchors.State!="HASH") {
		// если я сюда попадаю, значит topCategory и subCategory уже выставлены и я могу определить их
		var topCategory = "";
		var subCategory = "";
		var anchorId = "";
		var newAnchor = "";

		var inputAnchorsList = window.location.hash.substring(1).split('/');
		if (inputAnchorsList.length >= 2) {
			topCategory = inputAnchorsList[0];
			subCategory = inputAnchorsList[1];
			$.each(Anchors.Hash, function(key, anchorObj) {
				anchorId = anchorObj.id;
				if (anchorObj.replacement != "") {
					anchorId = anchorObj.id.replace(new RegExp(anchorObj.replacement,'g'), topCategory);
				}
				// console.log('anchorId: '+anchorId+'; elemId: '+elemId);
				if (anchorId == schemeId+"_partnership_scheme") {
					// console.log('!!! anchorId: '+anchorId+'; elemId: '+schemeId);
					newAnchor = topCategory+'/'+subCategory+'/'+anchorObj.anchor;
				}
			});
			window.location.hash = newAnchor;
		}
	}

	if (Anchors.State=="HASH") {
		// console.log('toggle_partnershipSchemeElements('+schemeId+') and check HASH');
		$("#"+schemeId+"_partnership_scheme").addClass("pseudolink_white_dashed");
		$("#scheme_"+schemeId).show();
	}
	// в принципе, т.к. форма убрана и вместо неё вставлен линк на /partners/register/ - можно следующий else if закомментировать.
	// но с другой стороны - пусть будет. сюда я никогда не попаду, т.к. не будет visible #partnership_request_hidden элемента.
    else if ($("#partnership_request_hidden:visible").length!=0) {
        // Была открыта форма. ей делаю .hide(), схеме делаю .show()
        $("#submenu_"+schemeId+"_3").removeClass("pseudolink_white_dashed");
        $("#"+schemeId+"_partnership_scheme").addClass("pseudolink_white_dashed");
        $("#partnership_request_hidden").hide();
        $("#scheme_"+schemeId).show();
    } else if ($("#scheme_"+schemeId+":visible").length!=0) {
        // Была открыта схема. И я по ней же кликаю. Схему нужно скрыть, схеме делаю .slideToggleAlt("slow");
        $("#"+schemeId+"_partnership_scheme").removeClass("pseudolink_white_dashed");
        $("#scheme_"+schemeId).slideToggleAlt("slow");
    } else {
        $("#"+schemeId+"_partnership_scheme").addClass("pseudolink_white_dashed");
        $("#scheme_"+schemeId).slideToggleAlt("slow", function() {
            $.scrollTo($("#scheme_"+schemeId).offset(), 500);
        });
    }
}
// ENDF toggle_partnershipSchemeElements()



// сворачивание/разворачивание блоков "Для веб-сайтов" и "Для турфирм, гостиниц, авиакасс" в комиссионерах
function commiss_subcontainer_toggle(commiss) {
    // commiss_websites/commiss_partnersoffices
    var _obj = $('#commiss_subcontainer>div.toggleElement:visible');
    var _commiss2 = commiss.split("_")[1];

    if (_obj.length!=0) {
        // убираю стиль с текстовой ссылки и скрываю всех открытых
        var _commissSubheader = $("#commiss_subheader");
        $("span.commiss_pseudolink", _commissSubheader).removeClass("commiss_pseudolink_clicked");
        $("span.button_onoff span.button_websites",        _commissSubheader).removeClass("button_websites_hover");
        $("span.button_onoff span.button_partnersoffices", _commissSubheader).removeClass("button_partnersoffices_hover");
        $("span.button_onoff").removeClass("clicked");
        $("#commiss_subcontainer>div.toggleElement").hide();
        
        if (_obj.attr("id")!=commiss) {
            // добавляю стиль текстовой ссылке
            $("#h_"+commiss+" span.commiss_pseudolink", _commissSubheader).addClass("commiss_pseudolink_clicked");
            $("#h_"+commiss+" span.button_"+_commiss2, _commissSubheader).addClass("button_"+_commiss2+"_hover")
            $("#h_"+commiss+" span.button_onoff", _commissSubheader).addClass("clicked");
            // показываю кого-то конкретного
            $('#'+commiss).show();
            // сдвигаю экран по уровню иконок
            $.scrollTo($("#commiss_subheader").offset(), 500);
        } else {
            // этот блок закрывается, и мы должны вернуться "где были"
            $.scrollTo(0, 500);
        }
    } else {
        // добавляю стиль текстовой ссылке
        $("#h_"+commiss+" span.commiss_pseudolink", _commissSubheader).addClass("commiss_pseudolink_clicked");
        $("#h_"+commiss+" span.button_"+_commiss2, _commissSubheader).addClass("button_"+_commiss2+"_hover")
        $("#h_"+commiss+" span.button_onoff", _commissSubheader).addClass("clicked");
        // показываю кого-то конкретного
        $('#'+commiss).show();
        // сдвигаю экран по уровню иконок
        $.scrollTo($("#commiss_subheader").offset(), 500);
    }
}
// ENDF commiss_subcontainer_toggle()



// Сворачивание/разворачивание подблоков в "Для веб-сайтов", "Для турфирм, гостиниц, авиакасс" в комиссионерах
function commiss_onoff_toggle(commiss) {
    // hotel_1/hotel_2/hotel_3/hotel_4/hotel_5/hotel_6/hotel_7/hotel_8/hotel_9/hotel_10/hotel_11/hotel_12/commiss_online_office
    $("#"+commiss).slideToggleAlt(200, function() {
        if ($("#"+commiss+":visible").length!=0) {
            $.scrollTo($("#h_"+commiss).offset(), 500);
        }
    })
}
// ENDF commiss_onoff_toggle()



function ourpartners_toggle() {
	if ($("#container_level_1").hasClass("check_animating")) {
		return false;
	}
	$("#container_level_1").addClass("check_animating");
	if ($("#partners_tablelist:visible").length!=0) {
		$("#partners_tablelist_header span").removeClass("pseudolink_white_dashed");
	} else {
		$("#partners_tablelist_header span").addClass("pseudolink_white_dashed");
	}
	$("#partners_tablelist_container").slideToggleAlt("slow", function() {
		$("#container_level_1").removeClass("check_animating");
	});
}

function showClosedPartners() {
	$("#ourpartners_block").show();
	$("#partners_tablelist_container").hide();
	$("#partners_tablelist_header span").removeClass("pseudolink_white_dashed");
}


function toggle_faq() {
    $("#ourpartners_block").hide();
    $("#faq_block").slideToggleAlt(100, function() {
        if ($("#faq_block:visible").length!=0) {
            $.scrollTo($("#faq_an").offset(), 500);
        } else {
            if ($(".container_elements:visible").length == 0) 
				showClosedPartners();
        }
    });
}


function hide_all() {
    toggle_choiceMenu("hide_all");
    $("#faq_block").hide();
}



/*
function toggle_partner(partner) {
        $("#container_left_menu_partners").addClass("sized").animate({"height": "+=225px"}, 1000, function(){
}
*/





$(document).ready(function () {
    CreateLoader();

    // Заявка на подключение
    var objForm = document.getElementById('f_partnership_request');
    new FormClass(objForm);

    // обработчик инпутов для форм
    var elPartnershipName        = document.getElementById("ContactName");
    var elPartnershipCompanyName = document.getElementById("CompanyName");
    var elPartnershipCompanyCity = document.getElementById("City");
    var elPartnershipPhoneNumber = document.getElementById("Phone");
    var elPartnershipComments    = document.getElementById("Comments");
    var elPartnershipWebSite     = document.getElementById("SiteURL");
    var elPartnershipEmail       = document.getElementById("EMail");
    var elCaptchaValue           = document.getElementById("Approval");
    
    if (elPartnershipName         != null) new FieldClass(elPartnershipName, { latinAndCyrillic: true });
    if (elPartnershipCompanyName  != null) new FieldClass(elPartnershipCompanyName);
    if (elPartnershipCompanyCity  != null) new FieldClass(elPartnershipCompanyCity);
    if (elPartnershipPhoneNumber  != null) new FieldClass(elPartnershipPhoneNumber /*, {numbers: true }*/ );
    if (elPartnershipComments     != null) new FieldClass(elPartnershipComments);
    if (elPartnershipWebSite      != null) new FieldClass(elPartnershipWebSite);
    if (elPartnershipEmail        != null) new FieldClass(elPartnershipEmail, { email: true });
    if (elCaptchaValue            != null) new FieldClass(elCaptchaValue);



    // включение/выключение элементов верхнего уровня + замена иконки при наведении/клике
    $("#choice_corp").mouseover(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_corp>span.button_top").addClass("button_corp_hover");
                $("#choice_corp>span.pseudolink_dashed").addClass("pseudolink_white_dashed");
        }
    }).mouseleave(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_corp>span.button_top").removeClass("button_corp_hover");
                $("#choice_corp>span.pseudolink_dashed").removeClass("pseudolink_white_dashed");
        }
    });

    $("#choice_commiss").mouseover(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_commiss>span.button_top").addClass("button_commiss_hover");
                $("#choice_commiss>span.pseudolink_dashed").addClass("pseudolink_white_dashed");
        }
    }).mouseleave(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_commiss>span.button_top").removeClass("button_commiss_hover");
                $("#choice_commiss>span.pseudolink_dashed").removeClass("pseudolink_white_dashed");
        }
    });

    $("#choice_agents").mouseover(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_agents>span.button_top").addClass("button_agents_hover");
                $("#choice_agents>span.pseudolink_dashed").addClass("pseudolink_white_dashed");
        }
    }).mouseleave(function() {
        if (!$(this).hasClass("clicked")) {
                $("#choice_agents>span.button_top").removeClass("button_agents_hover");
                $("#choice_agents>span.pseudolink_dashed").removeClass("pseudolink_white_dashed");
        }
    });

    $("#h_commiss_websites span.button_onoff").mouseover(function() {
        if (!$(this).hasClass("clicked")) {
                $("#h_commiss_websites span.button_websites").addClass("button_websites_hover");
                $("#h_commiss_websites span.commiss_pseudolink").addClass("commiss_pseudolink_clicked");
        }
    }).mouseleave(function() {
        if (!$(this).hasClass("clicked")) {
                $("#h_commiss_websites span.button_websites").removeClass("button_websites_hover");
                $("#h_commiss_websites span.commiss_pseudolink").removeClass("commiss_pseudolink_clicked");
        }
    });

    $("#h_commiss_partnersoffices span.button_onoff").mouseover(function() {
        if (!$(this).hasClass("clicked")) {
                $("#h_commiss_partnersoffices span.button_partnersoffices").addClass("button_partnersoffices_hover");
                $("#h_commiss_partnersoffices span.commiss_pseudolink").addClass("commiss_pseudolink_clicked");
        }
    }).mouseleave(function() {
        if (!$(this).hasClass("clicked")) {
                $("#h_commiss_partnersoffices span.button_partnersoffices").removeClass("button_partnersoffices_hover");
                $("#h_commiss_partnersoffices span.commiss_pseudolink").removeClass("commiss_pseudolink_clicked");
        }
    });



    // refresh captcha when it's clicked
    $("#CaptchaImg").click (function() { _myReloadCaptcha(); })


    // включение/выключение верхнего меню
    $("#choice_corp").click   (function() { toggle_choiceMenu("corp");    })
    $("#choice_commiss").click(function() { toggle_choiceMenu("commiss"); })
    $("#choice_agents").click (function() { toggle_choiceMenu("agents");  })
    $("#cooperation_type_cell span").click (function() {
        hide_all();
    })


    // включение/выключение элементов второго уровня
    $("#submenu_corp_1").click(function() { toggle_contentElements("corp_1"); })
    $("#submenu_corp_2").click(function() { toggle_contentElements("corp_2"); })
    //$("#submenu_corp_3").click(function() { toggle_partnershipRequestForm("corp_3"); })

    $("#submenu_commiss_1").click(function() { toggle_contentElements("commiss_1"); })
    $("#submenu_commiss_2").click(function() { toggle_contentElements("commiss_2"); })
    //$("#submenu_commiss_3").click(function() { toggle_partnershipRequestForm("commiss_3"); })

    $("#submenu_agents_1").click(function() { toggle_contentElements("agents_1"); })
    $("#submenu_agents_2").click(function() { toggle_contentElements("agents_2"); })
    //$("#submenu_agents_3").click(function() { toggle_partnershipRequestForm("agents_3"); })


    // включение/выключение элементов третьего уровня (схемы сотрудничества)
    $("#corp_partnership_scheme").click(function()    { toggle_partnershipSchemeElements("corp");    })
    $("#commiss_partnership_scheme").click(function() { toggle_partnershipSchemeElements("commiss"); })
    $("#agents_partnership_scheme").click(function()  { toggle_partnershipSchemeElements("agents");  })


    // разворачивание/сворачивание подблоков в "Для веб-сайтов", "Для турфирм, гостиниц, авиакасс" в комиссионерах
    $("#h_hotel_1").click(function()      { commiss_onoff_toggle("hotel_1"); })
    $("#h_hotel_2").click(function()      { commiss_onoff_toggle("hotel_2"); })
    $("#h_hotel_3").click(function()      { commiss_onoff_toggle("hotel_3"); })
	$("#h_hotel_4").click(function()      { commiss_onoff_toggle("hotel_4"); })
    $("#h_hotel_5").click(function()      { commiss_onoff_toggle("hotel_5"); })
    $("#h_hotel_6").click(function()      { commiss_onoff_toggle("hotel_6"); })
	$("#h_hotel_7").click(function()      { commiss_onoff_toggle("hotel_7"); })
    $("#h_hotel_8").click(function()      { commiss_onoff_toggle("hotel_8"); })
    $("#h_hotel_9").click(function()      { commiss_onoff_toggle("hotel_9"); })
	$("#h_hotel_10").click(function()      { commiss_onoff_toggle("hotel_10"); })
    $("#h_hotel_11").click(function()      { commiss_onoff_toggle("hotel_11"); })
    $("#h_hotel_12").click(function()      { commiss_onoff_toggle("hotel_12"); })
    


    // обработчик кнопки "скрыть блок"
    var buttClose = $(".buttons_close[closeid]");
    if (buttClose.length != 0) {
        for (var ind=0; ind<buttClose.length; ind++) {
            if (buttClose.eq(ind).attr("closeid")!="") {
                buttClose.eq(ind).click(function(x) {
                    return function() {
                        // проверка - выполняется ли в текущий момент какая-нибудь анимация
                        if ($("#container_level_1").hasClass("check_animating")) {
                            return false;
                        }
                        
                        $("#container_level_1").addClass("check_animating")
                        
                        // закрываю схему подключения, если она есть
                        $("div.scheme_container:visible").hide();
                        $(".become_a_partner_container .pseudolink_dashed").removeClass("pseudolink_white_dashed");
                        
                        var closeObj = x.attr("closeid");
                        var closeType = closeObj.split("_")[0];
                        var closeId   = closeObj.split("_")[1];
                        
                        if (closeType == "content") {
                            // закрываю чисто контент
                            hideContent(closeId);
                        } else if (closeType == "partnership") {
                            $("#partnership_request_hidden").slideToggleAlt("slow");
                        } else if (closeType == "description") {
                            if ($("#ufo_"+closeId+":visible").length!=0) {
                                // если контент открыт - закрываю контент и дескрипшен
                                hideContent(closeId, function() {
                                    hideDescription(closeId);
                                });
                            } else {
                                // иначе закрываю только дескрипшен
                                hideDescription(closeId);
                            }
                        }
                        
                        // удалим класс check_animating через полторы секунды
                        setTimeout(function() { $("#container_level_1").removeClass("check_animating") }, 1500)
                    }
                }(buttClose.eq(ind)))
            }
        }
    }
// /обработчик кнопки "скрыть блок"





    // FAQ - разворачивание ответов при клике на вопрос
	$("dt").click(function() { 
		var Id = $(this).attr("id").split("id_")[1];
		var Answer = document.getElementById( Id );
		$(Answer).slideToggleAlt(200);
	});
	// FAQ - подсвечивание тега в облаке, при наведении на него курсора
	var _clouds = $("#cloud li span.pseudo_anchor");
	for (var ind=0; ind<_clouds.length; ind++) {
	    _clouds.eq(ind).mouseover(function(x) {
	        return function(){
		        x.addClass("hover");
		    }
	    }(_clouds.eq(ind))).mouseout(function(){
		    $("#cloud li span.pseudo_anchor").removeClass("hover");
	    });
	}


	// приход по anchor-ссылке
	if (window.location.hash.length > 0) {
		Anchors.State = "HASH";
		var inputAnchorsList = window.location.hash.substring(1).split('/');
		var topCategory = inputAnchorsList[0];
		var lastCategoryId = "";
		var anchorId = "";
		var anchorMenuId = "";
		$.each(inputAnchorsList, function(key, value) {
			var elem = Anchors.Hash[value];
			if (typeof elem != "undefined") {
					$("#ourpartners_block").hide();
					anchorId = elem.id;
					anchorMenuId = elem.menuId;
					if (elem.replacement != "") {
						// console.log('should replace '+elem.anchor);
						anchorId = elem.id.replace(new RegExp(elem.replacement,'g'), topCategory);
						anchorMenuId = elem.menuId.replace(new RegExp(elem.replacement,'g'), topCategory);
					}
					if (anchorMenuId != "") {
						// console.log('show '+"#"+elem.menuId);
						$("#"+anchorMenuId).show();
						if ($("#"+anchorMenuId+":visible").length!=0) {
							// console.log ('showed '+"#"+elem.menuId);
						}
						// console.log('add class ufo_img to '+"#"+elem.menuId+" div:eq(0)");
						$("#"+anchorMenuId+" div:eq(0)").addClass("ufo_img");
						if ($("#"+anchorMenuId+" div:eq(0)").hasClass("ufo_img")) {
							// console.log('added class ufo_img to '+"#"+elem.menuId+" div:eq(0)");
						}
					}
					lastCategoryId = anchorId;
					// console.log('clicked @ '+elem.id);
					$("#"+anchorId).click();
			}
		}); // $.each
		Anchors.State = "";
		// добавить опускание вниз на последний элемент, для глубины 2 и более
		if (inputAnchorsList.length >= 2) {
			$.scrollTo($("#"+lastCategoryId).offset(), 500);
		}
	}
	// (window.location.hash.length > 0)
	// /приход по anchor-ссылке

	
	$("#video1Switch").click(function() {
		var v = $("#video1").css("visibility", "hidden");
		var a = $(this).find("span.toggling"), arrow = a.html();
		a.html(arrow == "&#9658;" || arrow == "\u25ba" ? "&#9660;" : "&#9658;");
		$("#video1Container").slideToggle("normal", function() {
			v.css("visibility", "visible");
		});
		return false;
	});

});
// ENDF $(document).ready(function () { }
