/***********************************************
* Dynamic Ajax Content- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

/* ThinkQuest International 2006/2007
   TQ Toolkit - A web building guide for ThinkQuesters (C)
   Your TQ Guides (R)
   Visit http://library.thinkquest.org/06aug/02048/

*/

var bustcachevar=1 //bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadedobjects=""
var rootdomain="http://"+window.location.hostname //automatically determine root domain name
var bustcacheparameter=""
var curURL="";

function ajaxpage(url, containerid){
var dontloader = true;
if (url.substr(0,9) != "navigator") {
	curURL = url;
	dontloader = false;
}
var page_request = false;
if (window.XMLHttpRequest) // if Mozilla, Safari etc
	page_request = new XMLHttpRequest();
else if (window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP");
} 
catch (e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e){}
}
}
else
	return false;
page_request.onreadystatechange=function(){
loadpage(page_request, containerid, dontloader);
}
if (bustcachevar) //if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET', url+bustcacheparameter, true)
page_request.send(null);
}

function loadpage(page_request, containerid, dontloader){
if (page_request.readyState == 4 && (page_request.status==200 || window.location.href.indexOf("http")==-1))
{
document.getElementById(containerid).innerHTML=page_request.responseText;
if (!dontloader) 
	loader(curURL);
}
else //display 'loading' logo using DOM :)
{
	if (document.createElement && document.createTextNode) {
	var image = document.createElement('img');
	image.setAttribute('src', 'images/loading.dat');
	var linebreak = document.createElement('br');
	var loading = document.createTextNode('Loading Page...');
	var temp = document.getElementById(containerid);
	while(temp.firstChild)
		temp.removeChild(temp.firstChild);
	temp.appendChild(image);
	temp.appendChild(linebreak);
	temp.appendChild(loading);
	}
}
}

function loadobjs(){ //loadobjs('.css', '.js', ...) 
if (!document.getElementById)
return
for (i=0; i<arguments.length; i++){
var file=arguments[i]
var fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src", file);
}
else if (file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel", "stylesheet");
fileref.setAttribute("type", "text/css");
fileref.setAttribute("href", file);
}
}
if (fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}

function ajaxcombo(selectobjID, loadarea){ //For drop-down menu ajax loading
var selectobj=document.getElementById? document.getElementById(selectobjID) : "";
if (selectobj!="" && selectobj.options[selectobj.selectedIndex].value!="")
//To load relative page:
ajaxpage(selectobj.options[selectobj.selectedIndex].value, loadarea)
//To load absolute page on root domain:
//ajaxpage(rootdomain+"/"+selectobj.options[selectobj.selectedIndex].value, loadarea)
}

function printfriendly()
{	
	window.open(curURL, "_blank");
}

//To replace target attribute which is deprecated... -.-
function externalLinks() {
 if (!document.getElementsByTagName) return;
 var anchors = document.getElementsByTagName("a");
 for (var i=0; i<anchors.length; i++) {
   var anchor = anchors[i];
   if (anchor.getAttribute("href") &&
       anchor.getAttribute("rel") == "external")
     anchor.target = "_blank";
 }
}

function popup(mylink, windowname, width, height)
{
	var hasRequiredVer = DetectFlashVer(8,0,0);
	if (hasRequiredVer)
		window.open(mylink, null, "width="+width+",height="+height+"scrollbars=no");
	else {
		alert("You do not have a valid flash plugin, you'll have to download it to view the content");
		window.open('http://www.adobe.com/go/getflashplayer');
	}
}

//For interactivity Javascript example
function test () {
	var testtext = document.getElementById("testarea");
	if (testtext.value.length < 1)
		alert("ERROR!");
	else
		alert("Success!");
}

//For this site, functions to load whenever a page refreshes
function loader(url)
{
	randomFact();
	testYourself();
	imageStatus();
	externalLinks();
	if (url == 'home.html')
	{
		//nothing to exec...
	}
	else if (url == 'file.html')
	{
		showHide(22);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
	}
	else if (url == 'information.html')
	{
		showHide(21);
		showHide(22);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
	}
	else if (url == 'html.html')
	{
		showHide(21);
		showHide(22);
		showHide(25);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
		showHide(42);
		showHide(46);
		showHide(50);
		showHide(54);
	}
	else if (url == 'xhtml.html')
	{
		showHide(21);
		showHide(22);
		showHide(25);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
		showHide(42);
	}
	else if (url == 'future.html' || url == 'site.html')
	{
		showHide(22);
		showHide(26);
		showHide(30);
		showHide(34);
	}
	else if (url == 'javascript.html' || url == 'accessibility.html')
	{
		showHide(21);
		showHide(22);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
		showHide(42);
		showHide(46);
	}
	else if (url == 'images.html' || url == 'cssproperties.html')
	{
		showHide(21);
		showHide(22);
		showHide(26);
		showHide(30);
	}
	else if (url == 'colors.html' || url == 'typography.html')
	{
		showHide(22);
		showHide(26);
		showHide(30);
		showHide(34);
		showHide(38);
		showHide(42);
	}
	else if (url == 'language.html' || url == 'cssintro.html' || url == 'interactintro.html' || url == 'flash.html' || url == 'otherformats.html' || url == 'uploadclients.html' || url == 'team.html')
	{
		showHide(22);
		showHide(26);
	}
	else if (url == 'introduction.html' || url == 'objectives.html' || url == 'audience.html' || url == 'structure.html' || url == 'layout.html' || url == 'csstypes.html' || url == 'sselectors.html' || url == 'aselectors.html' || url == 'webbuilding.html' || url == 'imageediting.html' || url == 'dosanddonts.html' || url == 'references.html')
	{
		showHide(22);
		showHide(26);
		showHide(30);
	}
	else if (url == 'toolkit.html' || url == 'tips.html' || url == 'about.html' || url == 'sitecontent.html' || url == 'htmlhome.html' || url == 'design.html' || url == 'css.html' || url == 'interactivity.html' || url == 'software.html' || url == 'map.html' || url == 'jargons.html' || url == 'siteindex.html' || url == 'sitecontentconclusion.html' || url == 'htmlconclusion.html'|| url == 'designconclusion.html' || url == 'cssconclusion.html' || url == 'interactconclusion.html' || url == 'softwareintro.html' || url == 'softwareconclusion.html')
	{
		showHide(22);
		if (url == 'htmlconclusion.html')
			loadobjs('scripts/quiz_html.js');
		else if (url == 'designconclusion.html')
			loadobjs('scripts/quiz_design.js');
		else if (url == 'cssconclusion.html')
			loadobjs('scripts/quiz_css.js');
		else if (url == 'interactconclusion.html' || url == 'softwareconclusion.html')
			loadobjs('scripts/quiz_interact.js');
	}
	else if (url == 'results.html')
	{
		search_form();
		num_jse();
		out_jse();
	}
	getDefinitions();
	fixAllLinks();
	if (document.getElementsByTagName("blockquote").length > 0) {
		displayCitations();
	}
	textsize();
}

function firstload() {
	if (document.getElementById) {
	showHide(1);
	showHide(4);
	showHide(7);
	showHide(10);
	if (document.getElementById)
	{
		Drag.init(document.getElementById("toolbox"));
		Drag.init(document.getElementById("texttoggle"));
		Drag.init(document.getElementById("factbox"));
		Drag.init(document.getElementById("trivia"));
		Drag.init(document.getElementById("submenu"));
	}
	ajaxpage('navigator001.html', 'Answer12');
	ajaxpage('home.html','content');
	}
	else
		return;
}
addLoadEvent(firstload);