var reported = false;
function _(id){
	return document.getElementById(id);
}

function CreateAJAXObject(){
	var httpRequest;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		httpRequest = new XMLHttpRequest();
		if (httpRequest.overrideMimeType) {
			httpRequest.overrideMimeType('text/xml');
		}
	}
	else if (window.ActiveXObject) { // IE
		try {
			httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			try {
				httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e) {}
		}
	}

	if (!httpRequest) {
		return false;
	}

	return httpRequest;
}

function report(p1, p2) {
	if(reported) return false;
	reported = true;
	var req = CreateAJAXObject();
	if (!req) return false;

	req.onreadystatechange = function() { handleReport(req); };
	req.open('POST', '/report.php', true);
	var param = 'p1='+p1+'&p2='+p2;
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	req.setRequestHeader("Content-length", param.length);
	req.setRequestHeader("Connection", "close");
	req.send(param);

	return false;
}

function handleReport(req) {
    if (req.readyState == 4) {
        if (req.status == 200) {
			xmldoc = req.responseXML;
            var st = xmldoc.getElementsByTagName('st').item(0).firstChild.data;
			if (st == 1){
				target = document.getElementById('report_link');
				if (target){
					target.className = 'stream_checking';//style.backgroundImage = 'url(/img/broken_rep.gif)';
				}
			}
        }
    }
}


// Toolbar
function hide_tool_wnd(){
	target = document.getElementById('comment_form');
	if (target){
		target.style.display = 'none';
	}
	target = document.getElementById('comment_form_span');
	if (target){
		target.style.display = 'none';
	}
	target = document.getElementById('comment_form_a');
	if (target){
		target.style.display = 'block';
	}
	target = document.getElementById('playing_form');
	if (target){
		target.style.display = 'none';
	}
	target = document.getElementById('playing_form_span');
	if (target){
		target.style.display = 'none';
	}
	target = document.getElementById('playing_form_a');
	if (target){
		target.style.display = 'block';
	}
	target = document.getElementById('tool_hide');
	if (target){
		target.style.display = 'none';
	}

	return false;
}

function open_tool_wnd(wnd){
	hide_tool_wnd();
	if (wnd == 'comm'){
		target = document.getElementById('comment_form');
		target3 = document.getElementById('comment_form_a');
		target4 = document.getElementById('comment_form_span');
	}
	if (wnd == 'play'){
		target = document.getElementById('playing_form');
		target3 = document.getElementById('playing_form_a');
		target4 = document.getElementById('playing_form_span');
	}

	if (target){
		target.style.display = 'block';
	}
	if ((wnd == 'comm')||(wnd == 'play')) {
		if (target3){
			target3.style.display = 'none';
		}
		if (target4){
			target4.style.display = 'block';
		}
	}
	target = document.getElementById('tool_hide');
	if (target){
		target.style.display = 'block';
	}

	return false;
}

function add_comment_bak(p1) {
	var code = false;
	var msg = false;
	
	/*var t = _('code');
	if (t && t.value && (t.value.length > 0)){
		t.style.backgroundColor = '#FFFFFF';
		code = t.value;
	} else {
		t.style.backgroundColor = '#FFF0F0';
	}
	var t = _('msg');
	if (t && t.value && (t.value.length > 0)){
		t.style.backgroundColor = '#FFFFFF';
		msg = t.value;
	} else {
		t.style.backgroundColor = '#FFF0F0';
	}
	if (!code || !msg){
		return;
	}*/
	var t = _('code');
	code = t.value;
	var t = _('msg');
	msg = t.value;

	var req = CreateAJAXObject();
	if (!req) return;

	req.onreadystatechange = function() { handleAddComment(req); };
	req.open('POST', '/add_comment.php', true);
	var param = 'p1='+p1+'&code='+encodeURIComponent(code)+'&msg='+encodeURIComponent(msg);
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	req.setRequestHeader("Content-length", param.length);
	req.setRequestHeader("Connection", "close");
	req.send(param);

	return false;
}

function add_comment(p1) {
	var code = false;
	var msg = false;

	var t = _('code');
	code = t.value;
	var t = _('msg');
	msg = t.value;

	var req = CreateAJAXObject();
	if (!req) return;

	req.onreadystatechange = function() { handleAddComment(req); };
	req.open('POST', '/add_comment.php', true);
/*	var param = 'p1='+p1+'&code='+encodeURIComponent(code)+'&msg='+encodeURIComponent(msg);*/
	var param = 'p1='+p1+'&code='+encodeURIComponent(code)+'&msg='+msg;
	req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	req.setRequestHeader("Content-length", param.length);
	req.setRequestHeader("Connection", "close");
	req.send(param);

	return false;
}


function handleAddComment(req){
	if (req.readyState == 4) {
		if (req.status == 200) {
			xmldoc = req.responseXML;
			var er = xmldoc.getElementsByTagName('er').item(0).firstChild.data;
			if (er == 0){// no error
				//target = document.getElementById('comments_cnt');
				target = document.getElementById('opinion');
				if (target){
					var data = xmldoc.getElementsByTagName('data').item(0).firstChild.data
					target.innerHTML = data;
				}
					hide_tool_wnd();
			} else {
				if (er == 1){
					//var t = _('code');
					var t = "Incorrect check code";
					//t.style.backgroundColor = '#FFF0F0';
				}
				if (er == 2){
					//var t = _('msg');
					var t = "Please fill message field";
					//t.style.backgroundColor = '#FFF0F0';
				}
				if (er == 3){
					//var t = _('msg');
					var t = "Please use 'New comment' form to post your comment";
					//t.style.backgroundColor = '#FFF0F0';
				}
				if (er == 4){
					//var t = _('msg');
					var t = "You already post your opinion today. Please come back tomorrow.";
					//t.style.backgroundColor = '#FFF0F0';
				}
				target = document.getElementById('errorCode');
				target.innerHTML = "<p style=\"padding:0 0 6px 10px; margin:0; color: #FF9900;\">" + t + "</p>";
			}
		}
	}
}

