var blogXml;
var currentBlogPage=1;
var pageSize=6;
var items;
var pics = [];
function makeBlog(){
	$('#pageGoDown a').hide();
	$('#pageGoUp a').hide();
	//show loading icon
	//startLoading();
	$.ajax({
		type: "GET",
		url: "blogProxy.php",
		dataType: "xml",
		success: function(data){
			blogXml=data;
			//loadAllBlogEntries(data);
			loadBlogNav(data);
			$($('#pageNavEntries li')[0]).animate( { backgroundColor: '#F5F5F5' }, 1000).addClass('selectedNavItem');
			//finishLoading();
		}
	});
}
function makeUpDownControls(){
	$('#pageGoUp').click(function(){
		if(currentBlogPage==1)return false;
		currentBlogPage--;
		var end = pageSize*currentBlogPage;
		var start = end-pageSize;
		loadNavEntries(start,end);
		/*
		$('#pageGoDown').show();
		if(start==0){
			$('#pageGoUp').hide();
		}
		*/
		return false;
	});
	$('#pageGoDown').click(function(){
		if (currentBlogPage * pageSize > items.length) {
			return false;
		}
		currentBlogPage++;
		var end = pageSize*currentBlogPage;
		var start = end-pageSize;
		loadNavEntries(start,end);
		/*
		$('#pageGoUp').show();
		if(end>items.length){
			$('#pageGoDown').hide();
		}
		*/
		return false;
	});
}
var galleryState = 0;
function loadBlogNav(data){
	$(data).find("channel").each(function(){
        var channel = $(this);
		//save the items
		items = channel.find('item');
		//get first item
		var item = $(items[0]);
		
		//load blog item into page
		loadBlogEntry(item);
		
		//make the nav entries
        loadNavEntries(0,pageSize);
		//show pagination
		if(items.length>pageSize){
			$('#pageGoDown a').show();
		}
        //hide loading icon
        $('#loader').hide();
    });
	$('#pageTitleBar a').click(function(){
		if(navState==1){
			navState=0;
			$(this).parent().parent().animate({marginRight: '-=205px'}, "slow");
		}else{
			navState=1;
			$(this).parent().parent().animate({marginRight: '+=205px'}, "slow");
		}
		this.blur();
		return false;
	});
	$('#galleryLoader').hide();
	$('#galleryLauncher').click(function(){
		if(galleryState==0){
			$(this).css('background','url(images/page_elements/blogHideImages.gif) no-repeat left');
			if(pics.length==0){
				$('#galleryLoader').show();
				var regex = /<img[^>]*>/g; 
				items.each(function(){
					var item = $(this);
					var description = item.find("description").text();
					var link = item.find("link").text();
					var images = description.match(regex);
					var title = item.find('title').text();
					if (!title) {
				        title = 'Untitled';
				    }
					if(images!=null){
						var pix = [];
						for(var i=0;i<images.length;i++){
							var img = $(images[i]);
							pix.push(
								{
									thumbnail:img.attr('src'),
									image:img.attr('src'),
									caption:title,
									captionLink: link
								}
							);
						}
						pics.push(pix);
					}
				});
				makeGalleryWithPreparedData(pics);
				galleryState=1;
				$('#galleryLoader').hide();
				$('#imageArea').fadeIn();
				$('#gallery').fadeIn();
				selectFirstEntry();
			}else{
				galleryState=1;
				$('#gallery').fadeIn();
				$('#imageArea').fadeIn();
				selectFirstEntry();
			}
		}else{
			$(this).css('background','url(images/page_elements/blogViewImages.gif) no-repeat left');
			galleryState=0;
			$('#gallery').fadeOut();
			$('#imageArea').fadeOut();
		}
		return false;
	});
}
var navState=1;
function loadBlogEntry(item){
	//startLoading();
	//get data from item
    var title = item.find('title').text();
    var pubDate = item.find('pubDate').text();
    if (!title) {
        title = 'Untitled';
    }
    var description = item.find("description").text();
    var link = item.find("link").text();
	
    //make the first entry
    document.getElementById('pageEntries').innerHTML = '<li><h3><a href="' + link + '">' + title + '</a></h3><p>' + pubDate + '</p><div class="pageDescription">' + description + '</div></li>';
	//finishLoading();
}
function loadNavEntries(start,end){
	var result='';
	items.slice(start,end).each(function(index){
        var item = $(this);
        var title = $(item.find('title')).text();
		if(!title){
			title='Untitled';
		}
		if(title.length>20){
			title=title.substring(0,20)+'...';
		}
        var pubDate = item.find('pubDate').text();
		var id=start+index;
		result +='<li><a id="'+id+'" class="pageNavTitle" href="#">' + title + '</a>'+
		'<p class="pageNavDate">' + pubDate + '</p></li>';
    });
	document.getElementById('pageNavEntries').innerHTML = result;
	$('#pageNavEntries .pageNavTitle').click(function(){
		loadBlogEntry($(items[this.id]));
		$('.selectedNavItem').animate( { backgroundColor: 'white' }, 1000).removeClass('selectedNavItem');
		$(this).parent().animate( { backgroundColor: '#F5F5F5' }, 1000).addClass('selectedNavItem');
		this.blur();
		return false;
	});
	
}

function loadAllBlogEntries(data){
    $(data).find("channel").each(function(){
        var channel = $(this);
        var title = $(channel.find("title")[0]).text();
        $('<h2 id="pageTitle"><a href="http://clanegesselphotography.blogspot.com/">' + title + '</a></h2>').appendTo($('#contentText'));
        var lis = '';
        channel.find('item').each(function(){
            var item = $(this);
            var description = item.find("description").text();
            var title = $(item.find('title')).text();
            var pubDate = item.find('pubDate').text();
            lis += '<li><h3><a href="#">' + title + '</a></h3><p>' + pubDate + '</p><div>' + description + '</div></li>';
        });
        document.getElementById('pageEntries').innerHTML = lis;
        //hide loading icon
        $('#loader').hide();
    });
}

