
$(document).ready(function(){
	var container = $("#wd_layout_container");
	
	wdFrontend.init();
	wdFrontend.addFormClasses();
	wdFrontend.addFormFocus();
	wdFrontend.createLightbox(container);
	wdFrontend.createMediaLightbox(container);
	wdFrontend.createAccordion(container);

});

/***********************************************/
 
wdFrontend = function(){}

wdFrontend.init = function(element, value)
{
	$("body").css('behavior','url("'+SF_PUBLIC_PATH+'js/csshover3.htc")');
  $("#wd_layout_content .wd_document h1:first").addClass("first");
}

wdFrontend.addFormClasses = function(context)
{
	$("input", $(context)).each(function(i, input)
	{
	  $(input).addClass("type-"+input.type);
	});	
}

wdFrontend.addFormFocus = function(context)
{
	jQuery('input,textarea,select', jQuery('.wd_form', context)).focus(function()
	{
		var focused_id = this.id;
		jQuery(".wd_form .wd_form_row").each(function(i, e)
		{
		  if(focused_id && $("#"+focused_id, e).length)
		  {
			  $(e).addClass("focused");
		  }
		  else
		  {
			  $(e).removeClass("focused");
		  }
		});
	});
}


wdFrontend.createAccordion = function(context)
{

	$(context).each(function(){

		if($(this).is("*:has(>.widget_accordion)"))
		{
			return wdFrontend.createAccordionOn(this);
		}
		$("*:has(>.widget_accordion)", this).each(function(i, wrapper){
			wdFrontend.createAccordionOn(wrapper);
		});
		
	});

}

wdFrontend.createAccordionOn = function(wrapper)
{
	wdFrontend._Accordion = function(){}
	
	wdFrontend.createAccordionNew();

	$($(wrapper).children()).each(function(i, child){
		if($(child).is('.widget_accordion'))
		{
			$(child).appendTo(wdFrontend.wd_accordion).addClass('wd_accordion_header');
			wdFrontend.wd_accordion_container = $('<div class="wd_accordion_container"></div>').appendTo(wdFrontend.wd_accordion);
		}
		else if(wdFrontend.wd_accordion_container && $(child).attr("nodeName")=="HR")
		{
			wdFrontend.createAccordionClose(wrapper, child);
			wdFrontend.createAccordionNew();
		}
		else if(wdFrontend.wd_accordion_container)
		{
			$(child).appendTo(wdFrontend.wd_accordion_container);
		}
	});
	wdFrontend.createAccordionClose(wrapper)
	//$(wd_accordion).appendTo(wrapper).accordion({autoHeight: false});
}

wdFrontend.createAccordionNew = function()
{
	wdFrontend.wd_accordion = $('<div class="wd_accordion"></div>');
	wdFrontend.wd_accordion_container = null;
}

wdFrontend.createAccordionClose = function(wrapper, b)
{
	if(b!=undefined)
	{
		$(b).before(wdFrontend.wd_accordion).remove();
	}
	else
	{
		$(wrapper).append(wdFrontend.wd_accordion);
	}
	$(wdFrontend.wd_accordion).accordion({autoHeight: false, active: false, alwaysOpen: false});
	wdFrontend.wd_accordion = null;
	wdFrontend.wd_accordion_container = null;
}


wdFrontend.createLightbox = function(context)
{
  $.fn.colorbox.settings.transition = "fade";
  $("#wd_layout_body a[href$='.jpg'],a[href$='.jpeg'],a[href$='.gif']", $(context)).colorbox({}, wdFrontend.onLightboxShow);
}

wdFrontend.createMediaLightbox = function(context)
{
	$('a[href*="youtube.com/"]', $(context)).each(function(i, element){
		var v = $(element).getUrlParam("v");
		if(v)
		{
			$(element).colorbox({ href:'http://www.youtube.com/v/'+v+'&fs=1', iframe:true, fixedWidth:580, fixedHeight:400}, wdFrontend.onLightboxShow)
		}
	});
}

wdFrontend.fixedPngForLightbox = !jQuery.browser.msie;
wdFrontend.onLightboxShow = function()
{
	if (wdFrontend.fixedPngForLightbox) return false;

	$("#colorbox div[id^=border]").each(function(){
		var bgIMG = jQuery(this).css('background-image');
		if(bgIMG.indexOf(".png")!=-1){
			var iebg = bgIMG.split('url("')[1].split('")')[0];
			jQuery(this).css('background-image', 'none');
			jQuery(this).get(0).runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + iebg + "',sizingMethod='scale')";
		}
	});
	wdFrontend.fixedPngForLightbox = true;
}


/***********************************************/
jQuery.fn.extend({

getUrlParam: function(strParamName)
{
	// (c): http://www.mathias-bank.de/2007/04/21/jquery-plugin-geturlparam-version-2/
	
	strParamName = escape(unescape(strParamName));
	
	var returnVal = new Array();
	var qString = null;

	if ($(this).attr("nodeName")=="#document")
	{
		//document-handler
		if (window.location.search.search(strParamName) > -1 )
		{
			qString = window.location.search.substr(1,window.location.search.length).split("&");
		}
	}
	else if ($(this).attr("src")!=undefined)
	{
		var strHref = $(this).attr("src")
		if ( strHref.indexOf("?") > -1 ){
	  	var strQueryString = strHref.substr(strHref.indexOf("?")+1);
			qString = strQueryString.split("&");
		}
	}
	else if ($(this).attr("href")!=undefined)
	{
		var strHref = $(this).attr("href")
		if ( strHref.indexOf("?") > -1 ){
	  	var strQueryString = strHref.substr(strHref.indexOf("?")+1);
			qString = strQueryString.split("&");
		}
	}
	else
	{
		return null;
	}

	if (qString==null) return null;

	for (var i=0;i<qString.length; i++){
		if (escape(unescape(qString[i].split("=")[0])) == strParamName){
			returnVal.push(qString[i].split("=")[1]);
		}
		
	}

	if (returnVal.length==0) return null;
	else if (returnVal.length==1) return returnVal[0];
	else return returnVal;
	
} // getUrlParam

}); // jQuery.fn.extend