var ajaxCheckingNAT = false;
var ajaxLoadingReceiver = false;
var ajaxTimer = false;
var ajaxGettingReceiver = false;
var ajaxPreloadImgSrc = 'http://tracker.cztorrent.net/images/preloader.gif';
var ajaxPreloadImg = new Image(16,16);
ajaxPreloadImg.src = ajaxPreloadImgSrc;

function getAjaxUrl() {
	var url = location.href;
	return url.match(/((http|https):\/\/(.[^/]+))/)[1] + '/ajax/';
}

function sendRequest(url) {
	if (window.ActiveXObject) {
		httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else {
		httpRequest = new XMLHttpRequest();
		httpRequest.overrideMimeType('text/xml');
	}
	httpRequest.open("GET", getAjaxUrl()+url, false);
	httpRequest.send(null);
	return httpRequest.responseText;
}
function sendPostRequest(url, values) {
	if (window.ActiveXObject) {
		var httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
	}
	else {
		var httpRequest = new XMLHttpRequest();
		httpRequest.overrideMimeType('text/xml');
	}
	httpRequest.open("POST", getAjaxUrl()+url, false);
	httpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');	
	httpRequest.send(values);
	return httpRequest.responseText;
}

function loadSpeedStats(tid) {
	divID = 'torrent_rychlost';
	if (document.getElementById(divID)) {
		var DIV = document.getElementById(divID);
		DIV.innerHTML = "";
		DIV.innerHTML = "<img src='"+ ajaxPreloadImgSrc +"' alt='Nahrávám' />";
		var respond = sendRequest('speed-stats/'+ tid);
		DIV.innerHTML = "";
		DIV.innerHTML = respond;
	}
}

function loadFileList(tid) {
	divID = 'files_list';
	if (document.getElementById(divID)) {
		var DIV = document.getElementById(divID);
		DIV.innerHTML = "";
		DIV.innerHTML = "<img src='"+ ajaxPreloadImgSrc +"' alt='Nahrávám' />";
		var respond = sendRequest('torrent-files/'+ tid);
		DIV.innerHTML = "";
		DIV.innerHTML = respond;
	}
}

function ajaxCheckNAT(peerid) {
	if (document.getElementById(peerid) && !ajaxCheckingNAT) {
		ajaxCheckingNAT = true;
		document.getElementById(peerid).className = '';
		document.getElementById(peerid).innerHTML = "<img src='"+ ajaxPreloadImgSrc +"' alt='Nahrávám' />";
		var respond = sendRequest('nat-check/'+ peerid);
		var setToActive = false;
		if (respond.search("active") > 0) setToActive = true;
		setTimeout("ajaxSetNAT('"+ peerid +"', "+ setToActive +")",500);
		return false;
	}
	else if (ajaxCheckingNAT) return false;
	else return true;
}
function ajaxSetNAT(peerid, setToActive) {
	if (document.getElementById(peerid)) {
		document.getElementById(peerid).innerHTML = "";
		if (setToActive) {
			document.getElementById(peerid).className = 'active';
			document.getElementById(peerid).title = 'Aktiv';
		}
		else {
			document.getElementById(peerid).className = 'passive';
			document.getElementById(peerid).title = 'Pasiv';
		}
	}
	else alert('Peerid nenalezen');
	ajaxCheckingNAT = false;
}

function ajaxReceiverInput() {
	if (ajaxTimer) {
		clearTimeout(ajaxTimer);
		ajaxLoadingReceiver = false;
	}
	if (document.getElementById('input_receiver').value.length>2 && !ajaxLoadingReceiver) {
		ajaxLoadingReceiver = true;
		ajaxTimer = setTimeout("ajaxReceiverLoad()", 500);
	}
}
function ajaxReceiverLoad() {
	document.getElementById('search_receiver').style.display = '';
	document.getElementById('search_receiver').innerHTML = "<div class='autocomplete'><img src='"+ ajaxPreloadImgSrc +"' alt='Nahrávám' /></div>";
	var respond = sendPostRequest('search-users/','username='+document.getElementById('input_receiver').value);
	document.getElementById('search_receiver').innerHTML = '';
	document.getElementById('search_receiver').innerHTML = respond;
	ajaxLoadingReceiver = false;
}

function poll_sendVote(pid, oid) {
	id = 'poll_'+ pid;
	var element = document.getElementById(id);
	element.innerHTML = 'Odesílám hlas...';
	var response = sendRequest('poll-vote-check/'+ oid);
	if (response == 'OK') {
		response = sendRequest('poll-show/'+ pid);
		element.className = 'results';
		element.innerHTML = response;
		
		votesId = 'votes_'+ pid;
		votesElem = document.getElementById(votesId);
		votesElem.innerHTML = sendRequest('poll-votes/'+ pid);
	}
	else element.innerHTML = 'Chyba: '+ response;
}

function TLIST_switchBookmark(e, tid) {
	var response = sendRequest('switchBookmark/'+tid);
	if (response == 'OK') {
		if (e.className == 'bookms_star') {
			e.className = 'bookms_star_act';
		} else {
			e.className = 'bookms_star';
		}
	}
	return false;
}