var parameters = new Array();
var httpObject = null; //--> // 
var template;
var url="http://www.euraxess.hr/integration/";

function getHTTPObject(){   
	if (window.ActiveXObject) 
		return new ActiveXObject("Microsoft.XMLHTTP"); 
	else if (window.XMLHttpRequest) return new XMLHttpRequest();   
	else {
		alert("Your browser does not support AJAX.");
		return null;
	}
}
// Change the value of the outputText field
function setContent(){
	if(httpObject.readyState == 4){
	    var div_element = document.getElementById(parameters['destination']);
	    if (div_element != null && typeof(div_element)!="undefined") {
	    // alert(httpObject.responseText);
	        div_element.innerHTML = applyTemplate(httpObject.responseText);
              if(divs_content) {
               hideProgressBox();
              }
	    } else {
	    	alert('DIV element with ID'+parameters['destination']+'does not exists');
	    	return;
	    }
	        
	} 
}

function executeQuery(page){
 	httpObject = getHTTPObject();
 	if (httpObject != null) { 
 	    var query_string = 'country='+parameters['country']+'&researchfield='+parameters['researchfield'] + '&organisationid='+parameters['organisationid'];
 	    query_string = query_string + '&marie='+ parameters['marie']+'&offset='+parameters['offset']+'&limit='+parameters['limit']+'&templateid='+parameters['templateid']+"&page="+page;
 	    query_string = query_string + "&showform=" + parameters['showform'] + "&showpag=" + parameters['showpag'] + "&showres=" +parameters['showres']+"&orderby="+parameters['orderby'];
           if(parameters['what']=="FG") {
              query_string = query_string + "&careerstage=" + parameters['careerstage'];
           }
           if(parameters['what']=="PI") {
              query_string = query_string + "&subject=" + parameters['subject'];
           }
 	    if(parameters['what']=="PI" || parameters['what']=="JV" ) {
        // Parse URI
 	      var sGet = window.location.search;
 	      //alert(sGet);
 	      sGet = sGet.substr(1);
 	      var sNVPairs = sGet.split("&");
 	      for (var i = 0; i < sNVPairs.length; i++) {
         var sNV = sNVPairs[i].split("=");
         var sName = sNV[0];
         var sValue = sNV[1];
         if(sName=="cmd" && (sValue=="showServices" || sValue=="showJobs")) {
          var addExecuteQuery = 1;
         }
         query_string = query_string + "&" + sName + "=" + sValue;
        }
 	    }
 	    if(parameters['what']=="JV" || parameters['what']=="") {
             query_string = url + "lib/jobs.php?" +query_string;
           } else if(parameters['what']=="FG") {
             query_string = url + "lib/fellowships.php?" +query_string;
           } else if(parameters['what']=="PI") {
             query_string = url + "lib/practical_information.php?" +query_string;
           }
 	    query_string = query_string + '&executequery=' + parameters['executequery'];
 	    if(addExecuteQuery==1 || parameters['home']==1) {
        query_string = query_string + '&executequery=1';
       }
	   if(typeof(parameters['countryForm'])!= "undefined" && parameters['countryForm'] != '') {
        query_string = query_string + '&countryForm='+parameters['countryForm'];
       }
 	    //alert(query_string);
 	    // alert(httpObject);
 		httpObject.open("GET", query_string, true);
 		httpObject.send(null);
 		httpObject.onreadystatechange = setContent;
 	}
}

function doJob(frm) {
 //alert(frm.txtCountry.value);
 if(parameters['what']=="JV") {
  if (frm.chkMarieCurie.checked) {
 	parameters['marie'] = 1;
  } else {
 	parameters['marie'] = 0;
  }
 }
 parameters['country'] = frm.txtCountry.value;
 parameters['countryForm'] = frm.txtCountry.value;
 if(parameters['what']!="PI") {
  parameters['researchfield'] = frm.txtResearchField.value;
 }
 if(parameters['what']=="FG") {
  parameters['careerstage'] = frm.txtCareerStage.value;
 }
 if(parameters['what']=="PI") {
  parameters['subject'] = frm.txtSubject.value;
 }
 parameters['executequery'] = 1;
// parameters['organisationid'] = frm.txtOrganisation.value;
 page = '1';


 showProgressBox();

 executeQuery(page);
} 

function init() {
	// Execute Query and start Ajax work
	executeQuery('1');
}

function goToPage(offset1,page1) {
  parameters['offset'] = offset1;
  parameters['executequery'] = 1;
  page = page1;

  showProgressBox();

  executeQuery(page);
}

function applyTemplate(strResponse) {
var rows = new Array();
var rowsData = new Array();
var rowsNewData = new Array();
var rowsTable = new Array();
var i;
var all = new Array();

   if (strResponse != null && strResponse !='') {
		rows = strResponse.split('###');
		numrows = rows.length
		k = 0;
		j = 0;
		for (i = 0;i<numrows;i++) {
		 index = rows[i].search(/Data/);
			if (index != -1 ) {
				rowsData[k] = rows[i].substr(index+4);
				k++;
			} else {
			    rowsTable[j] = rows[i];
			    j++;
			}
		}
		var numrowsData = rowsData.length;	
		i = 0;	
		for (i = 0;i<numrowsData;i++) {
			rowsNewData[i] = makeRowByTemplate(rowsData[i]);
		}
		Table_length = rowsTable.length;
		
		all = rowsTable[0];
		i = 0;
		for (i = 0;i<numrowsData;i++) {
		   all += rowsNewData[i];
		}
		i = 0;
		for (i = 1;i<Table_length;i++) {
		 	all += rowsTable[i];
		}
			return all;
	}
		
}

function makeRowByTemplate(strRow) {
var inside_array = new Array();
var elementsPar = new Array();
	index_start = strRow.search(/Start:/);
	index_end = strRow.search(/:End/);
	inside = strRow.substr((index_start+6),index_end-(index_start+6));
	inside_array = inside.split(';;;');
	len = inside_array.length
	for (i = 0; i< len;i++) {
	    tempArray = new Array();
	    tempArray = inside_array[i].split('==');
		elementsPar[i] = tempArray[1];
		
	}
	
 if(parameters['what']=="JV" || parameters['what']=="") {
	str1 = template.replace(/#postdate#/,elementsPar[0]);
	str2 = str1.replace(/#applicationdeadline#/,elementsPar[1]);
	str3 = str2.replace(/#jobstartingdate#/,elementsPar[2]);
	str4 = str3.replace(/#marie#/,elementsPar[3]);
	str5 = str4.replace(/#jobtitle#/,"<a target='_blank' href='http://ec.europa.eu/euraxess/index_en.cfm?l1=1&l2=1&l3=1&IdJob="+elementsPar[5]+"'>"+elementsPar[4]+"</a>");
	str6 = str5.replace(/#jobsummary#/,elementsPar[6]);
	str7 = str6.replace(/#country#/,elementsPar[7]);
	str8 = str7.replace(/#organisation#/,elementsPar[8]);
	str9 = str8.replace(/#researchfield#/,elementsPar[9]);
 }
 if(parameters['what']=="FG") {
	str1 = template.replace(/#organisation#/,elementsPar[0]);
	str2 = str1.replace(/#siteURL#/,elementsPar[1]);
	str3 = str2.replace(/#careerstage#/,elementsPar[2]);
	str4 = str3.replace(/#researchfield#/,elementsPar[3]);
	str9 = str4.replace(/#country#/,elementsPar[4]);
 }
 if(parameters['what']=="PI") {
	str1 = template.replace(/#organisation#/,elementsPar[0]);
	str2 = str1.replace(/#siteURL#/,elementsPar[1]);
	str9 = str2.replace(/#country#/,elementsPar[4]);
 }

	first_part = strRow.substr(0,index_start);
	return first_part+str9+"</td></tr>";
	 
}


