//set defaults for current_page and current_part (test_no)
//var current_page = 1;
//var current_part = 1;
var tot_pages = 53;
var tot_parts = 6;


var active = bbcjs.cookies.cookieData.gender_active.active;
var active_name = bbcjs.cookies.cookieData['gender_'+active].user_name;
var active_cookie = bbcjs.cookies.cookieData['gender_' + active];


//active cookie check
/*if (bbcjs.cookies.cookieData.gender_active){
	active = bbcjs.cookies.cookieData.gender_active.active;
	active_name = bbcjs.cookies.cookieData['gender_'+active].user_name;
}else{
	active = "";
}*/


//increment current_page and parts if they're in the cookie

if(active_cookie.current_page){	
	var current_page = parseInt(active_cookie.current_page);
	//current_page ++;
	//alert('current_page in cookie');
}else{
//alert('no current_page');
//default for current_page if not in cookie
	var current_page = 3;
	active_cookie.current_page = current_page;
	bbcjs.cookies.setCookie("gender_" + active, active_cookie, "+1y");
}
	
if(active_cookie.current_part){	
	var current_part = parseInt(active_cookie.current_part);
	//alert(current_part);
	//current_part ++;
	//alert(current_part+' current_part in cookie');
}else{
//alert('no current_part');
//default for current_page if not in cookie
	var current_part = 1;
	active_cookie.current_part = current_part;
	bbcjs.cookies.setCookie("gender_" + active, active_cookie, "+1y");
}

if (typeof bbcjs.cookies.cookieData['theonesow_sexid'].ID !="undefined"){
	if (bbcjs.cookies.cookieData['theonesow_sexid'].ID == active_cookie.unid){
		active_cookie.theoneshow = true;
	}
}


//list users - and change activer user func
if (bbcjs.cookies.cookieData.gender_list){
	userArray = bbcjs.cookies.cookieData.gender_list.list.split("_");
	}

function change_active(new_id){
	if (bbcjs.cookies.cookieData.gender_active){
	bbcjs.cookies.cookieData.gender_active.active = new_id;
	bbcjs.cookies.setCookie("gender_active",bbcjs.cookies.cookieData.gender_active, '+1y');	
	location.href = ("index.shtml");
	}
}

//add items to cookie (if id contains "add2cookie")
function add2Cookie(form){
	//trace("add2Cookie called");
//alert('in add2cookie, form = ' + form.name);
//whether anything added to cookie
var bln_cookie = false;	
//whether radio group checked
var done="";
	
		//check for elements to be added to cookie
	for (var i=0; i < form.length; i++){
		//alert(form[i].name+"=(id)"+form[i].id);
		if (form[i].id.indexOf("add2cookie") != -1){
		//alert(form[i].name+'is add cookie');
			if (form[i].type == "radio"){	
			//alert(form[i].name+'is radio');				
				//get a ref to the group of buttons
				var radio_group =  eval('form.' + form.elements[i].name);
				
				if (radio_group != done){				
					//loop through the radio buttons in the named group
					for (j=0; j < radio_group.length; j++){//for number of buttons in group					
						if (radio_group[j].checked == true){//if one is checked		
							active_cookie[form[i].name] = radio_group[j].value;					
							//bbcjs.cookies.cookieData.user_cookie[form[i].name] = radio_group[j].value;	
							done = radio_group;					
							break;
						}else{
						active_cookie[form[i].name] = 0;		
						}
						//bbcjs.cookies.cookieData.user_cookie[form[i].name] = "";
					done = radio_group;		
					}//end for number of buttons in group
				}
			}else{
			//bbcjs.cookies.cookieData.user_cookie[form[i].name] = form[i].value;	
			//alert(form[i].name+'is adding to active');
			active_cookie[form[i].name] = form[i].value;	
		}				
		bln_cookie = true;								
	}
}

//if required, update cookie
if (bln_cookie){		
	bbcjs.cookies.setCookie("gender_" + active, active_cookie, "+1y");
	}

}

//send score - to L2R
function sendScore(form){
	//trace("sendScore called");


//update current_page num
//current_page ++;

//set unid
//form.unid.value = bbcjs.cookies.cookieData.gender_active.active;

//set L2R end page
//if (current_page <= tot_pages){
	//form.L2REndPage.value = "/science/humanbody/sex/" + current_page + ".shtml";
//}

//alert(form.L2REndPage.value);
//alert(current_page);
//alert(tot_pages);
//form.submit();		



//opener.document.location.reload();

if (current_page >= tot_pages)
{
	//user started quiz at the one show site
	if(active_cookie.theoneshow && opener)
	{
		if (opener.document.location.href == "http://dmdev.wc.bbc.co.uk/theoneshow/article/2007/10/cta_sexid.shtml" || opener.document.location.href == "http://www.bbc.co.uk/theoneshow/article/2007/10/cta_sexid.shtml"){
			window.location = "/science/humanbody/sex/results_tos.shtml";
			return false;
		} else //has completed quiz from one show site but viewing it again from science site 
		{
			if (opener){
				opener.document.location.href = "/science/humanbody/sex/results.shtml";
				opener.focus();
				}	
			this.close();
			return false;
		}
	}
	else //user started quiz at the science site
	{
		if (opener){
			opener.document.location.href = "/science/humanbody/sex/results.shtml";
			opener.focus();
			}	
		this.close();
		return false;
	}
}
	
	
if(active_cookie.next_page){	
		var next_page = parseInt(active_cookie.next_page);		
		current_page = next_page;
		active_cookie.current_page = next_page;
		bbcjs.cookies.setCookie("gender_" + active, active_cookie, "+1y");
		window.opener.current_page = next_page;
	}
		
if(active_cookie.next_part){	
	var next_part = parseInt(active_cookie.next_part);		
	if (next_part > active_cookie.current_part){
		active_cookie.current_part = next_part;
		bbcjs.cookies.setCookie("gender_" + active, active_cookie, "+1y");
		opener.document.location.reload();					
		}
}
	//alert("current_page="+current_page);
	//alert(1);
window.location = "/science/humanbody/sex/" + current_page + ".shtml";

//return false;
}

//delete individual user (incomplete)
function delUser(){
	bbcjs.cookies.deleteCookie('gender_' + active);
	alert("gender_" + active + " deleted");
}

//show results

function progressBar(){

var str_table = '<div align="center"><table cellspacing="5" cellpadding="0" border="0"';

str_table += '<tr><td colspan="6" align="center">Start <a href="#" onclick="return formHandler(document.sexid);" class="continue">Part ' + current_part + '</a><br /><br /></td></tr><tr>';

for (var i = 1; i <= tot_parts; i ++){
	str_table += '<td>';
		if (current_part == i){
				str_table += '<a href="#" onclick="return formHandler(document.sexid);"><img src="/science/humanbody/images/sex/' + i + '_active.gif" width="53" height="54" alt="Click to start or continue this part" border="0"></a>';
				}else if (current_part > i){
					str_table += '<img src="/science/humanbody/images/sex/' + i + '_done.gif" width="53" height="54" alt="This part is now completed" border="0">';
					}else if (current_part < i){
						str_table += '<img src="/science/humanbody/images/sex/' + i + '_todo.gif" width="53" height="54" alt="This part is not yet completed" border="0">';
					}
	str_table += '</td>';
}

str_table += '</tr><tr>';

for (var i = 1; i <= tot_parts; i ++){
	str_table += '<td align="center">';
		if (current_part == i){
				str_table += '<a href="#" onclick="return formHandler(document.sexid);" class="continue">' + i;
				}else if (current_part > i){
					str_table += '<span class="done">' + i + '</span>';
					}else if (current_part < i){
						str_table += '<span class="todo">' + i + '</span>';
					}
	str_table += '</td>';
}

str_table += '</tr></table></div>';

return str_table;

}

function flash2js(){
	form = document.sexid;
	for (i=0; i < arguments.length; i++){
		var arr = arguments[i].split("=");		
		eval("form." + arr[0] + ".value = '" + arr[1] + "'");				
		}
	add2Cookie(form);
	sendScore(form);
}

//for the image location test

function correctSel(){
		var score = parseInt(active_cookie.m_ol_correct_selections) - (parseInt(active_cookie.m_ol_total_selections) - parseInt(active_cookie.m_ol_correct_selections));
		return score;
	}
	


//** DBUG/INFO STUFF **//

//number of gender cookies
var num_gender_cookies = 0;

for (var tmpCookname in bbcjs.cookies.cookieData){

if (tmpCookname.match(/^gender_.*$/)){										
		num_gender_cookies ++;	
		
		}
}
if (num_gender_cookies != 0){num_gender_cookies = num_gender_cookies-2;}

//purge all bbc cookies
function purge_gender(){	
	bbcjs.cookies.removeCookies();
	alert("perge complete");	
}

function deleteUser(){
	// are you sure ?...
	var reallyDelete=confirm("Are you sure you want to delete all the information for " + active_name + "\?\n\n Press OK if you do, or CANCEL if you do not.");
	if (reallyDelete)
	{}
	else
	{
	return false;
	}
	
	// split the gender_list into a temp array
	var genderTempArray = bbcjs.cookies.cookieData.gender_list.list.split("_");
	
	// if the array has more than 1 item in it...
	if (genderTempArray.length > 1) {
		
		// set-up trimming of the array
		var lengthMinus = parseInt(genderTempArray.length)-1;
		
		// temp array to hold new data, minus last entry, e.g. [1,2,3] to [1,2]
		var tempArr = genderTempArray.slice(0,lengthMinus);
		
		// convert new array back into a string, with correct delimeter
		var tempStr = tempArr.join("_");
		
		// re-set the cookie with new string value
		bbcjs.cookies.setCookie("gender_list", "list="+tempStr, '+1y');
		
		// get last value off the new gender_list
		var activeNew = tempArr.pop();
		
		// delete the old cookie
		bbcjs.cookies.deleteCookie("gender_"+active);
		
		// re-set the gender_active cookie to this new identifer
		bbcjs.cookies.setCookie("gender_active", "active="+activeNew, '+1y');
		
		if (opener) {
			opener.document.location.href = "/science/humanbody/sex/index_chooselogin.shtml";
		} else {
			location.href = "/science/humanbody/sex/index_chooselogin.shtml";
		}
		
	} else {
		// delete the old cookies
		bbcjs.cookies.deleteCookie("gender"+"_active");
		bbcjs.cookies.deleteCookie("gender"+"_list");
		bbcjs.cookies.deleteCookie("gender_"+active);
		if (opener) {
			opener.document.location.href = "/science/humanbody/sex/add_user.shtml";
		} else {
			location.href = "/science/humanbody/sex/add_user.shtml";
		}
	}
}

function showVals(form){
str ="";
	for (var i=0; i<form.length; i++){
		str += form[i].name + " = " + form[i].value + "\n";
		}
		alert(str);
}
//<a href="javascript:showVals(document.sexid)">showVals</a>

//hack as safari doesn't like regex for blank string in jstools form validation
function chkNumInputs(){			
	for(var i=0;i<arguments.length;i++){			
	if (arguments[i].value != "" && isNaN(arguments[i].value -0)){			
		alert("Please enter only digits in number fields...");
		arguments[i].focus();
		return false;
		}
	}	
return true;
}


