/**
 * @author Administrator
 */

var xmlHttp
var Effect;

function GetXmlHttpObject()
{
var xmlHttp=null;
try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
return xmlHttp;
}

function checkIfUsernameTaken()
{

		username = document.register_form.desired_username.value;
				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/checkIfUsernameTaken.php?username=" + username;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = usernameChecked;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function usernameChecked() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("username_result").innerHTML=xmlHttp.responseText;
	}
}

function nameToUsername(first_name, last_name)
{
	first_name = first_name.toLowerCase();
	last_name = last_name.toLowerCase();	
	
	username = first_name + "." + last_name;
	
	//username = username.replace(/\s+/,"_");
	
	username = username.split(/\s+/).join('');	
		

	
	return username;
	
}

function checkIfEmailTaken()
{

		email = document.register_form.email.value;
				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/checkIfEmailTaken.php?email=" + email;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = emailChecked;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function emailChecked() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("email_result").innerHTML=xmlHttp.responseText;
	}
}

function checkPassword()
{

		password1 = document.register_form.password.value;
		password2 = document.register_form.repeat_password.value;		
				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/checkPassword.php?password1=" + password1;
		url = url + "&password2=" + password2;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = passwordChecked;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function passwordChecked() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("password_result").innerHTML=xmlHttp.responseText;
	}
}


function validate_register_form()
{
    
	msg = "";
    valid = true;

    if ( document.register_form.first_name.value == "" )
    {
		msg = msg + "You must enter your first name.\n";
        valid = false;
    }   
	
    if ( document.register_form.last_name.value == "" )
    {
		msg = msg + "You must enter your last name.\n";
        valid = false;
    }   	
	
    if ( document.register_form.desired_username.value == "" )
    {
		msg = msg + "You must enter a username.\n";
        valid = false;
    }   
	
    if ( document.register_form.password.value == "" || document.register_form.repeat_password.value == "" )
    {
		msg = msg + "You must enter a password.\n";
        valid = false;
    }   
	
    if ( document.register_form.password.value != document.register_form.repeat_password.value )
    {
		msg = msg + "Your passwords do not match.\n";
        valid = false;
    }  					
	
    if ( document.register_form.captcha_code.value == "" )
    {
		msg = msg + "You must enter the security code.\n";		
        valid = false;
    }   	

	
	if (document.register_form.email.value != "")
	{
	
		apos = document.register_form.email.value.indexOf("@");
		dotpos = document.register_form.email.value.lastIndexOf(".");
		
		if (apos < 1 || dotpos - apos < 2)
		{
			msg = msg + "The email address entered is not valid.\n";		
			valid = false;
		}
		
	}
	
	if(document.register_form.email.value == "")
    {
		msg = msg + "You must enter your email address.\n";		
        valid = false;
    }   	

	if(valid == false)       
	{
        alert (msg);		
	}
	   

    return valid;
	
}

function validate_login_form()
{
    
	msg = "";
    valid = true;

    if ( document.login_form.login_username.value == "" )
    {
		msg = msg + "You must enter your username.\n";
        valid = false;
    }   
	
    if ( document.login_form.login_password.value == "" )
    {
		msg = msg + "You must enter your password.\n";
        valid = false;
    }   
		

	if(valid == false)       
	{
        alert (msg);		
	}
	   

    return valid;
	
}

function confirmBox(message, page, cancel_message)
{
	
	if(confirm(message))
	{
		location.href = page;
	}
	else
	{
		alert(cancel_message);
	}
		
}


function validate_password_retrieval_form()
{

    valid = true;
	var msg;
	msg = "";

    if ( document.password_retrieval_form.retrieval_username.value == "" )
    {
        msg = "Please enter your username.\n";
        valid = false;
    }   

    
  
	
	if(valid == false)
	{
		alert ( msg );
	}
    
    
    return valid;
}

function showMoreDocs(page_id)
{
		new Effect.BlindUp('page_docs', { queue: 'front', duration: 0.5 });									
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showMoreDocs.php?page_id=" + page_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = docsShown;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function docsShown() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("page_docs").innerHTML=xmlHttp.responseText;
		new Effect.BlindDown('page_docs', { queue: 'end', duration: 0.5 });			
	}
}


function showMoreEvents(page_id)
{
		new Effect.BlindUp('page_events', { queue: 'front', duration: 0.5 });									
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showMoreEvents.php?page_id=" + page_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = eventsShown;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function eventsShown() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("page_events").innerHTML=xmlHttp.responseText;
		new Effect.BlindDown('page_events', { queue: 'end', duration: 0.5 });			
	}
}

function showMoreAudio(page_id)
{
		new Effect.BlindUp('page_audio', { queue: 'front', duration: 0.5 });									
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showMoreAudio.php?page_id=" + page_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = audioShown;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function audioShown() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("page_audio").innerHTML=xmlHttp.responseText;
		new Effect.BlindDown('page_audio', { queue: 'end', duration: 0.5 });			
	}
}


function showMoreVideo(page_id)
{
		new Effect.BlindUp('page_video', { queue: 'front', duration: 0.5 });									
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showMoreVideo.php?page_id=" + page_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = videoShown;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function videoShown() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("page_video").innerHTML=xmlHttp.responseText;
		new Effect.BlindDown('page_video', { queue: 'end', duration: 0.5 });			
	}
}



function subscribeToMailingList()
{

	if (document.mailing_form.email.value == "" || document.mailing_form.email.value == "e-mail address" || !isEmailValid(document.mailing_form.email.value))
	{
		alert("Please provide a valid e-mail address!");
	}
	else {
	
		email = document.mailing_form.email.value;
		
		document.getElementById("subscribe_box").innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" /> Please Wait";
		
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/subscribeToMailingList.php?email=" + email;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = subscribed;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
	}

} 



function subscribed() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("subscribe_box").innerHTML=xmlHttp.responseText;
	}
}


function unsubscribeFromMailingList()
{

	if (document.mailing_form.email.value == "" || document.mailing_form.email.value == "e-mail address" || !isEmailValid(document.mailing_form.email.value))
	{
		alert("Please provide a valid e-mail address!");
	}
	else {
	
		email = document.mailing_form.email.value;
		
		document.getElementById("subscribe_box").innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" /> Please Wait";
		
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/unsubscribeFromMailingList.php?email=" + email;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = unsubscribed;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
	}

} 



function unsubscribed() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("subscribe_box").innerHTML=xmlHttp.responseText;
	}
}


function isEmailValid(email)
{
	
	valid = true;
	
	apos = email.indexOf("@");
	dotpos = email.lastIndexOf(".");
	
	if (apos<1||dotpos-apos<2) 
	{
	    valid = false;		
	}		
	
	return valid;

}
  
  
function popup(page, width, height)
{
	if(width == "")
	{
		width = 320;
	}
	
	if(height == "")
	{
		height = 480;
	}	
	
	window.open(page,'newwindow','scrollbars=yes,status=no,width=' + width + ',height=' + height);
}
  
  
function validate_contact_form()
{
    
	msg = "";
    valid = true;

    if ( document.contact_form.message.value == "" )
    {
		msg = msg + "You must enter a message.\n";
        valid = false;
    }   
	
    if ( document.contact_form.name.value == "" )
    {
		msg = msg + "You must enter your name.\n";
        valid = false;
    }   	
	
    if ( document.contact_form.captcha_code.value == "" )
    {
		msg = msg + "You must enter the security code.\n";		
        valid = false;
    }   	

	
	if (document.contact_form.email.value != "")
	{
	
		apos = document.contact_form.email.value.indexOf("@");
		dotpos = document.contact_form.email.value.lastIndexOf(".");
		
		if (apos < 1 || dotpos - apos < 2)
		{
			msg = msg + "The email address entered is not valid.\n";		
			valid = false;
		}
		
	}
	
	if(document.contact_form.email.value == "" && document.contact_form.tel.value == "")
    {
		msg = msg + "You must enter either your telephone number or email address.\n";		
        valid = false;
    }   	

	if(valid == false)       
	{
        alert (msg);		
	}
	   

    return valid;
	
}  



function showPage_courseDownloads(page, course_id)
{
		//new Effect.BlindUp('course_download_list', { queue: 'front', duration: 0.1 });									
		document.getElementById('course_download_list').innerHTML = "<center><img src=\"images/loader_big.gif\" alt=\"Loading Indicator\" /> <span class=\"loading\">Loading...</span></center>";				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showPage.php?p=" + page;
		url = url + "&course_id=" + course_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = pageShown_courseDownloads;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function pageShown_courseDownloads() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('course_download_list').innerHTML=xmlHttp.responseText;
		//new Effect.BlindDown('course_download_list', { queue: 'end', duration: 1 });			
		new Effect.ScrollTo('header');		
	}
}


function newDiscussion()
{
	document.getElementById('new_discussion_form').style.display = 'block';
}

function postDiscussion()
{
	
	if(document.getElementById('title').value == "" || document.getElementById('content').value == "")
	{
		alert ('Please complete all fields.');
	}
	else
	{
		document.getElementById('new_discussion_form').style.display = 'none';
	
		course_id = document.getElementById('course_id').value;
		title = document.getElementById('title').value;
		content = document.getElementById('content').value;
	
				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/postDiscussion.php?course_id=" + course_id;
		url = url + "&title=" + title;
		url = url + "&content=" + content;	
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = discussionPosted;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);		
	}

} 



function discussionPosted() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("course_discussion_list").innerHTML=xmlHttp.responseText;
	}
}



function postReply()
{
	
	if(document.getElementById('content').value == "")
	{
		alert('Please add your comments.');
	}
	else
	{
		document.getElementById('new_discussion_form').style.display = 'none';
	
		id = document.getElementById('id').value;
		course_id = document.getElementById('course_id').value;
		content = document.getElementById('content').value;
	
				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/postReply.php?course_id=" + course_id;
		url = url + "&id=" + id;	
		url = url + "&content=" + content;	
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = replyPosted;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);		
	}
		
} 



function replyPosted() 
{ 
	if (xmlHttp.readyState==4)
	{ 
		document.getElementById("course_discussion_list").innerHTML=xmlHttp.responseText;
	}
}


function showPage_courseDiscussions(page, course_id)
{
		//new Effect.BlindUp('course_discussion_list', { queue: 'front', duration: 0.1 });									
		document.getElementById('course_discussion_list').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";				
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showPage_discussions.php?p=" + page;
		url = url + "&course_id=" + course_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = pageShown_courseDiscussions;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function pageShown_courseDiscussions() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('course_discussion_list').innerHTML=xmlHttp.responseText;
		//new Effect.BlindDown('course_discussion_list', { queue: 'end', duration: 1 });			
		new Effect.ScrollTo('header');		
	}
}



function showPage_courseDiscussion(page, id, course_id)
{
		//new Effect.BlindUp('course_discussion_list', { queue: 'front', duration: 0.1 });									
		document.getElementById('course_discussion_list').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";		
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/showPage_discussion.php?p=" + page;
		url = url + "&id=" + id;
		url = url + "&course_id=" + course_id;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = pageShown_courseDiscussion;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 



function pageShown_courseDiscussion() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('course_discussion_list').innerHTML=xmlHttp.responseText;
		//new Effect.BlindDown('course_discussion_list', { queue: 'end', duration: 1 });			
		new Effect.ScrollTo('header');		
	}
}

function editEmail()
{
		document.getElementById('edit_email_link').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";										
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/editEmail.php?action=show";
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = emailEdited;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 

function emailEdited() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('email').innerHTML=xmlHttp.responseText;

	}
}

function updateEmail()
{
		email = document.getElementById('email_field').value;
		old_email = document.getElementById('old_email_field').value;		
		
		if(!isEmailValid(email))
		{
			alert('Please provide a valid email address.');
		}
		else
		{
			document.getElementById('email').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";										
			xmlHttp = GetXmlHttpObject()
			
			if (xmlHttp == null) {
				alert("Your browser does not support AJAX!");
				return;
			}
			
			var url = "php/ajax/editEmail.php?action=update";
			url = url + "&email=" + email;
			url = url + "&old_email=" + old_email;			
			url = url + "&sid=" + Math.random();
			xmlHttp.onreadystatechange = emailEdited;
			xmlHttp.open("GET", url, true);
			xmlHttp.send(null);			
		}
		
} 


function editPassword()
{
		document.getElementById('edit_password_link').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";										
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/editPassword.php?action=show";
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = passwordEdited;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);
		
} 

function passwordEdited() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('password').innerHTML=xmlHttp.responseText;

	}
}

function updatePassword()
{
	
	pwd1 = document.getElementById('password_field').value;
	pwd2 = document.getElementById('repeat_password_field').value;		
	
	if(pwd1 != pwd2 || pwd1=="" || pwd2=="" || pwd1==" ")
	{
		alert('Passwords do not match.');	
	}
	else
	{
		document.getElementById('password').innerHTML = "<img src=\"images/loader.gif\" alt=\"Loading Indicator\" />";										
		xmlHttp = GetXmlHttpObject()
		
		if (xmlHttp == null) {
			alert("Your browser does not support AJAX!");
			return;
		}
		
		var url = "php/ajax/editPassword.php?action=update";
		url = url + "&password=" + pwd1;
		url = url + "&sid=" + Math.random();
		xmlHttp.onreadystatechange = passwordEdited;
		xmlHttp.open("GET", url, true);
		xmlHttp.send(null);			
	}	
		
} 

function scrollToElement(element_id, highlight)
{
	new Effect.ScrollTo(element_id);	
	
	if(highlight == 1)	
	{
		//document.getElementById(element_id).style.border = "2px solid blue";
	}

	
}



function showLogin()
{
		document.getElementById('search_popup').style.display = 'none';
		document.getElementById('login_popup').style.display = 'block';

}

function showSearch()
{
		document.getElementById('login_popup').style.display = 'none';
		document.getElementById('search_popup').style.display = 'block';

}

function validate_search_form()
{

    valid = true;
	var msg;
	msg = "";

    if ( document.search_form.search.value == "" )
    {
        msg = "You didn't type anything in the search box.\n";
        valid = false;
    }   

    
  
	
	if(valid == false)
	{
		alert ( msg );
	}
    
    
    return valid;
}

function closePopup()
{
	
		document.getElementById('ajax_popup_inner').innerHTML="Bye bye!";
		new Effect.BlindUp('ajax_popup_container', { queue: 'front', duration: 0.5 });									
		//document.getElementById('ajax_popup_container').style.display = 'none';


}

function showAjaxPopup(page)
{
	//new Effect.BlindDown('ajax_popup_container', { queue: 'front', duration: 0.5 });		
	
	

	xmlHttp = GetXmlHttpObject()
	
	if (xmlHttp == null) {
		alert("Your browser does not support AJAX!");
		return;
	}
	
	var url = "popup_iframe.php?page=" + page;
	url = url + "&sid=" + Math.random();
	xmlHttp.onreadystatechange = showPopup;
	xmlHttp.open("GET", url, true);
	xmlHttp.send(null);			

}

function showPopup() 
{ 

	if (xmlHttp.readyState==4)
	{ 
		document.getElementById('ajax_popup_inner').innerHTML=xmlHttp.responseText;
		document.getElementById('ajax_popup_container').style.display = 'block';
	}
}
