function caseStudyEnhancer() {
	// Add PDF Cart Function
	var cs_title = $('#php-js-reference-title').html();
	var cs_ref = $('#php-js-reference-pdf').html();
	$('#get-case-study-link').click(function() {
		addCaseStudy(cs_title,cs_ref);
	});
	
	// Add Video Function
	$('#request-video').addClass('request-video-box').addClass('pointer');
	$('#request-video').children('a').remove();
	$('#request-video').click(function() {
		$('#media-box').html($('#video-box').html());
	});
	
	// Enhance Thumbnails
	$('.thumb-link').click(function() {
		var params = $(this).attr('href').split('/');
		var iid = params[params.length-1];
		var pid = params[params.length-2];
		var base = $('base')[0]['href'];
		
		$('#media-box').addClass('hide');
		$('#ajax-loader-box').removeClass('hide');
		
		$.ajax({
			url: base+'references/showimg',
			data: {id: pid, img: iid},
			success: function(data) {
				$('#media-box').html(data);
				$('#media-box').removeClass('hide');
				$('#ajax-loader-box').addClass('hide');
			}
		});
		
		return false;
	});
}

// Search Widget
function initSearchWidget() {
	// add wrapper/container
	var c = "<div id='search_widget_wrapper' class='display_none'></div>";
	$('#overlays').append(c);
	
	// ajax call to load widget in wrapper
	$('#search_widget_wrapper').load('references/search_widget', function() {
		// some css adjustments
		$('#overlays .textbox_second').removeClass('filter_form').removeClass('wide');
		$('#overlays .textbox h1').bind('click', function() {
			$('#search_widget_wrapper').toggle();
			return false;		
		});
		//form select event on change
		$('#overlays #ReferenceFocus').change(function() {
		  $('#overlays #ReferenceSearchForm').submit();
		});
		$('#overlays #ReferenceFormSubmit').addClass('hide');
	});
	
	//append event to link
	$('#project_search_link').bind('click', function() {
		$('#search_widget_wrapper').toggle();
		
		
		
		return false;		
	});

}

/* 	sidebar plugin 
	preps: 	content.children title-div.html() = Buttonname
	vars:	content:String - choose div to get the content - expample: '#content' or 'p.content'
			target:String - choose a div to place the sidebar - expample: '#contenttarget' or 'p.contenttarget'
			removeClass:String (optional) - remove classes from contentdivs
			addClass:String (optional) - add classes to contentdivs
	
	css classes and ids:	.sidebar_item
							.sidebar_active_item
							#sidebar_slidecontent
							.sidebar_slides
			
*/

function addSideBar(content,target,removeClass,addClass) {
	//add sidebar and content div to target
	$(target).append('<div id="right_sidebar"><div id="sidebar_slidecontent"></div></div>');
	
	//prepare content
	$.each($(content).children(), function(index, value) {
		$(this).prepend('<div class="sidebar_active_item">'+$(this).children('.title').html() +'</div>');
		$(this).css({'margin-left':'207px'});
		$(this).removeClass(removeClass);
		if(addClass != null) {
			$(this).addClass(addClass);
		};
		$(this).addClass('sidebar_slides');
		$('#right_sidebar').append('<div class="sidebar_item">'+$(this).children('.title').html() +'</div>');
		$(this).children('.title').remove();
	});
	$.each($('.sidebar_item'), function(index, value) {
		$(this).css({'top':index*39,'zIndex':1});
	});
	$('#sidebar_slidecontent').append($(content).html());
	$(content).remove();
	
	$.each($('#sidebar_slidecontent').children(), function(index, value) {
		$(this).css('top',index*39+3);
	});
	
	//click on buttons
	$('.sidebar_item').click(function() {
		if(!$('#sidebar_slidecontent').children().is(":animated")) {
			var obj;
			var btnname = $(this).html();
			$.each($('#sidebar_slidecontent').children(), function(value, index) {
				if ($(this).children('.sidebar_active_item').html() == btnname) {
					obj = $(this);
				};
			});
				
			$('.sidebar_item').css({'zIndex':0});
					
			if(ifSlideOut() && $("#sidebar_slidecontent:animated")!=null) {
				$('#sidebar_slidecontent').children().animate({
					marginLeft:'207px'
				},function(){});
				slideInOut(true,obj,$(this));
			} else {
				switchIndex(false,$(this));
				slideInOut(true,obj,$(this));
			};
		};
	});	
	
	//click on slide btn
	$('.sidebar_active_item').click(function() {
		var obj = $($(this).parent());
		slideInOut(false,obj,$(this));
	});	
}

//switch layers between btn and content
function switchIndex(bool,obj) {
	if(bool) {
		$('.sidebar_item').css({'zIndex':1});
		$('#sidebar_slidecontent').css({'zIndex':0});
	} else {
		//alert(obj.position().top);
		$.each($('.sidebar_item'), function(index, value) {
			if($(this).position().top >= obj.position().top) {
				$(this).css({'zIndex':0});
			} else {
				$(this).css({'zIndex':1});	
			}
		});
		$('#sidebar_slidecontent').css({'zIndex':1});
	}
}

//animate slides
function slideInOut(bool,obj,btn) {
	if(bool) {
		$('#sidebar_slidecontent').css({'height':btn.position().top+obj.outerHeight()+5});
		obj.animate({
			marginLeft:'0px'
		},function(){switchIndex(false,btn)});
	} else {
		obj.animate({
			marginLeft:'207px'
		},function(){switchIndex(true);$('#sidebar_slidecontent').css({'height':0});});
	}
}

//looking for active slides
function ifSlideOut() {
	bool = false;
	$.each($('#sidebar_slidecontent').children(), function(index, value) {
		if($(this).css('margin-left')<'207px') {
			bool = true;
		} else {
			
		};
	});
	return bool;
}

// Tabs
function addTabs(container) {
	var tabs_headlines = $(container).find('.tab_h');
	var tabs = $(container).find('.tab');
	var template = $('#tab_box ul li:first'); 
	
	$('#tab_box ul li:first').remove(); //remove hidden dummy data
  
    for(var i=0; i<tabs.length; i++) {
    	var tab = tabs[i];
    	
    	// set tab ids
    	$(tab).attr('id', 'tab'+i);
    	 
    	// tab nav setup
    	var newEntryRow = $(template).clone();
    	newEntryRow.removeAttr('id');
    	newEntryRow.removeAttr('style');
    	newEntryRow.data('entryId', i);
    	newEntryRow.appendTo('#tab_box ul');
    	newEntryRow.find('a').html(tabs_headlines[i]);
    	newEntryRow.find('a').attr('href', '#tab'+i);
    	newEntryRow.click(function() { 
			$("#tab_box ul li").removeClass('active'); //Remove any "active" class
			$(this).addClass('active'); //Add "active" class to selected tab
			$('.tab').hide(); //Hide all tab content
			
			if($(this).find('.unit-special-headline').html()) {
				$('.default_content').hide(); // hide all default content if special is selected
			} else {
				$('.default_content').show(); // show all default content
			}
	
			var activeTab = $(this).find('a').attr('href'); //Find the href attribute value to identify the active tab + content
			$(activeTab).show(); //Fade in the active ID content
			return false;
		});
    	
    }
  if($('#tab_box ul li').size() > 1) {
  	$('#tab_box ul li').addClass('lr');
  	$('#tab_box ul li:first').removeClass('lr').addClass('first');
  	$('#tab_box ul li:last').removeClass('lr').addClass('last');
  }
	$('#tab_box ul').removeClass('hide');
	
	$(".tab").hide(); //Hide all content
	$("#tab_box article").removeClass('hide');
	$("#tab_box ul li:first").addClass("active").show(); //Activate first tab
	$(".tab:first").show(); //Show first tab content

}

// DOCUMENT READY INIT
$(document).ready(function() {
	initSearchWidget();
	
	// call addTab if tab-wrapper class is found
	if($('#tab_box').length > 0) {
		addTabs($('#tab_box'));
	}
	
	//
	if($('.unit-special').length > 0) {
		// Only start with special in the case of a passed paramter
		/*
		if($('h2.unit-special-start')) {
			$('h2.unit-special-start').parent().trigger('click');
			$('.ajax-loader-special').removeClass('hide');
		}
		*/
		// start every time with special, a special exists
		$('h2.unit-special-headline').parent().trigger('click');
		$('.ajax-loader-special').removeClass('hide');
		
		var uid = $('.unit-special').attr('longdesc');
		$.ajax({
			url: 'references/show/'+uid,
			success: function(data) {
				$('#special-wrapper').html(data);
				caseStudyEnhancer();
				$('.ajax-loader-special').addClass('hide');
				
				
			}
		});
	}
});



