var ajaxm = {};

/**
 * Definiowane kotwice dla wyswietlania wynikow
 *
 */

ajaxm.singlefield = 'id_diva';
ajaxm.method = 'POST';
ajaxm.fields = new Array();
/**
 * Funkcja wysyła żądanie do serwera
 *
 * @param {string} method 		metoda wysylania parametrów POST lub GET
 * @param {String} filePath		nazwa pliku/scieżka z nazwą pliku wykonywanego
 * @param {String} params		parametry URLa
 * @param {String} resultDivName	Output Div
 */

ajaxm.sendRequest = function(filePath, params) {
	//ajaxm.TWOJA_NAZWA = resultDivName;
  if (window.XMLHttpRequest) {
    var xmlhr = new XMLHttpRequest();
  } else {
    var xmlhr = new ActiveXObject('MSXML2.XMLHTTP.3.0');
  }
        
  xmlhr.open(ajaxm.method, filePath, true);
  xmlhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 

  xmlhr.onreadystatechange = function() {
    var resultDiv = document.getElementById(ajaxm.singlefield);
    if (xmlhr.readyState == 1) {
      resultDiv.innerHTML = '<img src="images/uploader.gif" /> <b>pobieranie danych...</b>'; 
    } else if (xmlhr.readyState == 4 && xmlhr.status == 200) {
      if (xmlhr.responseText) {
        resultDiv.innerHTML = xmlhr.responseText;
      }
    } else if (xmlhr.readyState == 4) {
      alert('Invalid response received - Status: ' + xmlhr.status);
    }
  }
  xmlhr.send(params);
}

ajaxm.sendSingleRequest = function(filePath, params, resultDivName, flag, loadingStr) {
    if (window.XMLHttpRequest) {
        var xmlhr = new XMLHttpRequest();
    } else {
        var xmlhr = new ActiveXObject('MSXML2.XMLHTTP.3.0');
    }

    xmlhr.open('POST', filePath, true);
    xmlhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;'); 

    xmlhr.onreadystatechange = function() {

        if (xmlhr.readyState == 1) {
            if(flag == true) {
                document.getElementById(resultDivName).innerHTML = '<img src="images/uploader.gif" /> <b>' + loadingStr + '</b>';
            } else{
                document.getElementById(resultDivName).innerHTML = '<b>' + loadingStr + '</b>';
            }
        } else if (xmlhr.readyState == 4 && xmlhr.status == 200) {
            if (xmlhr.responseText) {
                document.getElementById(resultDivName).innerHTML = xmlhr.responseText;
            }
        } else if (xmlhr.readyState == 4) {
            alert('Invalid response received - Status: ' + xmlhr.status);
        }
    }
    xmlhr.send(params);
}

ajaxm.sendOpinieRequest = function(filePath, params, resultDivName) {
    if (window.XMLHttpRequest) {
        var xmlhr = new XMLHttpRequest();
    } else {
        var xmlhr = new ActiveXObject('MSXML2.XMLHTTP.3.0');
    }

    xmlhr.open('POST', filePath, true);
    xmlhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded;'); 

    xmlhr.onreadystatechange = function() {

        if (xmlhr.readyState == 1) {
            document.getElementById(resultDivName).innerHTML = '<img src="images/opinie/ladowanie.gif" />';
        } else if (xmlhr.readyState == 4 && xmlhr.status == 200) {
            if (xmlhr.responseText) {
                document.getElementById(resultDivName).innerHTML = xmlhr.responseText;
            }
        } else if (xmlhr.readyState == 4) {
            alert('Invalid response received - Status: ' + xmlhr.status);
        }
    }
    xmlhr.send(params);
}


ajaxm.sendMultiRequest = function(filePath, params) {
  if (window.XMLHttpRequest) {
    var xmlhr = new XMLHttpRequest();
  } else {
    var xmlhr = new ActiveXObject('MSXML2.XMLHTTP.3.0');
  }
        
  xmlhr.open(ajaxm.method, filePath, true);
  xmlhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); 

  xmlhr.onreadystatechange = function() {
    var resultDiv = new Array();
    var i = 0;
    for(i=0; i<ajaxm.fields.length;i++){
    	resultDiv[i] = document.getElementById(ajaxm.fields[i]);
    }
    
    if (xmlhr.readyState == 1) {
    	for(i=0; i<ajaxm.fields.length; i++){
            if(resultDiv[i].innerHTML != null)
            {
                resultDiv[i].innerHTML = '<img src="images/uploader.gif" /> <b>pobieranie danych...</b>'; 
            }
      	}
    } else if (xmlhr.readyState == 4 && xmlhr.status == 200) {
      if (xmlhr.responseText) {

      	var response = xmlhr.responseText;
      	var vars = response.split('||');

      	for(i=0; i<resultDiv.length;i++){
      		if(vars[i]!=''){
        		resultDiv[i].innerHTML = vars[i];
        	}
        }
      }
    } else if (xmlhr.readyState == 4) {
      alert('Invalid response received - Status: ' + xmlhr.status);
    }
  }
  xmlhr.send(params);
}

/**
 * Przykład funkcji wysylającej
 * 
 * @param 	moze posiadac dowolna liczbe parametrow
 *
 * @uses	ajaxm.sendRequest()
 */

/**
ajaxm.presentVideo = function() {
  var params = 'dowolne parametry';	// format parametr1=wartosc1&parametr2=wartosc2
  var filePath = 'index.php';		// nazwa pliku wykonujacego
  ajaxm.sendRequest(filePath, params, ajaxm.VIDEO_PLAYER_DIV); // wywołanie żądania
};
*/

