/*
-------------------------------------------------------------------------------------------
 Portal V.2
 menu.js
 Mtodos relacionados com o funcionamento Portal do CIISCTE
-------------------------------------------------------------------------------------------
*/


//Metodo que cria um link com determinadas espcificaes
// Metodologia do link: <a href="javascript:MM_openBrWindow('http://ciiscte.iscte.pt/ciiscte_iscte/html/suporte/opiniao/opiniao.php','','scrollbars=yes,width=600,height=500')">Sugesto</a>
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}



function doPopups() {
  if (!document.getElementsByTagName) return false;
  var links=document.getElementsByTagName("a");
  for (var i=0; i < links.length; i++) {
    if (links[i].className.match("popup")) {
      links[i].onclick=function() {
        // Below - to open a full-sized window, just use: window.open(this.href);
        window.open(this.href, "", "top=40,left=40,width=600,height=400,scrollbars");
        return false;
      }
    }
  }
}



// Metodo que inprime determinado ID 
// O link e feito da seguinte maneira: <a href="#" onClick="printPage('cel_central');">link/button</a>
function printPage(ID) {
	var winprint = window.open("","printer","");
	var content = document.getElementById(ID).innerHTML;
	winprint.document.open();
	winprint.document.write('<html><head><title>Direcção de Serviços de Informática do ISCTE</title><link rel="stylesheet" type="text/css" media="screen" href="http://ciiscte.iscte.pt/teste/ciiscte_alunos/css/main.css"/></head><body onload=window.print();window.close();>');
	winprint.document.write(content);
	winprint.document.write('</body></html>');
	winprint.document.close();
	winprint.focus();
}



// Metodo que cria rollover dos Botes do Form
function hov(loc,cls){
   if(loc.className)
      loc.className=cls;
}


/*Mtodo que faz Disable ao right click (mouse)
var message="";

function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}

document.oncontextmenu=new Function("return false")
*/


// Mtodo que se utiliza no servio de Forward para ir para uma pgina seleciomnada
function goTo (page) {
/* This function is called from the navigation menu
   to jump to the designated URL. Empty values
   are ignored and "--" indicates a menu seperator    */
   
	if (page != "" ) {
		if (page == "--" ) {
			resetMenu();
		} else {
			document.location.href = page;
		}
	}
	return false;
}

function setCookie(name, value, domain, path, expires, secure) {
	if(!expires) {
		expires = new Date();
    	expires.setTime(expires.getTime() + 365 * 24 * 60 * 60 * 1000);
	}
	
  var curCookie = name + "=" + escape(value) +
      "; expires=" + expires.toGMTString() +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      ((secure) ? "; secure" : "");
  document.cookie = curCookie;
}

function getCookie(name) {
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}

function deleteCookie(name, domain, path) {
  if (getCookie(name)) {
    document.cookie = name + "=" +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}

var defaultToggleState = { 
	dsi: 'off', 
	apoio: 'on', 
	servicos: 'on', 
//	pfc: 'off',
	publicacoes: 'off', 
//	recursos: 'off',
	projectos: 'off'
};

var toggleState = new Array();

function setInitialToggleState() {
	for(var id in defaultToggleState) {
	    var state = getCookie("menu_toggle_" + id);
		toggleState[id] = (state) ? state : defaultToggleState[id];
		setElementToggleState(id, toggleState[id]);
	}
}

function setElementToggleState(id, state) {
	var display = state == 'off' ? 'none' : '';
	var dont_display = state == 'off' ? '' : 'none';
	var icon = state == 'off' ? '/imagens/list_bullet_branco_r.png' : '/imagens/list_bullet_branco_d.png';
	
	var element = document.getElementById(id);
	element.style.display = display;
	
	var element_icon = document.getElementById(id + '_icon');
	if(element_icon)
		element_icon.src = icon;

	var elipsis = document.getElementById(id + '_elipsis');
	if(elipsis)
		elipsis.style.display = dont_display;
}

function storeToggleState() {
	for(var id in toggleState) {
	    setCookie("menu_toggle_" + id, toggleState[id], 'dsi.iscte.pt', '/');
	}
}

function toggle(id) {
	toggleState[id] = toggleState[id] == 'on' ? 'off' : 'on';
	setElementToggleState(id, toggleState[id]);
	storeToggleState();
}
