/**
 * dependcies:
 * mootools v1.11 (http://mootools.net)
 */

// set For Eternity Church namespace if not defined already

if (typeof FEC == "undefined") {
	var FEC = {};
}

FEC.winLoaded = false;
FEC.domReady = false;
FEC.section = null;

/* Page Initialization */

window.addEvent('domready',function() {
	FEC.domReady = true;
	FEC.section = document.body.id;
	if(FEC.section == "news") {
		FEC.loadNews();
		//FEC.initNewsTicker();
	}
	if(FEC.section == 'prayer') {
		FEC.initPrayer();
	}
	if(FEC.section != 'photoGallery' && FEC.section != 'forums' && FEC.section != 'news' && FEC.section != 'mission') {
		FEC.initEmail();
		FEC.initRecentNews();
		FEC.initAccordion();
	}
});

window.addEvent('load',function() {
	FEC.winLoaded = true;
});

/* END Page Initialization */

function getArguments() {
	if(window.location.search.split('?').length < 2) return false;
	
	var args = window.location.search.split('?')[1].split('&');
	var response = Array();
	
	for (var i = 0; i < args.length; i++) {
		var pair = args[i].split('=');
		response[pair[0]] = pair[1];
	}
	return response;
}

FEC.loadNews = function() {
	var url = 'includes/outputDetailedNews.php';
	var output = $('newsContent');  //put data in news div
	output.setHTML('Loading News...');
	
	new Ajax(url, {
	  method: 'get',
	  onComplete: function(response) {
			output.setHTML(response);
			FEC.initNewsAccordion();
	  }
	}).request();
}

FEC.initNewsAccordion = function() {
	var accordion = new Accordion('#newsContent h4', '#newsContent p', {
		opacity: .5,
		onActive: function(toggler, element){
			toggler.effect('opacity').start(1);
		},
	 
		onBackground: function(toggler, element){
			toggler.effect('opacity').start(.5);
		}
	}, $('newsContent'));
	
	var defaultNews;
	if(!getArguments()) {
		defaultNews = 0;
	}
	else {
		defaultNews = getArguments()['n'].toInt();
	}
	
	accordion.display(defaultNews);
}

FEC.initNewsTicker = function() {
	var url = 'includes/outputTickerNews.php';
	$('newsBar').setHTML('Loading News...');
	new Ajax(url, {
	  method: 'get',
	  onComplete: function(response) {
			$('newsBar').setHTML(response);
			FEC.ticker = new Ticker('PF.ticker', 'newsBar', 1, 35);
			FEC.ticker.start();
	  }
	}).request();
}

FEC.initPrayer = function() {
	$('submitPrayer').addEvent('click', function() {
		FEC.addPrayer();
	});
}

FEC.initEmail = function() {
	$('addEmail').addEvent('click', function() {
		FEC.addEmail();
	});
}

FEC.addPrayer = function() {
	var validEmail = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
	var email = $('prayerEmailText');
	var emailAddress = email.value;
	var prayer = $('prayerText').value;
	var name = $('prayerNameText').value;
	if(validEmail.test(emailAddress)) {
		var url = 'includes/insertPrayerRemote.php?e=' + emailAddress + '&p=' + prayer + '&n=' + name;
		new Ajax(url, {
		  method: 'get',
		  onComplete: function(response) {
				if(response == "1") {
					alert("Thank you for requesting a prayer, you have been added to the prayer list.");
				}
				else {
					alert("We are sorry, we could not receive your prayer at this time.  Please try again later.");
				}
		  }
		}).request();
	}
	else {
		alert("That is not a valid email");
		email.focus();
		email.select();
	}
}

FEC.addEmail = function() {
	var validEmail = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,3}|[0-9]{1,3})(\]?)$/;
	var email = $('email');
	var emailAddress = email.value;
	var name = $('emailName').value;
	if(validEmail.test(emailAddress)) {
		var url = 'includes/insertEmailRemote.php?e=' + emailAddress + '&n=' + name;
		new Ajax(url, {
		  method: 'get',
		  onComplete: function(response) {
				if(response == "1") {
					alert("Thank you for signing up, you have been registered to receive the For Eternity Church weekly newsletter.");
				}
				else {
					alert("We are sorry, we could not sign you up for the For Eternity Church weekly newsletter at this time.  Please try again later.");
				}
		  }
		}).request();
	}
	else {
		alert("That is not a valid email");
		email.focus();
		email.select();
	}
}

FEC.initAccordion = function(){
	var accordion = new Accordion('h3.atStart', 'div.atStart', {
		opacity: false,
		onActive: function(toggler, element){
			toggler.setStyle('color', '#cc9933');
		},
		onBackground: function(toggler, element){
			toggler.setStyle('color', '#222');
		},
		fixedHeight: 300
	}, $('accordion'));
}

FEC.initRecentNews = function() {
	var url = 'includes/outputNews.php';
	new Ajax(url, {
	  method: 'get',
	  onComplete: function(response) {
		if(response != 'error') {
			$('recentNews').setHTML(response);
		}
		else {
			$('recentNews').setHTML('<p>Recent Church News could not be loaded at this time.  You can <a href="news.html">view detailed news</a> at any time.</p>');	
		}
	  }
	}).request();
}