// STATION SCRIPTS:
var wc_http;
var wc_active_div;
var wc_active_cam;
var wc_active_cmd;
wc_active_div = "";
wc_active_cam = "";
wc_active_cmd = "";
var wc_url = "webcam_controls2.php";
var wc_timeout = new Array();
var wc_lang = "bg";

//lang:
var lang = new Array();
lang['en'] = new Array();
lang['en']['charset'] =  "windows-1251";
lang['en']['you_can'] =  "You can control the webcam for ";
lang['en']['sec'] =  "seconds";
lang['en']['wait'] =  "Please wait.";
lang['en']['go'] =  "You have ";
lang['en']['controls'] =  "Controls";
lang['en']['err'] =  "Error! Please, wait...";
lang['bg'] = new Array();
lang['bg']['charset'] =  "iso-8859-1";
lang['bg']['you_can'] =  "Можете да контролирате камерата в продължение на ";
lang['bg']['sec'] =  "секунди";
lang['bg']['wait'] =  "Моля изчакайте.";
lang['bg']['go'] =  "Имате ";
lang['bg']['controls'] =  "Контроли";
lang['bg']['err'] =  "Грешка. Моля, изчакайте...";

//	DEFINE REQUEST OBJECT (AJAX)
function wc_XMLobj(){
  var request_;
    if (window.XMLHttpRequest) {
        request_ = new XMLHttpRequest();
    // ActiveX XMLHttpRequest object
    } else if (window.ActiveXObject) {
        request_ = new ActiveXObject("Microsoft.XMLHTTP");
    }
  return request_;
}
//	CREATE REQUESR OBJECT (AJAX)

//	CREATE REQUEST HANDLER (AJAX)
function wc_handleInfo(){
//	alert("state"+wc_http.readyState+"; div:"+wc_active_div);
	if (obj=document.getElementById( wc_active_div )) {
		if(wc_http.readyState == 1){
			//obj.innerHTML = 'Loading...';
		}
		if(wc_http.readyState == 4){
			res = wc_http.responseText;
			str_res = new String(res);
//			alert("res"+ res);
			// filter responce: ----/
			if (res=="err") {
				obj.innerHTML = lang[wc_lang]['err'];
				clearTimeout(wc_timeout[wc_active_cam]);
				wc_timeout[wc_active_cam] = setTimeout('wc_command("' + wc_active_cam + '",' + wc_active_cmd + ', "' + wc_active_div + '")', 5000);	
			
			} else if (res == "button") {
				obj.innerHTML = 
"<input type='button' name='controls' value='" + lang[wc_lang]['controls'] + "' onclick='javascript:wc_command(" + wc_active_cam + ', 101, "' + wc_active_div + '"' + ");'>";
				clearTimeout(wc_timeout[wc_active_cam]);
				wc_timeout[wc_active_cam] = setTimeout('wc_command("' + wc_active_cam + '",102, "' + wc_active_div + '")', 5000);	
			
			} else if (str_res.substr(0, 4) == "wait") {
				sec = str_res.substr(4);
				obj.innerHTML = lang[wc_lang]['wait'] + " " + sec + " " + lang[wc_lang]['sec'];
				clearTimeout(wc_timeout[wc_active_cam]);
				wc_timeout[wc_active_cam] = setTimeout('wc_command("' + wc_active_cam + '",102, "' + wc_active_div + '")', 5000);	
 
			} else if (str_res.substr(0, 2) == "go") {
				sec = str_res.substr( 2);
				obj.innerHTML = 
'<input type="image" name="home" src="i/webcam_controls/webcam_cmd_home.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 3, '" + wc_active_div + "'" + ');" alt="home" style="border: none;" />'+
'<input type="image" name="left" src="i/webcam_controls/webcam_cmd_left.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 2, '" + wc_active_div + "'" + ');" alt="left" style="border: none;" />'+
'<input type="image" name="up" src="i/webcam_controls/webcam_cmd_up.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 1, '" + wc_active_div + "'" + ');" alt="up" style="border: none;" />'+
'<input type="image" name="down" src="i/webcam_controls/webcam_cmd_down.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 5, '" + wc_active_div + "'" + ');" alt="down" style="border: none;" />'+
'<input type="image" name="right" src="i/webcam_controls/webcam_cmd_right.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 4, '" + wc_active_div + "'" + ');" alt="right" style="border: none;" />'+
'<input type="image" name="tele" src="i/webcam_controls/webcam_cmd_tele.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 6, '" + wc_active_div + "'" + ');" alt="tele" style="border: none;" />'+
'<input type="image" name="wide" src="i/webcam_controls/webcam_cmd_wide.gif" onclick="javascript:wc_command(' + wc_active_cam + ", 7, '" + wc_active_div + "'" + ');" alt="wide" style="border: none;" />	';			
				obj.innerHTML = obj.innerHTML + "<br>" + lang[wc_lang]['go'] + " " + sec + " " + lang[wc_lang]['sec'];
				clearTimeout(wc_timeout[wc_active_cam]);
				wc_timeout[wc_active_cam] = setTimeout('wc_command("' + wc_active_cam + '",102, "' + wc_active_div + '")', 60000);	
 
 			} else {
				obj.innerHTML = lang[wc_lang]['wait'] + " " + res;
				clearTimeout(wc_timeout[wc_active_cam]);
				wc_timeout[wc_active_cam] = setTimeout('wc_command("' + wc_active_cam + '",102, "' + wc_active_div + '")', 5000);	
				
			}
			//---------------------/
			
			wc_active_div = "";
			wc_active_cam = "";
			wc_active_cmd = "";
		}
	}
}


//	SEND REQUEST BY GET (AJAX)
function wc_command(cam, cmd, div){
	if ((wc_active_div=="")  && (div!="") ) {
		wc_active_div = div;
		wc_active_cam = cam;
		wc_active_cmd = cmd;
	} else {
		return false; // da ne cakat mnogo, mnogo :p
	}
	wc_http = wc_XMLobj();
	if (wc_http) {
		var now = new Date();
    	//var contentType = "text/html;  charset=windows-1251";
		wc_http.onreadystatechange = wc_handleInfo;
		//wc_http.setRequestHeader("Content-Type", contentType);
		wc_http.open( 'get', wc_url + '?cam=' + cam + '&cmd=' + cmd + '&lang=' + wc_lang + '&time=' + now.getTime() );
		wc_http.send(null);
	}
	if (cmd==102) {
		wc_timeout[cam] = setTimeout('wc_command("'+cam+'",102, "'+div+'")', 5000);	
	} else {
		clearTimeout(wc_timeout[cam]);
		wc_timeout[cam] = setTimeout('wc_command("'+cam+'",102, "'+div+'")', 60000);	
	}
}



