$(document).ready(function() {
	$('.other-razmer').click(function(){
   			 $(this).find('.other-razmer-table').slideToggle();
	});

	$('form.ajax').live('submit', function(){
		$(this).find("input[name='ajax']").val('1');
		$(this).ajaxSubmit({
			dataType: 'json',

			beforeSubmit: function(a,form,o) {
				$('.errors').hide();
			},

			success: function(response, statusText, xhr, form)
			{
				var update = $(form).find("input[name='update']").val();
				if(response.code)
				{
					response.code = prepare(response.code);
					$(form).find(".code").html(response.code).show();
				}
				if(! update && response.errors)
				{
					$.each(response.errors, function(k, val)
					{
						val = prepare(val);
						$(form).find(".error"+(k != 0 ? "-"+k : '')).html(val).show();
					});
				}
				if(response.success)
				{
					$(form).clearForm();
					$(form).find('input[type=file]').last().addClass('last');
					$(form).find('input[type=file]').each(function(){
						if(! $(this).has('last'))
						{
							$(this).next('<br>').remove();
							$(this).remove();
						}
					});
					$(form).find('input[type=file]').removeClass('last');
				}
				if(response.add)
				{
					response.add = prepare(response.add);
					if($(form).find("input[name='first']").val())
					{
						$(form).before(response.add);
						$(form).find("input[name='first']").val('');
					}
					else
					{
						$('.'+$(form).attr("id")).append(response.add);
						$('.'+$(form).attr("id")).show();
					}
				}
				if(response.basket && response.basketcount)
				{
					$('.basket-summ').text(response.basket);
					$('.basket-count').text(response.basketcount);
					if(response.basketorder) $('.basketorder').html(prepare(response.basketorder));
				}

				if(response.otvet)
				{
					window.location.href="http://www.mrsleep.ru/basket/ordersuccess/";
				}






				if(response.form)
				{
					$(form).html(prepare(response.form));
				}
				if(response.form_hide)
				{
					if(response.target && ! response.data)
					{
						$(response.target).hide();
					}
					else
					{
						$(form).hide();
					}
				}
				if(response.redirect)
				{
					window.location = response.redirect;
				}
				if(response.data && response.target)
				{
					$(response.target).html(prepare(response.data));
				}
				return false;
			}
		});
		return false;
	});






	$('.search-ajax input[type=text]').live('change', search_ajax);
	$('.search-ajax input[type=checkbox]').live('change', search_ajax);
	$('.search-ajax select').live('change', search_ajax);
	$('.search-ajax select').trigger('change');

	$("form input[type=file]").live('change', function() {
		$(this).after($(this).clone(true).val(''));
		$(this).after($('<br>'));
	});



		$(function(){
    $(".input-value").tipTip({maxWidth: "auto", edgeOffset: 10,defaultPosition:"top",content:false});
});





	//javascript:location.href=\'?p12[]=\'+this.value+\'\'



	/*

	//кнопка найти на главных
	$("input[name=param_reload_button]").click(function()
		{
			var val=$("select[name=param_reload]").find('option:selected').attr('value');

			val = parseInt(val);
			if (!isNaN(val)){
				location.href='?p12[]='+val;
			}
		}
	);

	*/


	$("select[name=param_reload]").change(function()
		{
			var val=$(this).find('option:selected').attr('value');

			val = parseInt(val);
			if (!isNaN(val)){
				location.href='?p12[]='+val;
			}
		}
	);



	/*
	$("select[name=param_reload]").change(function()
		{
			var val = $(this).find('option:selected').attr('value');

			val = parseInt(val);
			if (!isNaN(val)){
				location.href='?p12[]='+val;
			}
		}

	);
	*/
	$("select[name=depend]").change(function()
		{
			var val = $(this).find('option:selected').attr('value');
			var anchor=$(this).prev('span').attr('name');
			val = parseInt(val);
			if (!isNaN(val)){
				location.href='?p12[]='+val+'#'+anchor;
			}

		}

	);





	$("select[name=depend-ajax]").change(function()
		{
			var val = $(this).find('option:selected').attr('value');
			var anchor=$(this).prev('span').attr('name');
			val = parseInt(val);
			if (!isNaN(val)){
				$address=location.href.replace(/p12%5B%5D=\w*&/i, '');
				$address=$address.replace(/&p12\[\]=\w*#\w*/i, '');
				location.href=$address+'&p12[]='+val+'#'+anchor;
			}

		}

	);

	//опять хак со скидкой
	//shop-price-default
	//shop-price-discount
	/*
	$("select[name=depend]").change(function() {
		var price = $(this).find('option:selected').attr('rel');
		var price2 = $(this).find('option:selected').attr('rel2');

		$(this).parents('form').find('.shop-price-discount').text(price);
		$(this).parents('form').find('.shop-price-default').text(price2);

		if($(this).is('.change')) return false;

		$('select[name=depend]').addClass('change').val($(this).val());
		$('select[name=depend]').change();
		$('.change').removeClass('change');

	});
	*/


	$('.inpnum').live('keydown', function(evt) {
		evt = (evt) ? evt : ((window.event) ? event : null);

		if(evt)
		{
			var elem = (evt.target)
			? evt.target
			:(
			  evt.srcElement
			  ? evt.srcElement
			  :null
			);

			if(elem)
			{
				var charCode = evt.charCode
				?evt.charCode
				:(evt.which
				  ?evt.which
				  :evt.keyCode
				  );

				if ((charCode < 32 ) ||
					(charCode > 44 && charCode < 47) ||
					(charCode > 95 && charCode < 106) ||
					(charCode > 47 && charCode < 58) || charCode == 188 || charCode == 191 || charCode == 190  || charCode == 110)
				{
					return true;
				}
				else
				{
					return false;
				}
			}
		}
	});
	$('.code-update').live('click', function(){
		$(this).parents("form").find("input[name=update]").val("1");
		$(this).parents("form").submit();
	});

	$('input[title]').each(function() {
  if($(this).val() === '') {$(this).val($(this).attr('title'));}

  $(this).focus(function() {
   if($(this).val() === $(this).attr('title')) {$(this).val('').addClass('focused');}
  });

  $(this).blur(function() {
   if($(this).val() === '') {$(this).val($(this).attr('title')).removeClass('focused');}
  });
 });

 	$('div.callback_button').click(function(){ 		$(this).hide();
 		$('div.callback_form').show(); 	});

});




function search_ajax()
{
	var form = '.search-ajax';
	$(form).find("input[name='search_ajax']").val('1');
	$(form).ajaxSubmit({
		dataType: 'json',

		success: function(response, statusText, xhr, form)
		{

			if(response.search_count)
			{
				$(form).find("input[name='search_ajax']").val('0');
				$(form).find(".search-count").html(prepare(response.search_count));
			}
			return true;
		}
	});
	return false;
}




function prepare(string)
{
	string = str_replace('&lt;', '<', string);
	string = str_replace('&gt;', '>', string);
	return string;
}

function str_replace(search, replace, subject, count)
{
	f = [].concat(search),
	r = [].concat(replace),
	s = subject,
	ra = r instanceof Array, sa = s instanceof Array;
	s = [].concat(s);
	if(count)
	{
		this.window[count] = 0;
	}
	for(i = 0, sl = s.length; i < sl; i++)
	{
		if(s[i] === '')
		{
			continue;
		}
		for(j = 0, fl = f.length; j < fl; j++)
		{
			temp = s[i]+'';
			repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
			s[i] = (temp).split(f[j]).join(repl);
			if (count && s[i] !== temp)
			{
				this.window[count] += (temp.length-s[i].length)/f[j].length;
			}
		}
	}
	return sa ? s : s[0];
}


function switch_order_choice($id){
	switch($id){
		case "order-auth":{
			document.getElementById('order-auth-button-show').style.display = 'none';
        	document.getElementById('order-auth-button-hide').style.display = 'inline';

        	document.getElementById('order-reg-button-show').style.display = 'inline';
        	document.getElementById('order-reg-button-hide').style.display = 'none';

        	document.getElementById('order-reg').style.display = 'none';
        	document.getElementById('order-auth').style.display = 'block';
        	break;
		}
		case "order-reg":{
			document.getElementById('order-auth-button-show').style.display = 'inline';
        	document.getElementById('order-auth-button-hide').style.display = 'none';

        	document.getElementById('order-reg-button-show').style.display = 'none';
        	document.getElementById('order-reg-button-hide').style.display = 'inline';

        	document.getElementById('order-reg').style.display = 'block';
        	document.getElementById('order-auth').style.display = 'none';
        	break;
		}
	}
}


function switch_shop_search($id){
	switch($id){
		case "close":{
			document.getElementById('shop_search_closed').style.display = 'block';
        	document.getElementById('shop_search_open').style.display = 'none';
        	break;
		}
		case "open":{
			document.getElementById('shop_search_closed').style.display = 'none';
        	document.getElementById('shop_search_open').style.display = 'block';
        	break;
		}
	}
}


