﻿function mbbAction(containerid, actionname, paramstring)
{	
	document.forms[0].elements["mbbaction"].value = actionname + ":" + paramstring;
	alert("mbbaction: " + document.forms[0].elements["mbbaction"].value);
	document.forms[0].elements["mbbtarget"].value=containerid;
	document.forms[0].submit();
}

var g_cmenutimer = null;

function toggleCMenu()
{
	var container = document.getElementById('cmenu');
	if(container.style.display=='none')
	{
		container.style.display='block';
		g_cmenutimer = window.setTimeout('toggleCMenu()',2000);
	}
	else
	{
		window.clearTimeout(g_cmenutimer);
		container.style.display = 'none';
	}	
}

function disableCloseCMenu()
{
	window.clearTimeout(g_cmenutimer);
}

function enableCloseCMenu()
{
	g_cmenutimer = window.setTimeout('toggleCMenu()',2000);
}

function setContainerVis(containerid, vis)
{
	var container = document.getElementById(containerid);	
	if(container)
	{
		if(vis)
		{
			container.style.display='';
		}
		else
		{
			container.style.display='none';
		}
	}
}

//ImagePreview im Kalender
var currentProductImagePopupContainer;
var productImagePopupUrlTimeoutId;

function showProductImagePopup(imageurl,targetContainer){   
   if(productImagePopupUrlTimeoutId!=null){
       window.clearTimeout(productImagePopupUrlTimeoutId);
       productImagePopupUrlTimeoutId=null;
   }
     if(currentProductImagePopupContainer!=targetContainer){
       actualHideProductImagePopup();
       currentProductImagePopupContainer = targetContainer;
       actualShowProductImagePopup(imageurl,targetContainer);
   }
}

function actualShowProductImagePopup(imageurl,targetContainer)
{
	if(imageurl != null && imageurl != "")
	{
		var container = document.getElementById(targetContainer);
		container.innerHTML = '<div class="prevcontainer"><img src="/Images/Layout/loading-nav.gif"/></div>'
		var img = new Image();
		img.onload = function()
		{
			if(targetContainer == currentProductImagePopupContainer)
			{
				container.innerHTML = '<div class="prevcontainer"><img src="'+imageurl+'"/></div>';		
			}
		}
		img.src = imageurl;
	}
}

function hideProductImagePopup()
{
   if(productImagePopupUrlTimeoutId != null){
       window.clearTimeout(productImagePopupUrlTimeoutId);
   }     productImagePopupUrlTimeoutId = window.setTimeout(actualHideProductImagePopup,200);
}
function actualHideProductImagePopup(){
   productImagePopupUrlTimeoutId=null;
   if(currentProductImagePopupContainer!=null){
       var container = document.getElementById(currentProductImagePopupContainer);
       currentProductImagePopupContainer=null;
       container.innerHTML = '<div style="position:absolute"></div>';
   }
  }


  function slideCallback()
  {
  	var handle = $($('.handle', this.parentNode)[0]);
  	if(handle.hasClass("down"))
  	{
  		$(handle).removeClass("down");
  		$(handle).addClass("up");
  	}
  	else
  	{
  		$(handle).removeClass("up");
  		$(handle).addClass("down");
  	}
  }

  var g_tickertimeout = null;
  var g_tickerlock = false;

  function startTicker()
  {
  	g_tickerlock = true;
  	var items = $("#ticker .items .item");
  	items.bind("mouseover", cancelTickerTimeout);
  	items.bind("mouseout", resumeTickerTimeout);
  	$(items[0]).fadeIn("slow", tickerFadeInCallback);
  }

  function tickerChange()
  {
  	g_tickerlock = true;
  	var currentitem = $("#ticker .items .item:visible");
  	currentitem.fadeOut("slow", tickerFadeOutCallback);
  	g_tickertimeout = null;
  }
  
  function tickerFadeOutCallback()
  {
  	var siblings = $("#ticker .items .item:not(.hidden) ~ .hidden");
  	if (siblings.length == 0)
  	{
  		siblings = $("#ticker .items .item");
  	}
  	$(siblings[0]).fadeIn("slow", tickerFadeInCallback);
  	$(this).addClass("hidden");
  	g_tickerlock = false;
  }

  function tickerFadeInCallback()
  {
  	$(this).removeClass("hidden");
  	g_tickerlock = false;
  	if (!g_tickerlock)
  	{
  		if (!g_tickertimeout)
  		{
  			g_tickertimeout = window.setTimeout(tickerChange, 7000);
  		}
  	}
  }


  function resumeTickerTimeout()
  {
  	if (!g_tickerlock && !g_tickertimeout)
  	{
  		g_tickertimeout = window.setTimeout(tickerChange, 7000);
  	}  	
  }

  function cancelTickerTimeout()
  {  	
  	if (g_tickertimeout)
  	{
  		window.clearTimeout(g_tickertimeout);
  		g_tickertimeout = null;
  	}
  }
  
  /*DealDetails*/

  var g_currentdealstagingid = 0;
  var g_hidetimer = 0;

  function showInfo(dealstagingid)
  {
  	var w = window.open("/DealTaggingInfo.aspx?ds=" + dealstagingid, "DealTaggingInfo", "width=800,height=600,resizable=yes,scrollbars=yes");
  	w.focus();
  }

  function showDetails(container, dealstagingid, itemindex)
  {
  	if (g_currentdealstagingid == dealstagingid)
  	{
  		hideDetails();
  		return;
  	}
  	if (g_hidetimer)
  	{
  		window.clearTimeout(g_hidetimer);
  		g_hidetimer = 0;
  		g_currentdealstagingid = 0;
  	}
  	var detailbox = document.getElementById('detailbox');
  	if (itemindex % 5 < 3)
  	{
  		detailbox.className = "catdetailbox l";
  		//detailbox.style.left = "-20px";
  	}
  	else
  	{
  		detailbox.className = "catdetailbox r";
  	}
  	if (itemindex >= 15)
  	{
  		detailbox.className += " b";
  	}
  	else
  	{
  		detailbox.className += " t";
  	}
  	detailbox.innerHTML = '<div class="content">Informationen werden geladen...</div>';
  	loadDetails(dealstagingid);
  	var p = detailbox.parentNode;
  	//alert("Parent: " + detailbox.parentNode);
  	p.removeChild(detailbox);
  	var newparent = document.getElementById('cdet' + dealstagingid);
  	newparent.appendChild(detailbox);
  	g_currentdealstagingid = dealstagingid;
  }

  function startHideDetails()
  {
  	if (g_hidetimer == 0 && g_currentdealstagingid > 0)
  	{
  		g_hidetimer = window.setTimeout('hideDetails()', 500);
  	}
  }

  function cancelHideDetails()
  {
  	if (g_hidetimer)
  	{
  		window.clearTimeout(g_hidetimer);
  		g_hidetimer = 0;
  	}
  }

  function hideDetails()
  {
  	var newparent = document.getElementById('detailcontainer');
  	var detailbox = document.getElementById('detailbox');
  	detailbox.parentNode.removeChild(detailbox);
  	newparent.appendChild(detailbox);
  	g_currentdealstagingid = 0;
  	g_hidetimer = 0;
  }

  //Ajax
  function loadDetails(dealstagingid)
  {
  	var a = new Ajax.Request("/DealCatalogueDetail.aspx",
			{ method: 'get', parameters: 'd=' + dealstagingid, onComplete: onLoadDetails }
		);
  }

  function onLoadDetails(req)
  {
  	var detailbox = document.getElementById('detailbox');
  	detailbox.innerHTML = req.responseText;
  }


  function checkEnter(evt, execfuntion)
  {
  	var keyCode = evt.keyCode;
  	if (keyCode == 13)
  	{
  		execfuntion();
  		return false;
  	}
  	return true;
  }
  