var ctime;
var reqRejFieldsArr = new Array('nick','email');
var reqRecFieldsArr = new Array('tytul','autor','tresc');

function makeRequest(url, str, fieldID, http_request, akcja, formID) {
	
		if (!formID) formID = 'null';

        http_request = false;

        if (window.XMLHttpRequest) { 
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) {
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Poddaję się :( Nie mogę stworzyć instancji obiektu XMLHTTP');
            return false;
        }
        http_request.onreadystatechange = function() {
			showEffects(http_request, fieldID, akcja, formID);
		};
        http_request.open('POST', url, true);
		http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");		
        http_request.send(str);

    }

    function showEffects(http_request, fieldID, akcja, formID) {

        if (http_request.readyState == 4) {
			
            if (http_request.status == 200) {

				switch (akcja) {
					case  1: // przypomnienie hasła
								document.getElementById('passRes').innerHTML = http_request.responseText;
								document.getElementById('passRes').style.display = "block";
							break;
					case  2: // zmiana hasła
								document.getElementById('passRes').innerHTML = http_request.responseText;
								document.getElementById('passRes').style.display = "block";
							break;
					default: // formularz rejestracyjny
							if (fieldID == 0) {
								document.getElementById('responseDiv').innerHTML = http_request.responseText;					
							} else {
								if (http_request.responseText.match(/^OK/)) {
									document.getElementById(fieldID).style.borderColor = '#00ff00';
									document.getElementById(fieldID).style.background = "#000000";						
									document.getElementById('isok_'+fieldID).value = 1;
								} else {
									document.getElementById(fieldID).style.borderColor = '#FA0000';
									document.getElementById(fieldID).style.background = "#aa0000";
									document.getElementById('isok_'+fieldID).value = 0;
								}

								switch (formID) {
									case 'rejestracja': checkAll(reqRejFieldsArr); break;
									case 'recenzja': checkAll(reqRecFieldsArr); break;
								}

							}
							break;
				} // switch
            } else {
            //    alert('Wystąpił problem z zapytaniem.');
            }
        }

    }

	function checkField(fieldID,formID) {
		var checkFieldRequest;
		fieldValue = document.getElementById(fieldID).value;
		aURL = "./users/rejestruj/ajx_actionResults.php";
		STR = "fieldID="+fieldID+"&fieldValue="+fieldValue;
		makeRequest(aURL, STR, fieldID, checkFieldRequest, 0, formID);
	}
	
	function checkAll(reqFieldsArr) {
		var reqFieldsArrLength = reqFieldsArr.length;
		var suma = 0;
		var sndBtn = this.document.getElementById('formSend');
		for (i = 0; i < reqFieldsArrLength; i++) suma += eval(document.getElementById('isok_'+reqFieldsArr[i]).value);
	
		if (suma == reqFieldsArrLength) { sndBtn.disabled = false; sndBtn.className='formSendHv'; }
			else { sndBtn.disabled = true; sndBtn.className='formSendNr'; }
	}
	
	function rejestrSend() {
		var rejestrSendRequest;
		var fieldID = 0;
		aURL = "./users/rejestruj/ajx_actionResults.php";
		STR = "fieldID=0";
		var reqFieldsArr = reqRejFieldsArr;
		var reqFieldsArrLength = reqFieldsArr.length;
		for (i = 0; i < reqFieldsArrLength; i++) 
		  	STR += "&"+reqFieldsArr[i]+"="+document.getElementById(reqFieldsArr[i]).value;
		STR += "&nazwa="+document.getElementById('nazwa').value;
		makeRequest(aURL, STR, fieldID, rejestrSendRequest, 0);
	}

	function remindPass() {
		var remindPassRequest;
		var fieldID = 0;
		aURL = "./users/rejestruj/ajx_passRemindResults.php";
		STR = "remail="+document.getElementById('remail').value;
		makeRequest(aURL, STR, fieldID, remindPassRequest, 1);
	}

	function changePass() {
		var changePassRequest;
		var fieldID = 0;
		aURL = "./users/rejestruj/ajx_passChangeResults.php";
		STR = "pass1="+document.getElementById('haslo1').value+"&pass2="+document.getElementById('haslo2').value;
		makeRequest(aURL, STR, fieldID, changePassRequest, 2);
	}

