schedule("window", externalLinks);
schedule("window", init);



function reloadJobAdvertiser(form)
{
	var val=form.category1.options[form.category1.options.selectedIndex].value;
	self.location='index.php?cat=' + val ;
}

function popUp(URL)
{
	eval("window.open('" + URL + "','windowName', 'toolbar=0,scrollbars=1,location=0,statusbar=1,menubar=0,resizable=1,width=500,height=500');");
}

function sizedPopUp(URL, width, height)
{
eval("window.open('" + URL + "', 'window2', 'width=" + width + ", height=" + height + ", location=no, menubar=no, status=no, toolbar=no, scrollbars=yes, resizable=yes');");
}


//http://www.sitepoint.com/article/standards-compliant-world
function externalLinks() 
{
 	if (!document.getElementsByTagName) 
 		return;
 
 	var anchors = document.getElementsByTagName("a");
 	for (var i=0; i<anchors.length; i++) 
 	{
   		var anchor = anchors[i];
   		if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "external")
     		anchor.target = "_blank";
 	}
};


function confirmEntry(action)
{
	input_box=confirm("Are you sure you want to " + action + "?");
	if (input_box == true)
		return true;
	else
		return false;
}

function confirmMessage(action)
{
	input_box=confirm(action);
	if (input_box == true)
		return true;
	else
		return false;
}

function printPage() {
  if (window.print)
    window.print()
  else
    alert("Sorry, your browser doesn't support this feature. Use the File menu on your browser to select Print.");
}





function init() {
  prepareForm("jobadvertisement_category1","div_category2","/javascript/employmentcategories.php");
  prepareForm("tender_category1","div_category2","/javascript/tendercategories.php");
}

function prepareForm(formId,canvasId,file) {
  if (!document.getElementById) return false;
  if (!document.getElementById(formId)) return false;
  document.getElementById(formId).onchange = function() 
  {
    var data = "";
    /*
    for (var i=0; i<this.elements.length; i++) 
    {
      data+= this.elements[i].name;
      data+= "=";
      data+= escape(this.elements[i].value);
      data+= "&";
    }*/
   
    
    data = this.name + "=" + this.value;
    
    return (!sendData(data,file,canvasId));
  };
}

function sendData(data,file,canvasId) {
  var request = getHTTPObject();
  if (request) {
    request.onreadystatechange = function() {
      parseResponse(request,canvasId);
    };
    request.open( "POST", file, true );
    request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    request.send(data);
    return true;
  } else {
    return false;
  }
}

function parseResponse(request,canvasId) {
  if (request.readyState == 4) {
    if (request.status == 200) {
	    
      var canvas = document.getElementById(canvasId)
      canvas.innerHTML = request.responseText;
      fadeUpErrors();
      fadeUpFeedback();
      init();
    }
  }
}

function emptyElement(element) {
  while (element.hasChildNodes()) {
    element.removeChild(element.lastChild);
  }
}

function fadeUp(element,red,green,blue) {
  if (element.fade) { clearTimeout(element.fade); }
  if (red == 255 && green == 255 && blue == 255) {
    element.style.backgroundColor = "transparent";
    return;
  }
  var newred = red + Math.ceil((255 - red)/10);
  var newgreen = green + Math.ceil((255 - green)/10);
  var newblue = blue + Math.ceil((255 - blue)/10);
  element.style.backgroundColor = "rgb("+newred+","+newgreen+","+newblue+")";
  element.fade = setTimeout(function() { fadeUp(element,newred,newgreen,newblue); },80);
}

function fadeUpErrors() {
  var errors = getElementsByClassName("error");
  for (var i=0 ; i<errors.length; i++) {
    fadeUp(errors[i],204,51,102);
  }
}

function fadeUpFeedback() {
  var feedback = getElementsByClassName("feedback");
  for (var i=0 ; i<feedback.length; i++) {
    fadeUp(feedback[i],153,204,0);
  }
}

function getElementsByClassName(name) {
  var results = new Array();
  var elems = document.getElementsByTagName("*");
  for (var i=0; i<elems.length; i++) {
    if (elems[i].className.indexOf(name) != -1) {
      results[results.length] = elems[i];
    }
  }
  return results;
}

function getHTTPObject() {
  var xhr = false;
  if (window.ActiveXObject) {
    try {
      xhr = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
      try {
        xhr = new ActiveXObject("Microsoft.XMLHTTP");
      } catch(e) {
        xhr = false;
      }
    }
  } else if (window.XMLHttpRequest) {
    try {
      xhr = new XMLHttpRequest();
    } catch(e) {
      xhr = false;
    }
  }
  return xhr;
}

function bookmark(btype,id) 
{
   	var request = getHTTPObject();
	if (request) 
	{
		request.onreadystatechange = function() 
		{
			parseResponse(request,'bookmark-message');
		};
		request.open( "GET", '/javascript/bookmark.php?category='+btype+'&id='+id, true );
		request.send(null);
	} 
	return false;
}

function goToStep(num)
{
	document.forms[1].next_form.value=num; 
	document.forms[1].submit();
}