function MiniSite(mypage, myname) {
	var w = 810;
	var h = 530;
	var url = mypage;
	var winl = (screen.width - w) / 2;
//var wint = (screen.height - h) / 2;

	winprops = 'height='+h+',width='+w+',top=50,left='+winl+',scrollbars=yes,channelmode=0,dependent=0,directories=0,fullscreen=0,location=0,menubar=0,resizable=0,status=1,toolbar=0,'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}

function NewWindow(mypage, myname) {
	var w = 810;
	var h = 530;
	var url = mypage;
	var winl = (screen.width - w) / 2;

	winprops = 'height='+h+',width='+w+',top=50,left='+winl+',scrollbars=yes,channelmode=0,dependent=0,directories=0,fullscreen=0,location=0,menubar=0,resizable=0,status=1,toolbar=0,'
	win = window.open(mypage, myname, winprops)
	if (parseInt(navigator.appVersion) >= 4) { win.window.focus(); }
}


function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


// toggle visibility
function toggle(s_){
	var o_div = document.getElementById(s_);
	o_div.style.display = o_div.style.display=='none'?'block':'none';
}


function validate_email(email) {
		var regexpEmail = /\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/;
		return isEmpty(email) || regexpEmail.test(email);
}

function maximize() {
window.moveTo(0,0)
window.resizeTo(screen.availWidth, screen.availHeight)
}


/* submit newsletter */
function submitNewsletter(url,waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id) {
	var limit_char = 3;
	var email = window.document.newsletter_form.email_newsletter.value;

	if (!validate_email(email))
	{
		document.getElementById('status_msg_nl').innerHTML = 'Email Inválido';
		return false;
	}
				
	get_request(url ,'email=' + email,'POST',waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id);

	return false;
}	


/* submit da pesquisa */
function submitSearch(url,waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id, str_post2) {
	var limit_char = 3;

	var str_post = '';

	if (str_post2 != '') {str_post = str_post2;}

	else {
		var search = window.document.search_form.keywords.value;
		//var id_dept = inspect(document.forms.search_form.select_type);
	
		/* elimina espaços no inicio e fim da string */
		var regexp = /^\s{1,}/g;
		search = search.replace (regexp,"");
		regexp = /\s{1,}$/g;
		search = search.replace (regexp,"");

		if (search.length <= limit_char)
		{
			document.getElementById('status_msg_search').innerHTML = 'Pesquisa demasiado vaga.';
			window.document.search_form.keywords.value = '';
			return false;
		}
		str_post = 'keywords=' + search;// + '&id_dept=' + id_dept;
	}				
	get_request(url ,str_post,'GET',waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id);

	return false;
}	


/* submit da pesquisa */
function submitAdvSearch(url,waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id, str_post2) {
	var form = document.forms.adv_search_form;
	var id_dept = form.id_dept.value;
	var str_post = '';
	
	if (str_post2 != '') {str_post = str_post2;}
	else {
		
		for(i=0;i<form.length;i++) {

			if (form[i].name!='id_dept')
			{
				
				str_post = str_post + form[i].name + '=' + inspect(form[i]) + '&';
			}
		}
		str_post = str_post + 'type=1&id_dept=' + id_dept;
	}
/*	alert(url + '?' + str_post);*/
	get_request(url,str_post,'GET',waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id);

	return false;
}	


function inspect(list) {
	if (list.type =='select-one' || list.type =='select-multiple')
	{
		return list.options[list.selectedIndex].value;
	}
	if (list.type =='checkbox')
	{
		return (list.checked ? list.value : '');
	}

}


function clearHTML(div_id) {
	document.getElementById(div_id).innerHTML = '';
}

// GENERAL AJAX REQUEST HANDLING
function get_request(file, querystring, method,waiting_elem_id, waiting_elem_msg_before, waiting_elem_msg_after,  elem_id) {

	if (waiting_elem_id != '')
		document.getElementById(waiting_elem_id).innerHTML = waiting_elem_msg_before;

	var xmlObj = get_xml_obj();

	xmlObj.onreadystatechange = function() 
	{
	if(xmlObj.readyState == 4){
	   response = xmlObj.responseText;
	   updateObj(elem_id,response, waiting_elem_id, waiting_elem_msg_after);
	 }
	}

	if (method == 'POST')
	{
		xmlObj.open (method, file);
		xmlObj.setRequestHeader ("Content-Type", "application/x-www-form-urlencoded");
		xmlObj.send (querystring);
	}
	else 
	{
		/*alert(file);
		alert(file.indexOf(".php"));
		if (file.substr(".php") != -1)	{
			file = file + '&' + querystring;
		}
		else {
			file = file + '?' + querystring;
		}
*/file = file + '?' + querystring;

		xmlObj.open ('GET', file);
		xmlObj.send (null);
	}


}

function updateObj(elem_id, data, waiting_elem_id, waiting_msg)
{
	if (waiting_elem_id != '')
		document.getElementById(waiting_elem_id).innerHTML = waiting_msg;
	
	document.getElementById(elem_id).innerHTML = data;

}



function get_xml_obj() {
	  var xmlObj = null;
	  
	  if(window.XMLHttpRequest){
		  xmlObj = new XMLHttpRequest();
	  } 
	  
	  else if(window.ActiveXObject){
		  xmlObj = new ActiveXObject('Microsoft.XMLHTTP');
	  } 
	  
	  else {
		  return;
	  }

	  return xmlObj;
	  
}



/* extract back end of string after searchString */
function getEnd(mainStr,searchStr) {
	foundOffset = mainStr.indexOf(searchStr)
	if (foundOffset == -1) {
		return null
	}
	return mainStr.substring(foundOffset+searchStr.length,mainStr.length)
}


/* utils */
 function isEmpty(s) {
	var regexpWhitespace = /^\s+$/;
	return  ((s == null) || (s.length == 0) || regexpWhitespace.test(s));
}


function serialize(form) {
	var svalue = '';
	for(i=0;i<form.elements.length;i++) {
		
		if (form.elements[i].name != '') {
			if (i>0) {svalue += '&';}
			svalue += form.elements[i].name + '=' + form.elements[i].value; 
		}
	}
	return svalue;
}



function AdPopup(url) {
	NewWindow(url, 'abs_vminho');
}