// Hyperbook function to create a frameset and load the correct main page
// Copyright (c) 2004 - 2008 by Gary L. Bradshaw.  All rights reserved.
// This version features 'skins' that can be loaded in, so we just have to deal wiith one source file.
// Skin names are: loVision (persistent), loVision2 (persistent), sub, blueNoteBook, greenNoteBook, 
// hyperBook4 (default), cleanVision, motionParallax, visionMotion, phone (persistent)
var explicitNextPage = null;
var videoType = 0; // Don't know what type to use yet.  Get from cookie if need be.
var showSkin = "hyperBook4";
var titleFrame = null, pageNumFrame = null;
var titleFrameLoaded = false;
var showUnwarn = false;
var nextEnabled = true;
var pathToCSS = false;
	var bottomFrameName = "hyperBook";

	function showWarn(showWarning)
  	  {	topLeft.showWarn(showWarning);
  		topCenter.showWarn(showWarning);
  		topRight.showWarn(showWarning);	
  		centerLeft.showWarn(showWarning);
  		centerRight.showWarn(showWarning);
  		lowerLeft.showWarn(showWarning);
  		lowerCenter.showWarn(showWarning);
  		lowerRight.showWarn(showWarning);
		if (showWarning == true) showUnwarn = true;
	  }

	function showSub(showSubVal)  // The submarine can swtich between blueNotebook and the sub view
  	  {	if (top.topLeft != null) // hope this will work!
  	  	 {	top.topLeft.showSub(showSubVal);
  			top.topCenter.showSub(showSubVal);
  			top.topRight.showSub(showSubVal);
  			top.centerLeft.showSub(showSubVal);
  			top.centerRight.showSub(showSubVal);
  			top.lowerLeft.showSub(showSubVal);
  			top.lowerRight.showSub(showSubVal);
  			top.lowerCenter.showSub(showSubVal);
  			top.bottomLeft.showSub(showSubVal);
  			top.bottomFrame.showSub(showSubVal);
  			top.bottomRight.showSub(showSubVal);
	  	 }
	  }

function showDark(showDarkVal)
  {	if (top.topLeft != null)
	  {	top.topLeft.showDark(showDarkVal);
  		top.topCenter.showDark(showDarkVal);
  		top.topRight.showDark(showDarkVal);
  		top.centerLeft.showDark(showDarkVal);
  		top.centerRight.showDark(showDark);
  		top.lowerLeft.showDark(showDarkVal);
  		top.lowerCenter.showDark(showDarkVal);
  		top.lowerRight.showDark(showDarkVal);
  		top.bottomLeft.showSub(showDarkVal);
  		top.bottomFrame.showSub(showDarkVal);
  		top.bottomRight.showSub(showDarkVal);
	  }
  }

function lCSS() // Load CSS style sheets
  { if (!pathToCSS)
  	  {	 if (document.location.protocol == "file:")
       		{ pathToCSS = document.location.pathname.substring(0,document.location.pathname.indexOf('ePsych')) + "ePsych/styleSheets";
       		}
		else pathToCSS = "/styleSheets";
	  }
	var cssStr;
	//alert("showSkin: " + showSkin);
	if (mainFrame.loadSub && showSkin != "loVision" && showSkin !="loVision2")
		cssStr ='<link href="'+pathToCSS+'/subNoteBook.css" rel="stylesheet" type="text/css" />';
	else switch(showSkin)
	  { case "loVision":
		  	cssStr = '<link href="'+pathToCSS+'/loVision.css" rel="stylesheet" type="text/css" />';
			break;
		case "loVision2":
		  	cssStr = '<link href="'+pathToCSS+'/loVision2.css" rel="stylesheet" type="text/css" />';
			break;
		case "phone":
		  	cssStr = '<link href="'+pathToCSS+'/phoneVision.css" rel="stylesheet" type="text/css" />';
			break;
		case "sub":
  			if (mainFrame.loadSub)
				cssStr ='<link href="'+pathToCSS+'/subNoteBook.css" rel="stylesheet" type="text/css" />';
			else
				cssStr ='<link href="'+pathToCSS+'/blueNoteBook.css" rel="stylesheet" type="text/css" />';
			break;
		case "blueNoteBook":
			cssStr ='<link href="'+pathToCSS+'/blueNoteBook.css" rel="stylesheet" type="text/css" />';
			break;
		case "greenNoteBook":
			cssStr ='<link href="'+pathToCSS+'/noteBook.css" rel="stylesheet" type="text/css" />';
			break;
		case "cleanVision":
			cssStr ='<link href="'+pathToCSS+'/cleanVision.css" rel="stylesheet" type="text/css" />';		
			break;
		case "journal":
			cssStr ='<link href="'+pathToCSS+'/journal.css" rel="stylesheet" type="text/css" />';
			break;
  		case "visionMotion":
			cssStr ='<link href="'+pathToCSS+'/visionMotion.css" rel="stylesheet" type="text/css" />';
			break;
		case "motionParallax":
			cssStr ='<link href="'+pathToCSS+'/MotionParallax.css" rel="stylesheet" type="text/css" />';
			break;
		case "neuralNetwork":
			cssStr ='<link href="'+pathToCSS+'/NeuralNets.css" rel="stylesheet" type="text/css" />';
			break;
		default:
			cssStr ='<link href="'+pathToCSS+'/hyper4.css" rel="stylesheet" type="text/css" />';
	  }
	mainFrame.document.write(cssStr);
	var currentPage = top.getPageNumber();
	if (currentPage < top.lastPage)
	  {	currentPage++;
		mainFrame.document.write('<link rel="prefetch" href="'+currentPage+'.html">');
	  }
  }


function writeFrameset()
  {	var writeString;
	var query = location.search;
	var cookieVal = getCookieValue("showSkin");
	if (cookieVal != null) showSkin = cookieVal;
	if (query.length > 0) 
 	  { pageToLoad = query.substring(1, query.length);
	    if (pageToLoad.indexOf(".html") == -1) pageToLoad += ".html";
	  }
	var pathToRoot;
	if (document.location.protocol == "file:")
       { pathToRoot = document.location.pathname.substring(0,document.location.pathname.indexOf('ePsych')) + "ePsych/hyperBook4";
       }
	else pathToRoot = "/hyperBook4";
	writeString = '<frame src="'+pageToLoad+'" name="mainFrame" scrolling="auto" noresize>';
	var blueGreen = "";

	switch (showSkin)
	  { case "loVision":
		  { document.write('<frameset rows="*,35, 37" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/LVLowerCenter.html" name="lowerCenter" scrolling="NO">');
			if (bottomFrameName == "quiz")
				document.write('<frame src="'+pathToRoot+'/LVSkillExerciseBottomFrame.html" name="bottomFrame" scrolling="NO">');
			else 
				document.write('<frame src="'+pathToRoot+'/LVIndexFrame.html" name="bottomFrame" scrolling="NO">');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
	  	  }	    
		case "loVision2":
		  { document.write('<frameset rows="*,35, 37" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/LVLowerCenter2.html" name="lowerCenter" scrolling="NO">');
			if (bottomFrameName == "quiz")
				document.write('<frame src="'+pathToRoot+'/LVSkillExerciseBottomFrame2.html" name="bottomFrame" scrolling="NO">');
			else 
				document.write('<frame src="'+pathToRoot+'/LVIndexFrame2.html" name="bottomFrame" scrolling="NO">');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
	  	  }
		case "phone":
		  { document.write('<frameset rows="*,20, 52" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/phoneLowerCenter.html" name="lowerCenter" scrolling="NO">');
			if (bottomFrameName == "quiz")
				document.write('<frame src="'+pathToRoot+'/bottomPhoneFrameQuiz.html" name="bottomFrame" scrolling="NO">');
			else
				document.write('<frame src="'+pathToRoot+'/bottomPhoneFrame.html" name="bottomFrame" scrolling="NO">');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
	  	  }
		case "blueNoteBook":
			blueGreen = "Blue";
		case "greenNoteBook":
		  {	document.write('<frameset rows="40,*,12,48" border="0" frameborder="0" framespacing="0">');
			document.write('<frameset cols="67,*,40" border="0" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SpiralTopLeft'+blueGreen+'.html" name="topLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SpiralTopCenter'+blueGreen+'.html" name="topCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SpiralTopRight'+blueGreen+'.html" name="topRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SpiralCenterLeft'+blueGreen+'.html" name="centerLeft" scrolling="NO" noresize>');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/SpiralCenterRight'+blueGreen+'.html" name="centerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SpiralLowerLeft'+blueGreen+'.html" name="lowerLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SpiralLowerCenter'+blueGreen+'.html" name="lowerCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SpiralLowerRight'+blueGreen+'.html" name="lowerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" border="0" frameborder="0" framespacing="0">');		
			document.write('<frame src="'+pathToRoot+'/SpiralBottomLeft'+blueGreen+'.html" name="bottomLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SpiralBottomCenter'+blueGreen+'.html" name="bottomFrame" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SpiralBottomRight'+blueGreen+'.html" name="bottomRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			titleFrame = pageNumFrame = top.topCenter;
			break;
	  	  }
		case "sub":
		  {	document.write('<frameset rows="40,*,12,48" border="0" frameborder="0" framespacing="0">');
			document.write('<frameset cols="67,*,40" border="0" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SubTopLeft.html" name="topLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SubTopCenter.html" name="topCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SubTopRight.html" name="topRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SubCenterLeft.html" name="centerLeft" scrolling="NO" noresize>');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/SubCenterRight.html" name="centerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/SubLowerLeft.html" name="lowerLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SubLowerCenter.html" name="lowerCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SubLowerRight.html" name="lowerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="67,*,40" border="0" frameborder="0" framespacing="0">');		
			document.write('<frame src="'+pathToRoot+'/SubBottomLeft.html" name="bottomLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/SubBottomCenter.html" name="bottomFrame" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/SubBottomRight.html" name="bottomRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			titleFrame = pageNumFrame = top.topCenter;
			break;
	  	  }		
	    case "cleanVision":
		  {	document.write('<frameset rows="*,31" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/LVLowerCenter.html" name="lowerCenter" scrolling="NO">');
			if (bottomFrameName == "quiz")
				document.write('<frame src="'+pathToRoot+'/LVSkillExerciseBottomFrame.html" name="bottomFrame" scrolling="NO">');
			else
				document.write('<frame src="'+pathToRoot+'/LVIndexFrame.html" name="bottomFrame" scrolling="NO">');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
 	  	  }
		case "journal":
		  {	if (document.location.protocol == "file:")
       			{ pathToRoot = document.location.pathname.substring(0,document.location.pathname.indexOf('ePsych')) + "ePsych/journal";
       			}
			else pathToRoot = "/journal";
			document.write('<frameset rows="29,*,48" border="0" frameborder="0" framespacing="0">');
			document.write('<frameset cols="41,*,40" border="0" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/JournalTopLeft.html" name="topLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/JournalTopCenter.html" name="topCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/JournalTopRight.html" name="topRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="41,*,40" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/JournalCenterLeft.html" name="centerLeft" scrolling="NO" noresize>');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/JournalCenterRight.html" name="centerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="250,*,51" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/JournalLowerLeft.html" name="lowerLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/JournalLowerCenter.html" name="lowerCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/JournalLowerRight.html" name="lowerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			titleFrame = pageNumFrame = top.topCenter;
			break;
	    }
		case "motionParallax":
		  {	document.write('<frameset rows="*, 20, 45" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);	
			//document.write('<frame src="'+pathToRoot+'/MPLowerCenter.html" name="lowerCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/bottomMPFrame.html" name="bottomFrame" scrolling="no" noresize>');
			titleFrame = null; pageNumFrame = top.bottomFrame;
			break;
		  }
		case "visionMotion":
		  {	document.write('<frameset rows="*, 55" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);	
			document.write('<frame src="'+pathToRoot+'/bottomVIMFrame.html" name="bottomFrame" scrolling="no" noresize>');
			titleFrame = null; pageNumFrame = top.bottomFrame;
			break;
		  }
		case "neuralNetwork":
		  {	document.write('<frameset rows="445, 46, *" border="0" frameborder="0" framespacing="0">');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/lowerNetFrame.html" name="lowerCenter" scrolling="no" noresize>');
			document.write('<frame src="'+pathToRoot+'/bottomNetFrame.html" name="bottomFrame" scrolling="no" noresize>');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
		  }
		default: 
		  { document.write('<frameset rows="53,*,31,47" border="0" frameborder="0" framespacing="0">');
			document.write('<frameset cols="44,*,54" border="0" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/Hyper4TopLeft.html" name="topLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/Hyper4TopCenter.html" name="topCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/Hyper4TopRight.html" name="topRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="44,*,54" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/Hyper4CenterLeft.html" name="centerLeft" scrolling="NO" noresize>');
			document.write(writeString);
			document.write('<frame src="'+pathToRoot+'/Hyper4CenterRight.html" name="centerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			document.write('<frameset cols="48,*,63" frameborder="0" framespacing="0">');
			document.write('<frame src="'+pathToRoot+'/Hyper4LowerLeft.html" name="lowerLeft" scrolling="NO" noresize>');
			document.write('<frame src="'+pathToRoot+'/Hyper4LowerCenter.html" name="lowerCenter" scrolling="NO">');
			document.write('<frame src="'+pathToRoot+'/Hyper4LowerRight.html" name="lowerRight" scrolling="NO" noresize>');
			document.write('</frameset>');
			if (bottomFrameName && bottomFrameName == "quiz")
				document.write('<frame src="'+pathToRoot+'/SkillExerciseBottomFrame.html" name="bottomFrame" scrolling="NO">');
			else
				document.write('<frame src="'+pathToRoot+'/BottomIndexFrame.html" name="bottomFrame" scrolling="NO">');
			titleFrame = pageNumFrame = top.bottomFrame;
			break;
 	  	  }
	  }
	document.write('</frameset>'); // Needed to close all framesets
 }
