function getWinNm() {
// Genera un nom de finestra per a poder-ne obrir més d'una
///////////////////////////////////////////////////////////
  var now = new Date();
  var hr = new String(now.getHours());
  var mn = new String(now.getMinutes());
  var sc = new String(now.getSeconds());
  var ms = new String(now.getMilliseconds());
  var winNm = hr + mn + sc + ms;
  return winNm;
}

function oWin(adr, x, y, z) {
// Obre una finestra nova amb els paràmetres passats o per defecte.
// El paràmetre 'z' obre una finestra sense barres d'estat ni botons
////////////////////////////////////////////////////////////////////
/* Exemples de crida
adr             oWin('blanc.htm')
adr,x,y         oWin('blanc.htm', '100', '100')
*/

  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('450');
	var zdef = new String('0');
	var propietats = new String('');

	if(nargs<4) z = zdef;
  if((nargs<3)||(x=='')) {
    x = new String(xdef);
    y = new String(ydef);
  }
	switch(z) {
		case '0': propietats = ',menubar=yes,resizable=yes,scrollbars=yes,status=yes';
							break;
		case '1': propietats = ',menubar=no,resizable=yes,scrollbars=yes,status=no';
							break;
		default:	propietats = ',menubar=yes,resizable=yes,scrollbars=yes,status=yes';
	}
  var messWin = window.open(adr,getWinNm(),'width='+ x + ',height=' + y + propietats);
}

function obtNumSes(s) {
// Obté el numero de sessió del frame 'logobar', si existeix, i si no del top.window.name
// Automatitza l'obtenció del numSes independentment de si la finestra ha estat oberta
// amb oWinSes o amb oWinName
// s='1' retorna l'oldsession. s='2' retorna una cadena amb session + oldession.
///////////////////////////////////////////////////////////////////////////////////////// 
  var nargs = new Number(arguments.length);
  var ns = new String();
  var s_nou = new String(''); var s_vell = new String('');

  if (nargs<1) s = '0';

// Assigna els valors de sessió segons el tipus de finestra
  if(top.logobar==null) { 
    if (window.name=='frm_viewMssgHead') {
       s_nou = parent.opener.top.logobar.document.IDs.session.value;
       s_vell = parent.opener.top.logobar.document.IDs.oldsession.value;
    }
    else {
       s_nou = top.window.name.substring(0,128);
       s_vell = top.window.name.substring(128,top.window.name.length);
    }
  }
  else {
    s_nou = top.logobar.document.IDs.session.value;
    s_vell = top.logobar.document.IDs.oldsession.value;
  }

// Retorna session, oldsession o tots dos segons el paràmetre passat.
  switch(s) {
    case '0': ns = s_nou;
              break;
    case '1': ns = s_vell;
              break;
    case '2': ns = s_nou + s_vell;
              break;
    default:  break;
  }
  return ns;
}

function oWinSes(adr, x, y) {
// Obre una finestra nova amb numSes
////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('450');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var numSes = obtNumSes();
  var cgi = '/FinestraNova.html?s=' + numSes + '&htm=' + adr + '&appid=' + genDir('campus');
  var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function oWinName(adr, x, y) {
// Com oWin però posa el numSes en el window.name
//////////////////////////////////////////////////
/* Exemples de crida
adr             oWin('blanc.htm')
adr,x,y         oWin('blanc.htm', '100', '100')
*/

  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('500');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }    
  
  var messWin = window.open(adr,obtNumSes('2'),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}


function oWinSesName(adr, x, y) {
// Obre una finestra nova amb numSes al top.logobar i al window.name.
////////////////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('500');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }  
  var numSes=obtNumSes();    
  var cgi = '/FinestraNova.html?s=' + numSes + '&htm=' + adr + '&appid=' + genDir('campus');
  var messWin = window.open(cgi,obtNumSes('2'),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function _oWinSesName(adr, x, y) {
// Obre una finestra nova amb numSes. Cal passar el camí complet d'adr
/////////////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('500');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var numSes = obtNumSes();
  var cgi = '/UOC/a/informacio/cercador/FinestraNova2.html?s=' + numSes + '&htm=' + adr;
  var messWin = window.open(cgi,numSes,'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function oWinSesLogo(adr, x, y) {
  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('450');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var numSes = obtNumSes();
//  var cgi = '/UOC/a/informacio/cercador/FinestraNova.html?s=' + numSes + '&htm=' + adr + '&appid=';
  var cgi = '/FinestraNova.html?s=' + numSes + '&htm=' + adr + '&appid=';
  var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');

}


function oWinBotons(adr, x, y) {
// Obre una finestra nova amb els paràmetres passats o per defecte.
//////////////////////////////////////////////////////////////////
/* Exemples de crida
adr             oWin('blanc.htm')
adr,x,y         oWin('blanc.htm', '100', '100')
*/

  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('450');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var messWin = window.open(adr,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,statusbar=yes,toolbar=yes,status=yes');
}

function avisEspera(msg, x, y) {
  var inici_html = "<html>\n<head>\n<title></title>\n</head>\n<body bgcolor=\"#fff5e0\">\n\n<font face=\"Arial\" size=\"-1\">\n";
  var final_html = "\n</font>\n<p align=\"center\"><a HREF=\"javascript:self.close()\"><img src=\"/UOC/a/mc-icons/sortir.gif\" border=0></a></p>\n\n</body>\n</html>";
  var s = inici_html + msg + final_html;

  var nargs = new Number(arguments.length);
  var xdef = new String('400');
  var ydef = new String('200');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }
  var messWin = window.open('',getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');

  d = messWin.document;
  d.open();  d.write(s);  d.close();
}

function doTren(adr, x, y) {
// Obre finestra del tren amb numSes
// adr del tipus 'GAT_EXP.DADESBANC/dadesbanc_tren.dadesbanc'
// Opcions: adr: obre amb dimensions predefinides
//          adr,x,y: obre en finestra nova de dimensions x i y
//          adr,'': carrega adr en el marc actual
//////////////////////////////////////////////////////////////
 var p = new String(''); 

 var nargs = new Number(arguments.length);
 var xdef = new String('750');
 var ydef = new String('450');   

 if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
 }

 p='https://';
 var numSes = obtNumSes();  // Amb el paràmetre 1 obté el nº de sessió antic. 
 var cgi = p + 'cv.uoc.edu' + '/tren/trenacc?s=' + numSes + '&modul=' + adr;

 if (nargs=='2')  self.location= p + location.hostname + '/tren/trenacc?s=' + numSes + '&modul=' + adr;
 else var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function doTrenHelp(adr, help, x, y) {
// Obre finestra del tren amb numSes i amb help
// adr del tipus 'GAT_EXP.DADESBANC/dadesbanc_tren.dadesbanc'
// Opcions: adr: obre amb dimensions predefinides
//          adr,x,y: obre en finestra nova de dimensions x i y
//          adr,'': carrega adr en el marc actual
//////////////////////////////////////////////////////////////
 var p = new String('');

 var nargs = new Number(arguments.length);
 var xdef = new String('750');
 var ydef = new String('450');

 if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
 }

 p='https://';
 var numSes = obtNumSes();  // Amb el par\340metre 1 obt\351 el n\272 de sessi\363 antic.
 var cgi = p + 'cv.uoc.edu' + '/tren/trenacc?s=' + numSes + '&modul=' + adr;
 var messWin = window.open('/UOC/trenInit.html?url='+cgi+'&help='+help,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}


function doPla(any,codi,lang, x, y)
// Obre la fitxa del pla docent d'una assignatura
// any:  Any acadèmic. Ex: 20031
// codi: Codi assignatura. Ex: 05.001
// lang: Idioma. Ex: CAT
// x,y:  dimensions de la finestra x i y
{
 var nargs = new Number(arguments.length);
 var xdef = new String('750');
 var ydef = new String('450');
 if(nargs<4) {
    x = new String(xdef);
    y = new String(ydef);
 }
 
 //var url="http://cv.uoc.edu/tren/trenacc/web/GATILLO.PLANDOCENTE?" + "any_academico="+ any + "&cod_asignatura="+codi+"&idioma="+lang+"&pagina=PD_PREV_SECRE";
 var url="http://cv.uoc.edu/tren/trenacc/web/GAT_EXP.PLANDOCENTE?" + "any_academico="+ any + "&cod_asignatura="+codi+"&idioma="+lang+"&pagina=PD_PREV_SECRE&cache=S";
 var messWin = window.open(url,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');	
}

function doIglu(adr, x, y) {
// Obre finestra del tren amb numSes
// adr del tipus 'trameses/plsql/tramweb.dades'
///////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('750');
  var ydef = new String('450');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var numSes = obtNumSes(1);  // Amb el paràmetre 1 obté el nº de sessió antic.   
  var cgi = 'http://iglu.uoc.es:448/' + adr + '?s=' + numSes;
  var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function doPrefer(opcio, tema) {
// Canvia les preferències
// En lloc d'escriure-les amb javascript, ho fem en HTML per a poder aplicar estils més fàcilment.
/////////////////////////////////////////////////////////////////////////////////////////////////
  var adr = new String();
  var ruta = new String('/cgi-bin/comuni/');

  var nargs = new Number(arguments.length);
  if(nargs<2) tema = new String('');
  else tema = '&t=' + tema;

  adr = ruta + opcio + '?s=' + obtNumSes() + tema;
  self.document.URL = adr;
}

function doVirtual(s) {
  var lang = new String(s);
  var nom = new String();
  var numSes = new String(top.logobar.document.IDs.session.value);
  var oldNumSes = new String(top.logobar.document.IDs.oldsession.value);

  nom = 'sessio' + numSes + 'sessiovell' + oldNumSes + 'lang' + lang;
  var adr = 'http://www.lavirtual.com/lavirtual.htm?lang=' + lang + '&s=' + numSes;
  var altura=screen.height; 
  var anchura=screen.width;
  var vent_x=770;
  var vent_y=500;
  var posx=(screen.width/2)-400;
  var posy=(screen.height/2)-300;
  var finestra =
window.open(adr,nom,'resizable=1,toolbar=1,location=0,directories=0,status=1,menubar=0,scrollbars=0,width=770,height=500,screenX='+posx+',screenY='+posy+',left='+posx+',top='+posy+'');
}

function inclou_css(css_explorer, css_netscape) {
// Aquesta funció importa el css que se li passi per paràmetre. El primer 
// paràmetre es el css per explorer i el segon per netscape. Si s'en posa
// només un, serà el css per tots dos navegador. Si no posem cap paràmetre
// els css inclòs es /UOC/uoc.css

  var quin_css='/UOC/uoc.css';
  var nargs = new Number(arguments.length);
  var unitat_local= 'file:///Q:';
  var tmp= location.href;
  if(nargs==1) quin_css=css_explorer;
  if(nargs==2)
   {  	if (navigator.appName == "Netscape") quin_css=css_netscape;
  	else quin_css=css_explorer;
   }

  if((tmp.indexOf('file:')>-1 || tmp.charAt(1)==':') && (quin_css.charAt(0)=='/')) {
		quin_css=unitat_local+quin_css;
	}
	document.write('<link rel="stylesheet" href="'+ quin_css +'" type="text/css">');
}

function doAjuda(num) {
// Obre una plana d'obertura i consulta d'incidències per a l'usuari actual
// El paràmetre num és el número de sessió, sinó es passa, s'obté el nº antic amb la funció obtNumSes('1');

	var nargs = new Number(arguments.length);
	var numSes;
	if(nargs<1) numSes = obtNumSes('1');  else  numSes = num;    
    	//var cgi = 'http://argentina.uoc.es/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	var cgi = 'http://cv.uoc.edu/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	//var cgi = 'http://trineu.uoc.es/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	var winNm = getWinNm();
	var messWin = window.open(cgi,winNm,'width=600,height=450,menubar=no,resizable=no,scrollbars=yes,status=yes');
}

function doUser(num) {
//Funció necessària per a que aparegui el formulari d'incidència d'Ajuda Informàtica
	var nargs = new Number(arguments.length);
	var numSes;
	if(nargs<1) numSes = obtNumSes('1');  else  numSes = num;      	
	//var cgi = 'http://argentina.uoc.es/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	//var cgi = 'http://trineu.uoc.es/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	var cgi = 'http://cv.uoc.edu/incidenciescv/pls/usr.NewIncidFromUser?sid='+ numSes;
	var winNm = getWinNm();
	var messWin = window.open(cgi,winNm,'width=600,height=450,menubar=no,resizable=no,scrollbars=yes,status=yes');
}

function doLlista(adr, x, y) {
// Obre finestra del trineu amb numSes
// adr del tipus 'campus/plsql/llistes.print_members?lid=5421&psid='
// Opcions: adr: obre amb dimensions predefinides
//          adr,x,y: obre en finestra nova de dimensions x i y
//          adr,'': carrega adr en el marc actual
//////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('600');
  var ydef = new String('400');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  var numSes = obtNumSes();
  var cgi = 'http://trineu.uoc.es:445/' + adr + numSes;
  if (nargs=='2') self.location= cgi;
  else var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function doRes(suid) {
	var numSes = obtNumSes();
	var cgi = '/UOC/a/resume_0.html?s='+numSes+'&uid=' + suid;
	var winNm = getWinNm();
	var messWin = window.open(cgi,winNm,'width=700,height=400,menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function doTrineu(adr, x, y) {
// Obre finestra del trineu amb numSes
// adr del tipus 'campus/plsql/llistes.print_members?lid=5421&psid='
// Opcions: adr: obre amb dimensions predefinides
//          adr,x,y: obre en finestra nova de dimensions x i y
//          adr,'': carrega adr en el marc actual
//////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  var xdef = new String('600');
  var ydef = new String('400');

  if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
  }

  if((adr.indexOf('Incidencies.showIncidFromUOC?sid=')!='-1')||(adr.indexOf('usr.newincidfromUser?sid=')!='-1')) var numSes = obtNumSes('1');
  else var numSes = obtNumSes();

  var cgi = 'http://trineu.uoc.es:445/' + adr + numSes;
  if (nargs=='2') self.location= cgi;
  else var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=no,scrollbars=yes,status=yes');
}

function doWrite(to,cc,re,bo) {
// Obre una finestra amb un missatge preadreçat
// El camp 'bo' pot contenir unes paraules que apareixeran al cos del missatge. Per a textos
// més extensos, cal passar el nom d'un fitxer .mail, que col.locarem al directori /home/tmp
// i que conté el text del cos del missatge.
////////////////////////////////////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  if(nargs<4) {
    cc = new String('');
    re = new String('');
    bo = new String('');
  }

  var cgi = new String();
  var numSes = obtNumSes();
  // if(bo.indexOf('.mail')==-1) cgi='/cgi-bin/bustia/wrte_fcnt0?s=' + numSes + '&l=pers&to=' + to + '&fr=&cc=' + cc + '&re=' + re + '&bo=' + bo;
  // else  cgi='/cgi-bin/bustia/wrte_fcnt0?s=' + numSes + '&to=' + to + '&fr=&cc=' + cc + '&re=' + re + '&fi=' + bo;

  if(bo.indexOf('.mail')==-1) cgi='/UOC/a/cgi-bin/ma_writeFS?s=' + numSes + '&l=pers&to=' + to + '&fr=&cc=' + cc + '&re=' + re + '&bo=' + bo + '&opId=new';
  else  cgi='/cgi-bin/bustia/wrte_fcnt0?s=' + numSes + '&to=' + to + '&fr=&cc=' + cc + '&re=' + re + '&fi=' + bo;


  var messWin = window.open(cgi,getWinNm(),'width=600,height=400,menubar=yes,resizable=no,scrollbars=yes,status=yes');
}

function statusMsg(msg) {
// Sense paràmetre esborra l'status i amb paràmetre mostra el missatge
//////////////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  if(nargs<1) var msg = ' ';
  self.status = msg;
}

function mouseOver(msg) {
  self.status = msg;
}

function mouseOut(msg) {
// Sense paràmetre esborra l'status i amb paràmetre mostra el missatge
/////////////////////////////////////////////////////////////////////
  var nargs = new Number(arguments.length);
  if(nargs<1) msg = ' ';
  self.status = msg
}

function si(x) {
// si() i no() canvien la icona petita de la UOC
////////////////////////////////////////////////
  document.images[x].src="http://campus.uoc.es/mc-icons/blar.gif"
}

function no(x) {
  document.images[x].src="http://campus.uoc.es/mc-icons/bla.gif"
}

function carregaImatges() {
// Precarrega les imatges passades com a paràmetre
//////////////////////////////////////////////////
  var llistaCarrega = new Array();
  var imatges = carregaImatges.arguments;
  if (document.images) {
    for (var i=0; i<imatges.length; i++) {
      llistaCarrega[i] = new Image;
      llistaCarrega[i].src = imatges[i];
    }
  }
}

function canviaImatge(imatge, nom) {
//Fa l'efecte de canviar la imatge existent per la passada com a paràmetre.
//Cal haver-li donat nom a la imatge amb l'etiqueta 'name' de l'HTML
////////////////////////////////////////////////////////////////////
	if(self.document.images) self.document.images[nom].src = imatge;
}

function enrera() {
// Pot substituir l'history.back. Si té history, fa un back; si és finestra nova inicial,
// la tanca; si l'anterior és l'entrada al campus, fa un reInici() (v.CLUB)
////////////////////////////////////////////////////////////////////////////////////////
  var wnom = new String(top.window.name);
  var historial = new Number(history.length);

  if(detectaVis()=='ne') historial = historial-1;

  if(historial>0) history.back();
  else {
    if(wnom!='') top.close();
    else reInici();
  }
}

function genDir(s) {
// Funció genèrica que retorna el nom del campus, la llengua o la ruta fins el nom
// del campus segons el paràmetre passat. El protocol i el domini s'extreuen des
// del document amb location.protocol i location.hostname;
// Si hom crida la funció des d'una plana d'informació associada (/ACRONIM/mat)
// agafa la llengua de la finestra top.main.claslist on es despleguen les aules.
//////////////////////////////////////////////////////////////////////////////////
  var ruta = location.pathname.split('/');
  if(ruta[2]=='mat') ruta = top.main.claslist.location.pathname.split('/');
  var r = new String();;

  switch(s) {
    case 'arrel'  : r = location.protocol + '//' + location.hostname;
                    break;
    case 'campus' : r = ruta[1];
                    break;
    case 'llengua': r = ruta[2];
                    break;
    default: break;
  }  
  return r;
}


function detectaVis() {
// Funció genèrica que retorna nom de codi del visualitzador
// Retorna 'ne' o 'ie'
////////////////////////////////////////////////////////////
  var s = new String();
  switch(navigator.appName) {
    case 'Netscape':  s = 'ne';
          break;
    case 'Microsoft Internet Explorer': s = 'ie';
          break;
    default: s = 'ie';
          break;
  }
  return s;
}

function reInici() {
// Torna a la plana d'inici tenint en compte la llengua del campus
//////////////////////////////////////////////////////////////////
  var numSes = obtNumSes();
  var adr = '/' + genDir('campus') + '/' + genDir('llengua') + '/extcgi_0.html?s=' + numSes + '&img=hola&cgi=hola';
  parent.location = adr;
}

function xatVeu(idv) {
	var adr = 'http://guatemala.uoc.es:8888/vchat/UOC/a/vchat/interface/EnterConnectionPublic.jsp?s=' + obtNumSes() + '&vid=' + idv;
	var accio = 'EnterConnection';
	var messWin = window.open(adr,accio,'width=600,height=500,menubar=no,resizable=no,scrollbars=no,status=no,location=no,toolbar=no');
}

/*
function obreBustia(lo,i1,i2,i3) {
  adr = new String();
  var nargs = new Number(arguments.length);
  var numSes = obtNumSes();
 
  if (numSes == 'extern') {
    alert ('Opció no disponible');
    return;
  }

  if(nargs<2) i1 = new String('blanc.gif');
  if(nargs<3) i2 = new String('blanc.gif');
  if(nargs<4) i3 = new String('blanc.gif');

  adr = genDir('arrel') + '/' + genDir('campus') + '/' + genDir('llengua') + '/cgi-bin/activi/debat_0?s=' + numSes + '&l=' + lo + '&img1=' + i1 + '&img2=' + i2 + '&img3=' + i3;
  oWin(adr,'600','400');
}
*/

function obreBustia(lo,i1,i2,i3) {
// Obre el CONVERSATION amb l'adreça generada.
/////////////////////////////////////////////////////////////////
  adr = new String();
  var nargs = new Number(arguments.length);
  var numSes = obtNumSes();

  if(nargs<2) i1 = new String('blanc.gif');
  if(nargs<3) i2 = new String('blanc.gif');
  if(nargs<4) i3 = new String('blanc.gif');

  adr = genDir('arrel') + '/' + genDir('campus') + '/' + genDir('llengua') + '/cgi-bin/ma_mainMailFS?s=' + numSes + '&e=1&l=' + lo;
  window.open(adr,'','width=700,height=500,menubar,resizable,scrollbars,status');
}

function obreConv(lo) {
// Obre el CONVERSATION amb l'adreça generada.
/////////////////////////////////////////////////////////////////
  adr = new String();
  var numSes = obtNumSes();
  adr = genDir('arrel') + '/' + genDir('campus') + '/' + genDir('llengua') + '/cgi-bin/ma_mainMailFS?s=' + numSes + '&e=1&l=' + lo;
  window.open(adr,'','width=700,height=500,menubar,resizable,scrollbars,status');
}

function obreForum(f,a) {
// Si no se li han passat sessio, foum i arbre surt directement.
// Obre la bústia amb l'adreça generada.
/////////////////////////////////////////////////////////////////
  adr = new String();
  var nargs = new Number(arguments.length);
  var numSes = obtNumSes();
  if(nargs<2) return;

  adr = genDir('arrel') + '/' + genDir('campus') + '/openforum.htm?s=' + numSes + '&tree=' + a  + '&for=' + f;
  oWin(adr,'600','400');
}

function obreDisc(lo,i1,i2,i3) {
// Si no se li han passat gifs de navegació, hi assigna blanc.gif
// Obre l'espai de fitxers amb l'adreça generada.
/////////////////////////////////////////////////////////////////
  adr = new String();
  var nargs = new Number(arguments.length);
  var numSes = obtNumSes();
 
  if(nargs<2) i1 = new String('blanc.gif');
  if(nargs<3) i2 = new String('blanc.gif');
  if(nargs<4) i3 = new String('blanc.gif');

  adr = genDir('arrel') + '/' + genDir('campus') + '/' + genDir('llengua') + '/cgi-bin/activi/fdebat_0?s=' + numSes + '&l=' + lo + '&img1=' + i1 + '&img2=' + i2 + '&img3=' + i3;
  oWin(adr,'600','400');
}

/*
20010914-dgarciaf-errorIE_activi_0.html?classes?
function openDebat(login,debatGif) {
 Utilitzada per UOC/a/varis/xvc Assemblea de La Virtual. Assimilada a obreBustia
  var numSes = obtNumSes();
  if (numSes == 'extern') {
    alert ('Opció no disponible');
    return
  }
  var cgi = '/cgi-bin/activi/debat_0?s=' + numSes + '&l=' + login + '&img1=' + debatGif + '&img2=ser_coop.gif&img3=blanc.gif';
  var winNm = getWinNm();
  window.open(cgi,winNm,'width=600,height=400,menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}
*/

function openBusties(lad,lac) {
// Utilitzada per centres/tauler.htm . Pendent.
//////////////////////////////////////////////////////////////////////////////////
  var numSes = obtNumSes();
  self.location  = '/cgi-bin/activi/debats?s=' + numSes + '&d=' + lad + '&c=' + lac;
}

function doVota() {
// Utilitzada per UOC/a/varis/xvc Assemblea de La Virtual. Pendent de reducció
/////////////////////////////////////////////////////////
  var numSes = obtNumSes(1);  // Amb el paràmetre 1 obté el nº de sessió antic.   
  var cgi = 'http://iglu.uoc.es:448/enq/plsql/enq.enq?s=' + numSes + '&codi=XVCVOT';
  var winNm = getWinNm();
  top.main.location = cgi;
}

function obreLlengua() {
// Genera el nom del servidor i del directori de campus, el qual serveix per a identificar
// el campus d'origen dins del web de llengua. Si no se li han passat gifs de navegació,
// hi assigna blanc.gif. Obre la bústia amb l'adreça generada.
/////////////////////////////////////////////////////////////////////////////////////////
  var x = new String('750');
  var y = new String('500');
  var numSes = obtNumSes('1');

  var cgi = genDir('arrel') + '/UOC/a/seu_central/llengua/index.html?s=' + numSes + '&e=' + genDir('campus');
  var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}

function doBiblioteca(s) {
// Obre la plana de biblioteca representada per <i>adr</i>
// Utilitza el document xina.uoc.es/comodin.html
//////////////////////////////////////////////////////////
  if(!s) s = genDir('campus');

  var appid = new String(s);
  var numSes = new String(top.logobar.document.IDs.session.value);
  var oldNumSes = new String(top.logobar.document.IDs.oldsession.value);
  var nom = new String('');
  var adr = new String('');
  var ho = new String('');

  if (location.hostname == 'uocadsl.uoc.es' )  var ho = 'bibadsl.uoc.es';
  else ho = 'xina.uoc.es';
  
  // Si la llengua des d'on s'obre es el castella, obre en castella sino en catala.
  
  if(genDir('llengua')=='b') adr = 'http://' + ho + '/cas/index.html';
  else adr = 'http://' + ho + '/cat/index.html';

  nom = 'sessio' + numSes + 'sessiovell' + oldNumSes + 'appid' + appid;
  var altura=screen.height;       var anchura=screen.width;
  var vent_x=770;                 var vent_y=500;
  var posx=(screen.width/2)-400;  var posy=(screen.height/2)-300;
  var finestra = window.open(adr,nom,'resizable=1,toolbar=1,location=0,directories=0,status=1,menubar=0,scrollbars=0,width=770,height=500,screenX='+posx+',screenY='+posy+',left='+posx+',top='+posy+'');
}

function doBibliotecaOld(url) {
   var numSes = obtNumSes();
   oWinSes('http://xina.uoc.es/comodin.html?s=' + numSes + '&p=' + url,600,400);
}

function posaFrames(url,pestanyes) {
// GOATE 17-12-2002
   var cadena = new String('');
   if (arguments.length >= 2) {
      cadena+='/UOC/celler/navegacio/frames.html?u='+url+'&p='+pestanyes;
      }
   else {
      cadena+='/UOC/celler/navegacio/frames.html?u='+url;
      }
   if (self.name=="cl_main") {
      self.parent.location=cadena;
      }
   else {
     if (self.name=="cl_submain") self.parent.parent.location=cadena;
     else self.location=cadena;
     }
}


function sona_wsa(f, x, y) {
  if(arguments.length<3) {
    var x = 100;
    var y = 25;
  }

  document.write('<APPLET ARCHIVE="AudioPlayer.jar" CODE=AudioPlayer.class width=' + x +' height=' + y + '">');
  document.write('<PARAM name=cabname value="AudioPlayer.cab">');
  document.write('<PARAM name=soundfilename value="');
  document.write(f);
  document.write('"<PARAM name="autoStart" value = "false">');
  document.write('"<PARAM name=loop value="false"></APPLET>');
}

function sona_ea(f, x, y) {
  if(arguments.length<3) {
    var x = 120;
    var y = 22;
  }

  document.write('<APPLET codebase="/UOC/a/audio/ea/" code=PlayerEmblaze.class id=menu width=' + x +' height=' + y + ' archive="PlayerEmblaze.jar">');
  document.write('<PARAM name=cabbase value="PlayerEmblaze.cab">');
  document.write('<PARAM name=soundfilename value="');
  document.write(f);
  document.write('"<PARAM name=loop value="1"></APPLET>');
}

function posar_registre_ac(){
//CDC
  document.write('<TABLE BORDER="0"><TR><TD><img src="/mc-icons/b2fg.gif" BORDER="0"> <a href="javascript:doTren(\'GAT_EXP.NOTESAVAL/notesaval_tren.notesaval\')">Consulta de Evaluación continuada</a></TD></TR></TD></TABLE>');
}

function obreBar(canal) {
//CDC
  var numSes = obtNumSes();
  var adr = '/servlet/InviteChannel?ACCEPT=TRUE&SESSIONID=' + numSes + '&CHANNELID=' + canal;
  top.winOpen(adr,'noprefix');
}

function obreAules(domini_pare) {
//CDC. Obre les aules d'un usuari
/////////////////////////////////
  var numSes = obtNumSes();
  parent.location = '/CDC/a/activi_0.html?s=' + numSes + '&c=none&d=' + domini_pare + '&t=aula&img=assignat';
}

function doBanner(origen) {
//CLUB
 var id= new Number(141223); // Li donem valor a causa del bug del default en Navigator.
	switch  (origen)	{				
		case "lavirtual": id=141518; break;
		case "borsa":
		case "forums":
		case "anuncis":			
		case "espais":  id=141223; break;
		case "home":    id=141220; break;
		default:        id=141223; break;
	}
 document.write('<table><tr>');
 document.write('<td><A HREF="http://adforce.imgis.com/?adlink|318|'+id+'|1|1|misc=NUMRAND;" TARGET=_blank><IMG SRC="http://adforce.imgis.com/?adserv|318|'+id+'|1|1|misc=NUMRAND;" BORDER=0 HEIGHT=60 WIDTH=468 NATURALSIZEFLAG=0 ALIGN=BOTTOM ALT="I-Network ad"></A></td>');
 document.write('</tr></table>');
}

/////////////////////////////////////////////////////////////////////////
// Banner(string0,url0,...,stringN,urlN) 
// Cada parell de paràmetres correspòn al text i la url de cada link.
// string: Text del link
// url:    numèric -> correspòn la variable saltar de /UOC/a/varis/uoc_saltar.html?s=
//		 /UOC/.. -> link relatiu
//		 http:// -> link extern
//
////////////////////////////////////////////////////////////////////////
function _Banner() {
//CLUB
var links = new Number((arguments.length)/2);
var cad = new String();
var url = new String();

document.write('<APPLET  code=panellCampus.class   codebase=/CLUB/a/club/java/   name=panellCampus  width=380   height=18>');
for(i=0,j=0;i<links;i++,j+=2) {
	cad+='<param name="string'+i+'" value="'+arguments[j]+'">';	
	url=arguments[j+1];
	
	// Si es tracta d'una url amb http fa la crida externa, si no li posa la url del campus actual	
	if(typeof(arguments[j+1])=='number') url='/CLUB/a/club/saltar.html?s='+url;
	if((url.substr(0,7)!="http://") && (url.charCodeAt(0)==47)) url=genDir('arrel')+url;	
	cad+='<param name="url'+i+'" value="'+url+'">';
}
document.write(cad);
document.write('<PARAM name=colorNorFont value="0,0,255">');
document.write('<PARAM name=colorAltFont value="255,0,0">');
document.write('<PARAM name=colorFons value="255,255,255">');
document.write('<PARAM name=nomFont value="Arial">');
document.write('<PARAM name=tipusFont value="1">');
document.write('<PARAM name=tamanyFont value="12">');
document.write('<PARAM name=sleep value="5">');
document.write('<PARAM name=delay value="500">');
document.write('</APPLET>');
}

//////////////////////////////////////////////////////////////
///////////// Banner_cat(string0,url0,...,stringN,urlN)
// Cada parell de paràmetres correspòn al text i la url de cada link.
// string: Text del link// url:    numèric -> correspòn la variable saltar de /DOCTORAT/a/docs/banner/saltar.html?s=
//		 /UOC/.. -> link relatiu
//		 http:// -> link extern///////////////////////
///////////////////////////////////////////////////
function Banner_cat() {var links = new Number((arguments.length)/2);
//DOCTORAT
var cad = new String();
var url = new String();
document.write('<APPLET  code=panellCampus.class   codebase=/CLUB/a/club/java/  name=panellCampus  width=500   height=15>');
for(i=0,j=0;i<links;i++,j+=2)
 {	cad+='<param name="string'+i+'" value="'+arguments[j]+'">';
 		url=arguments[j+1];		// Si es tracte d'una url amb http fa la crida externa, si no li posa la url del campus actual
 			if(typeof(arguments[j+1])=='number') url='/DOCTORAT/a/docs/banner/saltar.html?s='+url;
 				if((url.substr(0,7)!="http://") && (url.charCodeAt(0)==47)) url=genDir('arrel')+url;
 						cad+='<param name="url'+i+'" value="'+url+'">';
 					}
 document.write(cad);document.write('<PARAM name=colorContorn value="239,247,255">');
 document.write('<PARAM name=quadrat value="true">');
 document.write('<PARAM name=genFons value="255,255,255">');
 document.write('<PARAM name=colorNorFont value="255,0,0">');
 document.write('<PARAM name=colorAltFont value="255,0,0">');
 document.write('<PARAM name=colorFons value="255,255,255">');
 document.write('<PARAM name=nomFont value="Arial">');
 document.write('<PARAM name=tipusFont value="1">');
 document.write('<PARAM name=tamanyFont value="11">');
 document.write('<PARAM name=sleep value="5">');
 document.write('<PARAM name=delay value="500">');
 document.write('</APPLET>');
 }


//////////////////////////////////////////////////////////////
///////////// Banner_cast(string0,url0,...,stringN,urlN)
// Cada parell de paràmetres correspòn al text i la url de cada link.
// string: Text del link// url:    numèric -> correspòn la variable saltar de /DOCTORAT/b/docs/banner/saltar.html?s=
//		 /UOC/.. -> link relatiu
//		 http:// -> link extern///////////////////////
///////////////////////////////////////////////////
function Banner_cast() {var links = new Number((arguments.length)/2);
//DOCTORAT
var cad = new String();
var url = new String();
document.write('<APPLET  code=panellCampus.class   codebase=/CLUB/a/club/java/  name=panellCampus  width=520   height=15>');
for(i=0,j=0;i<links;i++,j+=2)
 {	cad+='<param name="string'+i+'" value="'+arguments[j]+'">';
 		url=arguments[j+1];		// Si es tracte d'una url amb http fa la crida externa, si no li posa la url del campus actual
 			if(typeof(arguments[j+1])=='number') url='/DOCTORAT/b/docs/banner/saltar.html?s='+url;
 				if((url.substr(0,7)!="http://") && (url.charCodeAt(0)==47)) url=genDir('arrel')+url;
 						cad+='<param name="url'+i+'" value="'+url+'">';
 					}
 document.write(cad);document.write('<PARAM name=colorContorn value="239,247,255">');
 document.write('<PARAM name=quadrat value="true">');
 document.write('<PARAM name=genFons value="255,255,255">');
 document.write('<PARAM name=colorNorFont value="255,0,0">');
 document.write('<PARAM name=colorAltFont value="255,0,0">');
 document.write('<PARAM name=colorFons value="255,255,255">');
 document.write('<PARAM name=nomFont value="Arial">');
 document.write('<PARAM name=tipusFont value="1">');
 document.write('<PARAM name=tamanyFont value="11">');
 document.write('<PARAM name=sleep value="5">');
 document.write('<PARAM name=delay value="500">');
 document.write('</APPLET>');
 }

function linkDoc(text,url) {
//DOCTORAT
  if (navigator.appName == "Netscape")  {
    document.write('<A HREF="'+url+'">'+text+'</A>');
  }
  else {
    document.write('<A HREF="'+url+'" TARGET="_blank">'+text+'</A>');
  }
}

function doHit(plana){
	var numSes = obtNumSes();
	var codi = new String();
  if (plana == null) plana = location.pathname;
  codi = '<IMG SRC=http://cv.uoc.edu/servlet/Hit?s=' + numSes + '&plana=' + plana + ' WIDTH=0 HEIGHT=0>';
	document.write(codi);
}

// Funció per obrir l'Ajuda del Campus contextualment
function obreHelp(gif) {
	var nargs = new Number(arguments.length);	
	var numSes;
	if(top._langRel) lang=top._langRel.substring(1,2); // Pren l'idioma del top.
	else lang='a';
	if (top._user_app) appid=top._user_app;	// Pren el directori on resideix l'entorn del top.	
        else appid='UOC';
	if(nargs<1) gif='help';
	numSes = obtNumSes('1');	
	var cgi = '/'+appid+'/'+lang+'/ajuda/index.html?s='+ numSes + '&gif='+gif;	 	
	var winNm = getWinNm();
	var messWin = window.open(cgi,winNm,'width=750,height=550,menubar=no,resizable=no,scrollbars=yes,status=yes');
}

function doFaq(node) {
// Obre una finestra amb les FAQs del CUC d'una opció final concreta.
// node: és el codi del node final a mosrtar les FAQs
// Poden obternir-se els nº de node a CUC - Manteniments - Ordena les FAQs
//////////////////////////////////////////////////////////////
 var p = new String(''); 
 var numSes;
 var nargs = new Number(arguments.length);
 var xdef = new String('750');
 var ydef = new String('450');   
 
 if(nargs<3) {
    x = new String(xdef);
    y = new String(ydef);
 }
bloq=1;
if (bloq==0) alert('Durant el dia d\'avui aquesta aplicació romandrà fora de servei per tasques de manteniment. Disculpeu-nos les molèsties.');
else {
 p='http://cv.uoc.edu/tren/trenacc?s=';
 if (window.name == 'frm_preview')
{
	var s_nou = top.logobar.document.IDs.session.value;
	var s_vell = top.logobar.document.IDs.oldsession.value;
	numSes = s_nou; 
}
else
{       if (window.name == 'frm_viewMssgHead') {
	   s_nou = parent.opener.top.logobar.document.IDs.session.value;
	   s_vell = parent.opener.top.logobar.document.IDs.oldsession.value;
	   numSes = s_nou; 
        }
        else  numSes=obtNumSes();
} 


 var cgi = p + numSes + '&modul=CUC.FAQS_OPCION/faqs_opcion.consultafaqs&pArgumentos=*&pValores=*&institucio=CO&popcio='+node+'&pagina=FP_FAQSPROCESO';
 var messWin = window.open(cgi,getWinNm(),'width='+ x + ',height=' + y + ',menubar=yes,resizable=yes,scrollbars=yes,status=yes');
}
}

