// JavaScript Document
jQuery(document).ready(function(){

	// email anti-spam
	jQuery('span.snd_eml').each(function(i){
		var c = jQuery(this).text().split(' (0) ').join('@');
		var t = jQuery(this).attr('title');
		if (t)	jQuery(this).replaceWith('<a href="mailto:' + c + '">' + t + '</a>');
		else 	jQuery(this).replaceWith('<a href="mailto:' + c + '">' + c + '</a>');
	});
	
	// check even rows in #left table tr with .grey class
	jQuery('#wrapper #left .block .innerblock table tr:even').addClass('grey');
	jQuery('#wrapper #center table tr:even').css('background-color', '#EEEEEE');
});

function equalizeHeights()
{
	// equalize height of #center
	var l = jQuery('#wrapper #left').height();
	var r = jQuery('#wrapper #right').height();
	var c = jQuery('#wrapper #center').height();
	var h = l > r ? l : r;
	if (c < h) jQuery('#wrapper #center').css('height', h + 'px');
}

var lastLoadedURL = '';
//window.onload = new Function('changeCity("/contacts/moskva");equalizeHeights();');
window.onload = new Function('equalizeHeights();');

function changeCity(url)
{
	// если URL пуст или мы его уже загружали, выходим
	if (!url.length || lastLoadedURL == url) return;
	document.getElementById('rates-block').innerHTML = '<div class="block"><div class="please-wait">Подождите, идет загрузка данных...<br /><br /><img src="/images/processing.gif"></div></div>';
	loadDocument(url, cityOnLoad);
	lastLoadedURL = url;
}

function cityOnLoad()
{
	ratesBlock = req.responseText.toString().split('<!--right-block-->');
	document.getElementById('rates-block').innerHTML = ratesBlock[1];
}

//****************************************************************************************************************
//	кроссбраузерная функция - создает объект асинхронного HTTP-запроса
//****************************************************************************************************************
function get_http(){
    var xmlhttp;
    /*@cc_on
    @if (@_jscript_version >= 5)
        try {
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlhttp = new 
                ActiveXObject("Microsoft.XMLHTTP");
            } catch (E) {
                xmlhttp = false;
            }
        }
    @else
        xmlhttp = false;
    @end @*/
    if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
        try {
            xmlhttp = new XMLHttpRequest();
        } catch (e) {
            xmlhttp = false;
        }
    }
    return xmlhttp;
}


//****************************************************************************************************************
//	загружает документ по адресу url, связывает обработчики ответа асинхронного HTTP-запроса
//****************************************************************************************************************
function loadDocument(url, fSuccess, fFault)
{
	funcSuccess = fSuccess;
	if (fFault) funcFault = fFault;
	else funcFault = defaultFaultFunction;

	req = get_http();
	if (req)
	{
		url += '?q=' + Math.random();
		req.open("GET", url, true);
		req.onreadystatechange = processReqChange;
		req.send(null);
	}
	else funcFault()
}


//****************************************************************************************************************
//	обрабатывает состояния асинхронного HTTP-запроса, вызывает обработчики успешного ответа/ошибки
//****************************************************************************************************************
function processReqChange() 
{
    if (req.readyState == 4)
	{
        if (req.status == 200) funcSuccess();
		else funcFault();
    }
}


//****************************************************************************************************************
//	обработчик ошибки асинхронного HTTP-запроса по-умолчанию
//****************************************************************************************************************
function defaultFaultFunction()
{
	alert("Невозможно загрузить данные:\n" + req.statusText);
}

function updateAddress(address) {
	document.cookie = 'city_active='+address+'; path=/;';
	document.cookie = 'city_id=; path=/;';
	jQuery.get('/blocks/getActiveOffice/activeOfficeAjax',
			   function(data) {
					var bl = document.getElementById('city_contacts');
					if (bl) {
						bl.innerHTML = data;
					}
					var blInfo = document.getElementById('office_info');
					if (blInfo) {
						if (address) {
							blInfo.innerHTML = 'Федеральная справочная 8-917-917-15-15';
						} else {
							blInfo.innerHTML = 'Выберите нужный вам город, чтобы узнать точные обменные курсы и получить контактную информацию.';
						}
					}
				}
	);
	if (address) {
		window.location.href = '/contacts/'+address+'/';
	}
}

