/* 

Atlantic Bootup Script
v. 1.0

last mod: 9-12-08
by: Mark

jQuery based onloads. Most of this is just example code. Please remove all unnecessary code (including this comment).


*/


/*################################################################################## ABT BASE Functions */

/* for testing/example purpose */
var themeArray = new Array('water','magnum','olive','mint','life','rust','sandal','charcoal','steel','palm','saddle','salmon','crayon-blue','fig','hebrew','flame');


/* class toggling */
function removeClasses(type) {
	for (i=0; i<themeArray.length; i++) {
		$('body').removeClass(themeArray[i] + '-' + type);
	}
}

function addClasses(newclass, type) {
	$('body').addClass(newclass + '-' + type);
}

/* open/close toggle for events, volunteer opps, and staff directories */
function toggleListings(wrapClass, catClass) {
	$("div." + wrapClass + " ul > li." + catClass + " > h2").append('<span class="toggle close"> Open</span>');
	
	fullURL = parent.document.URL;
    anchorID = fullURL.substring(fullURL.indexOf('#'), fullURL.length);
	
	if (!anchorID.indexOf('#')) {
		$("div." + wrapClass + " ul > li." + catClass + " > ul").slideUp("fast");
		$("div." + wrapClass + " ul p.top-link a").addClass("closed");
			/* open appropriate item */
			$("div." + wrapClass + " ul > li" + anchorID).parents("li.event-category").find("h2 span").removeClass("close");
			$("div." + wrapClass + " ul > li" + anchorID).parents("li.event-category").find("h2 span").addClass("open");
			$("div." + wrapClass + " ul > li" + anchorID).parents("li.event-category").find("h2 span").html(" Close");
			$("div." + wrapClass + " ul > li" + anchorID).parents("li.event-category").find("ul").slideDown("fast");
			$("div." + wrapClass + " ul > li" + anchorID).parents("li.event-category").find("p.top-link a").removeClass("closed");
			
	} else {
	
		if (wrapClass != "songList" && wrapClass != "songFiles") {
			//close all and open first
			$("div." + wrapClass + " ul > li." + catClass + " > ul").slideUp("fast");
			$("div." + wrapClass + " ul p.top-link a").addClass("closed");
				/* open first item */
				$("div." + wrapClass + " ul > li." + catClass + " > h2").eq(0).find("span").removeClass("close");
				$("div." + wrapClass + " ul > li." + catClass + " > h2").eq(0).find("span").addClass("open");
				$("div." + wrapClass + " ul > li." + catClass + " > h2").eq(0).find("span").html(" Close");
				$("div." + wrapClass + " ul > li." + catClass + " > ul").eq(0).slideDown("fast");
				$("div." + wrapClass + " ul > li." + catClass + " p.top-link a").eq(0).removeClass("closed");
		} else {
			//close all
			//$("div." + wrapClass + " ul > li." + catClass + " > h2 span").removeClass("close");
			//$("div." + wrapClass + " ul > li." + catClass + " > h2 span").addClass("open");
			//$("div." + wrapClass + " ul > li." + catClass + " > h2 span").html(" Close");
			$("div." + wrapClass + " ul > li." + catClass + " > ul").slideUp("fast");
			$("div." + wrapClass + " ul p.top-link a").addClass("closed");
		}
	}
	
	$("div." + wrapClass + " ul > li." + catClass + " > h2").click(function() {
		if ($(this).find("span").hasClass("open")) {
			$(this).find("span").removeClass("open");
			$(this).find("span").addClass("close");
			$(this).find("span").html(" Open");
			$(this).parent().find("ul").eq(0).slideUp("fast");
			$(this).parent().find("p.top-link a").addClass("closed");
		} else {
			removeTarget();
			$(this).find("span").removeClass("close");
			$(this).find("span").addClass("open");
			$(this).find("span").html(" Close");
			$(this).parent().find("ul").eq(0).slideDown("fast");
			$(this).parent().find("p.top-link a").removeClass("closed");
		}
	});
}

/* # links jump enhancements */
function jumpToListing(navID) {
	$("ul#" + navID + " a").click(function() {
		thislink = $(this).attr("href");
		$(document).scrollTo(thislink, 1000);
		if ($(thislink + " > h2 span").hasClass("open")) {
			//$(thislink + " > h2 span").removeClass("open");
			//$(thislink + " > h2 span").addClass("close");
			//$(thislink + " > h2 span").html(" Open");
			//$(thislink).find("ul").eq(0).slideUp("fast");
		} else {
			$(thislink + " > h2 span").removeClass("close");
			$(thislink + " > h2 span").addClass("open");
			$(thislink + " > h2 span").html(" Close");
			$(thislink).find("ul").eq(0).slideDown("fast");
			removeTarget();
			applyTarget(thislink);
			//setTimeout("removeTarget()",1000);
		}
		return false;
	});	
}

function removeTarget() {
	$(document).find("span.target-symbol").remove();
	$(document).find(".target").removeClass("target");
}

function applyTarget(thisitem) {
	$(thisitem + " > h2").eq(0).append('<span class="target-symbol"> &laquo; here</span>');
	$(thisitem + " > h2").eq(0).addClass("target");
}


/* open/close toggling */
function openAll(wrapClass, catClass) {
	/* open all items */
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").removeClass("close");
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").addClass("open");
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").html(" Close");
	$("div." + wrapClass + " ul > li." + catClass + " > ul").slideDown("fast");
	$("div." + wrapClass + " ul p.top-link a").removeClass("closed");
}

function closeAll(wrapClass, catClass) {
	/* open all items */
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").removeClass("open");
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").addClass("close");
	$("div." + wrapClass + " ul > li." + catClass + " > h2").find("span").html(" Open");
	$("div." + wrapClass + " ul > li." + catClass + " > ul").slideUp("fast");
	$("div." + wrapClass + " ul p.top-link a").addClass("closed");
}
function openAllMap() {
	/* open all items */
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").removeClass("close");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").addClass("open");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").html(" Close");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").siblings("ul").slideDown("fast");
}

function closeAllMap() {
	/* open all items */
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").removeClass("open");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").addClass("close");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").html(" Open");
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").siblings("ul").slideUp("fast");
}


$(document).ready(function() {
	
	/* Font Sizing Cookies and Styles and Other Tools */		
	var agent=navigator.userAgent.toLowerCase();
	var is_iphone = ((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)));
	if (is_iphone) {
		$("#site-tools-menu").prepend("<li id=\"sharing-tools\" class=\"iphone-share\"><h6>Sharing</h6>" +
			"<ul class=\"level2\">" +
					"<li id=\"n-stumble\"><a href=\"javascript:share('stumbleupon');\">StumbleUpon</a></li>" +
					"<li id=\"n-myspace\"><a href=\"javascript:share('myspace');\">Add to MySpace</a></li>" +
					"<li id=\"n-google\"><a href=\"javascript:share('google');\">Add to Google</a></li>" +
					"<li id=\"n-delicious\"><a href=\"javascript:share('delicious');\">Add to Del.icio.us</a></li>" +
					"<li id=\"n-facebook\"><a href=\"javascript:share('facebook');\">Add to Facebook</a></li>" +
				"</ul>" +
			"</li>");
		$("#sharing-tools ul.level2").hide("fast");
		$("#n-about div.drop").hide("fast");
		$("#n-ministries div.drop").hide("fast");
	} else {
		$("#site-tools-menu").prepend("<li id=\"sharing-tools\"><h6>Sharing</h6>" +
				"<ul class=\"level2\">" +
					"<li id=\"n-print\"><a href=\"javascript:printThis();\">Print Page</a></li>" +
					"<li id=\"n-stumble\"><a href=\"javascript:share('stumbleupon');\">StumbleUpon</a></li>" +
					"<li id=\"n-myspace\"><a href=\"javascript:share('myspace');\">Add to MySpace</a></li>" +
					"<li id=\"n-google\"><a href=\"javascript:share('google');\">Add to Google</a></li>" +
					"<li id=\"n-delicious\"><a href=\"javascript:share('delicious');\">Add to Del.icio.us</a></li>" +
					"<li id=\"n-facebook\"><a href=\"javascript:share('facebook');\">Add to Facebook</a></li>" +
				"</ul>" +
			"</li>" +
			"<li id=\"font-tools\"><h6>Fonts</h6>" +
			"<ul class=\"level2\">" +
					"<li id=\"n-font-lg\"><a href=\"#\" onclick=\"increaseFont(); return false;\">Larger Text</a></li>" +
					"<li id=\"n-font-md\"><a href=\"#\" onclick=\"defaultFont(); return false;\">Default Text</a></li>" +
					"<li id=\"n-font-sm\"><a href=\"#\" onclick=\"decreaseFont(); return false;\">Smaller Text</a></li>" +
					"<li id=\"n-contrast\"><a href=\"#\" onclick=\"setActiveStyleSheet('High Contrast'); return false;\">High Contrast</a></li>" +
					"<li id=\"n-invert\"><a href=\"#\" onclick=\"setActiveStyleSheet('Inverted Contrast'); return false;\">Inverted</a></li>" +
					"<li id=\"n-default\"><a href=\"#\" onclick=\"setActiveStyleSheet('Default Contrast'); return false;\">Default</a></li>" +
				"</ul>" +
			"</li>");
		
		loadStyles();
		setActiveStyle(getStyleFromCookie());
	}
	/* End Font Sizing Cookies and Styles */
	
	if (is_iphone) {
		$("#sharing-tools").click(function() {
			$("#sharing-tools ul.level2").toggle("fast");
			$("#sharing-tools ul.level2").css("z-index", "20");
		});	
		$("#n-about a").click(function() {
			$("#n-ministries div.drop").hide("fast");
			$("#n-about div.drop").toggle("fast");
			$("#n-about div.drop").css("z-index", "1000");
		});
		$("#n-ministries a").click(function() {
			$("#sharing-tools").toggle("fast");
			$("#n-about div.drop").hide("fast");
			$("#n-ministries div.drop").toggle("fast");
			$("#n-ministries div.drop").css("z-index", "1000");
		});
	}	
	
	/* top link scroll up */
	$(".top-link a, #top-link a").click(function() {
		$(document).scrollTo("#masthead", 1000);
		return false;
	});
	/* anchor nav scroll down */
	$(".anchor-nav a").click(function() {
		anchorlink = $(this).attr("href");
		$(document).scrollTo(anchorlink, 1000);
		return false;
	});
	
	/* volunteer list toggling */
	toggleListings("volunteerList","job-category");
	jumpToListing("oppNav");
	$("div.volunteerList").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAll('volunteerList','job-category');\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAll('volunteerList','job-category');\">Open All</a></span></p><br class=\"clear\" />");
	
	/* staff directory list toggling */
	toggleListings("staffList","staff-category");
	$("div.staffList").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAll('staffList','staff-category');\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAll('staffList','staff-category');\">Open All</a></span></p><br class=\"clear\" />");
	
	/* calendar/events list toggling */
	toggleListings("eventList","event-category");
	jumpToListing("eventNav");
	$("div.eventList").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAll('eventList','event-category');\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAll('eventList','event-category');\">Open All</a></span></p><br class=\"clear\" />");
	
	/* weekly services */
	jumpToListing("servicesNav");
	
	/* worship songs toggling */
	toggleListings("songList","song");
	$("div.songList").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAll('songList','song');\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAll('songList','song');\">Open All</a></span></p><br class=\"clear\" />");
	/* worship service songs toggling */
	toggleListings("songFiles","song");
	$("div.songFiles").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAll('songFiles','song');\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAll('songFiles','song');\">Open All</a></span></p><br class=\"clear\" />");
	
	if ($("#map-area").length > 0) {
		load();
	}
	
	
	/* sitemap */
	$("#sitemap li.Section > ul, #sitemap li.ministry > ul").slideUp("fast");
	$("#sitemap li.Section, #sitemap li.ministry").append('<span class="toggle close"> Open</span>');
			
	$("#sitemap li.Section span.toggle, #sitemap li.ministry span.toggle").click(function() {
		if ($(this).eq(0).hasClass("open")) {
			$(this).eq(0).removeClass("open");
			$(this).eq(0).addClass("close");
			$(this).eq(0).html(" Open");
			$(this).siblings("ul").eq(0).slideUp("fast");
		} else {
			removeTarget();
			$(this).eq(0).removeClass("close");
			$(this).eq(0).addClass("open");
			$(this).eq(0).html(" Close");
			$(this).siblings("ul").eq(0).slideDown("fast");
		}
	});			
			
	$("div#sitemap").prepend("<p class=\"open-close-all\"><span class=\"close-all\"><a href=\"javascript:closeAllMap();\">Close All,</a></span> <span class=\"open-all\"><a href=\"javascript:openAllMap();\">Open All</a></span></p><br class=\"clear\" />");
	
});