
var aUser = [];
var response_status = 1;
var isCanCrossDomain = true;
var _keydown = document.onkeydown;

﻿var aLocalData = [
	{ name: "банкоматы", real: "банкоматы" },
    { name: ",fyrjvfns", real: "банкоматы" },
    { name: "мой сейф", real: "мой сейф" },
	{ name: "вакансии", real: "вакансии" },
	{ name: "реквизиты", real: "реквизиты" },
	{ name: "альфа клик", real: "альфа клик" },
	{ name: "альфа чек", real: "альфа чек" },
	{ name: "аэрофлот", real: "аэрофлот" },
	{ name: "кредит", real: "кредит" },
	{ name: "webmoney", real: "webmoney" },
	{ name: "банкомат", real: "банкомат" },
	{ name: "тарифы", real: "тарифы" },
	{ name: "альфа-чек", real: "альфа-чек" },
	{ name: "овердрафт", real: "овердрафт" },
	{ name: "кредитная карта", real: "кредитная карта" },
	{ name: "ипотека", real: "ипотека" },
	{ name: "альфа-клик", real: "альфа-клик" },
	{ name: "мужская карта", real: "мужская карта" },
	{ name: "альфа мобайл", real: "альфа мобайл" },
	{ name: "залоговое имущество", real: "залоговое имущество" },
	{ name: "калькулятор", real: "калькулятор" },
	{ name: "виртуальная карта", real: "виртуальная карта" },
	{ name: "реквизиты банка", real: "реквизиты банка" },
	{ name: "погашение кредита", real: "погашение кредита" },
	{ name: "cosmo", real: "cosmo" },
	{ name: "отделения", real: "отделения" },
	{ name: "страхование", real: "страхование" },
	{ name: "вклады", real: "вклады" },
	{ name: "аэрофлот бонус", real: "аэрофлот бонус" },
	{ name: "paypal", real: "paypal" },
	{ name: "клик", real: "клик" },
	{ name: "кредитные карты", real: "кредитные карты" },
	{ name: "баланс", real: "баланс" },
	{ name: "улетный", real: "улетный" },
	{ name: "яндекс", real: "яндекс" },
	{ name: "cosmopolitan", real: "cosmopolitan" },
	{ name: "swift", real: "swift" },
	{ name: "автокредит", real: "автокредит" },
	{ name: "метро", real: "метро" },
	{ name: "курс валют", real: "курс валют" },
	{ name: "перевод", real: "перевод" },
	{ name: "филиалы", real: "филиалы" },
	{ name: "адреса банкоматов", real: "адреса банкоматов" },
	{ name: "скидки", real: "скидки" },
	{ name: "альфа-мобайл", real: "альфа-мобайл" },
	{ name: "сейф", real: "сейф" },
	{ name: "телефонный центр", real: "телефонный центр" },
	{ name: "активация карты", real: "активация карты" },
	{ name: "потребительская карта", real: "потребительская карта" },
	{ name: "потребительский кредит", real: "потребительский кредит" },
	{ name: "iphone", real: "iphone" },
	{ name: "метрокарта", real: "метрокарта" },
	{ name: "мобайл", real: "мобайл" },
	{ name: "Мой сейф", real: "Мой сейф" },
	{ name: "дебетовая карта", real: "дебетовая карта" },
	{ name: "карта", real: "карта" },
	{ name: "кредиты", real: "кредиты" },
	{ name: "режим работы", real: "режим работы" },
	{ name: "курсы валют", real: "курсы валют" },
	{ name: "личный кабинет", real: "личный кабинет" },
	{ name: "переводы", real: "переводы" },
	{ name: "интернет банк", real: "интернет банк" },
	{ name: "комиссия", real: "комиссия" },
	{ name: "карты", real: "карты" },
	{ name: "мобильный банк", real: "мобильный банк" },
	{ name: "оплата кредита", real: "оплата кредита" },
	{ name: "альфаклик", real: "альфаклик" },
	{ name: "яндекс деньги", real: "яндекс деньги" },
	{ name: "расчетный счет", real: "расчетный счет" },
	{ name: "конвертация", real: "конвертация" },
	{ name: "открытие счета", real: "открытие счета" },
	{ name: "эквайринг", real: "эквайринг" },
	{ name: "адреса", real: "адреса" },
	{ name: "курс", real: "курс" },
	{ name: "пиф", real: "пиф" },
	{ name: "visa", real: "visa" },
	{ name: "залог", real: "залог" },
	{ name: "остаток по кредиту", real: "остаток по кредиту" },
	{ name: "пополнение счета", real: "пополнение счета" },
	{ name: "обмен валюты", real: "обмен валюты" },
	{ name: "часы работы", real: "часы работы" },
	{ name: "открыть счет", real: "открыть счет" },
	{ name: "кредитный калькулятор", real: "кредитный калькулятор" },
	{ name: "анкета", real: "анкета" },
	{ name: "договор", real: "договор" },
	{ name: "депозит", real: "депозит" },
	{ name: "western union", real: "western union" },
	{ name: "пластиковые карты", real: "пластиковые карты" },
	{ name: "лимит", real: "лимит" },
	{ name: "монеты", real: "монеты" },
	{ name: "форекс", real: "форекс" },
	{ name: "класс", real: "класс" },
	{ name: "карта для погашения кредита", real: "карта для погашения кредита" },
	{ name: "космополитен", real: "космополитен" },
	{ name: "кредит наличными", real: "кредит наличными" },
	{ name: "vjq ctqa", real: "мой сейф" },
	{ name: "dfrfycbb", real: "вакансии" },
	{ name: "htrdbpbns", real: "реквизиты" },
	{ name: "fkmaf rkbr", real: "альфа клик" },
	{ name: "fkmaf xtr", real: "альфа чек" },
	{ name: "f'hjakjn", real: "аэрофлот" },
	{ name: "rhtlbn", real: "кредит" },
	{ name: "цуиьщтун", real: "webmoney" },
	{ name: ",fyrjvfn", real: "банкомат" },
	{ name: "nfhbas", real: "тарифы" },
	{ name: "fkmaf-xtr", real: "альфа-чек" },
	{ name: "jdthlhfan", real: "овердрафт" },
	{ name: "rhtlbnyfz rfhnf", real: "кредитная карта" },
	{ name: "bgjntrf", real: "ипотека" },
	{ name: "fkmaf-rkbr", real: "альфа-клик" },
	{ name: "ve;crfz rfhnf", real: "мужская карта" },
	{ name: "fkmaf vj,fqk", real: "альфа мобайл" },
	{ name: "pfkjujdjt bveotcndj", real: "залоговое имущество" },
	{ name: "rfkmrekznjh", real: "калькулятор" },
	{ name: "dbhnefkmyfz rfhnf", real: "виртуальная карта" },
	{ name: "htrdbpbns ,fyrf", real: "реквизиты банка" },
	{ name: "gjufitybt rhtlbnf", real: "погашение кредита" },
	{ name: "сщыьщ", real: "cosmo" },
	{ name: "jnltktybz", real: "отделения" },
	{ name: "cnhf[jdfybt", real: "страхование" },
	{ name: "drkfls", real: "вклады" },
	{ name: "f'hjakjn ,jyec", real: "аэрофлот бонус" },
	{ name: "зфнзфд", real: "paypal" },
	{ name: "rkbr", real: "клик" },
	{ name: "rhtlbnyst rfhns", real: "кредитные карты" },
	{ name: ",fkfyc", real: "баланс" },
	{ name: "ektnysq", real: "улетный" },
	{ name: "zyltrc", real: "яндекс" },
	{ name: "сщыьщзщдшеут", real: "cosmopolitan" },
	{ name: "ыцшае", real: "swift" },
	{ name: "fdnjrhtlbn", real: "автокредит" },
	{ name: "vtnhj", real: "метро" },
	{ name: "rehc dfk.n", real: "курс валют" },
	{ name: "gthtdjl", real: "перевод" },
	{ name: "abkbfks", real: "филиалы" },
	{ name: "flhtcf ,fyrjvfnjd", real: "адреса банкоматов" },
	{ name: "crblrb", real: "скидки" },
	{ name: "fkmaf-vj,fqk", real: "альфа-мобайл" },
	{ name: "ctqa", real: "сейф" },
	{ name: "ntktajyysq wtynh", real: "телефонный центр" },
	{ name: "frnbdfwbz rfhns", real: "активация карты" },
	{ name: "gjnht,bntkmcrfz rfhnf", real: "потребительская карта" },
	{ name: "gjnht,bntkmcrbq rhtlbn", real: "потребительский кредит" },
	{ name: "шзрщту", real: "iphone" },
	{ name: "vtnhjrfhnf", real: "метрокарта" },
	{ name: "vj,fqk", real: "мобайл" },
	{ name: "Vjq ctqa", real: "Мой сейф" },
	{ name: "lt,tnjdfz rfhnf", real: "дебетовая карта" },
	{ name: "rfhnf", real: "карта" },
	{ name: "rhtlbns", real: "кредиты" },
	{ name: "ht;bv hf,jns", real: "режим работы" },
	{ name: "rehcs dfk.n", real: "курсы валют" },
	{ name: "kbxysq rf,bytn", real: "личный кабинет" },
	{ name: "gthtdjls", real: "переводы" },
	{ name: "bynthytn ,fyr", real: "интернет банк" },
	{ name: "rjvbccbz", real: "комиссия" },
	{ name: "rfhns", real: "карты" },
	{ name: "vj,bkmysq ,fyr", real: "мобильный банк" },
	{ name: "jgkfnf rhtlbnf", real: "оплата кредита" },
	{ name: "fkmafrkbr", real: "альфаклик" },
	{ name: "zyltrc ltymub", real: "яндекс деньги" },
	{ name: "hfcxtnysq cxtn", real: "расчетный счет" },
	{ name: "rjydthnfwbz", real: "конвертация" },
	{ name: "jnrhsnbt cxtnf", real: "открытие счета" },
	{ name: "rdfqhbyu", real: "эквайринг" },
	{ name: "flhtcf", real: "адреса" },
	{ name: "rehc", real: "курс" },
	{ name: "gba", real: "пиф" },
	{ name: "мшыф", real: "visa" },
	{ name: "pfkju ", real: "залог" },
	{ name: "jcnfnjr gj rhtlbne", real: "остаток по кредиту" },
	{ name: "gjgjkytybt cxtnf", real: "пополнение счета" },
	{ name: "j,vty dfk.ns", real: "обмен валюты" },
	{ name: "xfcs hf,jns", real: "часы работы" },
	{ name: "jnrhsnm cxtn", real: "открыть счет" },
	{ name: "rhtlbnysq rfkmrekznjh", real: "кредитный калькулятор" },
	{ name: "fyrtnf", real: "анкета" },
	{ name: "ljujdjh", real: "договор" },
	{ name: "ltgjpbn", real: "депозит" },
	{ name: "цуыеукт гтшщт", real: "western union" },
	{ name: "gkfcnbrjdst rfhns", real: "пластиковые карты" },
	{ name: "kbvbn", real: "лимит" },
	{ name: "vjytns", real: "монеты" },
	{ name: "ajhtrc", real: "форекс" },
	{ name: "rkfcc", real: "класс" },
	{ name: "rfhnf lkz gjufitybz rhtlbnf", real: "карта для погашения кредита" },
	{ name: "rjcvjgjkbnty", real: "космополитен" },
	{ name: "rhtlbn yfkbxysvb", real: "кредит наличным" }
];

if(jQuery.browser.msie && jQuery.browser.version < 7){
	isCanCrossDomain = false;
}

isCanCrossDomain = false;

jQuery(document).ready(function(){
	if( window.init_exchange_tables ){ init_exchange_tables(); }
	if( window.init_containers ){ init_containers(); }
	if( window.init_tabs ){ init_tabs(); }
	var eSearch = document.forms['search'];
	if( eSearch ){
		if( eSearch.text ){
			cmnPlaceholder( eSearch.text, eSearch.text.getAttribute( 'placeholder' ), 'empty' );
		}
	}



	_uacct = "UA-1247553-1";
	if (typeof(urchinTracker) == 'function'){
		urchinTracker();
	}

	makeTableRowsHiglightableInMSIE();
	if(!(window.city === undefined)){
		detectUserCity();
	}


	loadProfile(0);
	loadChatState();

	citySelectorInit();

	initAlfaConsultant();
	updateFeedbackLinks();

	//fix opera layout
	if (jQuery.browser.opera) {
		jQuery("#around .layout").css("position", "static");
	}

	// Add event listener to search input
    jQuery('#search_input').autocomplete(aLocalData, {
        minChars: 1,
        multiple: false,
        matchContains: false,
        autoFill: false,
        delay: 100,
        max: 15,
	scroll: false,
        formatItem: function (row) {
            return row.real;
        },
        formatMatch: function (row) {
            return row.name;
        },
        formatResult: function (row) {
            return row.real;
        }

    });

	initAlfaSocial();
	initCollsapseBlock();
});


function cmnPlaceholder( eThis, sText, sClass_on_empty ){
	eThis.onfocus = function(){ if( eThis.value.length && eThis.value == sText ){ eThis.value = ''; } jQuery(this).removeClass( sClass_on_empty ); eThis.select(); };
	eThis.onblur = function(){ if( !this.value.length ){ jQuery(this).addClass(sClass_on_empty); this.value = sText; } };
	if( !eThis.value.length ){ eThis.onblur(); }
	if( !eThis.getAttribute( 'placeholder' ) ){ eThis.setAttribute( 'placeholder', sText ); }
}


function makeTableRowsHiglightableInMSIE() {
	if ( document.all && !window.opera ) {

		jQuery('table.html tr').each(function(index) {
			jQuery(this).hover(function() {
				jQuery(this).addClass('hover');
			}, function() {
				jQuery(this).removeClass('hover');
			});
		});
	}
}

//cmnAdd_event(window, 'load', makeTableRowsHiglightableInMSIE);

function getElementsByClassName(oElm, strTagName, strClassName){
	var arrElements = (strTagName == "*" && oElm.all)? oElm.all : oElm.getElementsByTagName(strTagName);
	var arrReturnElements = new Array();
	strClassName = strClassName.replace(/\-/g, "\\-");
	var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
	var oElement;
	for(var i=0; i<arrElements.length; i++){
		oElement = arrElements[i];
		if(oRegExp.test(oElement.className)){
			if(arrReturnElements.push){
				arrReturnElements.push(oElement);
			}
		}
	}
	return (arrReturnElements);
}

function fix_page_footer() {
	if ( window.resizeBy && window.innerWidth && window.innerWidth < screen.width ){
		window.resizeBy( -1, 0 );
		setTimeout( "window.resizeBy( 1, 0 )", 100 );
	}
}

function init_containers() {
	var aeContainers = document.getElementById( 'containers' );
	if ( aeContainers ) {
		aeContainerTitles = getElementsByClassName( aeContainers, '*', 'container-title' );
		for( var i = 0 ; i < aeContainerTitles.length ; i++ ){
			cmnSet_class( aeContainerTitles[i].parentNode, 'container-hidden' );
			aeContainerTitles[i].onclick = function(){
				cmnSwitch_class( this.parentNode, 'container-hidden', 'container-open' );
			};
		}
	}
}

function init_tabs() {
	var aeTabContainer = document.getElementById( 'tabs' );
	if ( aeTabContainer ) {
		var aeTabs = getElementsByClassName( aeTabContainer, 'div', 'tab' );
		for( var i = 0 ; i < aeTabs.length ; i++ ){
			if( i != 0 ){
				cmnSet_class( aeTabs[i], 'tab-hidden' );
				var aeTabContent = document.getElementById( aeTabs[i].id + '-content' );
				cmnSet_class( aeTabContent, 'tab-content-hidden' );
			}
			aeTabs[i].onclick = function(){
				for( var i = 0 ; i < aeTabs.length ; i++ ){
					cmnSet_class( aeTabs[i], 'tab-hidden' );
					var aeTabContent = document.getElementById( aeTabs[i].id + '-content' );
					cmnSet_class( aeTabContent, 'tab-content-hidden' );
				}
				cmnRemove_class( this, 'tab-hidden' );
				var aeTabContent = document.getElementById( this.id + '-content' );
				cmnRemove_class( aeTabContent, 'tab-content-hidden' );
			};
		}
		if( aeTabs.length > 1 ){
			cmnRemove_class( aeTabContainer, 'tabs-hidden' );
		}
	}
}

function detectUserCity(anyway) {
//	We run the city-detector script only if our user don't have city_detector cookie
	var cityCookie = readCookie('city_detector');
	if((cityCookie === null || getParam('ignore_cookie') == '1' || anyway) && (window.pId && window.pId != '1071')){
		jQuery.ajax({
			url: '/_/ajax/_get_user_city.html?url=' + url_encode(getCleanUrl()) + '&city=' + city,
			type: 'GET',
			dataType: 'xml',
			cache: false,
			timeout: 60000,
			success: function(xml) {
				showDetectedCity(jQuery(xml));
			},

			error: function() {
			}
		});
	}
}

function hideDetectedCity(){
	jQuery('#city-detected').hide();
}

function showDetectedCity( xml ){
	$xml = $(xml);
	var iResult = jQuery(xml).find('city').attr('detected');
	if(iResult == '1' && jQuery(xml).find('city').attr('same') == '0'){
		var sCityName = jQuery(xml).find('title').text();
		var sCityPath = url_decode(jQuery(xml).find('city').attr('path'));
		var sCityPathName = url_decode(jQuery(xml).find('city').attr('city'));
		var bIsParent = jQuery(xml).find('city').attr('is_parent');
		var sCurrentCity = jQuery('#city_name-gl').text();
		var sAlertDiv = '';


		if( bIsParent == 1 ){
			sAlertDiv = '<div id="city-detected" class="frame-whole"><div class="frame-whole-tl"><spacer></spacer></div><div class="frame-whole-tr"><spacer></spacer></div><div class="frame-whole-br"><spacer></spacer></div><div class="frame-whole-bl"><spacer></spacer></div><div id="city-detected-content"><img id="detected_close_btn" width="13" height="13" border="0" src="/f/1/i/close-w.gif" title="Close" alt="Close" onclick="hideDetectedCity(); return false;"/><p>Вы смотрите сайт для города '+ sCurrentCity +'.<br />Для просмотра сайта другого города, выберите его в списке. Ближайший город присутствия Альфа-Банка: <a href="' + sCityPath + '">'+ sCityName +'</a></p></div></div>';
		}else{
			sAlertDiv = '<div id="city-detected" class="frame-whole"><div class="frame-whole-tl"><spacer></spacer></div><div class="frame-whole-tr"><spacer></spacer></div><div class="frame-whole-br"><spacer></spacer></div><div class="frame-whole-bl"><spacer></spacer></div><div id="city-detected-content"><img id="detected_close_btn" width="13" height="13" border="0" src="/f/1/i/close-w.gif" title="Close" alt="Close" onclick="hideDetectedCity(); return false;"/><p>Вы смотрите сайт для города '+ sCurrentCity +'.<br />Для просмотра сайта другого города, выберите его в списке &#171;Ваш город&#187;: <a href="' + sCityPath + '">'+ sCityName +'</a></p></div></div>';
			sAlertDiv =
				'<div id="city-detected" class="frame-whole gray">'
					+'<div class="frame-whole-tl"></div><div class="frame-whole-tr"></div><div class="frame-whole-br"></div><div class="frame-whole-bl"></div>'
					+'<img id="detected_close_btn_gray" width="9" height="9" border="0" src="/f/1/i/i-closebtn.gif" title="Close" alt="Close" onclick="hideDetectedCity(); return false;"/>'
					+'<div id="city-detected-content">'
						+'<h3>Вы смотрите сайт для города '+ sCurrentCity +'</h3>'
						+'<p>Для просмотра сайта города, указанного в Ваших &#171;Личных данных&#187;, выберите его в списке &#171;Ваш город&#187;: <a href="' + sCityPath + '">'+ sCityName +'</a>.</p>'
						+'<p class="description">Предлагаем Вам <span class="to_favorute">добавить в закладки</span> браузера главную страницу сайта для города '+ sCityName +':<br/>'
							+'<a href="/'+sCityPathName+'/">http://alfabank.ru/'+sCityPathName+'/</a>.</p>'
					+'</div>'
				+'</div>';

		}

		jQuery('td.navigation').append(sAlertDiv);
		if ($.browser.msie) {
			$("#city-detected.gray span.to_favorute").addClass("pseudo-link").click(function(){
				window.external.AddFavorite('http://alfabank.ru/'+sCityPathName+'/', 'Альфа-Банк '+sCityName);
			});
		}
		jQuery('#city-detected').show('normal');
//		alert(sCityName + ' -- ' + sCityPath);
	}
}

function loadChatState() {
	if(jQuery('div#bottom-nav img.chat-popup-right') && jQuery('div#bottom-nav img.chat-popup-right').length > 0){
		jQuery.ajax({
			url: '/_/ajax/_get_chat_status.html',
			type: 'GET',
			dataType: 'xml',
			cache: false,
			timeout: 60000,
			success: function(xml) {
				showChatState(jQuery(xml));
			},

			error: function() {
			}
		});
	}
}

function showChatState( code ) {
	if(jQuery(code).find('online').text() == 'true'){
	}else{
		jQuery('div#bottom-nav img.chat-popup-right').parent().hide();
	}
}

function loadProfile( doAnimate ) {
	if(doAnimate){
		animateFavorites('add');
		window.setTimeout(doLoadProfile, 1300);
	}else{
		doLoadProfile();
	}
}

function doLoadProfile() {
	var authCookie = readCookie('auth.name');
	if((document.domain != 'alfabank.ru' || !(window.pId === undefined)) && (authCookie != null && authCookie.length > 3) ){
		if(jQuery('div#ProfileHead') && pId){
			if(isCanCrossDomain){
				try{
					doLoadProfileAjax('http' + (isSecure() ? 's':'') + '://alfabank.ru/_/ajax/_get_auth_status.html?pageId='+pId+'&script=1&uuid='+getRandom(10000))
					isCanCrossDomain = true;
				} catch (err) {
					isCanCrossDomain = false;
					doLoadProfileAjax('/_/ajax/_get_auth_status.html?pageId='+pId+'&script=1&uuid='+getRandom(10000));
				}
			} else {
				doLoadProfileAjax('/_/ajax/_get_auth_status.html?pageId='+pId+'&script=1&uuid='+getRandom(10000));
			}
		}
	}else{
		showUnathorized();
	}
}

function doLoadProfileAjax(urlParam) {
			jQuery.ajax({
				url: urlParam,
				type: 'GET',
				dataType: 'script',
				scriptCharset: 'utf-8',
				cache: false,
				timeout: 60000,
				success: function(text) {
					/*  внутри того скрипта вызываем showLoadedProfile  */
				},

				error: function(xhr, ajaxOptions, thrownError){
					//alert('Check login status error, status: ' + xhr.status + ', Error: ' + ajaxOptions);
					showUnathorized();
				}
			});
}
function isSecure() {
   return window.location.protocol == 'https:';
}

function getRandom( total ){
	return(Math.floor(Math.random() * total) + 1);
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function showLoadedProfile() {
	var isAuthorized = aUser.auth;
	if(isAuthorized == 1){
		var userEmail = aUser.login;
		var userName = aUser.email.substring(0, aUser.email.indexOf('@'));
		if(!userName) userName = userEmail.substring(0, userEmail.indexOf('@'));

		var pageDomain = getLinkStart();
		var url = getCleanUrl(1);
		var addToFavorites = 1;

		var favoritesHead = '<div class="frame-whole helpful-links" id="favoritesBlock"><div class="frame-whole-tl"><spacer></spacer></div><div class="frame-whole-tr"><spacer></spacer></div><div class="frame-whole-br"><spacer></spacer></div><div class="frame-whole-bl"><spacer></spacer></div><noindex><p id="favoritesPLink"><a href="" class="pseudo-href" onclick="toggleFavoritesBlock(); return false;">Избранное</a></p><ul>';
		var favoritesFooter = '</ul></noindex></div>';
		var favorites = '';
		var favoritesFound = false;

		var i =0;
		if(aUser.favorites.length > 0){
			for(var i = 0; i < aUser.favorites.length; i++){
				var fav_url = aUser.favorites[i].href;
				if (document.location.host != 'alfabank.ru' && document.location.host != 'www.alfabank.ru' && fav_url.indexOf('http://') == -1) {
					fav_url = 'http://alfabank.ru' + fav_url;
				}
				favoritesFound = true;
				if(url != aUser.favorites[i].href){
					favorites += '<li id="fav-row-'+ i +'">';
					favorites += '<span class="fav-delete"><a href="" onclick="removeFromFavoriteByHref(\''+ aUser.favorites[i].href + '\',' + i +'); return false;" class="delete"><img src="/f/1/global/i-delete-r.gif" width="7" height="7" /></a></span>';
					favorites += '<a href="' + fav_url + '" class="fav-link">' + aUser.favorites[i].title +  '</a>';
					if( aUser.favorites[i].updated )
						favorites += ' <span class="fav-updated">новое!</span>';
					favorites += '</li>';
				}else{
					addToFavorites = 0;
					favorites += '<li id="fav-row-'+ i +'" class="selected">';
					favorites += '<span class="fav-delete"><a href="" onclick="removeFromFavoriteByHref(\''+ aUser.favorites[i].href + '\',' + i +'); return false;" class="delete"><img src="/f/1/global/i-delete-r.gif" width="7" height="7" /></a></span>';
					favorites += aUser.favorites[i].title+ '</li>';
				}
			}
		}

		if(!favoritesFound){
			favorites += '<p id="favoritesNotFound">Здесь будут перечислены разделы, которые вы добавите в&#160;избранное (значок сердечка рядом с&#160;заголовком)</p>';
		}

		var body = '';
		var redBlockStart = '<div class="frame-whole" id="favoriteOpenerLink"><div class="frame-whole-bl"><spacer/></div><div class="frame-whole-br"><spacer/></div><div class="frame-whole-tr"><spacer/></div><div class="frame-whole-tl"><spacer/></div>';
		if(getCleanUrl() != '/private/') {
			//body = '<table><tr><td style="z-index: 19;">' + favoritesHead + favorites + favoritesFooter + '<img src="/f/1/global/i-profile.gif" id="profileImg" /><a href="'+pageDomain+'private/?guid='+getRandom(10000)+'" id="profileLink">' + userName + '</a>&#160;<a href="'+pageDomain+'private/?auth.logout=do" id="logoutLink" onclick="mainDeauthorize(); return false;"><img src="/f/1/i/i-logout.gif" /></a></td><td>'+ redBlockStart +'<a href="" onclick="toggleFavoritesBlock(); return false;" id="favoritesListLink">Избранное</a></div></td></tr></table>';
			body = '<div class="b-user__panel">' + favoritesHead + favorites + favoritesFooter + '<img src="/f/1/global/i-profile.gif" id="profileImg" /><a href="'+pageDomain+'private/?guid='+getRandom(10000)+'" id="profileLink">' + userName + '</a>&#160;<a href="'+pageDomain+'private/?auth.logout=do" id="logoutLink" onclick="mainDeauthorize(); return false;"><img src="/f/1/i/i-logout.gif" /></a></div>'+ redBlockStart +'<a href="" onclick="toggleFavoritesBlock(); return false;" id="favoritesListLink">Избранное</a></div><div class="clear"></div>';
		} else {
			//body = '<table><tr><td style="z-index: 19;">' + favoritesHead + favorites + favoritesFooter + '<img src="/f/1/global/i-profile.gif" id="profileImg" />' + userName + '&#160;<a href="'+pageDomain+'private/?auth.logout=do" id="logoutLink" onclick="mainDeauthorize(); return false;"><img src="/f/1/i/i-logout.gif" /></a></td><td>'+ redBlockStart +'<a href="" onclick="toggleFavoritesBlock(); return false;" id="favoritesListLink">Избранное</a></div></td></tr></table>';
			body = '<div class="b-user__panel">' + favoritesHead + favorites + favoritesFooter + '<img src="/f/1/global/i-profile.gif" id="profileImg" />' + userName + '&#160;<a href="'+pageDomain+'private/?auth.logout=do" id="logoutLink" onclick="mainDeauthorize(); return false;"><img src="/f/1/i/i-logout.gif" /></a></div>'+ redBlockStart +'<a href="" onclick="toggleFavoritesBlock(); return false;" id="favoritesListLink">Избранное</a></div><div class="clear"></div>';
		}

		jQuery('div#ProfileHead').html(body);

		if(addToFavorites)
			showAddToFavorites();
		else
			showRemoveFromFavorites();
	}else{
		showUnathorized();
	}
}

function showUnathorized() {
	var body = '';
	var pageDomain = getLinkStart();
	var authDescriptionLink = '<p id="authTitle">Вход в&#160;личный кабинет<a onclick="window.open( \''+pageDomain+'private/register/?show=true\', \'popup\', \'width=520,height=550,resizable=yes,status=no,scrollbars=yes\'); return false;" href="'+pageDomain+'private/register/"><img src="/f/1/global/i-about-private.gif" width="10" height="10" alt="" /></a></p>';
	var authTable = '<div class="titleCross"><div class="ImgContainer"><a href="" onclick="hideAuthorizationBlock(); return false;"><img src="/f/1/global/ico_gl_close.gif" /></a></div></div>' + authDescriptionLink + '<form onsubmit="return mainAuthorize(this)" action="'+pageDomain+'private/?guid='+getRandom(10000)+'" target="authIframe" id="mainAuthForm" method="POST"><input type="hidden" name="auth.logon" value="1"><input type="hidden" name="script" value="2"><table id="authTable"><tr><td class="authLabel">Логин</td><td><input name="auth.name" id="authName" placeholder="эл. почта" class="authText" /></td></tr><tr><td class="authLabel">Пароль</td><td><input name="auth.passwd" type="password" id="authPasswd" class="authText" /></td></tr><tr><td></td><td><input type="checkbox" id="authPersistent" name="auth.persistent" value="1"><label for="authPersistent">запомнить меня</label></td></tr><tr><td class="first"></td><td><input type="submit" id="authBtnSubmit" value="Войти"></td></tr></table>';
	var authBottomLinks = '<div id="AuthBottomLinks"><p style="margin-bottom: 8px;"><A class="Popup" onclick="window.open( \''+pageDomain+'private/register/\', \'popup\', \'width=520,height=550,resizable=yes,status=no,scrollbars=yes\'); return false;" href="'+pageDomain+'private/register/"><img border="0" alt="" width="11" height="9" src="/f/1/global/icon-gl-popup.gif" style="margin-right: 3px;" align="absmiddle" class="plain">Регистрация</A></p><p><A class="Popup" onclick="window.open( \''+pageDomain+'private/forget/\', \'popup\', \'width=520,height=550,resizable=yes,status=no,scrollbars=yes\'); return false;" href="'+pageDomain+'private/forget/"><img border="0" alt="" width="11" height="9" src="/f/1/global/icon-gl-popup.gif" style="margin-right: 3px;" align="absmiddle" class="plain">Забыл пароль</A></p></div></form><iframe name="authIframe" id="authIframe" style="position: absolute; visibility: hidden;"></iframe><div><br clear="all"></div>';
	var authBlock = '<div class="frame-whole" id="authBlock"><div class="frame-whole-tl"><spacer></spacer></div><div class="frame-whole-tr"><spacer></spacer></div><div class="frame-whole-br"><spacer></spacer></div><div class="frame-whole-bl"><spacer></spacer></div><div id="authBlockInner">'+ authTable + authBottomLinks + '</div></div>';

	if(getCleanUrl() != '/private/')
		body = '<table id="profile-unauth"><tr><td><img src="/f/1/i/i-lock-b.gif" id="profileImg" /><a href="'+pageDomain+'private/?guid='+getRandom(10000)+'" class="pseudo-href" onclick="showAuthorizationBlock(); return false;">Личный кабинет</a></td></tr></table>' + authBlock;
	else
		body = '<table id="profile-unauth"><tr><td><img src="/f/1/i/i-lock-b.gif" id="profileImg" />Личный кабинет</td></tr></table>';
	jQuery('div#ProfileHead').html(body);

	var eAuthName = document.getElementById('authName');
	if( eAuthName ){
		cmnPlaceholder( eAuthName, eAuthName.getAttribute( 'placeholder' ), 'empty' );
	}
}

var fav_state = 0;

function showAuthorizationBlock() {
	var _keydown = document.onkeydown;

    document.onkeydown = function (e) {
        e = e || window.event;
 
		if ((e.keyCode == 27) && (!e.ctrlKey) && (!e.altKey)) {
			hideAuthorizationBlock(_keydown);
		}
	}

	jQuery('#authBlock').show('fast');

	window.setTimeout(authFocus, 300);

	if(jQuery.browser.msie){
		jQuery('#region-switch').hide();
	}
}

function authFocus() {
	//jQuery('#authName').focus();
}

function hideAuthorizationBlock(_keydown) {
	if(_keydown){
		document.onkeydown = _keydown;
	}

	jQuery('#authBlock').hide('fast');
	if(jQuery.browser.msie){
		jQuery('#region-switch').show();
	}
}

function toggleFavoritesBlock() {
	var _keydown = document.onkeydown;

	if(fav_state == 0){
	    document.onkeydown = function (e) {
	        e = e || window.event;

			if ((e.keyCode == 27) && (!e.ctrlKey) && (!e.altKey)) {
	        	document.onkeydown = _keydown;

				jQuery('#favoritesBlock').hide();
				fav_state = 0;
				if(jQuery.browser.msie){
					jQuery('#favoriteOpenerLink').show();
				}
			}
		}

		jQuery('#favoritesBlock').show('fast');
		fav_state = 1;
		if(jQuery.browser.msie){
			jQuery('#favoriteOpenerLink').hide();
		}
	}
	else{
		document.onkeydown = _keydown;

		jQuery('#favoritesBlock').hide();
		fav_state = 0;
		if(jQuery.browser.msie){
			jQuery('#favoriteOpenerLink').show();
		}
	}
}

function getLinkStart( hideSlash ) {
	var linkStart = '';
	var pageDomain = getDomain();
	if(pageDomain != 'https://www.alfabank.ru/' && pageDomain != 'https://alfabank.ru/'){
		linkStart = 'https://alfabank.ru';
		if(!(window.city === undefined) && city)
			linkStart += city;
		else
			linkStart += '/';
	}else{
		if(!(window.city === undefined) && city)
			linkStart = city;
		else
			linkStart = '/';
	}

	if(hideSlash){
		linkStart = linkStart.substring(0, linkStart.length - 1);
	}
	return (linkStart);
}

function getCleanUrl(replaceDomains) {
	var url = document.URL;
	var pos = url.indexOf('//');
	url = url.substring(pos+2);
	pos = url.indexOf('/');
	url = url.substring(pos);

	var pageDomain = getDomain();
	if (replaceDomains) {
		if(pageDomain == 'http://ipoteka.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://cards.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://sme-credits.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://autocredits.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://auto.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://credits.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://deposits.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://aeroflot.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://cosmopolitan.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://career.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://internet.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://customer.alfabank.ru/') url = pageDomain;
		if(pageDomain == 'http://atm.alfabank.ru/') url = pageDomain;
	/*
	if(pageDomain == 'http://ipoteka.alfabank.ru/') url = '/retail/mortgage/';
	if(pageDomain == 'http://cards.alfabank.ru/') url = '/retail/cards/';
	if(pageDomain == 'http://sme-credits.alfabank.ru/') url = '/sme/credits/';
	if(pageDomain == 'http://autocredits.alfabank.ru/') url = '/retail/auto/';
	if(pageDomain == 'http://auto.alfabank.ru/') url = '/retail/auto/';
	if(pageDomain == 'http://credits.alfabank.ru/') url = '/retail/creditcards/';
	if(pageDomain == 'http://deposits.alfabank.ru/') url = '/retail/savings/deposits/';
	if(pageDomain == 'http://aeroflot.alfabank.ru/') url = '/retail/cards/types/aeroflot/';
	if(pageDomain == 'http://cosmopolitan.alfabank.ru/') url = '/retail/cards/types/cosmopolitan/';
	if(pageDomain == 'http://career.alfabank.ru/') url = '/career/';
	if(pageDomain == 'http://internet.alfabank.ru/') url = '/retail/internet/';
	if(pageDomain == 'http://customer.alfabank.ru/') url = '/retail/customer/';
	if(pageDomain == 'http://atm.alfabank.ru/') url = '/atm/';
	*/
	}
	return (url);
}

function getDomain() {
	var url = document.URL;
	var pos = url.indexOf('//');
	var urlN = url.substring(pos+2);
	var pos2 = urlN.indexOf('/');
	var domain = url.substring(0, (pos+pos2+3));

	return (domain);
}

function showAddToFavorites() {
	jQuery('#AddFavorite').html('<a href="" id="addFavoriteLink" onclick="addToFavorite(); return false;"><img src="/f/1/global/i-add-favorite.gif" /></a>');
	jQuery('#AddFavorite').show();
}

function addToFavorite() {
	var pageTitle = getCleanTitle();
	var pageHref = getCleanUrl(1);


	jQuery.post('/_/ajax/_add_favorite.html',{
		path: pageHref,
		title: pageTitle,
		pageId: pId},
		function(){
			showRemoveFromFavorites();
			loadProfile(1);
		});
}

function getCleanTitle() {
	var pageTitle = jQuery('h1').html().replace(/<nobr>|<NOBR>/g, '!#nobr#!').replace(/<\/nobr>|<\/NOBR>/g, '!#/nobr#!');
	var pos = pageTitle.indexOf('<');
	pageTitle = pageTitle.substring(0, pos);
	pageTitle = pageTitle.replace(/«/g, "&#171;");
	pageTitle = pageTitle.replace(/»/g, "&#187;");
	return(pageTitle.replace(/!#nobr#!/g, '<nobr>').replace(/!#\/nobr#!/g, '</nobr>'));
}

function animateFavorites( state ) {
//	jQuery('#favoritesListLink').css('color', '#FF0000');

	if(state == 'add' || fav_state != 1){
		jQuery('#favoritesListLink').css('color', '#FFFFFF');
		jQuery('#favoritesListLink').css('background-color', '#EF3124');
		jQuery('#favoritesListLink').css('font-weight', 'bold');
	}

	if(state == 'add'){
		if(fav_state == 1){
			jQuery('div#favoritesBlock').hide();
			fav_state = 0;
		}
		jQuery('#favoritesListLink').animate({opacity: 0}, 200 ).animate({opacity: 1}, 200 ).animate({opacity: 0}, 200 ).animate({opacity: 1}, 200);
		window.setTimeout(stopAnimateFavorites, 1400);
	}
	else{
		if(fav_state == 1){
			jQuery('div#favoritesBlock li.selected').css('color', '#EF3124');
			jQuery('div#favoritesBlock li.selected').css('background-color', '#FFFFFF');
			jQuery('div#favoritesBlock li.selected').fadeOut('slow');
		}else{
			jQuery('#favoritesListLink').animate({opacity: 0}, 1300 ).animate({opacity: 1}, 100);
			window.setTimeout(stopAnimateFavorites, 1300);
			window.setTimeout(reloadProfile, 1400);
		}
	}

//	jQuery('#favoritesBlock').fadeIn('fast').fadeOut('fast').fadeIn('fast').fadeOut('fast');

}

function stopAnimateFavorites() {
	jQuery('#favoritesListLink').css('color', '#08628C');
	jQuery('#favoritesListLink').css('font-weight', 'normal');
	jQuery('#favoritesListLink').css('background-color', '#FFFFFF');
}

function reloadProfile() {
	loadProfile(0);
}

function removeFromFavorite() {
	var pageHref = getCleanUrl(1);

	//jQuery.post('http' + (isSecure() ? 's':'') + '://alfabank.ru/_/ajax/_remove_favorite.html',{
	jQuery.post('http' + (isSecure() ? 's':'') + '://'+document.location.host+'/_/ajax/_remove_favorite.html',{
		path: pageHref},
		function(){
			showAddToFavorites();
			animateFavorites('remove');
		});
}

function removeFromFavoriteByHref( pageHref, id ) {
	//jQuery.post('http' + (isSecure() ? 's':'') + '://alfabank.ru/_/ajax/_remove_favorite.html',{
	jQuery.post('http' + (isSecure() ? 's':'') + '://'+document.location.host+'/_/ajax/_remove_favorite.html',{
		path: pageHref},
		function(){
			jQuery('li#fav-row-' + id).hide();
		});

}

function showRemoveFromFavorites() {
	jQuery('#AddFavorite').html('<a href="" id="addFavoriteLink" onclick="removeFromFavorite(); return false;"><img src="/f/1/global/i-remove-favorite.gif" /></a>');
	jQuery('#AddFavorite').show();
}

var authTO = 0;
var authTOTime = 20000;
var authFailTOTime = 2000;


function mainAuthorize(oForm) {

	var sUrl = (isCanCrossDomain ? 'http' + (isSecure() ? 's':'') + '://alfabank.ru' : '') + '/_login.html';

	oForm.action = sUrl;

	return true;
}

function mainDeauthorize() {
	var pageHref = '';
	jQuery.ajax({
		url: (isCanCrossDomain ? 'http' + (isSecure() ? 's':'') + '://alfabank.ru' : '') + '/_login.html?auth.logout=do&script=1',
		type: 'GET',
		dataType: 'script',
		data: ' logout ',
		cache: false,
		timeout: 20000,
		 success: function() {
			pageHref = getCleanUrl();
			if(pageHref != '/private/')
				//location.reload(true);
				if ($.browser.mozilla) {
					window.location = pageHref;
				} else {
					location.reload(true);
				}
				//window.location = getCleanUrl();
			else
				window.location = "/";
		},
		error: function(xhr, ajaxOptions, thrownError){
			//alert('Logout error, status: ' + xhr.status + ', Error: ' + ajaxOptions)
		}
	});
	return false;
}

function mainAuthorizeResultCheck() {
	var status = response_status;
	if(status == 1){
		shakeWindow();
		jQuery('#authPasswd').val('');
		jQuery('#authBtnSubmit').attr('disabled', '');
	}else{
		jQuery('#ProfileHead').fadeOut('fast');
		location.reload(true);
//		window.location = getCleanUrl();
//		jQuery('#mainAuthForm').submit();
//		loadProfile(0);
	}
}

function shakeWindow() {
	var limit = 5;
	var defaultOffset = -7;
	var time = 20;
	jQuery('#authBlock').animate({marginLeft: "-"+ limit +"px"}, (time/2)).animate({marginLeft: limit + "px"}, time).animate({marginLeft: "-"+ limit +"px"}, time).animate({marginLeft: limit + "px"}, time).animate({marginLeft: "-"+ limit +"px"}, time).animate({marginLeft: "-2 px"}, (time / 2));
}

function getParam(paramName) {
	if(window.pId && pId != '2984' && pId != '4528'){
		try{
		var url = decodeURI(document.URL) || false;
		}catch(e){var url = false;}

		if(url){
			url = url.replace(paramName,'');

			if ((left=url.indexOf('?='))<0) if ((left=url.indexOf('&='))<0) return '';

			return (right=url.indexOf('&',left+1))<0?url.substr(left+2):url.substr(left+2,right-left-2);
		}else{
			return '';
		}
	}
}


// For detailMap
function printDetailMap() {
	document.getElementById('printLink').style.display = 'none';
	window.print();
}

function toggleCollsapseBlock( id ) {
	jQuery('#' + id).slideToggle('fast');
	jQuery('#header_' + id).toggleClass('opened');
}

function initCollsapseBlock() {
	var _hash  = ('' + document.location.hash).toString(),
		_block = $('.content-area .content div' + _hash);

	if (_block.length && _block.hasClass('collapsable')) {
		toggleCollsapseBlock(_hash.replace('#', ''));
	}
}

var bWrongRegionsAlreadyWorked = false;

function wrongRegion (block_id) {
	if (bWrongRegionsAlreadyWorked) {
		return;
	}
	bWrongRegionsAlreadyWorked = true;

	$(document).ready(function(){initWrongRegionAlert(block_id);});
}
function initWrongRegionAlert (block_id) {
	$("body").prepend('<div id="region_alert">Услуга недоступна в вашем городе.</div>');
	$('td.body').addClass('city_mismatch');

	var html = '<h3>К&nbsp;сожалению,<br/>услуга недоступна в&nbsp;вашем городе.</h3><div class="city-a-list"></div>';
	html = '<h3>Услуга недоступна в&nbsp;вашем городе.</h3><div class="city-a-list"></div>';
	$("#service-are-not-available div.content").html(html);

	if($.browser.msie){
		$('#docTitle, .content td, .content div').addClass('city_mismatch');
		$("#service-are-not-available div").removeClass("city_mismatch");
	}else{
		$('div.city_mismatch').removeClass("city_mismatch");
	}

	$("#service-are-not-available img.close-btn").attr("src", '/f/1/global/sh-corp/close.gif');
	$("#service-are-not-available").show('fast');
	fixIENotif();

	//$('#region_alert').slideDown('slow');

	$.ajax({
		url: '/_/ajax/_get_nearest_city.html?block_id='+ block_id +'&city_id='+ cityId +'&url=' + url_encode(getCleanUrl()) + '&city=' + city,
		type: 'GET',
		dataType: 'xml',
		cache: false,
		timeout: 60000,
		success: function(xml) {
			showNearestCities(jQuery(xml));
			fixIE6Notif();
		},
		error: function() {
		}
	});

}
function fixIENotif () {
	if ($.browser.msie) {
		var w = $("#service-are-not-available div.content h3").width();
		$("#service-are-not-available div.content div, #service-are-not-available").width(450);
	}
}
function fixIE6Notif () {
	if ($.browser.msie && ($.browser.version == '6.0' || $.browser.version == '7.0')) {
		$("#service-are-not-available").hide();
		setTimeout('$("#service-are-not-available").show()',1);
	}
}
function showNearestCities (xml) {
	var $xml = $(xml),
		bFound = $xml.find('cities').attr('found'),
		region_alert = $('#region_alert');
	if (bFound && $xml.find('city').length > 0) {
		region_alert.append(' Ближайшие города, где она предоставляется: ');
		var _html = 'Ближайшие города, где она предоставляется:<br/>',
			iCount = $xml.find('city').length - 1,
			html = '';
		$xml.find('city').each(function(index){
			var $this = $(this);
			html += ' <a href="'+ url_decode($this.attr('path')) +'">'+ $this.text() +'</a>' + (iCount == index ? '.' : ',');
		});
		region_alert.append(html);
		$("#service-are-not-available div.content div.city-a-list").html(_html + html);
	}
}
function closeServiceNotif () {
	$("#service-are-not-available").animate({top:0, left:0, width:"100%", height:"20px"}, 'fast', didCloseServiceNotif);
}
function didCloseServiceNotif () {
	$("#service-are-not-available").hide('fast');
	$('#region_alert').show('fast');
}

//	 Show the message "offer is unavailable in the region"
function _wrongRegion( block_id ){
	if(!bWrongRegionsAlreadyWorked){
		bWrongRegionsAlreadyWorked = true;

		jQuery(document).ready(function() {
			jQuery('body').prepend('<div id="region_alert">Услуга недоступна в вашем городе.</div>');
			jQuery('td.body').addClass('city_mismatch');
			if(jQuery.browser.msie){
				jQuery('#docTitle').addClass('city_mismatch');
				jQuery('.content td').addClass('city_mismatch');
				jQuery('.content div').addClass('city_mismatch');
			}else{
				jQuery('div.city_mismatch').each(function(index) {
					jQuery(this).removeClass('city_mismatch');
				});
			}
			jQuery('#region_alert').slideDown('slow');
			jQuery.ajax({
				url: '/_/ajax/_get_nearest_city.html?block_id='+ block_id +'&city_id='+ cityId +'&url=' + url_encode(getCleanUrl()) + '&city=' + city,
				type: 'GET',
				dataType: 'xml',
				cache: false,
				timeout: 60000,
				success: function(xml) {
					showNearestCities(jQuery(xml));
				},
				error: function() {
				}
			});
		});
	}
}

function _showNearestCities( xml ){
	var bFound = jQuery(xml).find('cities').attr('found');
	if(bFound && jQuery(xml).find('city').length > 0){
		jQuery('#region_alert').append(' Ближайшие города, где она предоставляется: ');
		var iCount = jQuery(xml).find('city').length-1;
		jQuery(xml).find('city').each(function(index) {
			jQuery('#region_alert').append(' <a href="'+ url_decode(jQuery(this).attr('path')) +'">'+ jQuery(this).text() +'</a>');
			if(iCount == index){
				jQuery('#region_alert').append('.');
			}else{
				jQuery('#region_alert').append(',');
			}
		});
	}
}

function url_encode( string ){
	string = string.replace(/\?/g, "___");
	string = string.replace(/&/g, "____");
	return(string);
}

function url_decode( string ){
	string = string.replace(/___/g, "?");
	string = string.replace(/____/g, "&");
	return(string);
}

/* city_selector.js */

function citySelectorInit(){
	if(jQuery('#region-switch') && jQuery('#region-switch').length > 0){
		createLayer('#region-switch', '#region-switch-selector', 'city-selector-gl', 'city_name-gl', 'td.navigation', 0);
	}
	if(jQuery('#globalRegionSubmit')){
		jQuery('#globalRegionSubmit').hide();
	}
	// if(jQuery('#cityID') && jQuery('#cityID').length > 0){
	// 	createLayer('#cityID', '#row_cityID dd', 'city-selector', 'city_name', '.width-fix');
	// }
	jQuery('#cityID, .popup-selector').each(function(index) {
		var sID = jQuery(this).attr('id');
		createLayer('#' + sID, '#row_' + sID + ' dd',  sID + '-selector', sID + '-span', '.width-fix', 1);
	});
}

//	selectorID - имя конвертируемого SELECT'а, в формате jQuery (#...)
//	selectorRowID - имя контейнера, в который будет добавлен SPAN со ссылкой на выбор города, в формате jQuery
//	citySelectorID - id создаваемого слоя со списком городов
//	citySelectorLinkID - id самого SPAN'а, по клику на который открывается список городов
//	citySelectorWhereToAppend - имя объекта, внутрь которого будет добавлен слой со списком городов, в формате jQuery
function createLayer(selectorID, selectorRowID, citySelectorID, citySelectorLinkID, citySelectorWhereToAppend, bIsXForm)
{
	var pretyShadowDiv = "<div id='" + citySelectorID + "' class='framed city-selector'>\n <img id='close_btn' width='13' height='13' border='0' onclick='closeList(\""+citySelectorID+"\"); return false;' alt='Закрыть' title='Закрыть' src='/f/1/global/shadows/x.gif' />\n <div class='f_tt'></div>\n <div class='f_r'><div class='f_rr'></div>\n <div class='f_b'><div class='f_bb'><div></div></div>\n <div class='f_l'><div class='f_ll'><div></div></div>\n <div class='f_c'>\n <h2>Выберите ваш город</h2>\n </div>\n </div>\n </div>\n </div>\n </div>";

	jQuery(citySelectorWhereToAppend).append(pretyShadowDiv);

	// убить выпадающий список
	jQuery(selectorID).css("visibility", "hidden");
	jQuery(selectorID).css("position", "absolute");

	// показать выбранный горррррод
	jQuery(selectorRowID).append("<span id='"+citySelectorLinkID+"' class='pseudo-link city-selector-pseudo-link' onclick='showList(\""+citySelectorID+"\", "+bIsXForm+", \""+selectorRowID+"\")'></span>");

	updateLayerContent(selectorID, citySelectorID, citySelectorLinkID, bIsXForm);

	if(bIsXForm){
		var selectorRowPosition = jQuery(selectorRowID).offset();

		if(selectorRowPosition.top){
			if(jQuery('body div.popup-logo').length){
				var iOffset = 50;
			}else{
				var iOffset = 190;
			}

			jQuery('#'+citySelectorID).css('top', (selectorRowPosition.top - iOffset) + 'px');
		}
	}
}

function updatePopupSelector(sID){
	updateLayerContent('#' + sID, sID + '-selector', sID + '-span', 1);
}

//	selectorID - имя конвертируемого SELECT'а, в формате jQuery (#...)
//	citySelectorID - id создаваемого слоя со списком городов
//	citySelectorLinkID - id самого SPAN'а, по клику на который открывается список городов
function updateLayerContent(selectorID, citySelectorID, citySelectorLinkID, bReplace){
	var a = Array();
	var iLength = jQuery(selectorID).find('option[value!=""]').length;
	var bIsShortWindow = false;

	if(iLength < 10){
		bIsShortWindow = true;
	}

	// все значения списка городов
	//alert(selectorID);

	jQuery(selectorID + " option").each(function() {
		if(this.value != ''){
			a.push({text: this.innerHTML, value: this.value, index: this.index});
		}

		if(this.selected){
			if(jQuery(this).attr('bigtext'))
				jQuery("#" + citySelectorLinkID).text(jQuery(this).attr('bigtext'));
			else
				jQuery("#" + citySelectorLinkID).text(this.innerHTML);
		}
	});

	// нужна сортировка по параметру text
	a.sort(sortNames);

	// добавляем города в таблицу
	var tableHtml = '';
	if(bReplace){
		var fieldLabel = jQuery(selectorID).parent().parent().find('dt label').html(),
			firstLetter = fieldLabel.substring(0, 1).toLowerCase(),
			lastLetters = fieldLabel.substring(1, fieldLabel.length);

		var sTitle = 'Выберите&#160;' + firstLetter + lastLetters;
		tableHtml += '<h2>' + sTitle + '</h2>';
	}
	tableHtml += '<table cellpadding="0" cellspacing="0"';
	if(bIsShortWindow){
		tableHtml += ' style="width:28em;"';
	}
	tableHtml +'>';
	var colCount = 4;
	if(bIsShortWindow){
		colCount = 3;
	}
	for (var i = 0; i < Math.ceil(a.length / colCount); i++){
		tableHtml+= "<tr>";
		for(var row = 0; row <= (colCount-1); row++){
			if(bIsShortWindow){
				tableHtml += '<td class="d"></td>';
			}
			tableHtml+= printRowPart(a, colCount, i, row, bIsShortWindow);
		}
		tableHtml+= "</tr>";
	}
	tableHtml+= "</table>";

	if(bReplace){
		jQuery("#" + citySelectorID + " .f_c").html(tableHtml);
	}else{
		jQuery("#" + citySelectorID + " .f_c").append(tableHtml);
	}

	jQuery("#"+ citySelectorID + " span").click(function() {
		jQuery(selectorID).get(0).selectedIndex = this.id;
		if(jQuery(selectorID + ' option:selected').attr('bigtext')){
			jQuery("#" + citySelectorLinkID).text(jQuery(selectorID + ' option:selected').attr('bigtext'));
		}else{
			jQuery("#" + citySelectorLinkID).text(this.innerHTML);
		}
		closeList(citySelectorID);
		if(citySelectorID == 'city-selector-gl'){
			jQuery('form#gotoForm').submit();
		}
		if(bReplace){
			jQuery(selectorID).change();
		}
	});
}

// сортировка объектов по тексту
function sortNames(a,b) {
	if(a.text < b.text) return -1;
	else if(a.text > b.text) return 1;
	else return 0;
}

// выводит часть строки таблицы
// номера строк и колонок от 0
function printRowPart(arr, colCount, row, col, bIsShortWindow){
	var colLength = Math.ceil(arr.length / colCount);
	var j = colLength*col + row;
	var html = '';
	if(typeof(arr[j]) != "undefined"){
		if(!bIsShortWindow){
			if(j == 0 || arr[j].text.substring(0,1) != arr[j-1].text.substring(0,1)){
				html+= "<td class='d'>" + arr[j].text.substring(0,1) + "</td>";
			} else {
				html+= "<td class='d'></td>";
			}
		}
		html+= "<td class='n'><span class='item-"+ arr[j].index +"' id='" + arr[j].index + "'>" + arr[j].text + "</span></td>";
	} else {
		if(!bIsShortWindow){
			html+= "<td class='d'></td>";
		}
		html+= "<td class='n'></td>";
	}
	return html;
}

// скрыть список городов
function closeList( citySelectorID ){
	document.onkeydown = _keydown;

	jQuery('#' + citySelectorID).hide();

	if (jQuery.browser.msie && parseInt(jQuery.browser.version) < 7){
		jQuery('.x_forms select').show();
		jQuery('.x_forms select.hidden').hide();
		jQuery('.ie6BugFixInput').remove();
	}
}

// показать список городов
function showList( citySelectorID, bIsXForm, selectorRowID ){
	//	сдвигаем
	if(bIsXForm){
		var selectorRowPosition = jQuery(selectorRowID).offset();

		if(selectorRowPosition.top){
			if(jQuery('body div.popup-logo').length){
				var iOffset = 50;
			}else{
				var iOffset = 190;
			}

			jQuery('#'+citySelectorID).css('top', (selectorRowPosition.top - iOffset) + 'px');
		}
	}

	if (jQuery.browser.msie && parseInt(jQuery.browser.version) < 7){
		var sIe6BugFixInput = "<input class='ie6BugFixInput' type='text' readonly='' />";
		jQuery('.x_forms select:visible').each(function(){
			var el = jQuery(sIe6BugFixInput).insertAfter(this);
			var eSelOption = jQuery(this).find("option:selected");
			el.attr("id", jQuery(this).attr("id"));
			el.val(eSelOption.text());
		});
		jQuery('.x_forms select:visible').hide();
	}

    document.onkeydown = function (e) {
        e = e || window.event;

		if ((e.keyCode == 27) && (!e.ctrlKey) && (!e.altKey)) {
        	closeList( citySelectorID );
		}
	}

	jQuery('#' + citySelectorID).show();


	jQuery('#' + citySelectorID + ' div.f_b').attr('style', 'margin-bottom: 0');
}

/*/city_selector.js */


/* alfa-consultant.js */
var consultantText;
var consultantTimeoutID;

function initAlfaConsultant_old(){
	if(document.getElementById('around')){
		var elem = jQuery('div.consultant');
		var currentHeight = document.getElementById('around').offsetHeight;

		if(elem){

		jQuery.each(jQuery.browser, function(i) {
			if(jQuery.browser.msie){
				elem.find('table').removeClass('main').addClass('main-noshadow');
			}else{
				elem.find('table').removeClass('main-noshadow').addClass('main');
			}
		});

		// Скрываем слой с плашкой
		jQuery('div.consultant').hide();
		//jQuery('#fadeBG').css('height', currentHeight);

		consultantText = jQuery('#consultant span').html();

		jQuery('#consultant-td').hover(function() {
			jQuery('#consultant span').text('Показать крупно');
		}, function() {
			jQuery('#consultant span').text(consultantText);
		});

		jQuery('#consultant').click(function() {
			if(jQuery.browser.msie) {
				jQuery('div.consultant').fadeIn(500);
			} else {
				jQuery('#around').css('opacity', 0.5);
				if (jQuery("#all-around").length == 1 && ($.browser.safari || $.browser.mozilla)) {
					jQuery("#around").css("opacity", 1);
					jQuery("#all-around").css({backgroundColor:'#ffffff',opacity:0.5});
					jQuery("#top-hack,#bottom-hack").show();
				}
				jQuery('div.consultant').fadeIn(500);
			}
			return false;
		});

		jQuery('div.consultant').click(function(){
			if(jQuery.browser.msie) {
				jQuery(this).fadeOut(500);
			} else {
				jQuery('#around').css('opacity', 1);
				if (jQuery("#all-around").length == 1 && ($.browser.safari || $.browser.mozilla)) {
					jQuery("#all-around").css({backgroundColor:'',opacity:1});
					jQuery("#top-hack,#bottom-hack").hide();
				}
				jQuery(this).fadeOut(500);
			}
		});

		jQuery(document).click(function () {
			if(jQuery.browser.msie) {
				jQuery('div.consultant').fadeOut(500);
			} else {
				jQuery('#around').css('opacity', 1);
				if (jQuery("#all-around").length == 1 && ($.browser.safari || $.browser.mozilla)) {
					jQuery("#all-around").css({backgroundColor:'',opacity:1});
					jQuery("#top-hack,#bottom-hack").hide();
				}
				jQuery('div.consultant').fadeOut(500);
			}
		});

		jQuery(window).resize(function(){
			var curWidth = document.body.offsetWidth;
			var fSize = curWidth / 12;
			jQuery('td.cc').css('font-size', fSize);
		});

		}
	}

	changeBigPhones();
}
function initAlfaConsultant(){
	if(document.getElementById('around')){
		var elem = jQuery('div.consultant');
		var currentHeight = document.getElementById('around').offsetHeight;

		if(elem){

		jQuery.each(jQuery.browser, function(i) {
			if(jQuery.browser.msie){
				elem.find('table').removeClass('main').addClass('main-noshadow');
			}else{
				elem.find('table').removeClass('main-noshadow').addClass('main');
			}
		});

		// Скрываем слой с плашкой
		jQuery('div.consultant').hide();
		//jQuery('#fadeBG').css('height', currentHeight);

		/*
		consultantText = jQuery('#consultant span').html();

		jQuery('#consultant-td').hover(function() {
			jQuery('#consultant span').text('Показать крупно');
		}, function() {
			jQuery('#consultant span').text(consultantText);
		});
		*/
		jQuery('.consultant-td-hoverable').hover(function(){jQuery(this).find('span').toggle()}, function(){jQuery(this).find('span').toggle()});

		jQuery('a.consultant-link').click(function(){
			fillBigPhones(this.parentNode.parentNode.parentNode.parentNode.parentNode.nextSibling);
			if(jQuery.browser.msie) {
				jQuery('div.consultant').fadeIn(500);
			} else {
				jQuery('#around').css('opacity', 0.5);
				if (jQuery("#all-around").length == 1 && (jQuery.browser.safari || jQuery.browser.mozilla)) {
					jQuery("#around").css("opacity", 1);
					jQuery("#all-around").css({backgroundColor:'#ffffff',opacity:0.5});
					jQuery("#top-hack,#bottom-hack").show();
				}
				jQuery('div.consultant').fadeIn(500);
			}
			return false;
		});

		jQuery('div.consultant').click(function(){
			if(jQuery.browser.msie) {
				jQuery(this).fadeOut(500);
			} else {
				jQuery('#around').css('opacity', 1);
				if (jQuery("#all-around").length == 1 && (jQuery.browser.safari || jQuery.browser.mozilla)) {
					jQuery("#all-around").css({backgroundColor:'',opacity:1});
					jQuery("#top-hack,#bottom-hack").hide();
				}
				jQuery(this).fadeOut(500);
			}
		});

		jQuery(document).click(function () {
			if(jQuery.browser.msie) {
				jQuery('div.consultant').fadeOut(500);
			} else {
				jQuery('#around').css('opacity', 1);
				if (jQuery("#all-around").length == 1 && (jQuery.browser.safari || jQuery.browser.mozilla)) {
					jQuery("#all-around").css({backgroundColor:'',opacity:1});
					jQuery("#top-hack,#bottom-hack").hide();
				}
				jQuery('div.consultant').fadeOut(500);
			}
		});

		jQuery(window).resize(function(){
			var curWidth = document.body.offsetWidth;
			var fSize = curWidth / 12;
			jQuery('td.cc').css('font-size', fSize);
		});

		}
	}

	//changeBigPhones();
}

function changeBigPhones()
{
	var phones = '';
	var count = 0;
	jQuery('div#contacts table.consultant div.consultant-tel').each(function(index) {
		if(count < 3)
			phones += jQuery(this).find('nobr').html() + '<br />';
		count++;
	});
	jQuery('div#big td.cc').html(phones);
}
function fillBigPhones(obj) {
	var phones = '';
	var count = 0;
	jQuery(obj).find('div.consultant-tel').each(function(index) {
		if(count < 3)
			phones += jQuery(this).find('nobr').html() + '<br />';
		count++;
	});
	jQuery('div#big td.cc').html(phones);
}

/* /alfa-consultant.js */

function updateFeedbackLinks(){
	if(jQuery('td.navigation')){
		jQuery('td.navigation a[href="/sendmail/"],td.navigation a[href="http://alfabank.ru/sendmail/"],td.navigation a[href="https://alfabank.ru/sendmail/"]').each(function(index) {
			var sHref = jQuery(this).attr('href') + '?ref=' + document.URL;
			jQuery(this).attr('href', sHref);
		});
	}
}


//function NavigateThrough(){ return true; }

document.onkeydown = NavigateThrough;
function NavigateThrough (event) {
	var url = document.location.pathname;
	if (typeof city != 'string') return;
	if (url == city) return;
	var reg = new RegExp('^(' + city.replace(/\//g, '\/') + '.*\/)[^\/]+[\/]{0,1}$');
	if (window.event) event = window.event;
	if (event.ctrlKey || event.metaKey) {
		var href = null;
		switch (event.keyCode ? event.keyCode : event.which ? event.which : null) {
			case 0x26:
				if (reg.test(url)) {
					href = reg.exec(url)[1];
				} else {
					href = city;
				}
				break;
			case 0x24:
				href = city;
				break;
		}
		if (href) document.location = href;
	}
}//*/

function initAlfaSocial () {
	$("#alfa-on-social span.title").click(showAlfaSocial);
	initAlfaSocialPopups();
}
function initAlfaSocialPopups () {
	$("#alfa-on-social li.social div.ab-frame-container").each(initAlfaSocialPopup);
}
function initAlfaSocialPopup () {
	var $this = $(this);
	$(this.parentNode).find("a.social").click(function(){
		$this.show();
		return false;
	});
}
function showAlfaSocial () {
	$("#alfa-social-list").show();
}


var mapLink = {
	_spans:null,
	_is_opened:false,
	_dos:{
		open:[],
		close:[]
	},
	_obj:null,
	_inited:false,
	_init:function(){
		if (this._inited) {
			return;
		}
		var self = this;

		this._obj = $('div.map-open-link');
		this._spans = this._obj.find("span");

		this._is_opened = this._obj.click(function(e){
			self.click.call(self);
		}).hasClass('map-open-link-opened');

		this._inited = true;
		return this;
	},
	_toggle:function () {
		this._init();
		this._spans.toggle();
		this._is_opened = !this._is_opened;
	},
	click:function () {
		this._init();
		this._toggle();
		this._do.call(this, this._is_opened ? 'open' : 'close');
	},
	_do:function (type){
		this._init();
		for (var i = 0; i < this._dos[type].length; i++) {
			this._dos[type][i].call(this._this);
		}
	},
	bind:function (type, func) {
		this._init();
		if (typeof func != 'function') {
			return false;
		}
		this._dos[type][this._dos[type].length] = func;
		return true;
	},
	open:function (func) {
		this._init();
		if (typeof func == 'function') {
			return this.bind('open', func) ? this : false;
		} else {
			if (!this._is_opened) {
				this._toggle();
			}
			this._do('open');
			return this;
		}
	},
	close:function (func) {
		this._init();
		if (typeof func == 'function') {
			return this.bind('close', func) ? this : false;
		} else {
			if (this._is_opened) {
				this._toggle();
			}
			this._do('close');
			return this;
		}
	}
}


$(document).ready(initCityBlockList);

var bCityBlockListAlreadyWorked = false;

function initCityBlockList () {
	var block = $("td.navigation #citys-black-list");
	if (!block.length) {
		return;
	}

	$.ajax({
		url: '/_/ajax/_get_near_city.html?city_id='+ cityId +'&bid='+ block.attr('rel') +'&pid=' + (window.pId ? window.pId : 0) + '&url=' + url_encode(getCleanUrl()),
		type: 'GET',
		dataType: 'xml',
		cache: false,
		timeout: 60000,
		success: function(xml) {
			showCityBlockNearestCities(jQuery(xml));
		},
		error: function() {
		}
	});
}

function showCityBlockNearestCities (xml) {
	if (!xml.find("cities").attr("found")) {
		return;
	}
	var block = $("td.navigation #citys-black-list");
	if (!block.length) {
		return;
	}

	var html = '<div style="margin-bottom:0.5em;margin-top:1.5em">Ближайшие города, где предоставляется данная услуга:</div><div>',
		_c = [];
	xml.find("city").each(function(){
		var $this = $(this);
		_c[_c.length] = '<a href="'+$this.attr("path")+'">'+$this.text()+'</a>';
	});
	html += _c.join(', ') + '</div>';
	$(html).appendTo(block.find("div.content"));
}

function checkNeedIeWarning () {
	return ($.browser.msie && ($.browser.version == '6.0' || $.browser.version == '7.0'));
}
$(document).ready(function(){
	if (checkNeedIeWarning()) {
		$("#ie-old-splash").show().find("div.close").click(toggleIeWarn);
		if (/site_ie_warn_closed=1/.test(document.cookie)) {
			toggleIeWarn();
		}
	}
});
function toggleIeWarn () {
	$("#ie-old-splash")
		.toggleClass('small-msg')
		.find("table, div.short-message,div.close span")
		.toggleClass('hidden');
	if ($("#ie-old-splash").hasClass('small-msg')) {
		cmnSet_cookie('site_ie_warn_closed', 1);
	} else {
		cmnSet_cookie('site_ie_warn_closed', 0);
	}
}

function calladriver(a_id, src, href) {
    var s = false;
    var newWindow = true;
    function sendPixel() {
        if (s)
            return;
        var a = document.getElementById(a_id);

        if (a) {
            var pixel = new Image();
            pixel.onerror = pixel.onload = function() {
                if (s)
                    return;
                s = true;
                if (!newWindow)
                    window.location = href;
            }
            pixel.src = src;
            setTimeout(function() {
                        if (s)
                            return;
                        s = true;
                        if (!newWindow)
                            window.location = href;
                    }, 3000);
        }
    }
    var a = document.getElementById(a_id);
    if (a) {

        var old_click = a.onclick;

        a.onclick = function(e) {

            var e = e || window.event;
            e.preventDefault = e.preventDefault || function() {
                this.returnValue = false
            }
            e.stopPropagation = e.stopPropagaton || function() {
                this.cancelBubble = true
            }
            e.preventDefault();
            e.stopPropagation();
            s = false;
            sendPixel();
            if (old_click)
                old_click();
            if (newWindow)
                window.open(href);
        }
    }
}

$(document).ready(function(){
	var isFromCardFilterFlag = cmnGet_cookie("isFromCardFilter");
	if (isFromCardFilterFlag == 'true' || isFromCardFilterFlag == document.location.pathname) {
		window.isFromCardFilter = true;
		cmnSet_cookie("isFromCardFilter", document.location.pathname);
	} else {
		window.isFromCardFilter = false;
		//cmnSet_cookie("isFromCardFilter", 'checked');
	}
});

