// Fonction pour l'ajout d'un flux xml

function check_rss(url)
{
	return true;
}

// Fonction pour afficher et effacer une "layer" -------------------------------

function Aff_layer (id) {
  if (document.layers)
	document[id].visibility = 'show';
  else if (document.getElementById)
	document.getElementById(id).style.visibility = 'visible';
	else if (document.all)
	document.all[id].style.visibility = 'visible';
}
function Cache_layer (id) {
  if (document.layers)
	document[id].visibility = 'hide';
	else if (document.getElementById)
	document.getElementById(id).style.visibility = 'hidden';
  else if (document.all)
	document.all[id].style.visibility = 'hidden';
}

// Liens externes --------------------------------------------------------------

function openWin(URL){
	window.open(URL,'detail', "height=500, width=500, scrollbars=yes, resizable=yes");
}

function openSite(strLocationURL) {
  var siteWindow = null;
  siteWindow = window.open(strLocationURL);
}

function checkExternalLinks() {
  var objLinks = document.getElementsByTagName("a");
  for (i=0; i < objLinks.length; i++) {
    if (objLinks[i].href.length > 0) {
      if (objLinks[i].href.indexOf(document.domain) == -1 && objLinks[i].href.indexOf("javascript:") == -1 && objLinks[i].href.indexOf("mailto:") == -1) {
      objLinks[i].href = "javascript: openSite('" + objLinks[i].href + "');";
      }
    }
  }
}

try {
  window.addEventListener("load", checkExternalLinks, true);
}
catch(ex) {
  window.attachEvent("onload", checkExternalLinks);
}

// Afficher/Masquer ------------------------------------------------------------

function AfficherFiche() {
  var fiche = document.getElementById('centre');
  var carte = document.getElementById('carte');
  var ascen = document.getElementById('ascenseur');
  fiche.style.zIndex = 11;
  carte.style.zIndex = 10;
  ascen.style.display = "block";
}

function MasquerFiche() {
  var fiche = document.getElementById('centre');
  var carte = document.getElementById('carte');
  var ascen = document.getElementById('ascenseur');
  fiche.style.zIndex = 10;
  carte.style.zIndex = 11;
  ascen.style.display = "none";
}

function AfficherForm() {
  var form = document.getElementById('form');
  var info = document.getElementById('info');
  form.style.display = "block";
  info.style.display = "none";
}

function MasquerForm() {
  var form = document.getElementById('form');
  var info = document.getElementById('info');
  form.style.display = "none";
  info.style.display = "block";
}

function Afficher() {
	var Obj;
  Obj = document.getElementById('transparence');
  if( Obj){
  
  	var yScroll;
		if (window.innerHeight && window.scrollMaxY) {	
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ 
			yScroll = document.body.scrollHeight;
		} else { 
			yScroll = document.body.offsetHeight;
		}

		var windowHeight;
		if (self.innerHeight) {	
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { 
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { 
			windowHeight = document.body.clientHeight;
		}
    
    Obj.style.height = ((yScroll < windowHeight) ? windowHeight : yScroll)  + 'px';  
    
    with( Obj.style){
      display="block";
			var selects = document.getElementsByTagName('select');
  		for(var i = 0; i < selects.length; i++) {
  			selects[i].style.visibility = 'hidden';
  		}
    }
  }
}

function Masquer() {
	var Obj;
  Obj = document.getElementById('transparence');
  if( Obj){
    with( Obj.style){
      display="none";
			var selects = document.getElementsByTagName('select');
  		for(var i = 0; i < selects.length; i++) {
  			selects[i].style.visibility = 'visible';
  		}
    }
  }
}

function AfficherBloc(id) {
  var select = document.getElementById('select').options[document.getElementById('select').selectedIndex].value;
  if (select != "") {
    var bloc = document.getElementById(id);
    bloc.className = "box";
    Cookie(bloc, id);
  }
  document.getElementById('select').selectedIndex = 0;
}

function MasquerBloc(id) {
  var bloc = document.getElementById(id);
  bloc.className = "box inactive";
  Cookie(bloc, id);
}

function Cookie(bloc, id) {
  var cookie = '';
  cookie += bloc.className;
  var expires = new Date();
  expires.setYear(expires.getFullYear() + 1);
  document.cookie = '' + bloc.id + '=' + escape(cookie) + '; expires=' + expires.toGMTString();
  bloc = null;
}

/* Ajouter un lien ---------------- */

function addClass(element, className) {
  if (!hasClass(element, className)) {
    if (element.className) element.className += " " + className;
    else element.className = className;
  }
};

function removeClass(element, className) {
  var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
  element.className = element.className.replace(regexp, "$2");
};

function hasClass(element, className) {
  var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
  return regexp.test(element.className);
};

function AfficherDiv(id) {
  bloc = document.getElementById(id);
  if(hasClass(bloc, "active")) {
    removeClass(bloc, "active");
  } else {
    addClass(bloc, "active");
  }
}

/* Vérification URL ----------------- */

function ValiderURL(url) {
  var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/;
  if (RegExp.test(url)) {
    return true;
  } else {
    return false;
  }
}

function verifChamp() {
  var champ = document.getElementById('lien'), erreur = "";
  if (!ValiderURL(champ.url.value)) {
    erreur += "Veuillez saisir une adresse URL valide \n";
		document.getElementById('url').focus();
		document.getElementById('url').style.color='#fff';
    document.getElementById('url').style.background='#ff9900';
  }
  if (document.getElementById('titre').value == '') {
    erreur += "Veuillez saisir un tire pour le lien à ajouter \n";
		document.getElementById('titre').focus();
		document.getElementById('titre').style.color='#fff';
    document.getElementById('titre').style.background='#ff9900';
  }
  if (ValiderURL(champ.url.value)) {
		document.getElementById('url').style.color='';
    document.getElementById('url').style.background='';
  }
  if (document.getElementById('titre').value != '') {
		document.getElementById('titre').style.color='';
    document.getElementById('titre').style.background='';
  }
  if (erreur != "") {
    alert(erreur);
    return false;
  } else {
    return true;
  }
}

/* DEFILEMENT --------------------------------------------------------------- */

var defile;// l'élément à déplacer
var psinit = 670; // position horizontale de départ

var pscrnt = psinit; 		
function texteDefile() { 
  if (!defile) defile = document.getElementById('defile');
  if (defile) { 
    if(pscrnt < ( - defile.offsetWidth) ){ 
      pscrnt = psinit; 
    } else { 
      pscrnt+= -1; // pixel par déplacement 
    } 
    defile.style.left = pscrnt+"px"; 
  } 
} 
setInterval("texteDefile()",20); // délai de déplacement

/* SIMULATIONS -------------------------------------------------------------- */

/* Remboursement --------------- */

function calcul(form) {
	var charge = 0, c1, c2
	for (var i=0; i<=4; i++) {
		c1 = (form.charge[i].value) ? parseFloat(eval(form.charge[i].value)) : 0
		c2 = (form.chargeX[i].value) ? parseFloat(eval(form.chargeX[i].value)) : 0
		charge += parseInt(c1*c2/12)
	}
	form.chargeTotal.value = charge
	var ressource = 0, c1, c2
	for (var i=0; i<=4; i++) {
		c1 = (form.ressource[i].value) ? parseFloat(eval(form.ressource[i].value)) : 0
		c2 = (form.ressourceX[i].value) ? parseFloat(eval(form.ressourceX[i].value)) : 0
		ressource += parseInt(c1*c2/12)
	}
	form.ressourceTotal.value = ressource
	pourcent = (form.pourcent.value) ? parseFloat(eval(form.pourcent.value)) : 0
	form.resultat.value = parseInt(ressource * pourcent / 100 - charge)
}

function capaciteCookie(form) {
	var choix = form.cookie.options[form.cookie.selectedIndex].value 
	form.cookie.selectedIndex = 0
	if (choix == "lecture") capaciteLecture(form)
	if (choix == "enregistrement") capaciteEnregistrement(form)
	if (choix == "suppression") { deleteCookie("capacite") ; alert("suppression OK") }
}

function capaciteLecture(form) {
	valeur = getCookie("capacite") ; if (valeur == "") return
	form.charge[0].value = detailCookie("c0=")
	form.charge[1].value = detailCookie("c1=")
	form.charge[2].value = detailCookie("c2=")
	form.charge[3].value = detailCookie("c3=")
	form.charge[4].value = detailCookie("c4=")
	form.chargeTotal.value = detailCookie("cT=")
	form.ressource[0].value = detailCookie("r0=")
	form.ressource[1].value = detailCookie("r1=")
	form.ressource[2].value = detailCookie("r2=")
	form.ressource[3].value = detailCookie("r3=")
	form.ressource[4].value = detailCookie("r4=")
	form.ressourceTotal.value = detailCookie("rT=")
	form.resultat.value = detailCookie("cP=")
	form.pourcent.value = detailCookie("pC=")
	alert("lecture OK")
}

function capaciteEnregistrement(form) {
	 valeur=",c0="+ form.charge[0].value +
		",c1="+ form.charge[1].value +
		",c2="+ form.charge[2].value +
		",c3="+ form.charge[3].value +
		",c4="+ form.charge[4].value +
		",cT="+ form.chargeTotal.value +
		",r0="+ form.ressource[0].value +
		",r1="+ form.ressource[1].value +
		",r2="+ form.ressource[2].value +
		",r3="+ form.ressource[3].value +
		",r4="+ form.ressource[4].value +
		",rT="+ form.ressourceTotal.value +
		",cP="+ form.resultat.value + 
		",pC="+ form.pourcent.value
	var expdate = new Date()
	expdate.setTime (expdate.getTime() + (30*24*60*60*1000))
	setCookie("capacite",valeur +",", expdate)
	alert("enregistrement OK")
}

/* Aide ------------------------ */

function Aide(num){
  var tab_titre = new Array('Capital emprunté','Taux annuel','Périodicité annuelle','Nombre de période totale','Assurance par échéance','Frais de dossier','Échéance','Coût total du prêt','Taux Effectif Global (TEG)', 'Tableau d\'amortissement');
  var tab_texte = new Array();
  tab_texte[0] =
  '\n'+
  '        Calcul du capital pouvant être emprunté suivant :\n'+
  '        <ul>\n'+
  '          <li>le taux,</li>\n'+
  '          <li>la périodicité annuelle,</li>\n'+
  '          <li>le nombre de périodes totales,</li>\n'+
  '          <li>l\'échéance.</li>\n'+
  '        </ul>\n'+
  '      ';
  tab_texte[1] =
  '\n'+
  '        <p>Le taux annuel est différent s\'il est nominal ou actuariel, pré-compté ou postcompté, capitalisé ou non-capitalisé.</p>\n'+
  '        <p>Pour tout prêt traditionnel, que la périodicité annuelle soit mensuelle ou trimestrielle, le taux est identique, c\'est à dire : nominal.</p>\n'+
  '        <p>Pour l\'épargne logement, la banque indique un taux de base annuel qui doit être transformé selon la périodicité. Donc, cliquez sur actuariel.\n'+
  '      ';
  tab_texte[2] =
  '\n'+
  '        <p>Pour tout prêt, il est conseillé de l\'amortir (remboursement du capital) le plus rapidement possible afin de diminuer les intérêts. Donc, préférer une périodicité mensuelle.</p>\n'+
  '      ';
  tab_texte[3] =
  '\n'+
  '        <p>Vous pouvez inscrire, si la périodicité est mensuelle, sur 5 ans : <strong>12*5</strong> ou <strong>60</strong>.</p>\n'+
  '      ';
  tab_texte[4] =
  '\n'+
  '        <p>Le coût de l\'assurance mensuelle est fonction du capital et varie légèrement d\'une banque à l\'autre.</p>\n'+
  '        <p>Si la banque vous indique le coût en franc, par personne, par tranche de 10.000 F et par mois, vous devez saisir, par exemple pour 75000 F de crédit avec assurance 5 F/personne/10000 F/mois, pour 2 personnes assurées : <strong>5*2*7.5</strong> ou <strong>75</strong> et <strong>F/ech</strong> (francs par échéance).</p>\n'+
  '        <p>Si la banque vous indique le coût en pourcentage sur le capital restant dû, vous devez saisir le taux annuel d\'assurance et <strong>%/cap</strong> (pourcentage sur capital restant).</p>\n'+
  '      ';
  tab_texte[5] =
  '\n'+
  '        <p>Les frais de dossier varient selon les établissements. Il faut savoir qu\'il y a toujours des timbres fiscaux et que, s\'il n\'y a pas de frais, l\'établissement doit les récupérer par un autre moyen (par exemple, un taux plus élevé).</p>\n'+
  '      ';
  tab_texte[6] =
  '\n'+
  '        L\'échéance inclus :\n'+
  '        <ul>\n'+
  '          <li>l\'amortissement,</li>\n'+
  '          <li>les intérêts,</li>\n'+
  '          <li>l\'assurance (si elle est indiqué).</li>\n'+
  '        </ul>\n'+
  '      ';
  tab_texte[7] =
  '\n'+
  '        Le total de l\'emprunt inclus :\n'+
  '        <ul>\n'+
  '          <li>les intérêts,</li>\n'+
  '          <li>les assurances,</li>\n'+
  '          <li>les frais de dossier.</li>\n'+
  '        </ul>\n'+
  '      ';
  tab_texte[8] =
  '\n'+
  '        Le calcul du Taux Effectif Global ou TEG doit intégrer :\n'+
  '        <ul>\n'+
  '          <li>les intérêts,</li>\n'+
  '          <li>les frais de dossier,</li>\n'+
  '          <li>les assurances lorsqu\'elles sont obligatoires.</li>\n'+
  '        </ul>\n'+
  '      ';
  tab_texte[9] =
  '\n'+
  '        <p>Vous aurez le tableau d\'amortissement complet de votre simulation.</p>\n'+
  '        <h4>Attention</h4>\n'+
  '        <p>Les banques calculent l\'amortissement en nombre de jour exact par échéance, alors que le tableau suivant divise le nombre d\'échéance en période égale, donc le calcul est à quelques centimes prêts par échéance mais exact à la fin.</p>\n'+
  '      ';
  
  document.getElementById('aideTitre').innerHTML = tab_titre[num];
  document.getElementById('aideTexte').innerHTML = tab_texte[num];
}

// CSS Browser Selector --------------------------------------------------------

var css_browser_selector = function() {
  var ua=navigator.userAgent.toLowerCase(),is=function(t){
    return ua.indexOf(t) != -1;
  },
  h=document.getElementsByTagName('html')[0],b=(!(/opera|webtv/i.test(ua))&&/msie (\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?'gecko ff2':is('firefox/3')?'gecko ff3':is('gecko/')?'gecko':is('opera/9')?'opera opera9':/opera (\d)/.test(ua)?'opera opera'+RegExp.$1:is('konqueror')?'konqueror':is('applewebkit/')?'webkit safari':is('mozilla/')?'gecko':'',os=(is('x11')||is('linux'))?' linux':is('mac')?' mac':is('win')?' win':'';var c=b+os+' js'; h.className += h.className?' '+c:c;
}();



function CreateBookmarkLink() {
title = "Votre Extranet Groupe-Excel";

	$.ajax({
	   type: "POST",
	   url: "../extranet/ajax/url_favoris.php",
	   data: "",
	   success: function(msg){
			url = msg;
			if (window.sidebar) {
			window.sidebar.addPanel(title, url,"");
			} else if( window.external ) {
			window.external.AddFavorite(url, title);
			}
			else if(window.opera && window.print) {
			return true; }
	   },
		error:function (xhr, ajaxOptions, thrownError){
				alert(xhr.status + " - " + thrownError);
		}   
	 });
}