var timeOut;
//funkce akce po kliku na odkaz - tj.nacteni
function cartAction(options, process_params) {
	var defaults = {form_id: '#pridej_polozku', pos_left: 500, pos_top: 200};
	var opt = $.extend({}, defaults, options);

	var result = false;

	var item_id = $(process_params).find('param[name="IDZ"]').attr('value');

//(pokud se nam nepodari z ID dostat cislo, tak se otevre normalni odkaz)
	if (!isNaN(item_id)){
		var param_arr = new Object();
		$(process_params).find('param').each(function(){
			param_arr[$(this).attr('name')] = $(this).attr('value');
		});

		scroll_top = $(window).scrollTop();
		if (opt.pos_top < scroll_top) 
			opt.pos_top = scroll_top;

		$("#vrstva_kosik").css({top: opt.pos_top + "px", left: opt.pos_left + "px", index: 1000});
		$("#vrstva_kosik").show();
		$("#vrstva_kosik_obsah").load(web_root + "scripts/ajax_kosik.php", param_arr, function() {
			// po 5 sekundach se vrstva s kosikem skryje
			timeOut = setTimeout(function(){
			    $("#vrstva_kosik").hide('slow')
			}, 5000);
			
			//pokud hover, pak se okno NEzavira
			$("#vrstva_kosik").hover(function(){clearTimeout(timeOut)},function(){setTimeout(function(){$("#vrstva_kosik").hide('slow')},5000)});
		});

		result = true;
	}
//vracime opacny stav. Pokud zobrazeni okna dopadlo OK, NEnasleduje se odkaz, jinak provedeme pridani do kosiku klasickym zpusobem
	return !result;
}


function defineItemEvents() {
  $("#pridej_polozku,form.pridej_polozku").append("<input type='hidden' name='ajax_view' value='1'>");

  $("#pridej_polozku").ajaxForm({
	  dataType: 'xml',
	  success: function(xml) {
			if($(xml).find('cart_response').length){
				if($(xml).find('status').text() == 'redirect') {
					document.location.href = $(xml).find('url').text();
				} else {
          $("#kosik").html($(xml).find('kosik').text());
				var left = 500;
				var top = 200;
          return cartAction({form_id:'#pridej_polozku', pos_left: left, pos_top: top},$(xml).find('process_params'));
				}
			}
			return 0;
	  },
	  error: function(a,b) {
			alert(a.status);
		}  });
  
  var formData;
  $("form.pridej_polozku").ajaxForm({
	  beforeSubmit: function(formData, jqForm, options){
	    $('form#aktualni_formular').removeAttr('id');
	    jqForm.removeAttr('id');
	    jqForm.attr('id', 'aktualni_formular');  
	    jqForm.attr('ref', formData[2].value);
	  },
	  dataType: 'xml',
	  success: function(xml) {
			if($(xml).find('cart_response').length){
				if($(xml).find('status').text() == 'redirect') {
					document.location.href = $(xml).find('url').text();
				} else {
          $("#kosik").html($(xml).find('kosik').text());
			    var left = 500;
			    var top = 200;
					var idz = $('#aktualni_formular').attr('ref');
			    $('#aktualni_formular').removeAttr('ref');

			    return cartAction({form_id: '#aktualni_formular', pos_left: left, pos_top: top, item_id: idz},$(xml).find('process_params'));
				}
			}
			return 0;
	  },
	  error: function(a,b) {
			alert(a);
		}
  });
}

$(document).ready(function() {
  //do html vlozime prislusne divy
  var inner_html = ("<div id='vrstva_kosik' style='display:none;z-index:1000;'>");
  inner_html += ("<div id='vrstva_kosik_nadpis'><form><input type='button' id='zavrit_kosik' value=''></a></form></div>");
    inner_html += ("<div id='vrstva_kosik_obsah'>");
  inner_html += ("<div id='vrstva_kosik_cekej'></div>");
  inner_html += ("</div>");
  inner_html += ("</div>");

  $("#pozadi").append(inner_html);
  //ulozime si obsah divu vrstva_obsah (po inicializaci obsahuje nejaky progress typu "cekejte") do promenne
  var inlay_buffer = $("#vrstva_kosik_obsah").html();

  //posouvani okna
  $("#vrstva_kosik").draggable( {
    zIndex  : 10000,
    ghosting: false,
    opacity : 0.7,
    handle  :  "#vrstva_kosik_nadpis",
    start   : function() {
    clearTimeout(timeOut);
    } 
  });

  $("#vrstva_kosik").hide();

  //automaticky posun pri scrollu
  $(window).scroll(function() {
  $("#vrstva_kosik").animate({top:$(window).scrollTop() + "px" }, {queue: false, duration: 350});
  });

  //zavreni okna
  $("#zavrit_kosik").click(function() {
  $("#vrstva_kosik").hide();
  $("#vrstva_kosik_obsah").html(inlay_buffer); //obnovime obsah, ve stylu muze byt nadefinovan nejaky progress pozadi, ale v tomto pripade to neni potreba

  });
});
