gPathCss="/css/" gPathPagesRoot="/" function getEltStyle(lequel){ return document.getElementById(lequel).style; } //AJAX //to detect if browser understands AJAX var isAjax = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... isAjax = new XMLHttpRequest(); } else if (window.ActiveXObject) { // IE try { isAjax = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { isAjax = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } //appel pour retour HTML: makeRequest("URL?params", "ID_du_DIV_cible"); //appel pour retour XML: makeRequest("URL?params", "ID_du_DIV_cible", "XML"); function makeRequest(hurle, container, loadW, typ) { //affichage loading ////revoir INNERHTML document.getElementById(container).innerHTML = '
'; var http_request = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... http_request = new XMLHttpRequest(); if (http_request.overrideMimeType) { if (typ == "XML") http_request.overrideMimeType('text/xml'); } } else if (window.ActiveXObject) { // IE try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!http_request) { alert('Abandon :( Impossible de créer une instance XMLHTTP'); return false; } http_request.onreadystatechange = function() { //alert("onreadystatechange(), http_request.readyState = " + http_request.readyState); if (http_request.readyState == 4) { //alert("http_request.readyState = " + http_request.readyState) if (typ == "XML"){ parseContents(http_request, container); } else { afficheContents(http_request, container); } } } http_request.open('GET', hurle, true); http_request.send(null); /**/ } function afficheContents(http_request, div) { //if (http_request.readyState == 4) { //alert("http_request.status = " + http_request.status); if (http_request.status == 200) { document.getElementById(div).innerHTML = http_request.responseText; //document.getElementById(div).style.display = "block"; } else { alert('Un problème est survenu avec la requête.'); //document.getElementById(div).innerHTML = http_request.responseText; } //} } function affichDetail(hurle,cible) { if(isAjax) { if(cible==undefined || cible==''){cible="detail_popin"} document.getElementById(cible).style.display="block"; posX=mouse_x; posY=mouse_y; if(posX>390) posX=390; //alert("mouse_x = " + mouse_x + " && posX = " + posX); //alert("mouse_y = " + mouse_y + " && posY = " + posY); var posY_Window=window.outerHeight; var high=(posY-posY_Window); if(high>600){posY=(posY_Window+500);} document.getElementById(cible).style.left = posX+"px"; document.getElementById(cible).style.top = (posY-150)+"px"; makeRequest(hurle,cible); return false; } } //FIN AJAX //addevent function addEvent(obj, evType, fn){ if (obj.addEventListener){ obj.addEventListener(evType, fn, false); return true; } else if (obj.attachEvent){ var r = obj.attachEvent("on"+evType, fn); return r; } else { //alert("Handler could not be added"); return false; } } function removeEvent(obj, evType, fn){ if (obj.removeEventListener){ obj.removeEventListener(evType, fn, false); return true; } else if (obj.detachEvent){ var r = obj.detachEvent("on"+evType, fn); return r; } else { //alert("Handler could not be removed"); return false; } } //execution du window.onload se fait dans l'ordre inverse de déclaration pour IE...! //addEvent(window, "load", init2); //fin addEvent var ns4=(document.layers);var ie4=(document.all&&!document.getElementById);var ie5=(document.all&&document.getElementById);var ns6=(!document.all&&document.getElementById);var mac=(navigator.appVersion.indexOf("Mac")>=0)?1:0;var dom=(document.getElementById)?1:0;var ie=(ie4||ie5)?1:0 function layer(lyr){if(ns4){obj=document.layers[lyr]}else if(ie4){obj=document.all[lyr].style}else if(dom){obj=document.getElementById(lyr).style}return obj;} function left(lyr){if(!ns4&&!mac){obj=parseInt(layer(lyr).left.substring(0,layer(lyr).left.indexOf("p")));}else if(dom&&mac&&!ie){obj=parseInt(layer(lyr).left.substring(0,layer(lyr).left.indexOf("p")));}else{obj=parseInt(layer(lyr).left);}return obj} function pot(lyr){if(!ns4&&!mac)obj=parseInt(layer(lyr).top.substring(0,layer(lyr).top.indexOf("p")));else if(dom&&mac&&!ie)obj=parseInt(layer(lyr).top.substring(0,layer(lyr).top.indexOf("p")));else{obj=parseInt(layer(lyr).top)}return obj;} function showHide(lyr,what){layer(lyr).visibility=what;} function setDisplay(lyr,what){layer(lyr).display=what;} function posLeft(lyr,x){layer(lyr).left=x;} function posTop(lyr,y){layer(lyr).top=y;} function setWidth(DivId,w){layer(DivId).width=w;} function setHeight(DivId,h){layer(DivId).height=h;} function setZ(lyr,z){layer(lyr).zIndex=z;} function setClip(DivId,MyClip){if(!ns4){layer(DivId).clip="rect("+MyClip[0]+"px "+MyClip[1]+"px "+MyClip[2]+"px "+MyClip[3]+"px)";}else{document.layers[DivId].clip.top=MyClip[0];document.layers[DivId].clip.right=MyClip[1];document.layers[DivId].clip.bottom=MyClip[2];document.layers[DivId].clip.left=MyClip[3];}} function getHeight(DivId){if((ie5&&!mac)||ns6)return(document.getElementById(DivId).offsetHeight);else if(ie4)return(document.all[DivId].clientHeight);else if(ns4)return(document.layers[DivId].document.height);else if(ie5&&mac)return(document.all[DivId].offsetHeight);else return(document.getElementById(DivId).offsetHeight);} function getWidth(DivId){if((ie5&&!mac)||ns6)return(document.getElementById(DivId).offsetWidth);else if(ie4)return(document.all[DivId].clientWidth);else if(ns4)return(document.layers[DivId].document.width);else if(ie5&&mac)return(document.all[DivId].offsetWidth);else return(document.getElementById(DivId).offsetWidth);} function aleft(MyObject){if(dom||ie4){if(MyObject.offsetParent){return(MyObject.offsetLeft+aleft(MyObject.offsetParent));}else{return(MyObject.offsetLeft);}}if(ns4){return(MyObject.x);}} function atop(MyObject){if(dom||ie4){if(MyObject.offsetParent){return(MyObject.offsetTop+atop(MyObject.offsetParent));}else{return(MyObject.offsetTop);}}if(ns4){return(MyObject.y);}} function setToAnchor(AnchorName,lyr){var MyAnchor;if(dom){MyAnchor=document.getElementById(AnchorName);}else if(ie4){MyAnchor=document.all[AnchorName];}else if(ns4){MyAnchor=document.anchors[AnchorName];}if(arguments.length==2){posLeft(lyr,aleft(MyAnchor));posTop(lyr,atop(MyAnchor));}else{if(arguments[2]=="x"){posLeft(lyr,aleft(MyAnchor));}else{posTop(lyr,atop(MyAnchor));}}} var mouse_x=0 var mouse_y=0 function positionSouris(evt){ //alert("positionSouris"); if( !evt ) evt=window.event; mouse_x=evt.clientX+(document.documentElement.scrollLeft || document.body.scrollLeft); mouse_y=evt.clientY+(document.documentElement.scrollTop || document.body.scrollTop); } addEvent(window, "load", initMouse); function initMouse(){ //alert("initMouse"); //document.onmousemove=positionSouris; addEvent(document, "mousemove", positionSouris); } /***** DISPLAY MANAGEMENT *****/ //generic fonction to display or not an element function displayElement(elmt, disp){ document.getElementById(elmt).style.display=disp; } function calculPrix(n) { var nbProd= document.getElementById('p'+n+'_quant').value; var prixUnit = document.getElementById('prix'+n+'_unit').value.replace(",","."); var total = (Math.round(nbProd * prixUnit*100))/100; total = total.toString().replace(".",","); //conversion en monnétaire var pos = (total.length) - 2; //récupération avant dernière lettre de la chaine, si c'est une virgule, on rajoute un 0 à la fin de la chaîne letter = total.substr(pos,1); if(letter == ",") total = total + "0"; //fin de la conversion document.getElementById("price_total_"+n).innerHTML = total; }