/////////////////////////////////////////////////////
/////////////////// Main.js ////////////////////
/////////////////////////////////////////////////////

$(document).ready(function() {
	

	$("#jsDisabled").css('visibility','hidden');
	$("#pageLoading").html("<center><h3>Please standby while the content is loaded...</h3><img src='img/ajax-loader.gif' alt='Loading...' /><br /><br /><br /><small>If the page has not loaded after a few minutes, please refresh to reload. Thank you.</small></center><br /><br /><br /><br />");
	// Initialize history plugin.
	// The callback is called at once by present location.hash. 
	$.historyInit(pageload, "index.php");
	// if on root of site i.e. .com/, then force pageLoad
	var hash = location.hash;
	hash = hash.replace(/^.*#/, '');
	if(hash == '' || !hash)
		pageload(hash);

	//doFeaturedHeader();
	
	// Google Analytics tracking for outgoing links
	$('a[href^=http]:not("[href*=://' + document.domain + ']")').live("click", function() {
		pageTracker._trackEvent('/out', "click", $(this).attr("href"));
	});
	
	// set onlick event for buttons
	$("a[rel='history']").live("click", function(){
		if($(this).attr("class") == 'search-link')
			$(this).addClass("selected");
		// 
		var hash = this.href;
		hash = hash.replace(/^.*#/, '');
		// moves to a new page. 
		// pageload is called at once. 
		// hash don't contain "#", "?"
		$.historyLoad(hash);
		return false;
	});
	$('#audioplayer').flash({
		src: 'swf/audioplayer.swf',
		width: 313,
		height: 19,
		id: 'aplyer'

	});

	$('#insertAudio').live("click", function(e) {
		var audioID = this.getAttribute("rel");
		var evt=window.event || e;
		if (evt.preventDefault) //supports preventDefault?
			evt.preventDefault();
		else //IE browser
			return false;

		$('#audioplayer').flash({
			src: 'swf/audioplayer-play.swf',
			width: 313,
			height: 19,
			flashvars: { audioID : audioID },
			id: 'aplyer'
		
		});
	});
	
	$(".headerlink").click(function(e) {
		var evt=window.event || e;
		if (evt.preventDefault) //supports preventDefault?
			evt.preventDefault();
		else //IE browser
			return false;
		var argString = this.getAttribute("title");
		ajax_headerLink(argString);
	});
	$(".newslink").live("click", function(e) {
		var evt=window.event || e;
		if (evt.preventDefault) //supports preventDefault?
			evt.preventDefault();
		else //IE browser
			return false;
		var argString = this.getAttribute("id");
		var args = argString.split("/");
		ajax_newsLink(args);
	});
	$("#press_filter").live("click", function(e) {
		var argString = this.getAttribute("rel");
		var args = argString.split("/");
		ajax_newsLink(args);
	});
	$("#news_filter").live("click", function(e) {
		var argString = this.getAttribute("rel");
		var args = argString.split("/");
		ajax_newsLink(args);
	});
	$("#advocacy_filter").live("click", function(e) {
		var argString = this.getAttribute("rel");
		var args = argString.split("/");
		ajax_newsLink(args);
	});

	$("#timelineEvent").live("click", function(e) {
		var argString = this.getAttribute("rel");
		var args = argString.split("/");
		ajax_journalLink(args);
	});
	$("#music_checkbox").live("click", function(e) {
		filterjournal();
	});
	$("#career_checkbox").live("click", function(e) {
		filterjournal();
	});
	$("#advocacy_checkbox").live("click", function(e) {
		filterjournal();

	


});
$.ajaxSetup({async: false});
$.getScript('http://twitter.com/javascripts/blogger.js');
$.getScript('http://twitter.com/statuses/user_timeline/emmanueljal.json?callback=twitterCallback2&count=1');
$.ajaxSetup({async: true});
});
function loadHome() {
	$("#content_wrapper").load("home.php",{},function(e) {
		loadFrontNewsTours();	
		var randomNum = Math.floor(Math.random()*3);
		$("#slideshow").cycle({
			fx: 'fade',
			timeout: 9000,
			startingSlide: 1
		});	
		$("#homeVid").fancybox(
				{
					'overlayShow': true,
					'frameWidth' : 650,
					'frameHeight' : 395,
					'easingIn': 'easeInOutQuad',
					'easingOut': 'easeInOutQuad',
					'centerOnScroll' : false,
					'hideOnContentClick' : false
					
				});	
	});
	
	
	
}

function loadFrontNewsTours() {

	$.post("news.php", {m : 'frontpage'}, function(data) {
		if(data.length > 0) {
			//alert(data);
			$("#frontpage_news_wrapper").html(data);
		}
	});
	$.post("tourdates.php", {m : 'frontpage'}, function(data) {
		if(data.length > 0) {
			//alert(data);
			$("#frontpage_tourdates_wrapper").html(data);
		}
	});
}

function ajax_headerLink(argString) {
	var args = argString.split(":");
	var pageName = args[0];
	var mode = args[1];
	var flag1 = args[2];
	var flag2 = args[3];

	$.post(""+pageName+".php", {m : mode, flag1 : flag1, flag2 : flag2}, function(data) {
		if(data.length>0) {
			$("#content_wrapper").html(data);
		}
	});
}
function ajax_newsLink(args) {
	var mode = args[1];
	var flag1 = args[2];
	var flag2 = args[3];

	if(!mode) {
		$.post("news.php", {}, function(data) {
			if(data.length>0) {
				$("#content_wrapper").html(data);
			}
		});
	}
	if(mode == 'd') {
		if($("#news_content_wrapper").length > 0) {
			$.post("news.php", {m : mode, flag1 : flag1}, function(data) {
				if(data.length>0) {
					$("#news_content_wrapper").html(data);
				}
			});
		} else {
			$.post("news.php", {m : 'loadDivs'}, function(data) {
				if(data.length>0) {
					$("#content_wrapper").html(data);
					$.post("news.php", {m : mode, flag1 : flag1}, function(data) {
						if(data.length>0) {
							$("#news_content_wrapper").html(data);
							$.post("news.php", {m : 'dl'}, function(data) {
								if(data.length>0) {
									$("#news_list_wrapper").html(data);
								}
							});
						}
					});
				}
			});
		}
	} 
	
	if(mode == 'df') {
		$.post("news.php", {m : 'loadDivs'}, function(data) {
			if(data.length>0) {
				$("#content_wrapper").html(data);
				$.post("news.php", {m : mode, flag1 : flag1}, function(data) {
					if(data.length>0) {
						$("#news_content_wrapper").html(data);
						$.post("news.php", {m : 'dl'}, function(data) {
							if(data.length>0) {
								$("#news_list_wrapper").html(data);
							}
						});
					}
				});
			}
		});
	}
	if(mode == 'dl') {
		if(!flag1)
			flag1 = 1;

		var news = document.getElementById("news_filter").checked;
		var press = document.getElementById("press_filter").checked;
		var advocacy = document.getElementById("advocacy_filter").checked;
		$.post("news.php", {m : mode, page : flag1, press : press, advocacy : advocacy, news : news}, function(data) {
			if(data.length>0) {
				$("#news_list_wrapper").html(data);
			}
		});
	}
	
}
function ajax_tourdatesLink(args) {
	var mode = args[1];
	var flag1 = args[2];
	var flag2 = args[3];

	if(!flag1)
		flag1 = 1;

	if(!mode) {
		$.post("tourdates.php", {p : flag1}, function(data) {
			if(data.length>0) {
				$("#content_wrapper").html(data);
			}
		});
	}
	if(mode == 'dl') {
		$.post("tourdates.php", {m : mode, p : flag1}, function(data) {
			if(data.length>0) {
				$("#content_wrapper").html(data);
			}
		});
	}
}
function ajax_journalLink(args) {
	var sort = args[1];
	var filter = args[2];
	var pageNumber = args[3]
	var timelineID = args[4];

	if(!sort || sort == '')
		sort = 'desc';
	if(!filter)
		filter = '';
	if(!pageNumber)
		pageNumber = 1;
	if(!timelineID)
		timelineID = '';

	$.post("journal.php", {sort : sort, filter : filter, pageNumber : pageNumber, timelineID : timelineID}, function(data) {
		if(data.length>0) {
			$("#content_wrapper").html(data);
			if(filter && filter != '')
				$('#searchLink'+filter).addClass('selected');
		}
	});
	if(timelineID) {
		$.post("journal.php", {m : 'loadTitle', timelineID : timelineID}, function(data) {
			if(data.length>0) {
				document.title = data+" | Emmanuel Jal's Journal";
			}
		});
	}
}

function filterjournal() {
	var careerFilter = $("#career_checkbox").attr('checked');
	var musicFilter = $("#music_checkbox").attr('checked');
	var philanthropyFilter = $("#advocacy_checkbox").attr('checked');
	var sort = $("#sort").val();

	var filter = '';

	if(careerFilter)
		filter += 'c';
	if(musicFilter)
		filter += 'm';
	if(philanthropyFilter)
		filter += 'p';

	window.location = "#journal/"+sort+"/"+filter;

	// on FireFox, simply changing window.location fires off the jquery History plugin.  Need special processing for IE as seen below
	if(jQuery.browser.msie) {
		var hash = window.location.href;
		hash = hash.replace(/^.*#/, '');
		// moves to a new page. 
		// pageload is called at once. 
		// hash don't contain "#", "?"
		$.historyLoad(hash);
	}
}

function doFeaturedHeader() {
	$.post("featured.php", {m : 'getHeader'}, function(data) {
		if(data.length > 0) {
			$("#n-featured").text(data);
		}
	});
}

function doFeaturedURL() {
	$.post("featured.php", {m : 'getURL'}, function(data) {
		if(data.length > 0) {
			document.title = data;
		}
	});
}

function ajax_featuredLink(args) {
	$.post("featured.php", {}, function(data) {
		if(data.length>0) {
			$("#content_wrapper").html(data);
		}
	});
}
function loadRaty() {
	$('#ghetto').raty({onClick: function(score){alert("Thanks! You chose "+score+" stars.");logVote("ghetto",score);}});
	$('#peace').raty({onClick: function(score){alert("Thanks! You chose "+score+" stars.");logVote("peace",score);}});
	$('#mama').raty({onClick: function(score){alert("Thanks! You chose "+score+" stars.");logVote("mama",score);}});
	$('#nyakor').raty({onClick: function(score){alert("Thanks! You chose "+score+" stars.");logVote("nyakor",score);}});
	$('#kush').raty({onClick: function(score){alert("Thanks! You chose "+score+" stars.");logVote("kush",score);}});
}
function logVote(song, score) {
	
	$.post("logVote.php", { snipName: song, rating: score } );
}


