//javascript for the site goes here
var LM = {};

function displaySearch()
{
    $('search').setStyle('display', 'block');
    
}

function clearFieldDefault(field)
{
	if (field.value == field.defaultValue)
		field.value = "";
}

function restoreFieldDefault(field)
{
	if (field.value == "")
		field.value = field.defaultValue;
}
//	used for most of the side navs
function columnAcordian()
{
	//	creating the accordion
	var myAccordion = new Accordion('.accordian', '.accordianElement', {
		mode: 'horizontal',
		alwaysHide: true,
		show: -1,
		
		onActive: function(toggler, element){
			toggler.removeClass('SideLinkNotSelected');
			toggler.addClass('SideLinkSelected');
			
		},
		
		onBackground: function(toggler, element){
			toggler.removeClass('SideLinkSelected');
			toggler.addClass('SideLinkNotSelected');		
		}
	});
	
	$$('.accordian').each(function(e){
		e.removeClass('SideLinkSelected');
		e.addClass('SideLinkNotSelected');
	})
	
	
	var index = 0;
	$$('.accordianElement').each(function(rootItem){
		rootItem.getElements('a').each(function(subItem){
			//	expand the nav if we're in a lesson plan	
		
			if(subItem.hasClass('SideLinkSubActive'))
			{
				myAccordion.display(index);
			}
	
		})
		
		index++;
	})
}

function inputHelper(theInput){

	var holdText = theInput.value;
	theInput.addEvents({
		'blur': function(){
			if (theInput.get('value') == '') {
				theInput.set('value', holdText);
			}
		},
		'click': function(){
			if (theInput.get('value') == holdText) 
				theInput.set('value','');
		}
	})
}

function initCommentForm(area, controller, formID){
	initRatingSystem();
	initCommentSubmit(area, controller, formID);
}

function checkFormInput()
{
    $$('.numeric').addEvent('keypress', function(event)
    {
        if(isNaN(event.key) && Event.Keys.has(event.key) == false)
        {
            event.stop();
        }
    });
}

//	used for comments on the lesson plan page
function initRatingSystem(){
	$('stars').getElements('li').each(function(li)
	{
	    li.addEvents(
		{   'click': function()
		    {
			    var starRating = li.getElement('a').innerHTML;
			    $('stars').setStyle('background-position', '50% '+ parseInt(starRating) * -12 + 'px');
			    $('rating').value = starRating;
		    },
			'mouseover':function()
			{
			    var starRating = li.getElement('a').innerHTML;
			    $('stars').setStyle('background-position', '50% '+ parseInt(starRating) * -12 + 'px');
			},
			'mouseout':function()
			{
			    
			    var starRating = $('rating').value;
			    $('stars').setStyle('background-position', '50% '+ parseInt(starRating) * -12 + 'px');
			    
		    }
		
		});
	})
}

function initCommentSubmit(area, controller, formID){
	//if($('fldName').get('value') != 'Name:')
	$('commentSubmit').addEvent('click', function(){
		var ajaxLoader = new Element('img',{
			src: path + '/images/commentSubmitLoading.gif',
			styles: {
				'margin': '0px'
			}
		});
		var divHolder = new Element('div', {
			styles: {
				'text-align': 'center',
				'padding': '0'
			}
		});
		
		divHolder.adopt(ajaxLoader);
		$('submitButton').empty();
		$('submitButton').adopt(divHolder);
		new Request.HTML({
			url: path + '/' + area + '/' + controller + '/submitLessonPlanComment.rails',
			update: formID,
			onSuccess: function(){
				$(formID).setStyle('margin-bottom', '20px');
			}
		}).post($(formID));
	})
}

function initCalPopup()
{

			
	$$('.addPopup').each(function(i){
		var id = i.getElement('input').value;
		showPopup(id,i);
	})
	$(document.body).addEvent('click', function(e)
	{
		if($chk($('eventInfo')))
			$('eventInfo').destroy();
	})
}
function createPopup(e){

	if($chk($('eventInfo')))
	{
		$('eventInfo').destroy();
	}

	var popup = new Element('div', {
			'id': 'eventInfo',
			'styles':{
				'left': e.x + 87,
				'top': e.y - 20
			}
		});
		
		popup.addEvent('click', function(e){
			e.stopPropagation();
		});
		
	
	return popup;
}

function showPopup(id, obj)
{
	obj.addEvents({
		'click': function(e){
			e.stopPropagation();
			var popup = createPopup(obj.getPosition());
			
		
			new Request.HTML({
				url: path + '/bluenose_defined/calendar/showpopup.rails',
				update: popup,
				onComplete: function()
				{
					popup.inject($('calendar'), 'after');
					if($chk($('registerLink')))
						$('registerLink').addEvent('click',function(e)
						{
							showReminderForm();
						})
					
					// ie6 hack for the student site
					popup.setStyle('display','none');
					popup.setStyle('display','block');
				}
			}).post({'id': id})
			

		}
	})
}

function showReminderForm()
{
	$('reminderLink').setStyle('display', 'none');
	$('reminderForm').setStyle('display', 'block');
	return false;
}
function submitReminder(errorDiv)
{
	validateReminderForm(errorDiv)
	new Request({
		//url: 
	});
}
function validateReminderForm(errorDiv)
{
	errorDiv.empty();
	submitButton = $('submitButton');

	$('submitButton').disabled = true;
	
	new Request.JSON({
		url: path + '/bluenose_defined/calendar/validatereminderform.rails',
		method: 'post',
		onSuccess: function(responseText)
		{

			if(responseText == 'success')
			{

				$('eventBody').empty();
				var thankyou = new Element('p');
				thankyou.set('text','Your reminder has been saved.')
				thankyou.inject($('eventBody'));
				
				//	fadeout box
				var fxtween = new Fx.Tween('eventInfo', {duration: 'long', delay: 10000});
				
				fxtween.start.delay(1500,fxtween,['opacity', 0.0]);
				
//				$('eventInfo').fade('out')
					
				
			}
			else if(responseText == 'error')
			{
				$('eventBody').empty();
				var error = new Element('p');
				error.set('text','There was a problem saving your reminder.  Please try back later.')
				error.inject($('eventBody'));			
			}
			else
			{
				$('submitButton').disabled = false;
				$each(responseText,function(item, index){
					var errormsg = new Element('p');
					errormsg.set('text', item);
					errormsg.inject(errorDiv);
					$(index).addClass('textErrors');
				})
			}

		}
	}).send($('reminderForm'));
}
function playVideo(id)
{
	$('flashMovie').playVideo(id);
}


LM.Outreach = {
	ShowHideComments: function(){
		var i = $('articleComments');
		if(i.getStyle('display') == 'none')
		{
			i.setStyle('display', 'block');
			$('hideComment').set('text','Hide Comments');
		}
		else
		{
			i.setStyle('display', 'none');
			$('hideComment').set('text','Show Comments');
		}
		
	}	
};