/**
 * @author dan
 */


var headers = [ 
			{ img: 'MSR-summer-2006-wide.jpg', desc: 'Intern, Microsoft Research, Redmond, Summer 2006', accent: '#f1208b'},
			{ img: 'lille_2010-wide.jpg', desc: 'Visiting Researcher, University of Lille, France, Spring 2010', accent: '#FF4415' },
			{ img: 'mta-closet-2009-wide.jpg', desc: 'Dissertation, Dunn 401 Closet, Mount Allison University, Winter 2009', accent: '#51B5FF' },
			{ img: 'conte-study-2011-wide.jpg', desc: 'Conté Artist Study, Sackville, Summer 2011', accent: '#ECCC15' },
			{ img: 'conte-video-lille-2011-wide.jpg', desc: 'Conté Video Shoot, University of Lille, France, Spring 2011', accent: '#D63DDA' },
			{ img: 'roost-warendin-2011--wide.jpg', desc: 'Conté Prototyping, Roost-Warendin, France, Summer 2011', accent: '#FF5217' },
			{ img: 'uwaterloo-2012.jpg', desc: 'DC 2112, University of Waterloo, Winter 2012', accent: '#ffe426' },
		 ]; 
		 
		 

// page load scripts		 
$( function() {

});

var headerBgNum = 0;

function initHeaderBg()
{
	var i = $.cookies.get( 'headerBgNum' );
	
	//alert(i);
	if ($.isNumeric(i))
	{
		headerBgNum = i;
	}
	else
	{
		// set the bg according to day of week
		var day = new Date().getDay();
		headerBgNum = day % headers.length;
		//console.log('day: ' + day + ' header: ' + headerBgNum);
	}

	
	setHeader(headerBgNum);
				
	// cycle through headers
	$('#header-note').click(rotateHeader);
	
	// header mouse over
	$('#header-note').mouseenter(function() {
		$('#header-note span.desc').fadeIn('fast');
	}).mouseleave(function() {
		$('#header-note span.desc').fadeOut('slow');
	});	
}


			
// handler for header click
function rotateHeader() {
	//alert('getHeader');
	
	headerBgNum++;
	if (headerBgNum >= headers.length) headerBgNum=0;
	
	// expire this cookie at midnight tonight
	var expires = new Date();
	expires.setHours(23,59,59);
	//console.log(expires);
	
	$.cookies.set( 'headerBgNum', headerBgNum, { expiresAt: expires } );
	setHeader(headerBgNum);
	
}	


// handler for header click
function setHeader(i) {
	//alert('getHeader');
	
	$.rule('.accent-colour', 'style').append('color: ' + headers[i].accent);
	$('#header-wrapper').css('background-image', 'url(\'img/headers/' + headers[i].img + '\')' );
	$('#header-wrapper span.desc').html(headers[i].desc);
	
	var next = i + 1;
	if (next >= headers.length) next = 0;
	
	$('#header-wrapper-next').css('background-image', 'url(\'img/headers/' + headers[next].img + '\')' );

}	

// slide box set slide
// - - - - - - - - - - - - 

var slideBoxWidth = 669;
var slideBoxSlide = 0;

function relativeSetSlideBox(delta)
{
	var n = $('.slide-box > ul > li').length;
	
	if (n == 1) return;
	
	slide = slideBoxSlide + delta;
	
	if (slide > n - 1)
		slide = 0;
	else if (slide < 0)
		slide = n - 1;	
		
	setSlideBoxSlide(slide);
}


function setSlideBoxSlide(slide)
{
	// activate the image in the slide box
	var offset = - slide * slideBoxWidth;
	$('.slide-box > ul').animate({'margin-left' : offset}, { "duration": 100 } );
	//console.log('offset: ' + offset);

    //Show active list-item
    $("ul.slide-box-thumbs li").removeClass('on'); //Remove class of 'active' on all list-items
    $("ul.slide-box-thumbs li").eq(slide).addClass('on');  //Add class of 'active' on the selected list
    
    slideBoxSlide = slide;
}
	
// slide box set-up
// - - - - - - - - - - - - 
function initSlideBox()
{

	// set the maximum width
	var n = $('.slide-box > ul > li').length;
	$('.slide-box > ul').css('width', (n * slideBoxWidth) + 'px');
	
	// set the first one to on
	$("ul.slide-box-thumbs > li").first().addClass('on');
	
	// slide box thumb click
	$("ul.slide-box-thumbs > li").click(function(){
	
		//onsole.log("click");
		
		var li_index = $('ul.slide-box-thumbs > li').index(this);
		
		//console.log("index: ", li_index);

	
	    if ($(this).is(".on")) {  //If the list item is active/selected, then...
	        return false; // Don't click through - Prevents repetitive animations on active/selected list-item
	    } else {
	    	
			setSlideBoxSlide(li_index);
	    }
	    
	    return false;
	    });
	    
	    
	// set the description show/hide
	$('.slide-box span.desc').each(function(index) {
	    //alert(index + ': ' + $(this).text());
	    	
	    	txt = $.trim($(this).find('p').html());
	    	//console.log(txt.length);
	    	
	    	if (!txt)
	    	{
	    		//console.log('empty');
	    		$(this).hide();
	    	}
	    	else
	    	{
				$(this).fadeOut('fast');
		    
				$(this).parent().mouseenter(function() {
					
					desc = $(this).find('span.desc');
					//console.log('enter: ' + desc.html());
					$(desc).fadeIn('fast');
				}).mouseleave(function() {
					desc = $(this).find('span.desc');
					//console.log('exit');
					desc.fadeOut('slow');
				});	    		
	    	}
	    	
		});
	
}

