$(
	function(){

		// Search placeholder
		if (!jQuery.browser.safari) {
			var searchField = $('#search_field');
			if (searchField.size()) {
				var inputPlaceholder = searchField.attr('placeholder');
				if(!searchField.val() || searchField.val() == inputPlaceholder) { searchField.val(inputPlaceholder).addClass('empty'); }
				searchField.focus( function() { if($(this).hasClass('empty')){ $(this).val('').removeClass('empty'); }  } );
				searchField.blur( function() { if(!$(this).val()){ $(this).val(inputPlaceholder).addClass('empty'); }  } )
			}
		};
		
		//HowbuyGuide.init();
		
		// Events selector
		if ($('ul#events_selector').size()) {
			var selected = null;
			var selectItem = function (elem) {
				if (selected) {
					selected.removeClass('selected');
					selected.data('layer').hide();
				}
				elem.addClass('selected');
				elem.data('layer').show();
				selected = elem;
			}
			$('ul#events_selector li').each(function(){
				var elem = $(this);
				var link = elem.children('a');
				var name = link.attr('href');
				elem.data('layer', $(name + '_layer'));
				if (elem.hasClass('selected')) {
					selected = elem;
				}
				link.click(function(e){ selectItem($(this).parent()); return false; })
			})
		}
	}
);


if ($.browser.opera) {
	document.writeln('<link href="/css/opera-fix.css" rel="stylesheet" type="text/css" />');
}


// -----------------------------------------------------------------------------------
// How Buy Guide

HowbuyGuide = {

	items: {},
	
	prefix: '_item',

	init: function () {
		
		var wrapper = $('#howbuy_guide');
		if (!wrapper.size()) {
			return;
		}
		
		var me = this;
		var elem;
		$('#howbuy_guide li').each(function(){
			elem = $(this);
			me.items[this.id] = {
				elem: elem,
				opened: elem.hasClass('selected')
			}
			elem.children('a.title').click(function(e){
				var href = decodeURIComponent(e.target.href);
				name = href.replace(/^.*#/, '');
				me.select(name);
			})
		})
	},
	
	select: function (name) {

		var item = this.items[name + this.prefix];
		if (!item) {
			return;
		}
		
		if (item.opened) {
			item.elem.removeClass('selected');
			item.opened = false;
		} else {
			item.elem.addClass('selected');
			item.opened = true;
		}
	}
	
}


var Utils = {

	oPopupDefaults: {
		iWidth: 680,
		iHeight: 590,
		sToolbar: 'no',
		sMenubar: 'no',
		sResizeable: 'yes',
		sScrollbars: 'yes',
		sStatus: 'yes'
	},
	popup: function(sUrl, sName, oOptions, bReplace) {
		
		if (!oOptions) {
			oOptions = this.oPopupDefaults;
		}
		
		var iLeftOffset = screen.availWidth / 2 - oOptions.iWidth / 2;
		var iTopOffset = screen.availHeight / 2 - oOptions.iHeight / 2;			

		oNewWindow = window.open(
			sUrl,
			sName,
			'left=' + iLeftOffset + ', ' +
			'top = ' + iTopOffset + ', ' +
			'width=' + oOptions.iWidth + ', ' +
			'height=' + oOptions.iHeight + ', ' +
			'menubar=' + oOptions.sMenubar + ', ' +
			'toolbar=' + oOptions.sToolbar + ', ' +
			'resizable=' + oOptions.sResizeable + ', ' +
			'scrollbars=' + oOptions.sScrollbars + ', ' +
			'status=' + oOptions.sStatus
		);

		if (sUrl.match(/\.(gif|jpe?g|png)$/i)) {
			oNewWindow.document.open();
			oNewWindow.document.write('<html><head></head><body style="background: #FFF; margin: 0px; padding: 0px;">' +
				'<table cellpadding="0" cellspacing="0" border="0" width="100%" height="100%"><tr><td align="center">' + 
				'<img src="' + sUrl + '" />' +
				'</td></tr></table></body></html>'
				);
			oNewWindow.document.close();
		}

		oNewWindow.focus();				
		return false;
	},

	parseUrl: function (url) {
		
		var parseValue = (url ? url : document.location.href);
		var split = parseValue.toString().split('#');
		return {
			link: split[0],
			anchor: decodeURIComponent(split[1])
		}
	}

}



// -----------------------------------------------------------------------------------
// Отправлялка формы

FormSender = {
	
	initForm: function (name) {
		var me = this;
		var form = $(name);
		var button = form.find('input[type="submit"]');
		var unblockForm = function () {
			button.enable(false);
			form.removeClass('success');
			form.clearForm();
			form.find('div.reducer').slideDown(300);
		}
		var options = {
			beforeSubmit: function(formArray, jqForm) {
				button.enable(false);
				form.addClass('loading');
			},
			success: function(responseText) {
				button.enable(true);
				form.removeClass('loading');
				form.addClass('success');
				form.find('div.reducer').slideUp(300);
				setTimeout(unblockForm, 5000)
			} 
		}
		form.submit(function() {
			form.ajaxSubmit(options);
			return false; 
		});
	}
	
}




// -----------------------------------------------------------------------------------

//
// getPageScroll()
// Returns array with x,y page scroll values.
// Core code from - quirksmode.com
//
function getPageScroll(){

	var xScroll, yScroll;

	if (self.pageYOffset) {
		yScroll = self.pageYOffset;
		xScroll = self.pageXOffset;
	} else if (document.documentElement && document.documentElement.scrollTop){	 // Explorer 6 Strict
		yScroll = document.documentElement.scrollTop;
		xScroll = document.documentElement.scrollLeft;
	} else if (document.body) {// all other Explorers
		yScroll = document.body.scrollTop;
		xScroll = document.body.scrollLeft;	
	}

	arrayPageScroll = [xScroll,yScroll];
	return arrayPageScroll;
}

