/*
*	Functions for interaction between Keyboard & FlashForm
*
*	#content:	div for flash content	
*	#input:		text input hidden for keyboard input ( <input type="text" id="input" name="input" style="border:0px dashed #CCC; color:#FFF;"/> )
*
*	2009 pulpolab.com
*/

function keyUp(e){
	var char = "";
	var evtobj = window.event ? event : e;
	var keyCode = evtobj.keyCode ? evtobj.keyCode : evtobj.charCode;	// get keyCode
	if(keyCode!=27){													// avoid escape
		if( document.getElementById("qinput").value == '' )
		{
			thisMovie("content").keyUp( '' );
		}
		else
		{
			thisMovie("content").keyUp( document.getElementById("qinput").value );	// send to flash
			document.getElementById("qinput").value = '';	// reset test input
		}
	}
}

function keyDown(e){
	
	document.getElementById("qinput").focus();
	
//	if (hasFocus()) {
	var char = "";
	var evtobj = window.event ? event : e;
	var keyCode = evtobj.keyCode ? evtobj.keyCode : evtobj.charCode;	// get keyCode
	
	
		if(keyCode==8){
			char = "backspace";
		}
		if(keyCode==9){
			if(evtobj.shiftKey)
				char = "shiftab";	
			else
				char = "tab";
		}
		else if(keyCode==13){
			char = "enter";
		}
		else if(keyCode==27){
			char = "escape";
		}
		else if(keyCode==37){
			char = "left";
		}
		else if(keyCode==38){
			char = "up";
		}
		else if(keyCode==39){
			char = "right";
		}
		else if(keyCode==40){
			char = "down";
		}	
		else if(keyCode==46){
			char = "delete";
		}
		
			thisMovie("content").keyDown( char );	// send to flash
	// }
}

function setFocus(){	
  document.getElementById("qinput").focus();
}

function hasFocus(){
  return document.getElementById("qinput").focus;
}

function thisMovie(movieName){
	
 if (navigator.appName.indexOf("Microsoft")!=-1){
	 return window[movieName];
 } 
 else{
	 return document[movieName];
 }
}

document.onkeydown = keyDown;
document.onkeyup = keyUp;
