
var start_f=1;         // ページ読み込み後の過去データ状態
var flag=1;          // 問題の状態　1:次の問題へ　0:答える状態
var ii=-1;           // 乱数配列用カウンター
var resultdata;         // 成績保存用変数
var seiseki = new Array();
var mozi = 2;
var n = zWord.length;        // 問題数をnに格納
var ram = new Array(n);   // 乱数配列
var tensuu;               // 正答率
var t_col = "#ccffff";
var f_col = "#ffccff";

window.onload = oLd;

function oLd(){
	document.forms["sentaku"]["mondaibun"].value = document.forms["sentaku"]["mondaibun"].defaultValue;
	document.sentaku.seigo.value  = document.sentaku.seigo.defaultValue;
        document.sentaku.yomi.value = document.sentaku.yomi.defaultValue
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function loadData(){
x = "";
theName = Data_id+"=";
theCookie = document.cookie+";";
start = theCookie.indexOf(theName);
if (start != -1)
	{ end = theCookie.indexOf(";",start);
	  x = unescape(theCookie.substring(start+theName.length,end));
	 }
return x;
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function saveData(x){
	theName = Data_id;
	theValue = x;
	theDay = 90;            // 保存日数
	setDay = new Date();
	setDay.setTime(setDay.getTime()+(theDay*1000*60*60*24));
	expDay = setDay.toGMTString();
	document.cookie = theName + "="+escape(theValue)+";expires="+expDay;
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

function myRam(n){
var r = new Array();
r[0] = Math.floor(Math.random()*n);
l=1;
	while(l<n){
		f=0;
		r[l] = Math.floor(Math.random()*n);
		for(j=0;j<l;j++)if(r[l]==r[j]){f=1;break;}
		if(f==0)l++;
	}
return r;
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

function ans(){

	if(start_f==1){
		alert("「スタート」を押してください\n");

	}else{	
								// 正否判定部分

			if(flag==0){
                                if(document.sentaku.kaitou.value != ""){
					if(document.sentaku.kaitou.value == zWord[ram[ii]][1]){		//正否判定条件
						document.sentaku.seigo.value = "○正解";
						document.sentaku.seigo.style.backgroundColor = t_col;
						document.sentaku.kaitou.style.backgroundColor = t_col;
						seiseki[0]++;
						
					}else{
						document.sentaku.seigo.value = "×不正解";
						document.sentaku.seigo.style.backgroundColor = f_col;
						document.sentaku.kaitou.style.backgroundColor = f_col;
	
									// 正否判定部分終了
	
					}
					document.sentaku.yomi.value=zWord[ram[ii]][1];
	                                document.yahoo_s.p.value=zWord[ram[ii]][0];   // yahoo辞書フォームに表示す	る
					
					seiseki[1]++;
					resultdata = ""+seiseki[0];
					resultdata += "s";
					resultdata += seiseki[1];
					saveData(resultdata);
					document.left_seiseki.ans_n.value = seiseki[1];
					document.left_seiseki.ans_r.value = seiseki[0];
					tensuu = (Math.round(seiseki[0]/seiseki[1]*1000))/10;
					document.left_seiseki.r_avr.value = tensuu+"%";
	
	                                document.sentaku.Next.focus();
	
					flag=1;
				}else{
					alert("解答欄が未記入です。");
					document.sentaku.kaitou.focus(); 
				}

			}else{alert("「次の問題」を押して次の問題にすすんでください\n");}	
	} 
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


function next_m(){

	
	if(start_f==1){
		document.sentaku.Next.value="次の問題";
		start_f = 0;
	}

	if(flag==1){
		document.sentaku.seigo.style.backgroundColor = "#ffffff";
		document.sentaku.kaitou.style.backgroundColor = "#ffffff";


		if(ii==-1 || ii==n-1){ram = myRam(n);ii=-1;}  // 最初と一巡したときシャッフル

		ii++;
		document.sentaku.mondaibun.value = zWord[ram[ii]][0];
		document.sentaku.seigo.value = document.sentaku.seigo.defaultValue;
		document.sentaku.yomi.value = document.sentaku.yomi.defaultValue;
   		document.sentaku.kaitou.value = document.sentaku.yomi.defaultValue;
   		document.sentaku.kaitou.focus(); 

		
		

		
				
 		flag=0;
		
	}else{
		alert("問題に答えてから次へすすめます。\n");
	}
}
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
function left_reset(){

	myRet = confirm("本当にリセットしてもいいですか？");
	if ( myRet == true ){
		resultdata="0s0";
		saveData(resultdata);
		seiseki = resultdata.split("s");
		document.left_seiseki.ans_n.value = seiseki[1];
		document.left_seiseki.ans_r.value = seiseki[0];
		document.left_seiseki.r_avr.value = "0%";
	}
}



	
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;   // score

resultdata=loadData();
if(resultdata==""){
		seiseki[0]=0;
		seiseki[1]=0;
}else{
		seiseki = resultdata.split("s");
}

if(seiseki[1] == 0){tensuu=0;}
else{tensuu = (Math.round(seiseki[0]/seiseki[1]*1000))/10;}


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;   // main_block

var main_str = "";
main_str += "<form name='sentaku'>";
main_str += "<input type='text' value='－－－' name='seigo' class='seigoCss'><br>";
main_str += "<input type='text' name='mondaibun' class='monCss'>";
main_str += "<br>";
main_str += "<span class='mini_txt'>正解表示欄</span>";
main_str += "<input type='text' value='' name='yomi' class='yomiCss'><br>";
main_str += "<span class='mini_txt'>解　答　欄</span>";
main_str += "<input type='text' value='' name='kaitou' class='kaitouCss'><br>";
main_str += "<br>";
main_str += "<input type='button' value='答える' onclick='ans()' name='Ans' class='nextCss'>";
main_str += "<input type='button' value='スタート' onclick='next_m()' name='Next' class='nextCss'>";
main_str += "</p>";
main_str += "</form>";
main_str += "<form name='left_seiseki'>";
main_str += "正答数　　　<input type='text' value='"+seiseki[0]+"' name='ans_r' size='12'>　/　";
main_str += "解答問題数<input type='text' value='"+seiseki[1]+"' name='ans_n' size='12'>　＝　";
main_str += "正答率　　　<input type='text' value='"+tensuu+"%' name='r_avr' size='12'><br>";
main_str += "<span class='mini_txt'>id : "+Data_id+"</span>　";
main_str += "記録リセット<input type='button' value='リセット' onClick='left_reset()'>　　";
main_str += "登録問題数　<strong>"+n+"</strong>問";
main_str += "<br></form>";

