<!--


// Paramètres

var crypt, cxs,  expreg, hl0 = '', hl1 = '', hl2 = '', mpi = '', nbre_niv, nd_http, nd_https, to, routage = '', select = '', vbt;
var items = new Array();
var items2 = new Array();

// Comparaison url

function ComparUrl(url_page, mpi, index_p){
	
	var i, i0, j, index, url, vt;
	var liens = new Array();
	
	if(!mpi){
		items = url_page.split('?', 2);
		url = items[0];
		vt = '&' + items[1] + '&';
		liens = eval('l' + index_p);
		if(liens[-1]) i0 = -1;
		else i0 = 0;
		for(i=i0;i< liens.length;i++){
			index = index_p + '[' + i + ']';
			if(typeof(liens[i]) == "string"){
				if(!liens[i].match(/^http/)){
					if(ir){
						if(liens[i].match(eval('/\\?_ir=' + ir + '&/'))){
							mpi = index;
							i = liens.length;
						}
					}
					else {
						items = liens[i].split('?', 2);
						expreg = '(' + nd_http + '|' + nd_https + ')/' + items[0];
						expreg = expreg.replace(/\//g, '\\/').replace(/\./g, '\\.');
						expreg = eval('/^' + expreg + '$/i');
						if(url.match(expreg)){
							items = items[1].split('&');
							for(j=0;j< items.length;j++){
								if(items[j].match(/^_mpi=/)){
									mpi = index;
									j = items.length;
									i = liens.length;
								}
								else if(!items[j].match(eval('/^_ir=' + ir + '/'))){
									expreg = eval('/&' + items[j] + '&/;');
									if(!vt.match(expreg)) j = items.length;
								}
							}
						}
					}
				}
			}
			else {
				mpi = ComparUrl(url_page, mpi, index);
			}
		}
	}
	
	return mpi;
}

// Format lien


function FormatLien(lien){
	
	expreg = eval('/^' + nd_http.replace(/\//g, '\\/')  + '/');
	if(lien.match(/^(http|mailto:)/) && !lien.match(expreg)){
		// Cas de fonctions ASP intégrées sur des sites tiers
		if(!lien.match(eval('/^http(s){0,1}:\\/\\/[^\.]+\.' + (document.location.host + '').replace(/[^\.]+\./, '') + '/i'))){
			lien += '" target = "_blank';
		}
	}
	else if(!lien.match(/^#/)){
		items = lien.split('\?', 2);
		if((document.location + '').match(/\/webop!_[a-z]+\/page_edition\.php(\?|$)/)){
			lien = 'page_edition.php?_url=' + items[0] + '&';
		}
		else {
			if(crypt == 'ssl') lien = nd_https;
			else lien = nd_http;
			lien += '/' + items[0] + '?';
		}
		lien += vbt + '&' + items[1];
		if(lien.match(/^[^\?]+\.(pdf|doc|xls|txt|gif|jpg|png)\?/i)){
			lien = lien.replace(/\?.*/, '') + '" target = "_blank';
		}
	}
	
	return lien;
}
			

// Affichage du menu	

function AffiRub(md, niv, num, index_p){
	
	var i, k, img, index, index2, lien, niv_param, rub_affi = '', rub_off = '', url_page;
	var modes = new Array('off','on','affi');
	var hl = new Array();
	var rub = new Array();
	var liens = new Array();
	
	niv_param = Math.min(niv, nbre_niv-1);
	hl = eval('hl' + niv_param);
	rub = eval('r' + niv + index_p);
	liens = eval('l' + index_p);
	
	if(num < rub.length){
		
		index = index_p + '[' + num + ']';
		img = index.replace('[|]','_');
		
		for(i=0;i< modes.length;i++){
			if(modes[i] != 'on') eval('rub_' + modes[i] + ' = rub[' + num + '];');
		}
		
		md += '<tr>';
		for(i=0;i<=niv;i++){
			if(i == niv) md += '<td' + hl + '></td>';
			else md += '<td></td>';
		}
		if(typeof(liens[num]) == "string"){
			if(rub[num].match(/^<espace[0-9]*>/)){
				md += '<td colspan="' + (nbre_niv-niv) + '">&nbsp;</td></tr>\n';
			}
			else {
				lien = FormatLien(liens[num]);
				if(index == mpi){
					md += '<td colspan="' + (nbre_niv-niv) + '"><a href="' + lien + '" class="wo_mg__niv' + niv + '_affi" onclick="TimeoutMenu(\'' + index + '\')';
					md += '">' + rub_affi + '</a></td></tr>\n';
				}
				else {
					md += '<td colspan="' + (nbre_niv-niv) + '"><a href="' + lien + '" class="wo_mg__niv' + niv + '_u">' + rub_off + '</a></td></tr>\n';
				}
			}
		}
		else {
			if(liens[num][-1]){
				lien = '"' + FormatLien(liens[num][-1]) + '"';
			}
			else {
				lien = '';
				if(1 == 1 && routage == 'direct'){
					i = 0;
					index2 = index;
					while(typeof(eval('l' + index2)) != "string" && i < nbre_niv){
						index2 += '[0]';
						i++;
					}
					if(typeof(eval('l' + index2)) == "string") lien = '"' + FormatLien(eval('l' + index2)) + '"';
				}
				if(!lien) lien = '"javascript:;" onclick="TimeoutMenu(\'' + index + '\');"';
			}
			expreg = index.replace(/\[/g,'\\\[').replace(/\]/g,'\\\]');
			expreg = eval('/^' + expreg + '/');
			if(1 == 1){
				md += '<td colspan="' + (nbre_niv-niv) + '"><a href=' + lien + ' class="wo_mg__niv' + niv + '">' + rub_off + '</a></td></tr>\n';
				if(mpi.match(expreg) || select.match(expreg) || !document.getElementById) md = AffiRub(md, niv+1, 0, index);
			}
			else if(mpi.match(expreg) || select.match(expreg) || !document.getElementById){
				md += '<td colspan="' + (nbre_niv-niv) + '" class="wo_mg__niv' + niv + '_affi"><a href=' + lien + ' class="wo_mg__niv' + niv + '_affi">' + rub_off + '</a></td></tr>\n';
				md = AffiRub(md, niv+1, 0, index);
			}
			else {
				md += '<td colspan="' + (nbre_niv-niv) + '"><a href=' + lien + ' class="wo_mg__niv' + niv + '">' + rub_off + '</a></td></tr>\n';
			}
		}
		
		md = AffiRub(md, niv, num+1, index_p);
	}
	
	return md;
}	

function AffiMenu(){
	
	var md = '<table border="0" cellpadding="0" cellspacing="0">\n';		
	
	if(r0.length == 0) md += '<tr><td' + hl0 + '></td><td colspan="nbre_niv" class="wo_mg__niv1_affi">' + r0 + '</td></tr>\n';
	else md = AffiRub(md, 0, 0, '');
	md += "</table>\n";
	
	/////////////////TEST///////////////////
	//document.page.menu.value = md;
	////////////////////////////////////////
	
	try{
		document.test.contest.value = md;
	}
	catch(e){
	}
	if(document.getElementById) document.getElementById('wo_mg').innerHTML = md;
	else document.write(md);
}

function TimeoutMenu(value){
	
	if(document.getElementById){
		
		var expreg1, expreg2, expreg3;
		
		expreg1 = eval('/^' + value.replace(/\[/g, '\\[').replace(/\]/g, '\\]') + '/');
		if(!(expreg2 = value.replace(/\[[0-9]+\]$/, ''))) expreg2 = value;
		expreg2 = eval('/^' + expreg2.replace(/\[/g, '\\[').replace(/\]/g, '\\]') + '/');
		if(!(expreg3 = select.replace(/\[[0-9]+\]$/, ''))) expreg3 = select;
		expreg3 = eval('/^' + expreg3.replace(/\[/g, '\\[').replace(/\]/g, '\\]') + '/');
			
		if(
			!(
				select.match(expreg1)
				|| mpi.match(expreg1)
				|| typeof(eval('l' + value)) == "string"
			)
			// Fermeture du menu en passant sur une rubrique ouverte / mpi
			|| select && mpi.match(expreg2) && !(mpi.match(expreg3))
		){
			select = value;
			clearTimeout(to);
			to = setTimeout('AffiMenu()', 0);
		}
	}
}


//-->
