/****************************************************************************7
 * MADITUC
 *
 *****************************************************************************/

var urlHorairePHP = 'horaire.php';
var urlHoraireASPX = urlHorairePHP;

var madDeltaAjax = 500;
var madResultatRechercheMax = 70;
var madClicCarte = null;

var attenteReponse = 0;
var usager_id=0;
var trajetActif = null;

var madPrevSearch = null;
var browserHeight = null;
var browserWidth = null;
var adjHauteur = null;

var ligneTrace = new Array();
var ligneTraceLayer = 0;

var directions = null;
var distanceAuto = null;

var checkHeureGlobal = 0;
var datemajBixiprev = 0;

$(document).ready(function () {
    madInit(0);
});


function TazInitCompleted() {
  startCalculInit();
  madGetMetro_modele();
  madGetArret_modele();	
  initializeGDirections();
}

function startCalculInit() {
  if (madNsageo>=0 && movieIsLoaded(thisMovie('nsademo'))) {
	  setTimeout('calculInit()',50);
	  thisMovie("nsademo").addMarkerLayer('BIXI');
  } else {
	  setTimeout('startCalculInit()',100);
  }
}


function madGetMetro_modele() {
  $.ajax({
    type: "GET",
    url: "madGetMetro.php",
    data: "",
    dataType: "text",
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      	alert("erreur Ajax 56");
    },
    success: function(msg){
    var apt = new Array();

	var descrip = '<b>Métro PARAM0</b><br><a href="event:metro PARAM0|o">';
	descrip += '<img src="images/startflag-1.gif" vspace="1" height="15" width="15">'+_MAD_LIEU_DEPART+'</a>';
	descrip += '<br><a href="event:metro PARAM0|d"><img src="images/endflag-1.gif" vspace="1" height="15" width="15">'+_MAD_LIEU_ARRIVEE+'</a>';
	
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : descrip
        }

	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);

        var $loLabelData = {
        	"zoommin" : '70',
        	"zoommax" : '113',
		"htmltxt" : 'PARAM0'
	}

        var $loHTMLIcon = {
        	"zoommin" : '70',
        	"zoommax" : '113',
        	"markerWidth" : 27,
        	"markerHeight" : 27,
		"htmltxt" : "<img src='images/metroSTM.png' vspace='-2' hspace='2'>"
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

	var $rst = {
		"x" : "PARAM1",
		"y" : "PARAM2",
		"id" : "PARAM3",
		"HTMLIcons" : $loHTMLIcons,
		"labeldata" : $loLabelData,
		"tooltipdata" : $laTooltip
		
	}
	apt.push($rst);

    thisMovie("nsademo").setHTMLMarkerModel(apt);
    thisMovie("nsademo").addHTMLMarkersWithModel(msg,'metroMarker');

}
  });

}


function madGetArret_modele() {
  $.ajax({
    type: "GET",
    url: "madGetArret.php",
    data: "",
    dataType: "text",
    timeout: 120000000,
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      	alert("erreur Ajax 57");
    },
    success: function(msg){
    var apt = new Array();

	var descrip = '<b>'+_MAD_AUTOBUS+' PARAM0</b>';
	descrip += '<br><a href="event:PARAM0|o"><img src="images/startflag-1.gif" vspace="1" height="15" width="15">'+_MAD_LIEU_DEPART+'</a>';
	descrip += '<br><a href="event:PARAM0|d"><img src="images/endflag-1.gif" vspace="1" height="15" width="15">'+_MAD_LIEU_ARRIVEE+'</a>';
	
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : descrip
        }

	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);

        var $loHTMLIcon = {
        	"zoommin" : '79',
        	"zoommax" : '113',
        	"markerWidth" : 17,
        	"markerHeight" : 17,
		"htmltxt" : "<img src='images/bus1616.gif' vspace='0' hspace='2' width='16' height='16'>"
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

	var $rst = {
		"x" : "PARAM1",
		"y" : "PARAM2",
		"id" : "PARAM0",
		"HTMLIcons" : $loHTMLIcons,
		"RollOverLabel" : '<b>'+_MAD_AUTOBUS+':PARAM0</b>',
		"tooltipdata" : $laTooltip
	}

        apt.push($rst);

    thisMovie("nsademo").setHTMLMarkerModel(apt);
    thisMovie("nsademo").addHTMLMarkersWithModel(msg,'arretMarker');
    
    }
  });

}


function madGetBIXI_json_modele(force) {
  thisMovie("nsademo").StartBusy(_MAD_BIXI_EN_COURS);
  $.ajax({
    type: "GET",
    url: "bixi/bixi.php",
    data: "",
    timeout: 20000,
    dataType: "json",
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      	alert(_MAD_BIXI_NON_DISPONIBLE);
        thisMovie("nsademo").StopBusy();
    },
    success: function(msg){

    var datemaj = msg.requesttimestamp;
    if ((datemaj > datemajBixiprev) || force) {
    
    var apt = new Array();

	var descrip = '<b>PARAM1</b><br>PARAM5 '+_MAD_PT_ANCR+'<br>';
	descrip += '<br>'+_MAD_VELOS+': PARAM8';
	descrip += '<br>'+_MAD_BORNES+': PARAM9';
	descrip += '<br>PARAM0';
	descrip += '<br><br><a href="event:PARAM2,PARAM3|o">';
	descrip += '<img src="images/startflag-1.gif" vspace="1" height="15" width="15"><u>'+_MAD_LIEU_DEPART+'</u></a>';
	descrip += '<br><a href="event:PARAM2,PARAM3|d"><img src="images/endflag-1.gif" vspace="1" height="15" width="15"><u>'+_MAD_LIEU_ARRIVEE+'</u></a>';
	descrip += '<br><a href="event:STREETVIEW|PARAM6|PARAM7|0"><u>'+_MAD_VOIR_GSV+'</u></a>';
	
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : descrip
        }

	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);

        var $loLabelData = {
        	"zoommin" : '70',
        	"zoommax" : '113',
		"htmltxt" : 'v:0 b:0'
	}

        var $loHTMLIcon = {
        	"zoommin" : '70',
        	"zoommax" : '113',
        	"markerWidth" : 30,
        	"markerHeight" : 13,
		"htmltxt" : "<img src='images/PARAM10' vspace='-2' hspace='2'>"
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

	var $rst = {
		"x" : "PARAM2",
		"y" : "PARAM3",
		"id" : "PARAM4",
		"HTMLIcons" : $loHTMLIcons,
		"RollOverLabel" : _MAD_VELO+': PARAM8, '+_MAD_BORNE+': PARAM9',
		"tooltipdata" : $laTooltip
		
	}
	//"RollOverLabel" : 'PARAM1',
	apt.push($rst);

    	var $param = '';
    	var $delim = '';
    	
        var dmaj = msg.timestamp.substr(4,2)+"/"+msg.timestamp.substr(2,2)+"/"+"20"+msg.timestamp.substr(0,2)+" "+_MAD_PETIT_A+" "+msg.timestamp.substr(7,2)+"h"+msg.timestamp.substr(9,2);
    	
	$(msg.xml).each(function()
	  {
		if (this.installed=="true") {
			$param+=$delim;
			$param+=dmaj;
			$param+=',';
			$param+=this.name;
			$param+=',';

			Proj4js.reportError = function(msg) {alert(msg);}
			var source = new Proj4js.Proj('EPSG:32188');
			var dest = new Proj4js.Proj('EPSG:4326');
			var p = new Array();
			p.x = this.long;
			p.y = this.lat;
			Proj4js.transform(dest, source, p);

			$param+=parseInt(p.x);
			$param+=',';
			$param+=parseInt(p.y);
			$param+=',';
			$param+=this.id;
			$param+=',';
			var nbancres = parseInt(this.nbBikes)+parseInt(this.nbEmptyDocks);
			$param+=nbancres;
			$param+=',';
			$param+=this.long;
			$param+=',';
			$param+=this.lat;
			$param+=',';
			$param+=this.nbBikes;
			$param+=',';
			$param+=this.nbEmptyDocks;
			var pctvelo = parseInt(this.nbBikes)/nbancres;
			var picoBixi = '';
			if (pctvelo==1)
			  {
			  picoBixi = 'bixi100.png';
			  }
			else if ((pctvelo<1 && pctvelo>=0.95) || parseInt(this.nbEmptyDocks)==1)
			  {
			  picoBixi = 'bixi095.png';
			  }
			else if (pctvelo<0.95 && pctvelo>=0.75)
			  {
			  picoBixi = 'bixi075.png';
			  }
			else if (pctvelo<0.75 && pctvelo>=0.5)
			  {
			  picoBixi = 'bixi050.png';
			  }
			else if (pctvelo<0.5 && pctvelo>=0.25)
			  {
			  picoBixi = 'bixi025.png';
			  }
			else if ((pctvelo<0.25 && pctvelo>=0.05) || parseInt(this.nbBikes)==1)
			  {
			  picoBixi = 'bixi005.png';
			  }
			else 
			  {
			  picoBixi = 'bixi000.png';
  			  }
			$param+=',';
			$param+=picoBixi;
			$delim=';';
	    	}
  });
    thisMovie("nsademo").setHTMLMarkerModel(apt);
    thisMovie("nsademo").addHTMLMarkersWithModel($param,'BIXI');
    thisMovie('nsademo').setLayerVisibility('BIXI',true);
    thisMovie('nsademo').ZoomToLayerMinimumZoom('BIXI',0);
    $('#bixiMaj').html(_ETAT_BIXI+dmaj);
    datemajBixiprev = datemaj;
    BixiState=1;
    }
    thisMovie("nsademo").StopBusy();
}
  });

}



function madGetLigne(t,l,d) {
var clef = t+l+d;
 if (typeof ligneTrace[clef] != 'undefined') {
 returnTrajet('',ligneTrace[clef],0,'TazItinLineTrace')
} else { 
  $.ajax({
    type: "GET",
    url: "madGetLigne.php",
    data: "t="+t+"&l="+l+"&d="+d,
    dataType: "text",
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      	alert("erreur Ajax 78");
    },
    success: function(msg){
 	var reponseFla = '[';
	reponseFla += '{"styleId":"19","segId":"1","points": [';
	reponseFla += transformGeometrieFlash(msg);
	reponseFla += ']}'
	reponseFla += ']';
 returnTrajet('',reponseFla,0,'TazItinLineTrace')
 ligneTrace[clef] = reponseFla;
}
  });
}
}




function pointSelectedMap(p,l) {
  if (l=='arretMarker') {
  $.ajax({
    type: "GET",
    url: "madGetArretInfo.php",
    data: "a="+p,
    dataType: "text",
    timeout: 120000000,
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      	alert("erreur Ajax 53");
    },
    success: function(msg){
      var lignesArret = msg.split(';');
        var arrinfo = lignesArret[0].split(',');
	var descrip = '';
	descrip = descrip + '<b>'+_MAD_ARRET.toUpperCase()+' '+p+'</b>';
	descrip = descrip + '<br><b>'+arrinfo[0]+'</b>';
	descrip += '<br>'+_MAD_LIGNE+'(s) '+_MAD_A.toLowerCase()+' '+_MAD_CET.toLowerCase()+' '+_MAD_ARRET.toLowerCase()+':<br>';
var pre = '';
  for (var i=1; i<lignesArret.length; i++) {
      var ligneArret = lignesArret[i].split(',');
  	if (ligneArret[3]==p) {
		descrip += pre+'<b>'+ligneArret[1]+'&nbsp;';
		switch (ligneArret[2]) {
		case 'N':
			descrip += _MAD_DIR_N;
			break;
		case 'S':
			descrip += _MAD_DIR_S;
			break;
		case 'E':
			descrip += _MAD_DIR_E;
			break;
		case 'O':
			descrip += _MAD_DIR_O;
			break;
		default:
			descrip += ligneArret[2];
		}
  	}
  	descrip += '</b>';
  	pre = ', ';
  }
	
	descrip += '<br><br><a href="event:'+p+'|o"><img src="images/startflag-1.gif" vspace="1" height="15" width="15"><u>'+_MAD_LIEU_DEPART+'</u></a>';
	descrip += '<br><a href="event:'+p+'|d"><img src="images/endflag-1.gif" vspace="1" height="15" width="15"><u>'+_MAD_LIEU_ARRIVEE+'</u></a>';
	descrip += '<br><br><a href="event:STREETVIEW|'+arrinfo[1]+'|'+arrinfo[2]+'|'+arrinfo[3]+'"><u>voir dans Google StreetView</u></a>';

	descrip += '<br>';
	
	var telep = p;
	var corresp = 0;
pre = '';
  for (var i=1; i<lignesArret.length; i++) {
      var ligneArret = lignesArret[i].split(',');
  	if (telep!=ligneArret[3]) {
  		if (corresp==0) {
		descrip += '<br>';
		descrip += '<br>'+_MAD_LIGNE+'(s) '+_MAD_EN_CORRESP+'<i>';
		}
		descrip += '<br>'+ligneArret[4];
		if (ligneArret[3]>20000) {
			descrip += ' <a href="event:ARRET|'+ligneArret[3]+'">'+ligneArret[3]+'</a>';
		}
		descrip+=':<br>';
		telep = ligneArret[3];
		corresp = 1;
		pre='';
  	}
  	if (corresp==1) {
	  descrip += pre+'<b>'+ligneArret[1]+'&nbsp;';
	  		switch (ligneArret[2]) {
	  		case 'N':
	  			descrip += _MAD_DIR_N;
	  			break;
	  		case 'S':
	  			descrip += _MAD_DIR_S;
	  			break;
	  		case 'E':
	  			descrip += _MAD_DIR_E;
	  			break;
	  		case 'O':
	  			descrip += _MAD_DIR_O;
	  			break;
	  		default:
	  			descrip += ligneArret[2];
		}
  	descrip += '</b>';
  	pre = ', ';
	}
  }
  descrip+='</i>';
	
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : descrip
        }

	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);
    thisMovie("nsademo").setToolTipData(p,$laTooltip);
    }
  }); 
}

  if (l=='BIXI') {
      //madGetBIXI_json_modele();
  }
}

function majFenetre() {
	if (parseInt(navigator.appVersion)>3) {
	 if (navigator.appName=="Netscape" || navigator.appName=="Opera") {
	  browserWidth = window.innerWidth;
	  browserHeight = window.innerHeight;
	  adjHauteur = 21;
	 }
	 if (navigator.appName.indexOf("Microsoft")!=-1) {
	  browserWidth = document.body.offsetWidth;
	  browserHeight = document.body.offsetHeight;
	  adjHauteur = 0;
	  $('#aideCirc').css('position','relative');
	  $('#aideCirc').css('width','400px');
	  $('#aideCirc').css('right','10px');
	  $('#aideCirc').css('bottom','0px');
	 }
	}
}

function madPosition() {
	majFenetre();
	var maHauteurO1 = Math.max(browserHeight-160,35);
	var maHauteurD1 = Math.max(browserHeight-210,35);
	$('#search-results-o').css('height',maHauteurO1+'px');
	$('#search-results-d').css('height',maHauteurD1+'px');

	var maHauteurC = browserHeight-$('#zoneges').height()-39;
	var maLargeurC = Math.max(browserWidth-435,438);
	var ti_h = $(window).height()-200-adjHauteur;
	var ti_hs = ti_h-14;
	var mins = 200;
	if (ti_hs<mins) {
	  ti_h = ti_h+mins-ti_hs-adjHauteur;
	  ti_hs = mins;
	}
	$('#madCorps2box').css('height',ti_h+'px');
	$('#madCorps21').css('height',ti_hs+'px');
	if (madNsageo) {
	  $('#zonecarto').css('height',maHauteurC+'px');
	  $('#zonecarto').css('width',maLargeurC+'px');
	}
	var monTopP = Math.max(browserHeight-62,500);
	$('#enpied').css('top',monTopP+'px');
	var sv_h = ti_h-360-14;
	$('#gsv').css('height',sv_h+'px');
	var sv_hi = sv_h-25;
	$('#gsvIn').css('height',sv_hi+'px');
	var gesw = browserWidth-440-40;
	$('#zoneges').css('width',gesw+'px');
}


function madInit(f) {
  toggleOnglet(0);
  madPosition();
  madZapLocal('o');
  madZapLocal('d');
  var now = new Date();
  now.setTime(now.getTime()+(5 * 60 * 1000));
  if (typeof htGet != 'undefined') {
    var nMaintenant = htGet;
  } else {
    var nMaintenant = now.getHours();
  }
  if (nMaintenant<3) {
    nMaintenant = nMaintenant+24;
  }
  $('#hdep1').attr('selectedIndex',nMaintenant-3);
  
  if (typeof mtGet != 'undefined') {
    nMaintenant = mtGet;
  } else {
    nMaintenant = now.getMinutes();
  }
  nMaintenant = Math.floor(nMaintenant/5);
  $('#hdep2').attr('selectedIndex',nMaintenant);


  if (f==1) {
	  Move(295932,5040550,63.4,0);
	  ChangeMode(0);
	  RemoveLabel();
	  envoyerEndPos(0,0);
	  envoyerStartPos(0,0);
	  $('#madCorps2').html('');
	  $('#madCorps2').attr('scrollTop',0);
	  $('#madCorps2c').html('');
	  $('#madCorps2e').html('');
	  $('#madCorps2h').html('');
	  $('#madCorps2i').html('');
	  $('#madCorps2p').html('');
	  basculeHeureDA(0);

	  now.setTime(now.getTime()-(185 * 60 *1000));
	  var jourText = now.getDate()+'';
	  var moisText = (now.getMonth()+1)+'';
	  var dateText = now.getYear()+'.'+pad(moisText,2,'0',STR_PAD_LEFT)+'.'+pad(jourText,2,'0',STR_PAD_LEFT);

	  $("#pmarc").attr("checked",false);
	  $("#ptrans").attr("checked",false);
	  $("#umetro").attr("checked",true);
	  $("#utrain").attr("checked",false);
	  $('#jour').attr("selectedIndex",0);
	  
	  maditin = null;
	  madPrint = null;

          $('#jourTrajet').html('');
          $('#heureTrajet').html('');
          $('#madLignes').css('display','none');
          $('#tdCalculerInfo').html('');
          $('#Origine').attr('xcoord',0);
          $('#Destination').attr('xcoord',0);
  } 
}

function basculeHeureDA(da) {
  if (da==1) {
    $("#mbhd").attr("src","images/vert_off.png"); 
    $("#mbha").attr("src","images/rouge_on.png"); 
  } else {
    $("#mbhd").attr("src","images/vert_on.png"); 
    $("#mbha").attr("src","images/rouge_off.png"); 
  }
}

function basculeGris(o) {
  if ($("#"+o).attr("src")=="images/gris_off.png") {
    $("#"+o).attr("src","images/gris_on.png");
  } else {
    $("#"+o).attr("src","images/gris_off.png");
  }
}

var BixiState = 0;

function basculeBixi() {
  if (BixiState==0) {
    if (madNsageo) {
      madGetBIXI_json_modele(1);
    }
  } else {
    if (madNsageo) {
      thisMovie('nsademo').setLayerVisibility('BIXI',false);
      $('#bixiMaj').html('');
      BixiState=0;
    }
  }
}

function madInitSWF() {
  SetMarkerZoomLimit('arretMarker', 80);
}

function toggleOnglet(i) {
  if (i==0) {
    $('#onglet2').css('display','none');
    $('#onglet1').css('display','block');
    $('#boutononglet1').html('<img src="images/'+sLangue+'/criteres_on.png" border="0" width="137px" height="25px" alt="'+_MAD_CRITERES+'">');
    $('#boutononglet2').html('<img src="images/'+sLangue+'/trajets_off.png" border="0" width="137px" height="25px" alt="'+_MAD_TRAJET+'">');
  }
  if (i==1) {
    $('#onglet1').css('display','none');
    $('#onglet2').css('display','block');
    $('#boutononglet1').html('<img src="images/'+sLangue+'/criteres_off.png" border="0" width="137px" height="25px" alt="'+_MAD_CRITERES+'">');
    $('#boutononglet2').html('<img src="images/'+sLangue+'/trajets_on.png" border="0" width="137px" height="25px" alt="'+_MAD_TRAJET+'">');
    
  }
}

function toggle2Contenu (etat) {

}

function toggleParcours(i) {
  toggleOnglet(1);
  $('#sommaireTrajet0').css('background-color','#ffffff');
  $('#sommaireTrajet1').css('background-color','#ffffff');
  $('#sommaireTrajet2').css('background-color','#ffffff');
  $('#sommaireTrajet'+i).css('background-color','#d4eefa');
  affiche_detail(i);
  updateGes(i);
}

/**
 * Affiche du texte informatif
 * @param (string) t Texte à afficher 
 */
function madDialogueOn(t) {
  $('#madDialogue').html(t);
}


/**
 * Efface le texte informatif
 */
function madDialogueOff() {
  $('#madDialogue').html('');
}


/**
 * Calcul la difference entre deux heures
 * @param (int) h1
 * @param (int) h2
 * @return Int 
 */
function heureDiff(h1,h2) {

  dep = new Date( );
  arr = new Date( );

  if (h1.length==3) 
  {
    dep.setHours(h1.substr(0,1));
    dep.setMinutes(h1.substr(1,2));
  } 
  else 
  {
    dep.setHours(h1.substr(0,2));
    dep.setMinutes(h1.substr(2,2));
  }

  if (h2.length==3) 
  {
    arr.setHours(h2.substr(0,1));
    arr.setMinutes(h2.substr(1,2));
  } 
  else 
  {
    arr.setHours(h2.substr(0,2));
    arr.setMinutes(h2.substr(2,2));
  }

  return (arr.getTime() - dep.getTime()) / (1000*60);
}


/**
 * Heure en texte
 * @pars h Int
 * @return String
 */
function heureTexte(h) 
{
  if (h.length==2) 
  {
    return '00h'+h.substr(0,2);
  } 
  else if (h.length==3) 
  {
    return '0'+h.substr(0,1)+'h'+h.substr(1,2);
  } 
  else 
  {
    if (h.substr(0,2)>=24) 
    {
      var hh = h.substr(0,2)-24;
      return '0'+hh+'h'+h.substr(2,2);
    } 
    else 
    {
      return h.substr(0,2)+'h'+h.substr(2,2);
    }    
  }
}


/**
 * Determine si un object est nul
 * @pars a 
 * @return Bool
 */
function isNull(a) 
{
    return typeof a == 'object' && !a;
}


/**
 * Active/desactive la banniere attenteTxt
 * @pars p 
 */
function waitTxt(p) 
{
  var oWait = $('#waitTxt');
  if (p=='on' && oWait.css('display') == 'none') 
  {
    if (oWait) 
    {
      oWait.css('display','block');
    }
  } 
  else 
  {
    oWait.css('display','none');
  }
}

/**
 * Active/desactive la banniere attenteRecherche
 * @pars p 
 */
function waitRecherche(p) 
{
  var oWait = $('#waitRecherche');
  if (p=='on' && oWait.css('visibility') == 'hidden') 
  {
    if (oWait) 
    {
      oWait.css('visibility','visible');
    }
  } 
  else 
  {
    oWait.css('visibility','hidden');
  }
}


//MADITUC {


function madNetPart (t) 
{

  var argv = madNetPart.arguments;
  var argc = argv.length;


  if (argc==2) 
  {
    if (!(t=='BOULEVARD' || t=='MONTEE DE LIESSE')) 
    {
      t = madNetPartTyp(t);
    }
    t = madNetPartDir(t);
    t = madNetPartNum(t);
  }

  t = madNetPartPre(t);
    
    if (t.length==0) 
    {
      t = '%';
    }
    
    return t;

}


/**
 * Enlève la direction dans une chaîne caractères
 * @pars t string
 * @return string
 */
function madNetPartDir (t) 
{
    t = t.replace(/\s(NORD|SUD|EST|OUEST|NORTH|SOUTH|EAST|WEST)$/,'');
    return t;
}


/**
 * Enlève le préfixe dans une chaîne caractères
 * @pars t string
 * @return string
 */
function madNetPartPre (t) 
{

    t = t.replace("’","'");
    t = t.replace(/^(DE L'|D'|L')/,'');
    t = t.replace(/^(DE LA|DE L'|DES|THE|LA|DE|DU|D'|L'|)\s/,'');
    return t;

}


/**
 * Enlève le type de rue dans une chaîne caractères
 * @pars t string
 * @return string
 */
function madNetPartTyp (t) 
{

    t = t.replace(/^(RUE|AVENUE|BOULEVARD|AV|AVE|BOUL|PLACE|PROM|TERRASSE|TERR|AUT|CH|CHEMIN|AUTOROUTE|CR|CROISSANT|JAR|JARDIN|MTEE|MONTEE|PL|PROM|PROMENADE|RLLE|RUELLE|RUEL|VOIE)\s/,'');
    t = t.replace(/\s(RUE|RU|AVENUE|AV|AVE|STREET|BLVD|DRIVE|ST|AVENUE|AVE|CIRCLE|GARDEN)$/,'');
    return t;

}


/**
 * Enlève le type de rue dans une chaîne caractères
 * @pars t string
 * @return string
 */
function madNetPartNum (t) 
{

    t = t.replace(/^\d{1,3}(E)/,t.substring(0,t.indexOf('E')));
    t = t.replace(/^\d{1,3}(RE|RD)/,t.substring(0,t.indexOf('R')));
    t = t.replace(/^\d{1,3}(ST)/,t.substring(0,t.indexOf('S')));
    t = t.replace(/^\d{1,3}(ND)/,t.substring(0,t.indexOf('N')));
    t = t.replace(/^\d{1,3}(TH)/,t.substring(0,t.indexOf('T')));
    return t;

}


/**
 * Valide le texte fourni par l'usager pour effectuer la bonne recherche AJAX
 * @pars t
 * @pars l
 */
function validLocal(t,l) {
  var typeRecherche = null;

  if (madPrevSearch == t) {
  
  } else {
  
  madPrevSearch = t;

  if (t.length==0 && $('#search-results-'+l).css('display')=='block') {
      $('#search-results-'+l).css('display','none');
      selectIEBug(1);
    return;
  }

  t = t.toUpperCase();
  
  if (t.indexOf('(')>0) {
    t = t.substring(0,t.indexOf('('));
  }
  
  t = t.replace(/É|Ë|Ê|È/g,'E');
  t = t.replace(/Â|À/g,'A');
  t = t.replace(/Î|Ï/g,'I');
  t = t.replace("Ô",'O');
  t = t.replace("Ù",'U');
  t = t.replace("Ç",'C');
  t = t.replace("’","'");
  t = t.replace(/\s$/,'');
  t = t.replace(/^\s/,'');

  t = t.replace(/-|"/g,' ');
  t = t.replace(/\./g,'');

  t = t.replace(/^(SAINTE|SAINT|STE|ST)\s/,'S. ');
  t = t.replace(/\x2F(SAINTE|SAINT|STE|ST)\s/,'/S. ');
  t = t.replace(/\s(SAINTE|SAINT|STE|ST)\s/g,' S. ');

   var a = t.split(/ ET |\/| AND |&/);
  var b = t.split(',');
  t = t.replace(/,/g,'');
  var c = t.split(' ');

  if (a.length == 2) {
    if (a[0].length>2 || a[0]>0) {
      t = madNetPart(a[0].replace(/ $/g,''),1)+'/'+madNetPart(a[1].replace(/ $/g,''),1);
      typeRecherche = 'int';
    }
  }

  if (b.length == 2) {
    if (b[0]>200000 && b[0]<400000 && b[1]>5000000 && b[1]<6000000) {
      //madDialogueOn('coordonnées');
      typeRecherche = 'cxy';
      t = b[0]+','+b[1];
    } else {
      t = t.replace(/,/g,'');
      c = t.split(' ');
    }
  }

  // ACCEPTE un générateur style 'POLYTECHNIQUE EDIFICE PRINCIPAL [UNIVERSITE], 2500, ch. de Polytechnique (Montréal)'
  if (b.length > 1 && !(b[0]>0)) {
    c = b[0].split(' ');
    t = b[0].replace(/,/g,'');
  }

  if (t.length==6 && /\D\d\D\d\D\d/.test(t)) {
      typeRecherche = 'cod';
  }
  

  if (c.length>1) {

    if (c[0]>0 && c[1].length>1 && typeRecherche == null) {
      //madDialogueOn('recherche d\'adresse');
      typeRecherche = 'adi';
      t = c[0]+' '+madNetPart(t.substring(t.indexOf(' ')+1),1);
    }

    if (c[0] == 'METRO' && c[1].length>0) {
      //madDialogueOn('recherche de station de métro');
      typeRecherche = 'met';
      t = c[0]+' '+madNetPart(t.substring(t.indexOf(' ')+1));
    }

    if (c[0] == 'GARE' && c[1].length>0) {
      //madDialogueOn('recherche de gare de train');
      typeRecherche = 'gar';
      t = t.replace(/\//,'/ ');
      t = c[0]+' '+madNetPart(t.substring(t.indexOf(' ')+1));
    }

    if (c[0] == 'ARRET' && c[1]>9999 && c[1]<1000000 && c[1].length == 5) {
      //madDialogueOn('recherche de gare de train');
      typeRecherche = 'aut';
      t = c[1];
    }
  
    if (c[0].length==3 && c[1].length==3 && /\D\d\D/.test(c[0]) && /\d\D\d/.test(c[1])) {
      //madDialogueOn('recherche d\'adresse');
      typeRecherche = 'cod';
      t = c[0]+c[1];
    }

    if (c[0].length>1 && c[1].length>0 && typeRecherche == null) {
      //madDialogueOn('recherche de générateur');
      typeRecherche = 'gen';
      t = madNetPart(t);
    }
  } else {

    if (c[0] == 'METRO') {
      t = c[0]+' %';
      typeRecherche = 'met';
    }

    if (c[0] == 'GARE') {
      t = c[0]+' %';
      typeRecherche = 'gar';
    }
  
    if (c[0].length>1 && !(c[0]>0) && typeRecherche == null) {
      //madDialogueOn('recherche de générateur');
      typeRecherche = 'gen';
      t = madNetPart(t);
    }
    if (c[0]>9999 && c[0]<1000000 && c[0].length == 5 ) {
      //madDialogueOn('recherche numéro AUTOBUS');
      typeRecherche = 'aut';
    }
  }
  if (typeRecherche == null) {
    //madDialogueOn('?');
  } else {
    $('#madDialogueRegEx').html(t);
    clearTimeout(window.reqAjax);
    window.reqAjax = setTimeout('rechercheLocal(\'q='+ escape(t) + '&r='+escape(l)+'&t=' + typeRecherche+'\',\''+typeRecherche+'\')',madDeltaAjax);
  }
  }
}


/**
 * Initialise une requete AJAX pour obtenir une localisation
 * @pars l
 */
function rechercheLocal(pars,typeRecherche) {
  if ($('#recherchevfp').attr('checked') == true ) {
    var url = 'madRechercheVFP.php';
  } else {
    var url = 'madRecherche.php';
  }
  
  madDialogueOn(typeRecherche);
  if (attenteReponse == 0 ) {
    attenteReponse = 1;
  $.ajax({
    type: "GET",
    url: url,
    data: pars,
    dataType: "xml",
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      attenteReponse=0;
    },
    success: function(msg){
      if ( msg ) {
        rechercheLocalCB(msg);
      } else {
      	alert("erreur Ajax 65");
      }
    }
  });

  } else {
    clearTimeout(window.reqAjax);
    window.reqAjax = setTimeout('rechercheLocal(\''+pars+'\',\''+typeRecherche+'\')',madDeltaAjax);
  }
} 

/**
 * Traitement du resulat XML de recherche
 * @pars o Object XML
 */

var madRechercheResultats = null;

function rechercheLocalCB(x) {
  if (attenteReponse==1) {
    attenteReponse=0;
    var nb = x.getElementsByTagName('nbLocal')[0].firstChild.data;
    madDialogueOn('nombre de résultat(s): '+nb+' '+x.getElementsByTagName('typeLocal')[0].firstChild.data);
    $('#tdCalculerInfo').html('');
    var m = x.getElementsByTagName('Message')[0].firstChild.data;
    var nomOD = '';
    var picto = '';
    switch (m) {
    case 'o':
    case 'l':
      nomOD = 'Origine';
      picto = 'images/flech_vert.png';
      break;
    case 'd':
      nomOD = 'Destination';
      picto = 'images/flech_rouge.png';
      break;
    case 'automatique':
      nomOD = 'Origine';
      picto = 'images/flech_vert.png';
      break;
    }

    if (madClicCarte==1 && nb==1) {
        madClicCarte = 0;
        madRechercheResultats = x;
        madSauveLocal(0,m);
        return;
    }
    
    if (nb>=1 && nb<madResultatRechercheMax) {
      var txt2 = '<div style="position:relative;top:0px;left:30px;width:360px;"><b>'+selectionLocalisation+'</b></div>';
      var ido = 0;
      var idd = 0;
      var bgc = '#ffffff';
      for (var i = 0; i<nb; i++) {
        madRechercheResultats = x;

	if (i%2==0) {
	  bgc = '#eeeeee';
	} else {
	  bgc = '#ffffff';
	}

	txt2 += '<div style="position:relative;top:0px;left:0px;width:100%;padding:1px;">';
	txt2 += '<div style="position:relative;left:00px;width:100%;top:0px;background-color:'+bgc+';padding:4px 10px;cursor:pointer;cursor:hand;" onmouseover="this.style.cursor=\'pointer\';" onclick="madSauveLocal('+i+',\''+m+'\');selectIEBug(1);" liste="" value="">'+x.getElementsByTagName('Descrip')[i].firstChild.data;
	txt2 += '</div>';
	txt2 += '</div>';
      }
      $('#search-results-'+m).html(txt2);
      $('#search-results-'+m).css('display','block');
      selectIEBug(0);
    } else {
      if (nb==0) {
      $('#search-results-'+m).html(_MAD_ONGLET_AIDE);
      $('#search-results-'+m).css('display','block');
      selectIEBug(0);
      } else {
      $('#search-results-'+m).html('Trop de résultats; veuillez préciser.');
      $('#search-results-'+m).css('display','block');
      selectIEBug(0);
      }
    }
  } else {
    $('#search-results-'+m).css('display','none');
    selectIEBug(1);
  }
}

function selectIEBug(visible) {
  if (visible) {
	$('#jour').css('visibility','visible');
	$('#hdep1').css('visibility','visible');
	$('#hdep2').css('visibility','visible');
	$('#pmarc').css('visibility','visible');
	$('#ptrans').css('visibility','visible');
	$('#umetro').css('visibility','visible');
	$('#utrain').css('visibility','visible');
	$('#madinv').css('visibility','visible');
  } else {
	$('#jour').css('visibility','hidden');
	$('#hdep1').css('visibility','hidden');
	$('#hdep2').css('visibility','hidden');
	$('#pmarc').css('visibility','hidden');
	$('#ptrans').css('visibility','hidden');
	$('#umetro').css('visibility','hidden');
	$('#utrain').css('visibility','hidden');
	$('#madinv').css('visibility','hidden');
  }
}

function madSauveLocal(n,m) {
  distanceAuto = null;

  x = madRechercheResultats;
  var xy = x.getElementsByTagName('XY')[n].firstChild.data.split(' ');

  if (m=='o') {
    LocalOD = 'Origine';
    envoyerStartPos(xy[0],xy[1]);
  } else {
    LocalOD = 'Destination';
    envoyerEndPos(xy[0],xy[1]);
  }

  $('#'+LocalOD).val(x.getElementsByTagName('Descrip')[n].firstChild.data.replace('’',"'"));
  $('#'+LocalOD).attr('lieu',x.getElementsByTagName('Descrip')[n].firstChild.data.replace('’',"'"));
  $('#'+LocalOD).attr('region',x.getElementsByTagName('Region')[n].firstChild.data);
  $('#'+LocalOD).attr('xcoord',xy[0]);
  $('#'+LocalOD).attr('ycoord',xy[1]);
  $('#Localisation-'+m).val(x.getElementsByTagName('Descrip')[n].firstChild.data.replace('’',"'"));
  $('#madCorps1').css('display','block');
  $('#madCorps2').css('display','none');

  $('#madLignes').css('display','none');
  ChangeMode(0);
  RemoveLabel();
  $('#madCorps2').html('');

  $('#search-results-'+m).css('display','none');
  selectIEBug(1);
  madPrevSearch = x.getElementsByTagName('Descrip')[n].firstChild.data.replace('’',"'");
}


function madZapLocal(m) {
  distanceAuto = null;

  if (m=='o') {
    LocalOD = 'Origine';
  } else {
    LocalOD = 'Destination';
  }

  $(LocalOD).value = '';
  $(LocalOD).lieu = '';
  $(LocalOD).region = 0;
  $(LocalOD).xcoord = 0;
  $(LocalOD).ycoord = 0;
  $('#Localisation-'+m).val('');
  $('#search-results-'+m).css('display','none');
  selectIEBug(1);
  madPrevSearch = '';
}

function madToggleCalculer() {

  if ($('#Origine').attr('xcoord')>0 && $('#Destination').attr('xcoord')>0) {
    if ($('#Origine').attr('xcoord')!=$('#Destination').attr('xcoord') && $('#Origine').attr('ycoord')!=$('#Destination').attr('ycoord')) {
      if (($('#Origine').attr('xcoord')-$('#Destination').attr('xcoord'))*($('#Origine').attr('xcoord')-$('#Destination').attr('xcoord'))+($('#Origine').attr('ycoord')-$('#Destination').attr('ycoord'))*($('#Origine').attr('ycoord')-$('#Destination').attr('ycoord'))>62500 ) {
        $('#tdCalculerInfo').html('');
        return 1;
      } else {
        $('#tdCalculerInfo').html(_MAD_DIST250);
        return 0;
      }
    } else {
      $('#tdCalculerInfo').html(_MAD_MEME_OD);
      return 0;
    }
  } else {
    if ($('#Origine').attr('xcoord')>0) {
      $('#tdCalculerInfo').html(_MAD_ERREU_D);
      return 0;
    } else {
      $('#tdCalculerInfo').html(_MAD_ERREU_O);
      return 0;
    }
  }
  
}

var ajaxCalculPars = '';

/**
 * Initialisation de la requete AJAX pour calculer des trajets
 */
function calculTrajetsTxt() {

  var url = 'madCalcul.php';
  var circon = '';
  if (!madToggleCalculer()) {
  	return;
  }
  var pars = 'x1='+$('#Origine').attr('xcoord');
  pars += '&y1='+$('#Origine').attr('ycoord');
  pars += '&ro='+$('#Origine').attr('region');
  pars += '&x2='+$('#Destination').attr('xcoord');
  pars += '&y2='+$('#Destination').attr('ycoord');
  pars += '&rd='+$('#Destination').attr('region');

  if ($('#deparra').attr('checked')) {
  $('#heureDATrajet').html(_MAD_HEURE_D_ARRIVEE);
    pars += '&da=a';
  } else {
    $('#heureDATrajet').html(_MAD_HEURE_DE_DEPART);
    pars += '&da=d';
  }

  pars += '&d='+$('#jour').val();
  pars += '&h='+$('#hdep1').val()+':'+$('#hdep2').val();
  circon += _MAD_MINIMISER_MARCHE +' : ';
  if ($('#pmarc').attr('checked')==true) {
    circon += _MAD_OUI.toUpperCase();
    pars += '&ma=1';
  } else {
    circon += _MAD_NON.toUpperCase();
    pars += '&ma=0';
  }
  circon += '<br>'+_MAD_MINIMISER_CORRESP +' : ';
  if ($('#ptrans').attr('checked')==true) {
    circon += _MAD_OUI.toUpperCase();
    pars += '&co=1';
  } else {
    circon += _MAD_NON.toUpperCase();
    pars += '&co=0';
  }
  circon += '<br>'+_MAD_UTIL_METRO +' : ';
  if ($('#umetro').attr('checked')==true) {
    circon += _MAD_OUI.toUpperCase();
    pars += '&me=1';
  } else {
    circon += _MAD_NON.toUpperCase();
    pars += '&me=0';
  }
  circon += '<br>'+_MAD_UTIL_TRAIN +' : ';
  if ($('#utrain').attr('checked')==true) {
    circon += _MAD_OUI.toUpperCase();
    pars += '&tr=1';
  } else {
    circon += _MAD_NON.toUpperCase();
    pars += '&tr=0';
  }
  pars += '&lo='+escape($('#Origine').attr('lieu'));
  pars += '&ld='+escape($('#Destination').attr('lieu'));
  if (usager_id>0) {
    pars += '&uid='+usager_id;
  } else {
    pars += '&uid=0';
  }
  pars += '&id='+Math.ceil(Math.random()*100);
  pars += '&lng='+sLangue;
  pars += '&crt='+madNsageo;
  if (madNsageo) {
  	thisMovie("nsademo").StartBusy(_MAD_EN_COURS);
  }
  $('#tdCalculer').html('<img src="images/'+sLangue+'/calculer_on.png" border="0" width="137px" height="25px" style="cursor:pointer;cursor:hand;" alt="'+_MAD_CALCULER+'" onclick="javascript:calculTrajetsTxt();">');
  MoveExtent($('#Origine').attr('xcoord'),$('#Origine').attr('ycoord'),$('#Destination').attr('xcoord'),$('#Destination').attr('ycoord'));
  ajaxCalculPars = pars;
  $.ajax({
    type: "GET",
    url: url,
    data: pars,
    dataType: "json",
    error: function (XMLHttpRequest, textStatus, errorThrown) {
      if (madNsageo) {
        thisMovie("nsademo").StopBusy();
      }  
      $('#tdCalculer').html('<img src="images/'+sLangue+'/calculer_off.png" border="0" width="137px" height="25px" style="cursor:pointer;cursor:hand;" alt="'+_MAD_CALCULER+'" onclick="javascript:calculTrajetsTxt();">');      
    },
    success: function(msg){
      $('#tdCalculer').html('<img src="images/'+sLangue+'/calculer_off.png" border="0" width="137px" height="25px" style="cursor:pointer;cursor:hand;" alt="'+_MAD_CALCULER+'" onclick="javascript:calculTrajetsTxt();">');
      if ( msg.CalculerResult.Message=="OK" ) {
        madCalculJsonAjaxCB(msg.CalculerResult);
      } else {
	  if (madNsageo) {
	    thisMovie("nsademo").StopBusy();
	  }  
      	alert(msg.CalculerResult.Message);
      }
    }
  });
  $('#madCorps2c').html(circon);
}


var aGeom = new Array();
var aEtiq = new Array();
var madPrint = '';

var maditin = undefined;

/**
 * Traite le resultat de calcul de parcours
 * @pars o Object XML
 */

function madCalculJsonAjaxCB (madJson) {

  maditin = madJson;

  if (madNsageo) {
    thisMovie("nsademo").StopBusy();
  }  
  if (typeof(maditin.Locals.sLocal[0].LL)=='undefined') {
  
    var local0xy = maditin.Locals.sLocal[0].XY.split(' ');
  	
    Proj4js.reportError = function(msg) {alert('erreur Proj 41:'+msg);}
  	var source = new Proj4js.Proj('EPSG:32188');
  	var dest = new Proj4js.Proj('EPSG:4326');
  	var p = new Proj4js.Point(parseInt(local0xy[0]),parseInt(local0xy[1]));
  	Proj4js.transform(source, dest, p);
    
    var local0ll = new Array();
    local0ll[0] = p.x;
    local0ll[1] = p.y;
    
    var local1xy = maditin.Locals.sLocal[1].XY.split(' ');
  
    var p = new Proj4js.Point(parseInt(local1xy[0]),parseInt(local1xy[1]));
    Proj4js.transform(source, dest, p);
    
    var local1ll = new Array();
    local1ll[0] = p.x;
    local1ll[1] = p.y;
  
    distanceAuto = null;
  calculDistanceAuto(local0ll[1],local0ll[0],local1ll[1],local1ll[0], directions);
  
  } else {
  var local0ll = maditin.Locals.sLocal[0].LL.split(' ');
  var local1ll = maditin.Locals.sLocal[1].LL.split(' ');

    distanceAuto = null;
  calculDistanceAuto(local0ll[0].replace(',','.'),local0ll[1].replace(',','.'),local1ll[0].replace(',','.'),local1ll[1].replace(',','.'), directions);
  }

  resultat = true;
  formatSommaire();
  madPrint = prepareImpression();
  $('#madCorps2').css('display','block');
  ChangeMode(0);

$('#madCorps2e').html(_MAD_PERIODE_HORAIRES+': '+afficheDate(maditin.Per_assig)+' - '+afficheDate(maditin.Per_assig.substr(13,10))+'<br>');
$('#madCorps2h').html(_MAD_CALCULE_LE+' '+maditin.Date.substr(8,2)+'/'+maditin.Date.substr(5,2)+'/'+maditin.Date.substr(0,4)+' '+_MAD_AT.toLowerCase()+' '+maditin.Date.substr(11,2)+'h'+maditin.Date.substr(14,2));

  madAfficheItin(0,0);

  $('#boutononglet3').html('id: '+madJson.monID);
  
}

function divPrint() {
  var h = '';
  h+= '';
  if (!(maditin.Itineraires.sItineraire[0] == undefined)) {
    h+= '<b>'+_MAD_OPTION+' 1: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[0].Sommaire)+'<br>';
  }
  if (!(maditin.Itineraires.sItineraire[1] == undefined)) {
    h+= '<b>'+_MAD_OPTION+' 2: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[1].Sommaire)+'<br>';
  }
  if (!(maditin.Itineraires.sItineraire[2] == undefined)) {
    h+= '<b>'+_MAD_OPTION+' 3: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[2].Sommaire)+'<br>';
  }
  return h;
}


function formatSommaire() {
  $('#jourTrajet').html($('#jour').val().substr(8,2)+'/'+$('#jour').val().substr(5,2)+'/'+$('#jour').val().substr(0,4));
  $('#heureTrajet').html($('#hdep1').val()+'h'+$('#hdep2').val());
  $('#madLignes').css('display','block');
  $('#sommaireTrajet0').css('background-color','#0498da');
  if (maditin.Itineraires.sItineraire.Sections == undefined) {
    if (!(maditin.Itineraires.sItineraire[0] == undefined)) {
    	$('#sommaireTrajet0').css('display','block');
      $('#sommaireTrajet0l').html('<b>'+_MAD_OPTION+' 1: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[0].Sommaire));
      $('#sommaireTrajet0t').html(sommaireTemps(maditin.Itineraires.sItineraire[0].Sommaire));
    } else {
    	$('#sommaireTrajet0').css('display','none');
    }
    if (!(maditin.Itineraires.sItineraire[1] == undefined)) {
    	$('#sommaireTrajet1').css('display','block');
      $('#sommaireTrajet1l').html('<b>'+_MAD_OPTION+' 2: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[1].Sommaire));
      $('#sommaireTrajet1t').html(sommaireTemps(maditin.Itineraires.sItineraire[1].Sommaire));
    } else {
    	$('#sommaireTrajet1').css('display','none');
    }
    if (!(maditin.Itineraires.sItineraire[2] == undefined)) {
      $('#sommaireTrajet2').css('display','block');
      $('#sommaireTrajet2l').html('<b>'+_MAD_OPTION+' 3: </b>'+sommaireLignes(maditin.Itineraires.sItineraire[2].Sommaire));
      $('#sommaireTrajet2t').html(sommaireTemps(maditin.Itineraires.sItineraire[2].Sommaire));
    } else {
    	$('#sommaireTrajet2').css('display','none');
    }
  } else {
    	$('#sommaireTrajet0').css('display','block');
    $('#sommaireTrajet0l').html('<b>'+_MAD_OPTION+' 1: </b>'+sommaireLignes(maditin.Itineraires.sItineraire.Sommaire));
    $('#sommaireTrajet0t').html(sommaireTemps(maditin.Itineraires.sItineraire.Sommaire));
    	$('#sommaireTrajet1').css('display','none');
    	$('#sommaireTrajet2').css('display','none');
  }
}

function affiche_detail(n) {
  checkHeureGlobal = 0;

	if (!(maditin.Itineraires.sItineraire.Sections == undefined)) {
	  var madRoute = maditin.Itineraires.sItineraire;
	} else {
	  var madRoute = maditin.Itineraires.sItineraire[n];
	}

  $('#madCorps2l').html(itineraireLignes(madRoute.Sommaire));
  var i = '';
  i+= format_acceso(madRoute.Sections.sSection.AccesOri);
  // trap les cas ou il n y a qu une seule ligne TC
  if (madRoute.Sections.sSection.Lignes_TC.sLigne_TC.length == undefined) {
    i+= divSpace();
    i+= format_lignetc(madRoute.Sections.sSection.Lignes_TC.sLigne_TC);
  } else {
    for (var j=0; j<madRoute.Sections.sSection.Lignes_TC.sLigne_TC.length; j++) {
      i+= divSpace();
      i+= format_lignetc(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[j]);
    }
  }

  i+= divSpace();
  i+= format_accesd(madRoute.Sections.sSection.AccesDesti);
  i+= divSpace();
  var h2 = '';
  h2 = ''+_MAD_HEURES_APPROX+'<br>';
  if (checkHeureGlobal==1) {
    h2 = '<br>'+_MAD_HEURES_APPROX+'<br><br>** '+_MAD_HORS_STL+'<br>';
  } else {
  }
  $('#madCorps2').html(i+h2);
}

function format_acceso($acces) {
	var $html = '';
	$html+='<div style="position:relative;left:0px;width:344px;">';
	$html+='<div style="position:relative;left:66px;width:278px;top:0px;">';
	$html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$acces.XY.replace(/ /g,',')+',-1,1)" ondblclick= "Move('+$acces.XY.replace(/ /g,',')+',84,1)"><b>'+$acces.Lieu_dep+'</b></span>';
	$html+= '<span style="cursor:pointer;cursor:hand;" onclick= "Move('+$acces.XY.replace(/ /g,',')+',84,1)"><img src="images/loupe16.gif"></span>';
	$html+='</div>';
	$html+='<div style="position:absolute;left:0px;top:0px;">';
	$html+= format_heure($acces.Hre_dep.string[0]);
	$html+='</div>';
	$html+='<div style="position:absolute;left:45px;top:0px;">';
	$html+= '<img src="images/startflag-1.gif" width="16px" height="16px">';
	$html+='</div>';
	$html+='</div>';
	if ($acces.Distance>5) {
	  $html+='<div style="position:relative;left:0px;width:344px;">';
 	  $html+='<div style="position:relative;left:66px;width:278px;top:0px;>"';
	  $html+= '<i>'+_MAD_MARCHE_SUR+' '+$acces.Distance+' '+_MAD_METRE.toLowerCase()+'s</i>';
	  $html+='</div>';
      	  $html+='<div style="position:absolute;left:45px;top:0px;">';
	  $html+= '<img src="images/leg-icon-walk.gif" alt="'+_MAD_MARCHE+'">';
	  $html+='</div>';
	  $html+='</div>';
	}
	return wrapDivSection($html);
}

function format_accesd($acces) {
	var $html = '';
	if ($acces.Distance>5 && $acces.Geometrie.length>=14) {
	  $html+='<div style="position:relative;left:0px;width:344px;">';
 	  $html+='<div style="position:relative;left:66px;width:278px;top:0px;>';
	  $html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$acces.Geometrie.substr(0,6)+','+$acces.Geometrie.substr(7,7)+',-1,1)" ondblclick= "Move('+$acces.Geometrie.substr(0,6)+','+$acces.Geometrie.substr(7,7)+',84,1)"><i>'+_MAD_MARCHE_SUR+' '+$acces.Distance+' '+_MAD_METRE.toLowerCase()+'s</i></span>';
	  $html+= '<span style="cursor:pointer;cursor:hand;" onclick= "Move('+$acces.Geometrie.substr(0,6)+','+$acces.Geometrie.substr(7,7)+',84,1)"><img src="images/loupe16.gif"></span>';
	  $html+='</div>';
      	  $html+='<div style="position:absolute;left:45px;top:0px;">';
	  $html+= '<img src="images/leg-icon-walk.gif" alt="'+_MAD_MARCHE+'">';
	  $html+='</div>';
	  $html+='</div>';
	}
	$html+='<div style="position:relative;left:0px;width:344px;">';
	$html+='<div style="position:relative;left:66px;width:278px;top:0px;">';
	$html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$acces.XY.replace(/ /g,',')+',-1,1)" ondblclick="Move('+$acces.XY.replace(/ /g,',')+',84,1)"><b>'+$acces.Lieu_arr+'</b></span>';
	$html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$acces.XY.replace(/ /g,',')+',84,1)"><img src="images/loupe16.gif"></span>';
	$html+='</div>';
	$html+='<div style="position:absolute;left:0px;top:0px;">';
	$html+= format_heure($acces.Hre_arr.string[0]);
	$html+='</div>';
	$html+='<div style="position:absolute;left:45px;top:0px;">';
	$html+= '<img src="images/endflag-1.gif" width="16px" height="16px">';
	$html+='</div>';
	$html+='</div>';
	
	return wrapDivSection($html);
}

function format_lignetc($lignetc) {
	var $html = '';
	//ligne1
	$html+='<div style="position:relative;left:0px;width:344px;">';

 	  $html+='<div style="position:relative;left:66px;width:278px;top:0px;">';
        $html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$lignetc.XY.replace(/ /g,',')+',-1,1)" ondblclick="Move('+$lignetc.XY.replace(/ /g,',')+',84,1)"><b>'+$lignetc.Arret_dep+'</b></span>';
        $html+= '<span style="cursor:pointer;cursor:hand;" onclick="Move('+$lignetc.XY.replace(/ /g,',')+',84,1)"><img src="images/loupe16.gif"></span>';

	if (($lignetc.Ligne>1000 && $lignetc.Ligne<1010) || ($lignetc.Ligne<=5)) {
	    $html+='&nbsp;(<a href="'+$lignetc.Hyperlien_arret.replace(/~!/g,'&')+'" target="_blank">information</a>)';
	} else if (($lignetc.Ligne>=5680 && $lignetc.Ligne<6000) || ($lignetc.Ligne>=680 && $lignetc.Ligne<1000)) {
	} else {
          $html+='<img src="images/telbus.gif" alt="'+_MAD_NO_AUTOBUS+'">&nbsp;';
          $html+='<a href="'+urlHorairePHP+'?lng='+sLangue+'&l='+$lignetc.Ligne+'&d='+$lignetc.Direc.substr(0,1)+'&t='+$lignetc.Arret_client;
	    $html+= '" target="_blank">'+$lignetc.Arret_client+'</a>';
	}


	$html+='</div>';

	$html+='<div style="position:absolute;left:0px;top:0px;">';
	$html+= format_heure($lignetc.Hre_dep.string[0]);
	$html+= checkHeure($lignetc.Ligne);
	$html+='</div>';

      	$html+='<div style="position:absolute;left:48px;top:3px;">';
    	$html+= '<img src=\'images/n_arr.gif\' ALT=\''+_MAD_ARRET+'\' style=\'border-style: none\'>';

	$html+='</div>';

	$html+='</div>';

	//ligne2
	$html+='<div style="position:relative;left:0px;width:344px;padding:3px 0px;">';
 	  $html+='<div style="position:relative;left:66px;width:278px;top:0px;" ';
 	  if ($lignetc.Ligne>5 && $lignetc.Ligne<680) {
 	  $html+='onmouseover="javascript:madGetLigne(\''+$lignetc.Transporteur+'\','+$lignetc.Ligne+',\''+$lignetc.Direc.substr(0,1)+'\');" onmouseout="javascript:removeLineTrace(\''+$lignetc.Ligne+'\');"';
 	   }
 	  $html+='>';
    	$html+='<b>'+$lignetc.Descrip+'</b> '; 
 		switch ($lignetc.Direc) {
 		case 'Nord':
			$html+= _MAD_DIR_NORD;
			break;
 		case 'Sud':
			$html+= _MAD_DIR_SUD;
			break;
 		case 'Est':
			$html+= _MAD_DIR_EST;
			break;
 		case 'Ouest':
			$html+= _MAD_DIR_OUEST;
			break;
		default:
			$html+= $lignetc.Direc;
		}
    
	$html+='</div>';
      	  $html+='<div style="position:absolute;left:45px;top:2px;">';

	if (($lignetc.Ligne>1000 && $lignetc.Ligne<1010) || ($lignetc.Ligne<=5)) {
		$html+='<img src="images/metro_p'+ligneLocal($lignetc.Ligne)+'.gif" alt="METRO">';
	} else if (($lignetc.Ligne>=5680 && $lignetc.Ligne<6000) || ($lignetc.Ligne>=680 && $lignetc.Ligne<1000)) {
		$html+='<img src="images/train_p.gif" alt="TRAIN">';
	} else {
		$html+='<img src="images/leg-icon-bus.gif" alt="'+_MAD_AUTOBUS+'">';
	}
    
	$html+='</div>';
	$html+='</div>';

	//ligne3
	$html+='<div style="position:relative;left:0px;width:344px;">';
 	  $html+='<div style="position:relative;left:66px;width:278px;top:0px;">';
    $html+=$lignetc.Arret_arr;
	$html+='</div>';
	$html+='<div style="position:absolute;left:0px;top:0px;">';
        $html+=format_heure($lignetc.Hre_arr.string[0]);
	$html+= checkHeure($lignetc.Ligne);
	$html+='</div>';
      	  $html+='<div style="position:absolute;left:48px;top:3px;">';
    $html+='<img src="images/n_arr.gif" ALT="'+_MAD_ARRET+'">';
	$html+='</div>';
	$html+='</div>';
    
	return wrapDivSection($html);
}


function divSpace() {
  return '<hr>';
  return '<div style="position:relative;width:354px;height:1px;background-color:#0c3d65;padding:0px"></div>';
}

function wrapDivSection(t) {
  return '<div style="position:relative;width:354px;background-color:#ffffff;padding:0px;">'+t+'</div>';
}


function itineraireLignes($sommaire) {
  var $lignes = $sommaire.Lignes;
  var $nbl = $lignes.split(',');
  var eeHeure = '';
  if ( $nbl.length>1 ) {
    var $prefix = _MAD_LIGNE+'s ';
  } else {
    var $prefix = _MAD_LIGNE+' ';
  }
  var ligneTxt = '';
  for (var i=0; i<$nbl.length; i++) {
    if (i>0) {
      ligneTxt+=', ';
    }
    ligneTxt+= format_LigneTCReg($nbl[i]);
  }
  return '<b>'+_MAD_ITINERAIRE+' '+$prefix.toLowerCase()+ligneTxt+eeHeure+'</b>';
}


function sommaireLignes($sommaire) {
  var $lignes = $sommaire.Lignes;
  var $nbl = $lignes.split(',');
  var eeHeure = '';
  if ( $nbl.length>1 ) {
    var $prefix = _MAD_LIGNE+'s ';
  } else {
    var $prefix = _MAD_LIGNE+' ';
  }
  var ligneTxt = '';
  for (var i=0; i<$nbl.length; i++) {
    if (i>0) {
      ligneTxt+=', ';
    }
    ligneTxt+= format_LigneTCReg($nbl[i]);
  }
  var $dur = $sommaire.Temps_tot;
  return '<b>'+$prefix+ligneTxt+eeHeure+'</b>';
  return '<b>'+ligneTxt+eeHeure+'</b>';

}

function sommaireTemps($sommaire) {
  var $dur = $sommaire.Temps_tot;
  var $hDep = format_heure($sommaire.Hre_dep);
  var $hArr = format_heure($sommaire.Hre_arr);
  return '<b>'+$dur+'  min. :</b> '+$hDep+' - '+$hArr;
}


/**
 * Information 
 */
function infoRecherche() {
  var txt = '';
  txt += '<table cellpadding="5" border="1">';
  txt += '<tr><th>type de recherche</th><th>exemple</th></tr>';
  txt += '<tr><td><b>Adresse</b><br><li>numéro nom<br></td><td>900, rue de la Gauchetière ouest<br>900 gauchetiere</td></tr>';
  txt += '<tr><td><b>Intersection</b><br><li>nom/nom</td><td>rue de la Gauchetière ouest/rue University<br>gauchetiere/univ</td></tr>';
  txt += '<tr><td><b>Générateur</b><br><li>nom</td><td>place bonaventure<br>bonaventure</td></tr>';
  txt += '<tr><td><b>Métro</b><br><li>METRO nom</td><td>métro bonaventure<br>metro bonav</td></tr>';
  txt += '<tr><td><b>Gare</b><br><li>GARE nom</td><td>gare centrale<br>gare</td></tr>';
  txt += '<tr><td><b>AUTOBUS</b><br><li>numéro</td><td>52587</td></tr>';
  txt += '<tr><td><b>Code postal</b><br><li>A1A 1A1</td><td>H5A 1K6</td></tr>';
  //txt += '<tr><td><b>Coordonnées</b></td><td>numéro,numéro</td></tr>';
  txt += '</table>';
  $('#search-results').html(txt);
  $('#search-info').css('visibility','visible');

}



/**
 * 
 */
function dispx() {
  $('#madCorps2').css('display','none');
  $('#madCorps1').css('display','block');
  $('#madB7').css('visibility','hidden');
}



/**
 * 
 */
function dispxsr() {
  $('#search-results').css('display','none');
  $('#search-results2').css('display','none');
}



/**
 * 
 */
function localisations() {
  if (usager_id>0) {
    textRecherche = usager_id;
    typeRecherche='usa';
    rechercheLocal('o');
    setTimeout("rechercheLocal('d')",200);
  }
}



/**
 * Formulaire pour se logger sur le site
 */
function login() {

  var txt = '';
  txt += '<table cellpadding="0">';
  txt += '<tr><td><b>nom d\'usager</b></td><td><input type="text" size="10" id="madTAnom"></td></tr>';
  txt += '<tr><td><b>mot de passe</b></td><td><input type="password" size="10" id="madTApasse"></td></tr>';
  txt += '</table>';
  txt += '<input type="button" value="soumettre" style="cursor:pointer;cursor:hand;" onclick="javascript:bienvenue();">';
  $('#madCorps2').html(txt);
  $('#madCorps1').css('display','none');
  $('#madCorps2').css('display','block');
}



/**
 * Sauvegarde cette localisation
 */
function bienvenue() {
    var url = 'usagers_login.php';
    var pars = 'u=' + escape($('#madTAnom').val()) + '&p='+escape($('#madTApasse').val());
    var myAjax = new Ajax.Request( url, { method: 'get', parameters: pars, onComplete: bienvenueCB });
}



/**
 * Sauvegarde cette localisation
 */
function bienvenueCB(o) {
  var oXml = o.responseXML;
  var txt = '';
  txt += oXml.getElementsByTagName('Message_usager')[0].firstChild.data+'<br>';
  var txt2 = 'vous avez '+oXml.getElementsByTagName('nbLocal')[0].firstChild.data+' localisations';
  txt += txt2;
  usager_id=oXml.getElementsByTagName('Usager_id')[0].firstChild.data;
  $('#madCorps2').html(txt);
  $('#madCorps1').css('display','block');
  $('#madCorps2').css('display','none');
  madDialogueOn(txt2);
  $('#madB3').attr('src','sommaire_fichiers/madlock.gif');
  $('#madC1B1').css('visibility','visible');
  textRecherche = usager_id;
  typeRecherche='usa';
  rechercheLocal('automatique');
}



/**
 * Sauvegarde cette localisation
 */
function navFleche(o,e,i) {
  if (e.keyCode==40) {
    if (o.id == 'Origine') {
      o.disabled=true;
      var j = i+1;
      $('#tblOrigine').css('background','#EEE');
      o.disabled=false;
    } else {
      var j = i+1;
      $('#ldOrigine_'+j).css('background','#999');
    }
  }
}


function madMajCirc() {
  $('#madCorps1').css('display','none');
  $('#madCirc08').css('display','block');
  $('#madCorps2').css('display','none');
}

function madMajOD() {
  $('#madCorps1').css('display','block');
  $('#madCirc08').css('display','none');
  $('#madCorps2').css('display','none');
}

function madMajInverse() {
  RemoveLabel();
  var stValue = $('#Origine').val();
  var stLieu = $('#Origine').attr('lieu');
  var stRegion = $('#Origine').attr('region');
  var stXcoord = $('#Origine').attr('xcoord');
  var stYcoord = $('#Origine').attr('ycoord');
  var stLocalisation = $('#Localisation-o').val();

  $('#Origine').val($('#Destination').val());
  $('#Origine').attr('lieu',$('#Destination').attr('lieu'));
  $('#Origine').attr('region',$('#Destination').attr('region'));
  $('#Origine').attr('xcoord',$('#Destination').attr('xcoord'));
  $('#Origine').attr('ycoord',$('#Destination').attr('ycoord'));
  $('#Localisation-o').val($('#Localisation-d').val());
  envoyerStartPos($('#Destination').attr('xcoord'),$('#Destination').attr('ycoord'));

  $('#Destination').val(stValue);
  $('#Destination').attr('lieu',stLieu);
  $('#Destination').attr('region',stRegion);
  $('#Destination').attr('xcoord',stXcoord);
  $('#Destination').attr('ycoord',stYcoord);
  $('#Localisation-d').val(stLocalisation);
  envoyerEndPos(stXcoord,stYcoord);
  
  $('#madCorps2').css('display','none');
  calculTrajetsTxt();
  
}

function madMajCircPlus30() {
  var nH1taille = $('#hdep1').attr('length');
  var nH2taille = $('#hdep2').attr('length');
  if ($('#hdep2').attr('selectedIndex')<nH2taille/2) {
    $('#hdep2').attr('selectedIndex',$('#hdep2').attr('selectedIndex')+(nH2taille/2));
  } else {
    if ($('#hdep1').attr('selectedIndex')<nH1taille-1) {
      $('#hdep1').attr('selectedIndex',$('#hdep1').attr('selectedIndex')+1);
      $('#hdep2').attr('selectedIndex',$('#hdep2').attr('selectedIndex')-(nH2taille/2));
    } else {
      if ($('#hdep2').attr('selectedIndex')<nH2taille-1) {
        $('#hdep2').attr('selectedIndex',nH2taille-1);
      } else {
        alert('maximum');
        return;
      }
    }
  }
  
  $('#madCorps2').css('display','none');
  calculTrajetsTxt();

}

function madMajCircMoins30() {
  var nH1taille = $('#hdep1').attr('length');
  var nH2taille = $('#hdep2').attr('length');
  if ($('#hdep2').attr('selectedIndex')>=nH2taille/2) {
    $('#hdep2').attr('selectedIndex',$('#hdep2').attr('selectedIndex')-(nH2taille/2));
  } else {
    if ($('#hdep1').attr('selectedIndex')>0) {
      $('#hdep1').attr('selectedIndex',$('#hdep1').attr('selectedIndex')-1);
      $('#hdep2').attr('selectedIndex',$('#hdep2').attr('selectedIndex')+(nH2taille/2));
    } else {
      if ($('#hdep2').attr('selectedIndex')>0) {
        $('#hdep2').attr('selectedIndex',0);
      } else {
        alert('minimum');
        return;
      }
    }
  }
  
  $('#madCorps2').css('display','none');
  calculTrajetsTxt();

}


function madMajCircDefaut() {
  alert('en développement');
}


/**
 * recois les coordonnées x,y de l'application Flash
 * @pars x
 * @pars y
 */
function recevoirOri(x,y) {
  madZapLocal('o');
  var sx = Math.round(x);
  var sy = Math.round(y);
  madClicCarte = 1;
  validLocal(sx+","+sy,'o');
  toggleOnglet(0);
  $('#madLignes').css('display','none');
  $('#Localisation-o').val(attenteRecherche);
}

/** recois les coordonnées x,y de l'application Flash
 * @pars x
 * @pars y
 */
function recevoirDesti(x,y) {
  madZapLocal('d');
  var sx = Math.round(x);
  var sy = Math.round(y);
  madClicCarte = 1;
  validLocal(sx+","+sy,'d');
  toggleOnglet(0);
  $('#madLignes').css('display','none');
  $('#Localisation-d').val(attenteRecherche);
}

function toolTipClick(params) {
  var aParams = params.split('|');
  switch (aParams[0]) {
    case 'selectionMarker':
        thisMovie('nsademo').SelectMarker('itinMarker',aParams[1]);
      break;
    case 'ARRET':
       alert(aParams[1]);
   	break;
    case 'STREETVIEW':
    	toggleOnglet(0);
    	initializeGSV(aParams[2],aParams[1],aParams[3]);
    	break;
    default:
  var nom = aParams[0];
  var od = aParams[1];
  madZapLocal(od);
  madClicCarte = 1;
  toggleOnglet(0);
  $('#madLignes').css('display','none');
  RemoveLabel();
  $('#Localisation-'+od).val('recherche en cours...');
  validLocal(nom,od);
  }
}

//} MADITUC

function thisMovie(movieName) 
{
 	if (navigator.appName.indexOf("Microsoft") != -1)
 	{
 		return window[movieName];
 	} else 
 	{
        	return document[movieName];
 	}
 }
/**
 * TEST - Envoyer position
 * @pars b
 * @pars t
 */
function envoyerStartPos(x,y) {
  if (madNsageo) {
    thisMovie("nsademo").setStart(x,y);
  }
}

function movieIsLoaded (theMovie) {
  if (typeof(theMovie) != "undefined") {
    return theMovie.PercentLoaded() == 100;
  } else {
    return false;
  }
}


/**
 * TEST - Envoyer position
 * @pars b
 * @pars t
 */
function envoyerEndPos(x,y) {
  if (madNsageo) {
    thisMovie("nsademo").setEnd(x,y);
  }
}

function ChangeMode(n) {
  if (madNsageo) {
	thisMovie("nsademo").ChangeMode(n);
  }
}

function SegmentClick(id) {
}

function madAfficheItin(n,rezoom) {
  if (madNsageo) {
  madPrepareRouting(n,rezoom,1);
  }
  toggleParcours(n);
}

function transformGeometrieFlash(s) {
  var pts = s;
  pts = pts.replace(/,/g,'"},{"x":"');
  pts = pts.replace(/ /g,'","y":"');
  pts = '{"x":"'+pts+'"}';
  return pts;
}


function markerTypeId(li) {
          switch (li) {
            case '1':
  	    case '1001':
            	return '4';
            	break;
            case '2':
            case '1002':
            	return '5';
            	break;
            case '4':
            case '1004':
            	return '6';
            	break;
            case '5':
            case '1005':
            	return '7';
            	break;
            case '680':
            case '681':
            case '682':
            case '683':
            case '684':
            case '5680':
            case '5681':
            case '5682':
            case '5683':
            case '5684':
            	return '3';
            	break;
            default:
            	return '1';
          }
}

function markerLabelshort(li) {

          switch (li) {
            case '1':
	    case '1001':
            	return '<img src=\'images/metro_p1.gif\' vspace=\'0\' hspace=\'10\'>           '+ligneLocal(li);
            	break;
            case '2':
            case '1002':
            	return '<img src=\'images/metro_p2.gif\' vspace=\'0\' hspace=\'10\'>           '+ligneLocal(li);
            	break;
            case '4':
            case '1004':
            	return '<img src=\'images/metro_p4.gif\' vspace=\'0\' hspace=\'10\'>           '+ligneLocal(li);
            	break;
            case '5':
            case '1005':
            	return '<img src=\'images/metro_p5.gif\' vspace=\'0\' hspace=\'10\'>           '+ligneLocal(li);
            	break;
            case '680':
            case '681':
            case '682':
            case '683':
            case '684':
            case '5680':
            case '5681':
            case '5682':
            case '5683':
            case '5684':
            	return '<img src=\'images/train_p.gif\' vspace=\'0\' hspace=\'10\'>           train';
            	break;
            default:
                  if (li>4000 && li<5000) {
              		return '<img src=\'images/leg-icon-bus-stl.gif\' vspace=\'0\' hspace=\'10\'>               '+ligneLocal(li);
		  } else if ((li>5000 && li<5600) || (li>5 && li<680)) {
              		return '<img src=\'images/leg-icon-bus-stm.gif\' vspace=\'0\' hspace=\'10\'>               '+ligneLocal(li);
		  } else {
              		return '<img src=\'images/leg-icon-bus.gif\' vspace=\'0\' hspace=\'10\'>           '+ligneLocal(li);
              	  }
          }
}

function markerPictoTC(li) {

          switch (li) {
            case '1':
	    case '1001':
            	return '<img src=\'images/metro_p1.gif\' vspace=\'0\' hspace=\'10\'>';
            	break;
            case '2':
            case '1002':
            	return '<img src=\'images/metro_p2.gif\' vspace=\'0\' hspace=\'10\'>';
            	break;
            case '4':
            case '1004':
            	return '<img src=\'images/metro_p4.gif\' vspace=\'0\' hspace=\'10\'>';
            	break;
            case '5':
            case '1005':
            	return '<img src=\'images/metro_p5.gif\' vspace=\'0\' hspace=\'10\'>';
            	break;
            case '680':
            case '681':
            case '682':
            case '683':
            case '684':
            case '5680':
            case '5681':
            case '5682':
            case '5683':
            case '5684':
            	return '<img src=\'images/train_p.gif\' vspace=\'0\' hspace=\'10\'>';
            	break;
            default:
          	  return '<img src=\'images/leg-icon-bus.gif\' vspace=\'0\' hspace=\'10\'>';
          }
}

function format_heure($heure) {
	while ($heure.length<4) {
		$heure = '0'+$heure;
	}
	return $heure.substr(0,2)+'h'+$heure.substr(2);
}

function format_lignetcTTdg($lignetc) {
	if (($lignetc.Ligne>1000 && $lignetc.Ligne<1010) || ($lignetc.Ligne<5)) {
		var $monIcon = 'images/metro_p'+ligneLocal($lignetc.Ligne)+'.gif';
	} else if (($lignetc.Ligne>=5680 && $lignetc.Ligne<6000) || ($lignetc.Ligne>=680 && $lignetc.Ligne<1000)) {
		var $monIcon = 'images/train_p.gif';
	} else {
		var $monIcon = 'images/leg-icon-bus.gif';
	}
	var $html = '[';
	$html+= '{"image":"<img src=\''+$monIcon+'\' vspace=\'0\'>"';
	$html+= ',"descrip":"<font size=\'+3\'><b>'+$lignetc.Descrip+'</b>&nbsp;';

	switch ($lignetc.Direc.substr(0,1)) {
	case 'N':
		$html+= _MAD_DIR_NORD;
		break;
	case 'S':
		$html+= _MAD_DIR_SUD;
		break;
	case 'E':
		$html+= _MAD_DIR_EST;
		break;
	case 'O':
		$html+= _MAD_DIR_OUEST;
		break;
	default:
		$html+= $lignetc.Direc;
	}
	$html='</font>"}';
	
	$html+= ',{"image":"<img src=\'images/madPointNoir.png\' vspace=\'0\'>"';
	$html+= ',"descrip":"'+_MAD_DEPART+': ';
	$html+= format_heure($lignetc.Hre_dep.string[0])+'&nbsp;'+$lignetc.Arret_dep+'&nbsp;';
	if ($lignetc.Arret_client>=20000) {
		$html+= '<u>'+hyperlienArret($lignetc.Ligne,$lignetc.Arret_client,0,$lignetc.Direc.substr(0,1))+'</u>';
	}
	$html+= '"}';
	$html+= ',{"image":"<img src=\'images/madPointNoir.png\' vspace=\'0\'>"';
	$html+= ',"descrip":"'+_MAD_ARRIVEE+': ';
	$html+= format_heure($lignetc.Hre_arr.string[0])+'&nbsp;'+$lignetc.Arret_arr+'"}';
	$html+= ']';
	return $html;
}

function format_lignetcTTdgNouv($lignetc,monMarkerId) {
	var monSuivant = monMarkerId+1;
	var monPrecedt = monMarkerId-1;
	if (($lignetc.Ligne>1000 && $lignetc.Ligne<1010) || ($lignetc.Ligne<5)) {
		var $monIcon = 'images/metro_p'+ligneLocal($lignetc.Ligne)+'.gif';
	} else if (($lignetc.Ligne>=5680 && $lignetc.Ligne<6000) || ($lignetc.Ligne>=680 && $lignetc.Ligne<1000)) {
		var $monIcon = 'images/train_p.gif';
	} else {
		var $monIcon = 'images/leg-icon-bus.gif';
	}

	var $laTooltip = [];

    	var dl ='<b>'+$lignetc.Descrip+'</b>&nbsp;'; 
 		switch ($lignetc.Direc.substr(0,1)) {
 		case 'N':
			dl+= _MAD_DIR_NORD;
			break;
 		case 'S':
			dl+= _MAD_DIR_SUD;
			break;
 		case 'E':
			dl+= _MAD_DIR_EST;
			break;
 		case 'O':
			dl+= _MAD_DIR_OUEST;
			break;
		default:
			dl+= $lignetc.Direc;
		}

        var $loTooltipLine = {
        	"image" : "<img src='"+$monIcon+"' vspace='0'>",
        	"descrip" : "<font size='+3'>"+dl+"</font>"
        }
        $laTooltip.push($loTooltipLine);

	var descrip = _MAD_DEPART+': '+format_heure($lignetc.Hre_dep.string[0])+'&nbsp;'+$lignetc.Arret_dep+'&nbsp;';
	if ($lignetc.Arret_client>=20000) {
		descrip+= '<u>'+hyperlienArret($lignetc.Ligne,$lignetc.Arret_client,0,$lignetc.Direc.substr(0,1))+'</u>';
	}

        var $loTooltipLine = {
        	"image" : "<img src='images/madPointNoir.png' vspace='0'>",
        	"descrip" : descrip
        }
        $laTooltip.push($loTooltipLine);

        var $loTooltipLine = {
        	"image" : "<img src='images/madPointNoir.png' vspace='0'>",
        	"descrip" : _MAD_ARRIVEE+': '+format_heure($lignetc.Hre_arr.string[0])+'&nbsp;'+$lignetc.Arret_arr
        }
        $laTooltip.push($loTooltipLine);
        
        /*
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : '<a href="event:selectionMarker|'+monPrecedt+'">< Précédent</a>&nbsp;&nbsp;&nbsp;<a href="event:selectionMarker|'+monSuivant+'">Suivant ></a>'
        }
        $laTooltip.push($loTooltipLine);
	*/
	
	return $laTooltip;
}



function madPrepareRouting(n,rezoom,reset) {
	if (reset==1) {
		RemoveLabel();
		var couche = 'TazItinLine';
	    var styleId = 4;
	} else {
		var couche = 'TazItinLine'+n;
	    var styleId = 13;
	}
	var monMarkerId = 0;
	var st = 0;
	var reponseFla = '[';

  var apt = new Array();
  
        if (!(maditin.Itineraires.sItineraire.Sections == undefined)) {
   	  var madRoute = maditin.Itineraires.sItineraire;
   	} else {
   	  var madRoute = maditin.Itineraires.sItineraire[n];
   	}
	
	var c1 = '';
	var nbLiensMarche = -1;
	if (madRoute.Sections.sSection.AccesOri.Distance>5) {
	  if (madRoute.Sections.sSection.AccesOri.Geometrie.length >= 29) {
	reponseFla += c1+'{"styleId":"0","segId":"'+nbLiensMarche+'","points": [';
	reponseFla += transformGeometrieFlash(madRoute.Sections.sSection.AccesOri.Geometrie);
	reponseFla += ']}'

        var $loHTMLIcon = {
        	"zoommin" : '60',
        	"zoommax" : '70',
        	"markerWidth" : 12,
        	"markerHeight" : 19,
		"htmltxt" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='1'>"
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

        var $loCallOutData = {
        	"zoommin" : '70',
        	"zoommax" : '120',
		"htmltxt" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='10'>        "+_MAD_MARCHE
        }

	var monSuivant = monMarkerId+1;
        var $loTooltipLine = {
        	"image" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='0'>",
        	"descrip" : madRoute.Sections.sSection.AccesOri.Raffinement
        }
	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);

	/*
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : '<a href="event:selectionMarker|'+monSuivant+'">Suivant</a>'
        }
        $laTooltip.push($loTooltipLine);
        */

	var mXY = madRoute.Sections.sSection.AccesOri.XY.split(' ');
        
	var markersFla09 = {
		"x" : mXY[0],
		"y" : mXY[1],
		"id" : monMarkerId,
		"HTMLIcons" : $loHTMLIcons,
		"calloutdata" : $loCallOutData,
		"tooltipdata" : $laTooltip
	}
	apt.push(markersFla09);
	monMarkerId++;

	nbLiensMarche--;
	c1 = ',';
	  }
	}
	if (madRoute.Sections.sSection.Lignes_TC.sLigne_TC.length == undefined) {
  	  reponseFla += c1+'{"styleId":"'+styleId+'","segId":"0","points": [';
  	  reponseFla += transformGeometrieFlash(madRoute.Sections.sSection.Lignes_TC.sLigne_TC.Geometrie);
  	  reponseFla += ']}';

        var $loHTMLIcon = {
        	"zoommin" : '60',
        	"zoommax" : '70',
        	"markerWidth" : 30,
        	"markerHeight" : 19,
		"htmltxt" : markerPictoTC(madRoute.Sections.sSection.Lignes_TC.sLigne_TC.Ligne)
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

        var $loCallOutData = {
        	"zoommin" : '70',
        	"zoommax" : '120',
		"htmltxt" : markerLabelshort(madRoute.Sections.sSection.Lignes_TC.sLigne_TC.Ligne)
        }

	var mXY = madRoute.Sections.sSection.Lignes_TC.sLigne_TC.XY.split(' ');
        
	var markersFla09 = {
		"x" : mXY[0],
		"y" : mXY[1],
		"id" : monMarkerId,
		"HTMLIcons" : $loHTMLIcons,
		"calloutdata" : $loCallOutData,
		"tooltipdata" : format_lignetcTTdgNouv(madRoute.Sections.sSection.Lignes_TC.sLigne_TC,monMarkerId)
	}
	apt.push(markersFla09);
	monMarkerId++;

  	  c1 = ',';
	} else {
	  var prevXY = madRoute.Sections.sSection.Lignes_TC.sLigne_TC[0].XY;
	  for (var i=0; i<madRoute.Sections.sSection.Lignes_TC.sLigne_TC.length; i++) {
	    var segId = i;
	    reponseFla += c1+'{"styleId":"'+styleId+'","segId":"'+segId+'","points": [';
	    reponseFla += transformGeometrieFlash(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].Geometrie);
	    reponseFla += ']}'
	    styleId++;

        var $loHTMLIcon = {
        	"zoommin" : '60',
        	"zoommax" : '70',
        	"markerWidth" : 30,
        	"markerHeight" : 19,
		"htmltxt" : markerPictoTC(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].Ligne)
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

        var $loCallOutData = {
        	"zoommin" : '70',
        	"zoommax" : '120',
		"htmltxt" : markerLabelshort(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].Ligne)
        }

	var mXY = madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].XY.split(' ');
        
	var markersFla09 = {
		"x" : mXY[0],
		"y" : mXY[1],
		"id" : monMarkerId,
		"HTMLIcons" : $loHTMLIcons,
		"calloutdata" : $loCallOutData,
		"tooltipdata" : format_lignetcTTdgNouv(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i],monMarkerId)
	}
	apt.push(markersFla09);
	monMarkerId++;

	    if (prevXY != madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].XY) {
		  reponseFla += c1+'{"styleId":"10","segId":"'+nbLiensMarche+'","points": [';
		  reponseFla += transformGeometrieFlash(prevXY+','+madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].XY);
		  reponseFla += ']}'
		  nbLiensMarche--;
	    }
            prevXY = madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].Geometrie.substr(madRoute.Sections.sSection.Lignes_TC.sLigne_TC[i].Geometrie.length-14);
  	  c1 = ',';
	  }
	}
	if (madRoute.Sections.sSection.AccesDesti.Distance>5) {
	  if (madRoute.Sections.sSection.AccesDesti.Geometrie.length >= 14) {
	reponseFla += c1+'{"styleId":"0","segId":"'+nbLiensMarche+'","points": [';
	reponseFla += transformGeometrieFlash(madRoute.Sections.sSection.AccesDesti.Geometrie);
	reponseFla += ']}'

        var $loHTMLIcon = {
        	"zoommin" : '60',
        	"zoommax" : '70',
        	"markerWidth" : 12,
        	"markerHeight" : 19,
		"htmltxt" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='1'>"
	}
        var $loHTMLIcons = [];
        $loHTMLIcons.push($loHTMLIcon);

        var $loCallOutData = {
        	"zoommin" : '70',
        	"zoommax" : '120',
		"htmltxt" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='10'>        "+_MAD_MARCHE
        }

	var monPrecedt = monMarkerId-1;
        var $loTooltipLine = {
        	"image" : "<img src='images/leg-icon-walk.gif' vspace='0' hspace='0'>",
        	"descrip" : madRoute.Sections.sSection.AccesDesti.Raffinement
        }

	var $laTooltip = [];
        $laTooltip.push($loTooltipLine);
        
        /*
        var $loTooltipLine = {
        	"image" : "",
        	"descrip" : '<a href="event:selectionMarker|'+monPrecedt+'">Précédent</a>'
        }
        $laTooltip.push($loTooltipLine);
        */

	var mXY = madRoute.Sections.sSection.AccesDesti.Geometrie.substr(0,14).split(' ');
        
	var markersFla09 = {
		"x" : mXY[0],
		"y" : mXY[1],
		"id" : monMarkerId,
		"HTMLIcons" : $loHTMLIcons,
		"calloutdata" : $loCallOutData,
		"tooltipdata" : $laTooltip
	}
	apt.push(markersFla09);
	monMarkerId++;

	  }
	}

	reponseFla += ']';
		var reponseDirFla = '[{"text":"texte","distance":"1"},{"text":"texte","distance":"1"}';
		reponseDirFla += "]";
		
		returnTrajet(reponseDirFla,reponseFla,rezoom,couche);
		if (reset==1) {
  thisMovie("nsademo").addHTMLMarkers(apt,'itinMarker');
  }
}

/**
* Envoyer Label
* @pars direction 
* @pars points
* 
*/
function returnTrajet(direction,points,rezoom,coucheId)
{
  if (madNsageo) {
  if (coucheId!='TazItinLine') {
  	if ( coucheId=='TazItinLineTrace') {
  		if (ligneTraceLayer==0) {
  	thisMovie("nsademo").addDrawingLayer(coucheId);
  	ligneTraceLayer=1;
  		}
  	}else {
  	thisMovie("nsademo").addDrawingLayer(coucheId);
  	}
  }
  thisMovie("nsademo").addLine(eval(points.replace(/&nbsp;/gi," ")),rezoom,coucheId);
  }
}


function removeLine(n) {
  if (madNsageo) {
  thisMovie("nsademo").ClearLayer('TazItinLine'+n);
	}
}


/**
* Clear Label
*/
function RemoveLabel() {

 if (madNsageo) {
   thisMovie("nsademo").ClearLayer('itinMarker');
   thisMovie("nsademo").ClearLayer('TazItinLine');
   thisMovie("nsademo").ClearLayer('TazItinLineTrace');
   thisMovie("nsademo").addDrawingLayer('TazItinLineTrace');
 }

  $('#madCorps2l').html('Itinéraire');

toggle2Contenu('');
  $('#zoneges').css('display','none');
  $('#zoneges').html('');

} 

function removeLineTrace(l) {
   thisMovie("nsademo").ClearLayer('TazItinLineTrace');
}

function SetMarkerZoomLimit(nomCouche, zoom) {

 if (madNsageo) {
   thisMovie("nsademo").SetMarkerZoomLimit(nomCouche, zoom);
 }
} 


function Move(x,y,zoom,transition) {

 if (madNsageo) {
   thisMovie("nsademo").Move(x,y,zoom,transition);
 }
} 

function MoveExtent(x1,y1,x2,y2) {

 if (madNsageo) {
   thisMovie("nsademo").MoveExtent(x1,y1,x2,y2);
 }
}

function afficheJourSpecial(d) {

  if (typeof descjour[d] != 'undefined') {
    $('#affjour').html(descjour[d]);
  } else {
    $('#affjour').html('');
  }
}


var STR_PAD_LEFT = 1;
var STR_PAD_RIGHT = 2;
var STR_PAD_BOTH = 3;
 
function pad(str, len, pad, dir) {
 
	if (typeof(len) == "undefined") { var len = 0; }
	if (typeof(pad) == "undefined") { var pad = ' '; }
	if (typeof(dir) == "undefined") { var dir = STR_PAD_RIGHT; }
 
	if (len + 1 >= str.length) {
 
		switch (dir){
 
			case STR_PAD_LEFT:
				str = Array(len + 1 - str.length).join(pad) + str;
			break;
 
			case STR_PAD_BOTH:
				var right = Math.ceil((padlen = len - str.length) / 2);
				var left = padlen - right;
				str = Array(left+1).join(pad) + str + Array(right+1).join(pad);
			break;
 
			default:
				str = str + Array(len + 1 - str.length).join(pad);
			break;
 
		} // switch
 
	}
 
	return str;
 
}


function prepareImpression() {

	var sOutPrint = '<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8">';
	sOutPrint+= '<link href="taz4.css" rel="stylesheet" type="text/css" media="all"></head><body>';
	sOutPrint+= '<table width="100%"><tr><td align="left"><img src="images/stm.gif" border="0" width="183px" height="55px" alt=""></td>';
	sOutPrint+= '<td align="right"><img src="images/taz4beta.gif" border="0" width="164px" height="55px" alt=""></td></tr></table>';
	sOutPrint+= '<br><span style=""><b>'+_MAD_PARCOURS_CALCULES+'</b></span><img src="images/imprime.gif"><br></br>';
	if (!(maditin.Itineraires.sItineraire.Sections == undefined)) {
 	  sOutPrint += '<br><b>'+_MAD_OPTION+' 1: </b>'+sommairePrint(maditin.Itineraires.sItineraire.Sommaire);
	} else {

	  if (!(maditin.Itineraires.sItineraire[0] == undefined)) {
 	  sOutPrint += '<br><b>'+_MAD_OPTION+' 1: </b>'+sommairePrint(maditin.Itineraires.sItineraire[0].Sommaire);
	  }
	  if (!(maditin.Itineraires.sItineraire[1] == undefined)) {
 	  sOutPrint += '<br><b>'+_MAD_OPTION+' 2: </b>'+sommairePrint(maditin.Itineraires.sItineraire[1].Sommaire);
	  }
	  if (!(maditin.Itineraires.sItineraire[2] == undefined)) {
 	  sOutPrint += '<br><b>'+_MAD_OPTION+' 3: </b>'+sommairePrint(maditin.Itineraires.sItineraire[2].Sommaire);
	  }
	
	}

	sOutPrint += '';

	if (!(maditin.Itineraires.sItineraire.Sections == undefined)) {
 	  sOutPrint += ''+affiche_detailPrintUNI();
	} else {

	  if (!(maditin.Itineraires.sItineraire[0] == undefined)) {
 	  sOutPrint += ''+affiche_detailPrint(0);
	  }
	  if (!(maditin.Itineraires.sItineraire[1] == undefined)) {
 	  sOutPrint += ''+affiche_detailPrint(1);
	  }
	  if (!(maditin.Itineraires.sItineraire[2] == undefined)) {
 	  sOutPrint += ''+affiche_detailPrint(2);
	  }
	
	}
	sOutPrint += '</body></html>';
	
	return sOutPrint;
}


function affiche_detailPrint($id) {
var $sDateJour = 'DateJour';
	if (sLangue=='fr') {
		//var $sDateJour = strftime("%d/%m/%Y", mktime(0, 0, 0, intval(substr($_REQUEST['d'],5,2)), intval(substr($_REQUEST['d'],8,2)), substr($_REQUEST['d'],0,4)));
	} else {
		//var $sDateJour = strftime("%x", mktime(0, 0, 0, intval(substr($_REQUEST['d'],5,2)), intval(substr($_REQUEST['d'],8,2)), substr($_REQUEST['d'],0,4)));
	}

	var $sOut = '<p><a name="trj'+$id+'"><table width="100%" border="2px" cellspacing="1" cellpadding="2"><tr><td width="100%" height="22px" style="background-color:d4eefa;" align="center">';
        $sOut+= _MAD_OPTION+' '+($id+1)+' : '+sommairePrint(maditin.Itineraires.sItineraire[$id].Sommaire);
        $sOut+= '</td></tr></table>';
        $sOut+= '<table width="100%" border="1px" cellspacing="0" frame="box" cellpadding="2"><tr><td colspan="11">';
        $sOut+= _MAD_ORIGINE+':<b>  '+maditin.Locals.sLocal[0].Local+'</b><br>';
        $sOut+= _MAD_DESTINATION+':<b>'+maditin.Locals.sLocal[1].Local+'</b><br>';
        $sOut+= ''+_MAD_JOUR+': '+$('#jour').val().substr(8,2)+'/'+$('#jour').val().substr(5,2)+'/'+$('#jour').val().substr(0,4)+', ';

 if ($('#deparra').attr('checked')) {
	$sOut+= _MAD_HEURE_ARRIVEE+':  '+$('#hdep1').val()+'h'+$('#hdep2').val()+'<br>';
} else {
	$sOut+= _MAD_HEURE_DEPART+':  '+$('#hdep1').val()+'h'+$('#hdep2').val()+'<br>';
}
          $sOut+= _MAD_PEN_MARCHE+':  ';
  if ($('#pmarc').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= ', '+_MAD_METRO_ACTIF+':  ';
  if ($('#umetro').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= ', '+_MAD_TRAIN_ACTIF+':  ';
  if ($('#utrain').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= '<br>'+_MAD_DUREE_PARCOURS+':  '+maditin.Itineraires.sItineraire[$id].Sommaire.Temps_tot+' '+_MAD_MINUTE.toLowerCase()+'s<br>';
        $sOut+= '</td></tr>';

      $sOut+= '<tr style="background-color:d4eefa;">';
	  $sOut+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="8%"><b>'+_MAD_HEURE_DEP+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_DE.toUpperCase()+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_MARCHE_LIGNE+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="8%"><b>'+_MAD_HEURE_ARR+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_A+'</b></td>';
	  $sOut+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $sOut+= '</tr>';

	$sOut+= format_accesoPrint(maditin.Itineraires.sItineraire[$id].Sections.sSection.AccesOri) ;
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
	// trap les cas ou il n y a qu une seule ligne TC
	if (!(maditin.Itineraires.sItineraire[$id].Sections.sSection.Lignes_TC.sLigne_TC[0] == undefined)) {
	  for ($i=0; $i<maditin.Itineraires.sItineraire[$id].Sections.sSection.Lignes_TC.sLigne_TC.length; $i++) {
  		$sOut+= format_lignetcPrint(maditin.Itineraires.sItineraire[$id].Sections.sSection.Lignes_TC.sLigne_TC[$i]);
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
  	  }
  	} else {
      $sOut+= format_lignetcPrint(maditin.Itineraires.sItineraire[$id].Sections.sSection.Lignes_TC.sLigne_TC);
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
  	}
	$sOut+= format_accesdPrint(maditin.Itineraires.sItineraire[$id].Sections.sSection.AccesDesti) ;
  		$sOut+= '<tr height="4px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
var $sdCalculLe = 'Calculé le';
	if (sLangue=='fr') {
		//var $sdCalculLe = strftime('%d/%m/%Y');
	} else {
		//var $sdCalculLe = strftime('%x');
	}

$sOut+= '</table><table width=100% border=0 cellspacing=1 cellpadding=3> <tr> <td width=100% class=note>'+_MAD_HEURES_APPROX+'</td> </tr>';
$sOut+= '  <tr> <td width=100% class=pnote>';
$sOut+= _MAD_PERIODE_HORAIRES+': '+afficheDate(maditin.Per_assig)+' - '+afficheDate(maditin.Per_assig.substr(13,10))+'<br>';
$sOut+= _MAD_CALCULE_LE+' '+maditin.Date.substr(8,2)+'/'+maditin.Date.substr(5,2)+'/'+maditin.Date.substr(0,4)+' '+_MAD_AT.toLowerCase()+' '+maditin.Date.substr(11,2)+'h'+maditin.Date.substr(14,2)+'</td> </tr></table>';
$sOut+= ' <p align=right> <img border="0" src="images/phaut.gif"></p>';

	return $sOut;
}


function affiche_detailPrintUNI() {
var $sDateJour = 'DateJour';
	if (sLangue=='fr') {
		//var $sDateJour = strftime("%d/%m/%Y", mktime(0, 0, 0, intval(substr($_REQUEST['d'],5,2)), intval(substr($_REQUEST['d'],8,2)), substr($_REQUEST['d'],0,4)));
	} else {
		//var $sDateJour = strftime("%x", mktime(0, 0, 0, intval(substr($_REQUEST['d'],5,2)), intval(substr($_REQUEST['d'],8,2)), substr($_REQUEST['d'],0,4)));
	}

	var $sOut = '<p><a name="trj0"><table width="100%" border="2px" cellspacing="1" cellpadding="2"><tr><td width="100%" height="22px" style="background-color:d4eefa;" align="center">';
        $sOut+= _MAD_OPTION+' 1 : '+sommairePrint(maditin.Itineraires.sItineraire.Sommaire);
        $sOut+= '</td></tr></table>';
        $sOut+= '<table width="100%" border="1px" cellspacing="0" frame="box" cellpadding="2"><tr><td colspan="11">';
        $sOut+= _MAD_ORIGINE+':<b>  '+maditin.Locals.sLocal[0].Local+'</b><br>';
        $sOut+= _MAD_DESTINATION+':<b>'+maditin.Locals.sLocal[1].Local+'</b><br>';
        $sOut+= ''+_MAD_JOUR+': '+$('#jour').val().substr(8,2)+'/'+$('#jour').val().substr(5,2)+'/'+$('#jour').val().substr(0,4)+', ';

 if ($('#deparra').attr('checked')) {
	$sOut+= _MAD_HEURE_ARRIVEE+':  '+$('#hdep1').val()+'h'+$('#hdep2').val()+'<br>';
} else {
	$sOut+= _MAD_HEURE_DEPART+':  '+$('#hdep1').val()+'h'+$('#hdep2').val()+'<br>';
}
          $sOut+= _MAD_PEN_MARCHE+':  ';
  if ($('#pmarc').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= ', '+_MAD_METRO_ACTIF+':  ';
  if ($('#umetro').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= ', '+_MAD_TRAIN_ACTIF+':  ';
  if ($('#utrain').attr('checked')==true) {
            $sOut+=_MAD_OUI.toLowerCase();
          } else {
            $sOut+=_MAD_NON.toLowerCase();
          }
          $sOut+= '<br>'+_MAD_DUREE_PARCOURS+':  '+maditin.Itineraires.sItineraire.Sommaire.Temps_tot+' '+_MAD_MINUTE.toLowerCase()+'s<br>';
        $sOut+= '</td></tr>';

      $sOut+= '<tr style="background-color:d4eefa;">';
	  $sOut+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="8%"><b>'+_MAD_HEURE_DEP+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_DE.toUpperCase()+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_MARCHE_LIGNE+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="8%"><b>'+_MAD_HEURE_ARR+'</b></td>';
	  $sOut+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $sOut+= '  <td class=tdt width="28%"><b>'+_MAD_A+'</b></td>';
	  $sOut+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $sOut+= '</tr>';

	$sOut+= format_accesoPrint(maditin.Itineraires.sItineraire.Sections.sSection.AccesOri) ;
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
	// trap les cas ou il n y a qu une seule ligne TC
	if (!(maditin.Itineraires.sItineraire.Sections.sSection.Lignes_TC.sLigne_TC[0] == undefined)) {
	  for ($i=0; $i<maditin.Itineraires.sItineraire.Sections.sSection.Lignes_TC.sLigne_TC.length; $i++) {
  		$sOut+= format_lignetcPrint(maditin.Itineraires.sItineraire.Sections.sSection.Lignes_TC.sLigne_TC[$i]);
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
  	  }
  	} else {
      $sOut+= format_lignetcPrint(maditin.Itineraires.sItineraire.Sections.sSection.Lignes_TC.sLigne_TC);
  		$sOut+= '<tr height="2px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
  	}
	$sOut+= format_accesdPrint(maditin.Itineraires.sItineraire.Sections.sSection.AccesDesti) ;
  		$sOut+= '<tr height="4px"><td colspan="11" style="background-color:d4eefa;"></td></tr>';
var $sdCalculLe = 'Calculé le';
	if (sLangue=='fr') {
		//var $sdCalculLe = strftime('%d/%m/%Y');
	} else {
		//var $sdCalculLe = strftime('%x');
	}

$sOut+= '</table><table width=100% border=0 cellspacing=1 cellpadding=3> <tr> <td width=100% class=note>'+_MAD_HEURES_APPROX+'</td> </tr>';
$sOut+= '  <tr> <td width=100% class=pnote>';
$sOut+= _MAD_PERIODE_HORAIRES+': '+afficheDate(maditin.Per_assig)+' - '+afficheDate(maditin.Per_assig.substr(13,10))+'<br>';
$sOut+= _MAD_CALCULE_LE+' '+maditin.Date.substr(8,2)+'/'+maditin.Date.substr(5,2)+'/'+maditin.Date.substr(0,4)+' '+_MAD_AT.toLowerCase()+' '+maditin.Date.substr(11,2)+'h'+maditin.Date.substr(14,2)+'</td> </tr></table>';
$sOut+= ' <p align=right> <img border="0" src="images/Double_flech.png"></p>';

	return $sOut;
}

function sommairePrint($sommaire) {
  var $lignes = $sommaire.Lignes;
  var $nbl = $lignes.split(',');
  if ( $nbl.length>1 ) {
    var $prefix = _MAD_LIGNE+'s ';
  } else {
    var $prefix = _MAD_LIGNE+' ';
  }
  var ligneTxt = '';
  for (var i=0; i<$nbl.length; i++) {
    if (i>0) {
      ligneTxt+=', ';
    }
    ligneTxt+= format_LigneTCReg($nbl[i]);
  }
  var $dur = $sommaire.Temps_tot;
  return '<b>'+$prefix+ligneTxt+'</b> ('+$dur+'  minutes)';
}

function format_accesoPrint($acces) {
	var $html = '<tr>';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
	  $html+= ' <td class=hre>'+format_heure($acces.Hre_dep.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	 $html+= ' <td class="norm"><b>'+$acces.Lieu_dep+'</b></td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	 $html+= ' <td class="norm">';
	$html+= '<table border=0 width="100%"><tr><td valign="middle" width="20px" align="center">';
	 $html+= '<img src="images/leg-icon-walk.gif"></td><td>'+_MAD_MARCHE_SUR+' '+$acces.Distance+' '+_MAD_METRE.toLowerCase()+'s</td></tr></table></td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	 $html+= ' <td class=hre>'+format_heure($acces.Hre_arr.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	 $html+= ' <td class="norm">'+$acces.Lieu_arr+'</td>';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
	$html+= '</tr>';
	return $html;
}

function format_accesdPrint($acces) {
	var $html = '<tr>';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
	$html+= '  <td class=hre>'+format_heure($acces.Hre_dep.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	$html+= '  <td class="norm">'+$acces.Lieu_dep+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	$html+= '  <td class="norm">';
	$html+= '<table border=0 width="100%"><tr><td valign="middle" width="20px" align="center">';
	$html+= '<img src="images/leg-icon-walk.gif"></td><td>'+_MAD_MARCHE_SUR+' '+$acces.Distance+' '+_MAD_METRE.toLowerCase()+'s</td></tr></table></td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	$html+= '  <td class=hre>'+format_heure($acces.Hre_arr.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
	$html+= '  <td class="norm"><b>'+$acces.Lieu_arr+'</b></td>';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
	$html+= '</tr>';

	return $html;
}

function format_lignetcPrint($lignetc) {
	var $monIcon = '';
	if (($lignetc.Ligne>1000 && $lignetc.Ligne<1010) || ($lignetc.Ligne<5)) {
		$monIcon = 'images/metro_p'+ligneLocal($lignetc.Ligne)+'.gif';
	} else if (($lignetc.Ligne>=5680 && $lignetc.Ligne<6000) || ($lignetc.Ligne>=680 && $lignetc.Ligne<1000)) {
		$monIcon = 'images/train_p.gif';
	} else {
           if ($lignetc.Ligne>4000 && $lignetc.Ligne<5000) {
		$monIcon = 'images/leg-icon-bus-stl.gif';
	   } else if (($lignetc.Ligne>5000 && $lignetc.Ligne<5600) || ($lignetc.Ligne>5 && $lignetc.Ligne<680)) {
	        $monIcon = 'images/leg-icon-bus-stm.gif';
	   } else {
	        $monIcon = 'images/leg-icon-bus.gif';
	   }

	}

	var $html = '<tr>';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $html+= '<td class=hre>'+format_heure($lignetc.Hre_dep.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $html+= '<td class="norm">';
	$html+= '<table border=0 width="100%"><tr><td valign="middle" width="20px" align="center">';
      $html+= '  <img src="images/n_arr.gif" style="border-style: none"></td><td>'+$lignetc.Arret_dep+'<br>';
      $html+=$lignetc.Arret_client+'</td></tr></table>';
      $html+= '</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $html+= '<td class="norm">';
      $html+= '  <table border=0 width="100%">';
      $html+= '    <tr>';
      $html+= '      <td valign="middle" width="20px" align="center">';
      $html+= '        <img src="'+$monIcon+'">';

      $html+= '        <td><b>'+$lignetc.Descrip+'</b><br>';
      
 		switch ($lignetc.Direc.substr(0,1)) {
 		case 'N':
			$html+= _MAD_DIR_NORD;
			break;
 		case 'S':
			$html+= _MAD_DIR_SUD;
			break;
 		case 'E':
			$html+= _MAD_DIR_EST;
			break;
 		case 'O':
			$html+= _MAD_DIR_OUEST;
			break;
		default:
			$html+= $lignetc.Direc;
		}
      
      
      $html+= '        </td>';
      $html+= '      </td>';
      $html+= '    </tr>';
      $html+= '  </table>';
      $html+= '</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $html+= '<td class=hre>'+format_heure($lignetc.Hre_arr.string[0])+'</td>';
	  $html+= ' <td width="2px" style="background-color:d4eefa;"></td>';
      $html+= '<td class="norm">'+$lignetc.Arret_arr+'</td> ';
	  $html+= ' <td width="3px" style="background-color:d4eefa;"></td>';
      $html+= '</tr>';
	return $html;
}

function format_LigneTCReg(lig) {
  if (lig>4000 && lig<5000) {
  	var ligne = lig-4000;
  	var icone = '<img src="images/stl14.png" height="14px">';
	return '<nobr>'+ligne+'</nobr>';
  }
  if (lig>1000 && lig<1010) {
  	var ligne = lig-1000;
  	var icone = '<img src="images/stm14.png" height="14px">';
	return '<nobr>'+ligne+'</nobr>';
  }
  if (lig>5000 && lig<5600) {
  	var ligne = lig-5000;
  	var icone = '<img src="images/stm14.png" height="14px">';
	return '<nobr>'+ligne+'</nobr>';
  }
  if (lig>5600 && lig<6000) {
  	var ligne = lig;
  	var icone = '<img src="images/amt14.png" height="14px">';
	return '<nobr>'+icone+'train</nobr>';
  }
  if (lig<=5) {
  	var ligne = lig;
  	var icone = '<img src="images/stm14.png" height="14px">';
	return '<nobr>'+ligne+'</nobr>';
  }
  if (lig>5 && lig<600) {
  	var ligne = lig;
  	var icone = '<img src="images/stm14.png" height="14px">';
	return '<nobr>'+ligne+'</nobr>';
  }
  if (lig>600 && lig<700) {
  	var ligne = lig;
  	var icone = '<img src="images/amt14.png" height="14px">';
	return '<nobr>'+icone+'train</nobr>';
  }

  return lig;
}

function ligneLocal(lig) {
  if (lig>4000 && lig<5000) {
  	var ligne = lig-4000;
	return ligne;
  }
  if (lig>1000 && lig<1010) {
  	var ligne = lig-1000;
	return ligne;
  }
  if (lig>5000 && lig<5600) {
  	var ligne = lig-5000;
	return ligne;
  }
  if (lig>5600 && lig<6000) {
  	var ligne = lig-5680;
	return ligne;
  }
  return lig;
}

function hyperlienArret(lig,arr,mod,dir) {
  var descrip = '';
  if (mod==1) {
    descrip = '<img src=\'images/n_arr.gif\' ALT=\''+_MAD_ARRET+'\' style=\'border-style: none\'>';
  } else {
    descrip = arr;
  }

  if (lig>4000 && lig<5000) {
    return '<a href=\'/?page_id=665&stop_code='+arr+'\' target=\'_blank\'>'+descrip+'</a>';
  }
  if (lig>5000 && lig<5600) {
    return '<a href=\''+urlHoraireASPX+'?Langue='+sLangue+'&Arret='+arr+'&l='+lig+'&d='+dir+'\' target=\'_blank\'>'+descrip+'</a>';
  }

  if (lig>5 && lig<600) {
    return '<a href=\''+urlHoraireASPX+'?Langue='+sLangue+'&Arret='+arr+'&l='+lig+'&d='+dir+'\' target=\'_blank\'>'+descrip+'</a>';
  }
  return descrip;
}

function afficheDate(d) {
   return d.substr(8,2)+'/'+d.substr(5,2)+'/'+d.substr(0,4)
}


function checkHeure(lig) {
  if (lig>4000 && lig<5000) {
    return '';
  } else {
    return '';
	  }
}

function aideRetour() {
	$('#aideRetour1').html(_AIDE_RETOUR);
	$('#aideRetour2').html(_AIDE_RETOUR);
}



/*StreetView
 */

var map;
var myPano;
var panoClient;
var nextPanoId;

function initializeGSV(x,y,w) {
	$('#gsv').css('display','block');
	var fenwayPark = new GLatLng(x,y);
	w = parseInt(w);
	var fenwayPOV = {yaw:w,pitch:0};
	panoClient = new GStreetviewClient();

	panoramaOptions = { features:{ userPhotos: false } };
	myPano = new GStreetviewPanorama(document.getElementById("gsvIn"),panoramaOptions);
	myPano.setLocationAndPOV(fenwayPark, fenwayPOV);
	GEvent.addListener(myPano, "error", handleNoFlash);
	panoClient.getNearestPanorama(fenwayPark, showPanoData);
}

function showPanoData(panoData) {
	if (panoData.code != 200) {
		alert('showPanoData: Server rejected with code: ' + panoData.code);
		return;
	}
	nextPanoId = panoData.links[0].panoId;
	var displayString = [
		"Panorama ID: " + panoData.location.panoId,
		"LatLng: " + panoData.location.latlng,
		"Copyright: " + panoData.copyright,
		"Description: " + panoData.location.description,
		"Next Pano ID: " + panoData.links[0].panoId
		].join("<br/>");
	myPano.setLocationAndPOV(panoData.location.latlng);
}

function next() {
}

function handleNoFlash(errorCode) {
	if (errorCode == 603) {
		alert("Error: Flash doesn't appear to be supported by your browser");
		return;
	}
}

function disableEnterKey(e)
{
     var key;     
     if(window.event)
          key = window.event.keyCode; //IE
     else
          key = e.which; //firefox     

     return (key != 13);
}

function initializeGDirections() {

	directions = new GDirections();
	
	//Callback en cas de succès
	GEvent.addListener(directions, "load", function() {
		
		distanceAuto = directions.getDistance().meters/1000;
		
		});
	//Callback en cas d'erreur		
	GEvent.addListener(directions, "error", function() {
	
		alert('Erreur '+directions.getStatus().code+'.');

		});		

}

function calculDistanceAuto(pnLat1,pnLon1,pnLat2,pnLon2, podirections) {
	//$('#zoneges').html('<i>attente de la distance auto</i>');
	//$('#zoneges').css('display','block');

	var wp = new Array ();
	wp[0] = new GLatLng(pnLat1,pnLon1);
	wp[1] = new GLatLng(pnLat2,pnLon2);
	podirections.loadFromWaypoints(wp);  
			
}


function updateGes(nbItin) {
  if (distanceAuto == null) {
	  setTimeout('updateGes('+nbItin+')',100);
	  return;
  }

  if (maditin.Itineraires.sItineraire.Sections == undefined) {
    if (!(maditin.Itineraires.sItineraire[0] == undefined)) {
    	var distBus = maditin.Itineraires.sItineraire[nbItin].Sommaire.Dist_bus_ges/1000;
    }
  } else {
    	var distBus = maditin.Itineraires.sItineraire.Sommaire.Dist_bus_ges/1000;
  }
  var distanceBus = distBus;

  $deplacementTC = distanceBus*180;
  $deplacementAUTO = distanceAuto*235*1.15;
  $deplacementReduction = Math.round(($deplacementAUTO-$deplacementTC)/1000*100)/100;

  $trajetTCannuel = Math.round($deplacementTC*2*260/1000/1000*100)/100;
  $trajetTCannuelm3 = Math.round($trajetTCannuel*557);
  
  $trajetAUTOannuel = Math.round($deplacementAUTO*2*260/1000/1000*100)/100;
  $trajetAUTOannuelm3 = Math.round($trajetAUTOannuel*557);  

  $reductionMultiple = Math.round(($deplacementAUTO/$deplacementTC)*10)/10;
  $reductionAnnuelkg = Math.round(($deplacementAUTO-$deplacementTC)*2*260/1000);
  $reductionAnnuelm3 = $trajetAUTOannuelm3-$trajetTCannuelm3;
  
  if (sLangue=='fr') {

    $trajetAUTOannuel = $trajetAUTOannuel+'';
    $trajetAUTOannuel = $trajetAUTOannuel.replace(".",",");
    $trajetTCannuel = $trajetTCannuel+'';
    $trajetTCannuel = $trajetTCannuel.replace(".",",");
    $deplacementReduction = $deplacementReduction+'';
    $deplacementReduction = $deplacementReduction.replace(".",",");
    $reductionMultiple = $reductionMultiple+'';
    $reductionMultiple = $reductionMultiple.replace(".",",");

  }
  
  $texteges = _MAD_GES.replace("_DEPLACEMENTREDUCTION_",$deplacementReduction);
  $texteges = $texteges.replace("_TRAJETTCANNUEL_",$trajetTCannuel);
  $texteges = $texteges.replace("_TRAJETTCANNUELM3_",$trajetTCannuelm3);
  $texteges = $texteges.replace("_TRAJETAUTOANNUEL_",$trajetAUTOannuel);
  $texteges = $texteges.replace("_TRAJETAUTOANNUELM3_",$trajetAUTOannuelm3);

  $texteges = $texteges.replace("_TRAJETREDUCTIONMULTIPLE_",$reductionMultiple);
  $texteges = $texteges.replace("_TRAJETREDUCTIONANNUELKG_",$reductionAnnuelkg);
  $texteges = $texteges.replace("_TRAJETREDUCTIONANNUELM3_",$reductionAnnuelm3);
  
  $('#zoneges').html($texteges);
  $('#zoneges').css('display','block');
  var htxt = browserHeight-$('#zoneges').height()-39;
  $('#zonecarto').css('height',htxt+'px');
  return;

}

