var prompt;
var prTimer = null;
var promptId;

function addH(id) {
	var obj = document.getElementById( id );
	if(obj == null) return false;
	obj.className = "prompt hidden";
	if( document.all) $('select').css('visibility','visible');
}

$(function() {

	if ( !$.browser.safari )
	{	$('#f-input input').val('поиск').css({color: '#A7A7A3'});
		$('#f-input input').focus(function(){
			var val = $(this).val();
			if ( val == 'поиск')
				$(this).val('').css({color: '#000'});
		});
		$('#f-input input').blur(function(){
			var val = $(this).val();
			if ( val == '')
				$(this).val('поиск').css({color: '#A7A7A3'});
		});
	}

	$(document).keydown(function(e){
		//if (window.event) e = window.e;
		if ( window.location.pathname == '/' ) return true;
		if (e.ctrlKey)
		{	var href = null;
			var loc = window.location.pathname;
			var locArr = loc.split('/');
			var prevLevel = '/';
			if ( locArr.length > 1 )
			{	locArr.pop();
				locArr.pop();
				prevLevel = locArr.join('/') + '/'; 
			}
			//alert(prevLevel);
			switch (e.keyCode ? e.keyCode : e.which ? e.which : null)
			{
				case  38:
					href = prevLevel;
					break;
				case 36:
					href = '/';
					break;
			}
			if (href) window.location.href = href;
		}
	});

/* --- Table hover --- */
	/*
	$('.table td').hover(
		function() {	$(this).parent().addClass('over');	},
		function() {	$(this).parent().removeClass('over');	}
	);
	*/
/* --- Prompt --- */

	$('.pr-wrap').hover(
		function () {
			$('.prompt').addClass('hidden');
			if( prTimer != null)
			{	clearTimeout( prTimer );
				prTimer = null;
			}
			
			var offset = $(this).offset();
			prompt = $('#pr-' + $(this).attr('id'));
			promptId = prompt.attr('id');
			prompt.removeClass('hidden');
			prompt.css({
				top: offset.top + $(this).height() + 5 + 'px',
				left: offset.left + 'px'
			});
			
			if( document.all) 
			{	//$('select').css('visibility','inherit');
				var selects = $('select');
				for (i = 0; i < selects.length; i++)
				{	var select = selects.eq(i);
					var offsetSelect = select.offset();
					var PX1 = offset.left;
					var PX2 = offset.left + prompt.width() + 22;
					var PY1 = offset.top + $(this).height() + 5;
					var PY2 = offset.top + $(this).height() + 5 + prompt.height();
					//alert(PX1 + ';' + PX2 + '; = ;' + PY1 + ';' + PY2);
					
					var SX1 = offsetSelect.left;
					var SX2 = offsetSelect.left + select.width();
					var SY1 = offsetSelect.top;
					var SY2 = offsetSelect.top + select.height();
					//alert(SX1 + ';' + SX2 + '; = ;' + SY1 + ';' + SY2);
					
					if (	(PX1 < SX2) && (PX2 > SX1) && (PY1 < SY2) && (PY2 > SY1) ) 
					{	select.css('visibility', 'hidden');
					}
				}
			}
		},
		function () 
		{	prTimer = setTimeout( "addH( promptId )", 200 );	}
	);

	$('.prompt').hover(
		function () 
		{	if( prTimer != null)
			{	clearTimeout( prTimer );
				prTimer = null;
			}
		},
		function () 
		{	$(this).addClass('hidden');
			if( document.all) $('select').css('visibility','visible');
		}
	);

/* --- Panels --- */

	$('.panel-switch').click(function(){
		$(this).toggleClass('expanded');
		$(this).parents('.panel').find('.panel-content').slideToggle('fast');
	});

/* --- Footer --- */

	$('#f-submit img').click(function(){
		var val = $(this).parents('form').find('input').val(); 
		if ( !(val == '' || val == 'поиск') ) 
		{	$(this).parents('form').submit();	}
	});

/* --- FeedBack --- */

	var layout = $('#layout');
	var wrap = $('#feed-wrap');
	var bigContentAbs;
	var middleDoc = $(window).height() / 2;
	var middleFeed = 0; 
	//var middle = screen.availHeight/2 - wrap.height()/2 - 217;

	function getTop() {
		//middle = screen.availHeight/2 - wrap.height()/2;
		middleHDoc = $(window).height() / 2;
		middleHFeed = wrap.height() / 2;
		if ( middleHFeed > middleHDoc )
			middleHFeed = middleHDoc;   
		var topF = middleHDoc - middleHFeed;
		
		middleWDoc = $(window).width() / 2;
		middleWFeed = wrap.width() / 2;
		if ( middleWFeed > middleWDoc )
			middleWFeed = middleWDoc;   
		var leftF = middleWDoc - middleWFeed;
		
		if( window.pageYOffset ) 
		{	topF = topF + window.pageYOffset;
			leftF = leftF + window.pageXOffset;
		} 
		else if( document.documentElement.scrollTop ) 
		{	topF = topF + document.documentElement.scrollTop;	
			leftF = leftF + document.documentElement.scrollLeft;
		} 
		else 
		{	topF = topF + document.body.scrollTop;
			leftF = leftF + document.body.scrollLeft;	
		}
		topF = (topF < 0) ? 0 : topF;
		leftF = (leftF < 0) ? 0 : leftF;
		wrap.css('top', topF + 'px');
		wrap.css('left', leftF + 'px');

		return true;
	}

	layout.click(function(){	
		if( !layout.hasClass('hidden') )		{	$('.close img').click();	}
		if( $('.BigContentAbs')[0] )			{	$('.BigContentAbs .close img').click();	}
	});

	$(document).keydown(function(event){
		if ( event.keyCode == 27 && !layout.hasClass('hidden')) {	$('.close img').click();	}
		if ( event.keyCode == 27 && $('.BigContentAbs')[0] ) {	$('.BigContentAbs .close img').click();	}
	});

	$('#feedback span').click(
		function() {
			layout.removeClass('hidden');
			wrap.removeClass('hidden').find('#ffname').focus();
			$('select').css('visibility', 'hidden');
			
			layout.height( $(document).height() + 'px' );
			/*
			if( $.browser.msie) 
			{	//alert(document.body.scrollWidth);
				layout.width( document.body.scrollWidth + 'px');
			}
			else	layout.width( $(document).width() + 'px' );	*/
			layout.css({
				opacity: '0.80',
				filter: 'alpha(opacity = 80)'
			});

			getTop();
			/*
			if( window.pageYOffset ) {	wrap.css( 'top', middle + window.pageYOffset + 'px' );
			} else if( document.documentElement.scrollTop ) {
				wrap.css( 'top', middle + document.documentElement.scrollTop + 'px' );
			} else {
				wrap.css( 'top', middle + document.body.scrollTop + 'px' );		}*/
		}
	);

	wrap.find('.close img').click(function(){
		layout.addClass('hidden');
		wrap.addClass('hidden');
		$('select').css('visibility', 'visible');
	});

	$(window).scroll(function(){ 
		if ( !layout.hasClass('hidden') )	getTop();
	});

	$(window).resize(function()
	{	layout.height( $(document).height() + 'px' );
		getTop();
		/*if ( !bigContentAbs.hasClass('hidden') )
		{	var ttt = bigContentAbs.get()[0].offsetLeft;
			if ( bigContentAbs.get()[0].offsetLeft >= 0 )
				bigContentAbs.css({left: '50%', marginLeft: '-450px'});
			else
				bigContentAbs.css({left: '0px', marginLeft: '0px'});
		}*/
	});

	$('#feedbackform').submit(
		function(ev)
		{	if(window.event) 
			{	window.event.returnValue = false;	} 
			else 
			{	ev.preventDefault();	}

			if( !$(this).find('.error')[0] )
			{	var query = '?ElementName=Feedback';
				query += '&FromEmail=' + encodeURIComponent('andrey.filin@specis.ru');
				query += '&FromName=' + encodeURIComponent('КИТ Финанс. Сайт');
				query += '&Subject=' + encodeURIComponent('Обратная связь');
				
				var backBody = '';
				backBody += $(this).find('#ffname').attr('name') + ': ' + $(this).find('#ffname').val() + '\n';
				backBody += $(this).find('#fmail').attr('name') + ': ' + $(this).find('#fmail').val() + '\n';
				backBody += $(this).find('#fmessage').attr('name') + ': ' + $(this).find('#fmessage').val() + '\n';

				query += '&Body=' + encodeURIComponent(backBody);
				$(this).addClass('hidden');
				$(this).find('#ffname').val('');
				$(this).find('#fmail').val('');
				$(this).find('#fmessage').val('');

				wrap.find('.middle .center .result').load("/feedback.html" + query, function(){
					$('.result').removeClass('hidden');
					
					$('.result .close img').click(function(){
						$('#layout').addClass('hidden');
						$('#feed-wrap').addClass('hidden');
						$(this).parents('.result').addClass('hidden');
						$('#feedbackform').removeClass('hidden');
						$('#feedbackform').find('input[@type = "submit"]').attr('disabled', 'disabled').css('cursor', 'default');
						$('select').css('visibility', 'visible');
					});
				});
			}
		}
	);
	
	/* Big content */
	function regHandler()
	{	$('.BigContentAbs .close img').click(function(){
			layout.addClass('hidden');
			bigContentAbs.remove();
			$('select').css('visibility', 'visible');
		});
	}

	$('.linkBigContent').click(function(){
		layout.removeClass('hidden');
		$('select').css('visibility', 'hidden');
			
		layout.height( $(document).height() + 'px' );
		layout.css({
			opacity: '0.80',
			filter: 'alpha(opacity = 80)'
		});
		var bigContent = $(".BigContent");
		var cont1 = '<table cellpadding="0" cellspacing="0" width="100%">' + 
			'<tr class="top">' +
			'	<td class="left png"><img src="/images/s.gif" alt="" /></td>' + 
			'	<td class="center png"><img src="/images/s.gif" alt="" /></td>' +
			'	<td class="right png"><img src="/images/s.gif" alt="" /></td>' + 
			'</tr>' +
			'<tr class="middle">' +
			'	<td class="left png"><img src="/images/s.gif" alt="" /></td>' +
			'	<td class="center png">' + 
			'		<div style="position: relative;">' + 
			'			<div class="close"><img src="/images/close.gif"/></div>';
		var cont2 = '	</div></td>' +
			'	<td class="right png"><img src="/images/s.gif" alt="" /></td>' + 
			'</tr>' + 
			'<tr class="bottom">' + 
			'	<td class="left png"><img src="/images/s.gif" alt=""/></td>' + 
			'	<td class="center png"><img src="/images/s.gif" alt="" /></td>' + 
			'	<td class="right png"><img src="/images/s.gif" alt="" /></td>' + 
			'</tr>' + 
		'</table>';
		el = document.createElement('div');
		el.className = 'BigContentAbs';		//setAttribute('id', 'BB');
		document.body.appendChild(el);
		el.innerHTML = cont1 + bigContent.html() + cont2;
		//$('#BB').addClass('BigContentAbs');
		bigContentAbs = $('.BigContentAbs');
		regHandler();
	});
});
