//////////////////////////////////////////////////////
/* INDEX */

function moreSampler(variable) {
	var tempstr = '';
	switch (variable) {
		case '1': tempstr = 'mod=28&vc=18'; break;
		case '4': tempstr = 'mod=209&vc=19'; break;
		case '2': tempstr = 'mod=99&vc=20'; break;
		case '92': tempstr = 'mod=177&vc=21'; break;
	}
	window.location='play.php?' + tempstr;
}

//////////////////////////////////////////////////////
/* MENU */

function mnuMkyCht() {
	$.get('ajax/menu_monkey-chat.php');
	if (mkychat) {
		$('#mkychat').addClass("hde");
		$('#mkychatbtn').text('Talk');
		mkychat = 0;
	} else {
		$('#mkychat').removeClass("hde");
		$('#mkychatbtn').text('Shh...');
		mkychat = 1;
	}
}

function mnuHidJN() {
	$.get('ajax/menu_hide-jn.php');
	$('#hidejn').css('display','none');
}

function mnuOverLay(stpvar) {
	var urlstr = 'overlays/menu_save-work.php?step=' + stpvar;
	if (parseInt(stpvar,10)) urlstr = '../' + urlstr;
	$.fn.colorbox({href: urlstr, opacity: 0.65, overlayClose: false, open: false});
}

function mnuSvWrk(savevar,stpvar) {
	var stepit = '';
	if (parseInt(stpvar,10)) stepit = '../';
	if (document.savework.hide.checked) {
		$(".mem").addClass("cls");
		$(".sav").removeClass("cls");
		$("#wtgif").attr("src", stepit+"images/wait-18_ff9.gif");
		$.get(stepit+'ajax/menu_save-work.php', function(data){
			if (data.done) {
				if (parseInt(savevar,10)) window.location = stepit+'newaccount/index.php';
				else window.location = stepit+'index.php';
			}
		}, "json");
	} else {
		if (parseInt(savevar,10)) window.location = stepit+'newaccount/index.php';
		else window.location = stepit+'index.php';
	}
}

//////////////////////////////////////////////////////
/* SETS */

function setOverLay(variable) {$.fn.colorbox({href:'overlays/sets_just-go.php?sub='+subdir+'&set='+variable, opacity: 0.65, overlayClose: false, open: false});}

function setSaved(justvar, setvar) {
	$.get('ajax/sets_just-go.php', { memory: '0', justgo: justvar, subject: subdir, setval: setvar }, function(data){
		if (data.justgo) window.location='play.php';
		else window.location='modules.php';
	}, "json");
}

function setChoose(justvar, setvar) {
	$(".mem").addClass("cls");
	$(".apall").addClass("hde");
	$(".apall").addClass("cls");
	$(".sav").removeClass("cls");
	$("#wtgif").attr("src", "images/wait-18_ff9.gif");
	var memvar = 0; if (document.justgo.remember.checked) memvar++;
	var allvar = 0; if (document.justgo.allsubs.checked && memvar) allvar++;
	$.get('ajax/sets_just-go.php', { memory: memvar, justgo: justvar, subject: subdir, allsubs: allvar, setval: setvar }, function(data) {
		if (data.error) {
			window.location='menu.php';
		} else {
			if (data.justgo) window.location='play.php';
			else window.location='modules.php';
		}
	}, "json");
}

//////////////////////////////////////////////////////
/* MODULES */

function modTstLev(levid) {
	var mods = readMods(levid);
	var cnt = 0;
	var temptest = 0;
	while (cnt < mods.length) { if (parseInt(document.selected.elements['mod' + mods[cnt]].value, 10)) temptest++; cnt++; }
	if (temptest === mods.length) return 1;
	else return 0;
}

function modSelMod(modid) {
	var levid = readLevs(modid);
	if (parseInt(document.selected.elements['mod' + modid].value, 10)) {
		document.selected.elements['mod' + modid].value = 0;
		document.images['mod' + modid].src='images/levels_highlight.gif';
	} else {
		document.selected.elements['mod' + modid].value = 1;
		document.images['mod' + modid].src='content/' + subdir + '/Images/highlight.gif';
	}
	if (modTstLev(levid)) document.images['lev' + levid].src='content/' + subdir + '/Images/select-none.gif';
	else document.images['lev' + levid].src='content/' + subdir + '/Images/select-all.gif';
}

function modSelLev(levid) {
	var mods = readMods(levid);
	var cnt = 0;
	if (modTstLev(levid)) {
		while (cnt < mods.length) {
			document.selected.elements['mod' + mods[cnt]].value = 0;
			document.images['mod' + mods[cnt]].src='images/levels_highlight.gif';
			cnt++;
		}
		document.images['lev' + levid].src='content/' + subdir + '/Images/select-all_on.gif';
	} else {
		while (cnt < mods.length) {
			document.selected.elements['mod' + mods[cnt]].value = 1;
			document.images['mod' + mods[cnt]].src='content/' + subdir + '/Images/highlight.gif';
			cnt++;
		}
		document.images['lev' + levid].src='content/' + subdir + '/Images/select-none_on.gif';
	}
}

function modSav() {
	$("#stgif").addClass("hde");
	$("#sgame").addClass("cls");
	$("#ssave").removeClass("cls");
	$("#sgif").attr("src", "images/wait-18_ff9.gif");
	var str = 'ajax/modules_select.php?' + $('#selected').serialize();
	$.get(str, function(data){
		if (data.error) window.location = 'menu.php';
		else window.location = 'play.php';
	}, "json");
}

//////////////////////////////////////////////////////
/* PLAY */

function plyTglSet(setid) {
	var cnt = 0;
	while (cnt < sets.length) {
		if (parseInt(sets[cnt],10) === parseInt(setid,10)) $("#set"+sets[cnt]).removeClass("cls");
		else $("#set"+sets[cnt]).addClass("cls");
		cnt++;
	}
}

function plySelMod(modid) {
	if (parseInt(document.selected.elements['mod'+modid].value, 10)) {
		var setid = findSet(modid);
		var mods = readMods(setid);
		var cnt=0, tst=0;
		while (cnt < mods.length) {
			if (parseInt(document.selected.elements['mod'+mods[cnt]].value, 10) && (mods[cnt] != modid)) tst++;
			cnt++;
		}
		if (tst) {
			document.selected.elements['mod'+modid].value = 0;
			document.images['mod'+modid].src='content/'+subdir+'/Images/levelbar.gif';
		}
	} else {
		document.selected.elements['mod'+modid].value = 1;
		document.images['mod'+modid].src='content/'+subdir+'/Images/levelbar_on.gif';
	}
}

function plyModUp(setid,blvar) {
	var mods = readMods(setid);
	var cnt=0, tn=0, tnlst=0, tnlim=0, chg=0;
	var tnfst=-1;
	while (cnt < mods.length) {
		if (parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) { tn++; tnlim++; if (tnfst < 0) tnfst = cnt; if (cnt == (mods.length - 1)) tnlst = 1; }
		cnt++;
	}
	if (tnlim < 3) tnlim++;
	if ((tnlst === 1) && ((mods.length - tnfst - 1) < tnlim)) tnlim--;
	if ((tn === tnlim) || (tnlst === 1)) tnfst++;
	if ((tn <= 1) && (tnlst === 1)) { tnfst--; tnlim++; }
	if ((tnlst === 1) && (tn < tnlim) && (tn !== 1)) tnfst--;
	if (tnfst < 0) { tn = 0; tnlim = 1; tnfst = 0; }
	cnt = 0;
	while (cnt < mods.length) {
		if (cnt < tnfst) {
			if (parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) { plySelMod(mods[cnt]); tn--; chg++; }
		} else if (tn != tnlim) {
			if ((tn < tnlim) && (!parseInt(document.selected.elements['mod'+mods[cnt]].value, 10))) { plySelMod(mods[cnt]); tn++; chg++; }
		} else {
			if ((!parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) && (tnlim === 1) && (tnfst !== 0)) { plySelMod(mods[cnt]); tn++; chg++; }
		}
		cnt++;
	}
	if (chg || parseInt(blvar,10)) { plyLdPrb(blvar); plyTim(1); }
}

function plyModDwn(setid,blvar) {
	var mods = readMods(setid);
	var cnt = mods.length - 1;
	var tn = 0, tnlmt = 0, chg=0;
	var tnfst = mods.length;
	var tnlst = mods.length - 1;
	while (cnt >= 0) {
		if (parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) { tn++; tnlmt++; if (tnfst === mods.length) tnfst = cnt; if (!cnt) tnlst = 1; }
		cnt--;
	}
	if (tnlmt < 3) tnlmt++;
	if ((tnlst === 1) && (tnfst < tnlmt)) tnlmt--;
	if ((tn === tnlmt) || (tnlst === 1)) tnfst--;
	if ((tn <= 1) && (tnlst === 1)) { tnfst++; tnlmt++; }
	if ((tnlst === 1) && (tn < tnlmt) && (tn != 1)) tnfst++;
	if (tnfst === mods.length) { tn=0; tnlmt=1; tnfst=(mods.length - 1); }
	cnt = mods.length - 1;
	while(cnt >= 0) {
		if (cnt > tnfst) {
			if (parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) { plySelMod(mods[cnt]); tn--; chg++; }
		} else if (tn != tnlmt) {
			if ((tn < tnlmt) && (!parseInt(document.selected.elements['mod'+mods[cnt]].value, 10))) { plySelMod(mods[cnt]); tn++; chg++; }
		} else {
			if ((!parseInt(document.selected.elements['mod'+mods[cnt]].value, 10)) && (tnlmt == 1) && (tnfst != (mods.length - 1))) { plySelMod(mods[cnt]); tn++; chg++; }
		}
		cnt--;
	}
	if (chg || parseInt(blvar,10)) { plyLdPrb(blvar); plyTim(1); }
}

function plyStLd() {
	if (!loader) {
		window.document.loader.GotoFrame(1);
		setTimeout(function(){plyStLd();},2000);
	}
}

function plyLdSht() { window.document.loader.LoadMovie(6, 'content/'+subdir+'/Loader/shutter-1.swf'); }

function plyLdPrb(blvar) {
	var str = 'ajax/play_load.php?' + $('#selected').serialize();
	$.get(str, function(data){
		if (!data.error && !parseInt(blvar,10)) {
			plyTglSet(data.set);
			document.scores.module.value = data.mod;
			$('#ginsttxt').text(data.txt);
			window.document.loader.LoadMovie(3, 'content/'+subdir+'/Flash/'+data.swf);
			window.document.loader.SetVariable('_global.currentida', data.mema);
			window.document.loader.SetVariable('_global.currentidb', data.memb);
			if (!loader) { loader++; window.location.hash='jump'; }
		} else {
			if (data.cookie) window.location='cookies.php';
			else window.location='play.php';
		}
	}, "json");
}

function plyTim(blvar) {
	var s = new Date();
	if (blvar) document.scores.start.value = s.getTime();
	else document.scores.stop.value = s.getTime();
}

function plyOverLay(setid, pgnam, pgvar) {
	var urlstr = 'overlays/play_'+pgnam+'.php?set='+setid+'&pgvar='+pgvar;
	document.getElementById('loader').style.display = 'none';
	$.fn.colorbox({href: urlstr, opacity: 0.65, overlayClose: false, open: false});
}

function plyAutBmp(bumpvar, setid) {
	$(".mem").addClass("cls");
	$(".sav").removeClass("cls");
	$("#wtgif").attr("src", "images/wait-18_ff9.gif");
	var allvar = 0;
	if (document.autobump.allsubs.checked) allvar++;
	$.get('ajax/play_auto-bump.php', { bump: bumpvar, allsubs: allvar, setval: setid }, function(data){
		if (!data.error && parseInt(bumpvar,10)) {
			if (parseInt(document.scores.scored.value, 10)) plyModUp(setid,1);
			else plyModDwn(setid,1);
		} else {
			window.location='play.php';
		}
	}, "json");
}

function plyTglBmp(bumpvar) {
	$.get('ajax/play_auto-bump.php', { bump: bumpvar, allsubs: "0", setval: sets[0] }, function(data){ window.location='play.php'; }, "json");
}

function plyUdScr(blvar) {
	plyTim(0);
	if (parseInt(blvar,10)) var tmpstr = 'correct';
	else var tmpstr = 'incorrect';
	var cnt = parseInt(document.scores.elements[tmpstr].value, 10) + 1;
	document.scores.elements[tmpstr].value = cnt;
	document.scores.scored.value = blvar;
	var str = 'ajax/play_score.php?'+$('#scores').serialize();
	$.get(str, function(data){
		if (!data.error) {
			if (parseInt(blvar,10)) $("#grght").text(cnt);
			else $("#gwrng").text(cnt);
			if (data.reload) {
				if (!bumpmem) plyOverLay(data.bump,'auto-bump',blvar);
				else if (bump) window.location='play.php';
			} else {
				if (data.eos && parseInt(blvar,10)) {
					if (!bumpmem) plyOverLay(data.bump,'auto-bump',blvar);
					else if (bump) plyOverLay(data.bump,'eos','0');
				} else if (data.bump) {
					if (!bumpmem) {
						plyOverLay(data.bump,'auto-bump',blvar);
					} else if (bump) {
						if (parseInt(blvar,10)) plyModUp(data.bump,0);
						else plyModDwn(data.bump,0);
					}
				}
			}
		} else {
			window.location='play.php';
		}
	}, "json");
}

function plyShwTxt() {
	if (ginst) { $("#txtrowa, #txtrowb").addClass("cls"); ginst=0; }
	else { $("#txtrowa, #txtrowb").removeClass("cls"); ginst=1; }
	$.get('ajax/play_inst-pref.php', { inst: ginst } );
}

function plySvWrk(savevar,extvar) {
	if (document.savework.hide.checked) {
		$(".mem").addClass("cls");
		$(".sav").removeClass("cls");
		$("#wtgif").attr("src", "images/wait-18_ff9.gif");
		$.get('ajax/play_save-work.php', function(data){
			if (data.done) {
				if (parseInt(savevar,10)) {
					window.location='newaccount/index.php';
				} else {
					switch (parseInt(extvar,10)) {
						case 0 : window.location='menu.php'; break;
						case 1 : window.location='scoreboard/index.php'; break;
						case 2 : window.location='settings.php'; break;
						case 3 : window.location='index.php';
					}
				}
			}
		}, "json");
	} else {
		if (parseInt(savevar,10)) {
			window.location='newaccount/index.php';
		} else {
			switch (parseInt(extvar,10)) {
				case 0 : window.location='menu.php'; break;
				case 1 : window.location='scoreboard/index.php'; break;
				case 2 : window.location='settings.php'; break;
				case 3 : window.location='index.php';
			}
		}
	}
}

//////////////////////////////////////////////////////
/* SCOREBOARD */

function scrClrSet(varid,varcat) {
	var confirmed = window.confirm('Are you sure you want to clear your scores for ' + varcat + '?');
	if (confirmed) window.location='clear_cat.php?id=' + varid;
}

//////////////////////////////////////////////////////
/* SETTINGS */

function sttTglBl(blvar,sttvar) {
	if (parseInt(blvar,10)) {
		document.prefs.elements[sttvar].value = 1;
		document.images[sttvar + '1'].src = 'images/checkbox-on.gif';
		document.images[sttvar + '0'].src = 'images/checkbox.gif';
	} else {
		document.prefs.elements[sttvar].value = 0;
		document.images[sttvar + '1'].src = 'images/checkbox.gif';
		document.images[sttvar + '0'].src = 'images/checkbox-on.gif';
	}
	$("#tspin").addClass("cls");
	$("#tdone").addClass("cls");
	$("#bspin").addClass("cls");
	$("#bdone").addClass("cls");
	$("#tsave").removeClass("cls");
	$("#bsave").removeClass("cls");
}

function sttTglBox(blvar,subvar,sttvar) {
	var cnt = 0;
	if (parseInt(subvar,10)) {
		if (parseInt(blvar,10)) {
			document.prefs.elements[sttvar + subvar].value = 1;
			document.images[sttvar + '1s' + subvar].src = 'images/checkbox-on.gif';
			document.images[sttvar + '0s' + subvar].src = 'images/checkbox.gif';
		} else {
			document.prefs.elements[sttvar + subvar].value = 0;
			document.images[sttvar + '1s' + subvar].src = 'images/checkbox.gif';
			document.images[sttvar + '0s' + subvar].src = 'images/checkbox-on.gif';
		}
		document.prefs.elements[sttvar + 'mem' + subvar].value = 1;
		document.images[sttvar + '1s0'].src = 'images/checkbox.gif';
		document.images[sttvar + '0s0'].src = 'images/checkbox.gif';
	} else {
		if (parseInt(blvar,10)) {
			while (cnt < subids.length) {
				document.prefs.elements[sttvar + subids[cnt]].value = 1;
				document.prefs.elements[sttvar + 'mem' + subids[cnt]].value = 1;
				document.images[sttvar + '1s' + subids[cnt]].src = 'images/checkbox-on.gif';
				document.images[sttvar + '0s' + subids[cnt]].src = 'images/checkbox.gif';
				cnt++;
			}
			document.prefs.elements[sttvar + '0'].value = 1;
			document.images[sttvar + '1s0'].src = 'images/checkbox-on.gif';
			document.images[sttvar + '0s0'].src = 'images/checkbox.gif';
		} else {
			while (cnt < subids.length) {
				document.prefs.elements[sttvar + subids[cnt]].value = 0;
				document.prefs.elements[sttvar + 'mem' + subids[cnt]].value = 1;
				document.images[sttvar + '1s' + subids[cnt]].src = 'images/checkbox.gif';
				document.images[sttvar + '0s' + subids[cnt]].src = 'images/checkbox-on.gif';
				cnt++;
			}
			document.prefs.elements[sttvar + '0'].value = 0;
			document.images[sttvar + '1s0'].src = 'images/checkbox.gif';
			document.images[sttvar + '0s0'].src = 'images/checkbox-on.gif';
		}
	}
	$("#tspin").addClass("cls");
	$("#tdone").addClass("cls");
	$("#bspin").addClass("cls");
	$("#bdone").addClass("cls");
	$("#tsave").removeClass("cls");
	$("#bsave").removeClass("cls");
}

function sttTglAll(blvar,sttvar) {
	if (parseInt(blvar,10)) {
		if (sttvar.length < 3) {
			document.prefs.elements[sttvar + 'chkall'].checked = true;
			document.prefs.elements[sttvar + 'chksubs'].checked = true;
		}
		$("#"+sttvar+"subs").hide("blind");
		$("#"+sttvar+"all").show("blind");
	} else {
		if (sttvar.length < 3) {
			document.prefs.elements[sttvar + 'chkall'].checked = false;
			document.prefs.elements[sttvar + 'chksubs'].checked = false;
		}
		$("#"+sttvar+"all").hide("blind");
		$("#"+sttvar+"subs").show("blind");
	}
}

function sttSavSet(varchr) {
	$("#tsave").addClass("cls");
	$("#bsave").addClass("cls");
	$("#"+varchr+"spin").removeClass("cls");
	$("#"+varchr+"gif").attr("src", "images/wait-18_ff9.gif");
	var str = 'ajax/settings.php?'+$("#prefs").serialize();
	$.get(str, function(data) {
		if (!data.error) {
			$("#"+varchr+"spin").addClass("cls");
			$("#"+varchr+"done").removeClass("cls");
			//$("#"+varchr+"done").effect("fade","",7000,"");
		}
	}, "json");
}

function sttSavPrf(varchr) {
	$("#"+varchr+"save").addClass("cls");
	$("#"+varchr+"spin").removeClass("cls");
	$("#"+varchr+"gif").attr("src", "images/wait-18_fe7.gif");
	var str = 'ajax/settings_'+varchr+'.php?'+$("#"+varchr+"fm").serialize();
	$.get(str, function(data) {
		$("#"+varchr+"spin").addClass("cls");
		if (data.error) {
			$("#"+varchr+"eror").removeClass("cls");
			$("#"+varchr+"erortxt").text(data.error);
		} else {
			$("#"+varchr+"fm")[0].reset();
			$("#"+varchr+"save").removeClass("cls");
			$("#"+varchr+"all").hide("blind");
			$("#"+varchr+"subs").show("blind");
			$("#"+varchr+"txt").text(data.saved);
		}
	}, "json");
}

