function champsok01() { adresse = document.form_inscription.email.value; var place = adresse.indexOf("@",1); var point = adresse.indexOf(".",place+1); if (document.form_inscription.email.value.length == 0) { alert("Vous n'avez pas saisi votre email"); return false; } if ((place > -1)&&(adresse.length >2)&&(point > 1)) { } else { alert("Mauvais format d'email"); return false; } if (document.form_inscription.numero.value.length == 0) { alert("Vous devez saisir votre numéro de téléphone"); return false; } if (document.form_inscription.condition.checked) { }else{ alert("Vous devez accepter le contrat pour continuer"); return false; } return true; } function LiveSearch(car,obj) { switch (car) { case 8 : //document.getElementById("suggest").style.visibility = 'hidden' ; //return true; break; case 37 : return true; break; case 13 : return true; break; case 39 : return true; break; case 40 : return true; break; case 38 : return true; break; case 46 : return true; break; case 20 : return true; break; case 35 : return true; break; case 36 : return true; break; case 17 : return true; break; case 18 : return true; break; case 16 : return true; break; default : break ; } obj = document.form_inscription.prefixe ; if (obj.value.length > 0 ) { var conn = new Ajax(true) ; conn.appendData("q",obj.value) ; conn.sendAndLoad("/include/checkPrefix.php","POST",LiveSearchHandler) ; } else document.getElementById('suggest').visibility = "hidden" ; } function LiveSearchHandler(conn) { afficherSuggestion() ; document.getElementById('suggest').innerHTML = conn.responseText; } function afficherSuggestion() { document.getElementById('suggest').style.visibility = "visible" ; timeout = window.setTimeout("cacherSuggestion();",10000) ; } function cacherSuggestion() { document.getElementById('suggest').style.visibility = "hidden" ; } function countCharLeft(obj,car) { switch (car) { case 8 : //document.getElementById("suggest").style.visibility = 'hidden' ; //return true; break; case 37 : return true; break; case 13 : return true; break; case 39 : return true; break; case 40 : return true; break; case 38 : return true; break; case 46 : return true; break; case 20 : return true; break; case 35 : return true; break; case 36 : return true; break; case 17 : return true; break; case 18 : return true; break; case 16 : return true; break; default : break ; } obj.value = obj.value.slice(0,160) ; document.getElementById('nbCarRestant').firstChild.nodeValue = (160 - obj.value.length) ; } /** * * @access public * @return void **/ function Anciennete(prmWay){ if (prmWay) { document.getElementById('login').style.display='inline'; document.getElementById('subscribe').style.display = 'none'; } else { document.getElementById('login').style.display='none'; document.getElementById('subscribe').style.display='inline' ; } } /** * * @access public * @return void **/ function calculate(){ document.getElementById("remiseProgression").firstChild.nodeValue = 0; document.getElementById("remiseAnciennete").firstChild.nodeValue = 0 ; document.getElementById("remiseVolumetrique").firstChild.nodeValue = 0 ; if (document.commande.offre[0].checked ) { cpm = 90 ; tarif_ciblage = new Array(3) ; tarif_ciblage[0] = 5 ; tarif_ciblage[1] = 8 ; tarif_ciblage[2] = 10 ; tarif_ciblage[3] = 2 ; } if (document.commande.offre[1].checked) { cpm = 42 ; tarif_ciblage = new Array(3) ; tarif_ciblage[0] = 3 ; tarif_ciblage[1] = 5 ; tarif_ciblage[2] = 6 ; tarif_ciblage[3] = 1 ; } if (document.commande.offre[2].checked) { cpm = 27 ; tarif_ciblage = new Array(3) ; tarif_ciblage[0] = 3 ; tarif_ciblage[1] = 5 ; tarif_ciblage[2] = 6 ; tarif_ciblage[3] = 1 ; } if (document.commande.offre[3].checked) { cpm = 14 ; tarif_ciblage = new Array(3) ; tarif_ciblage[0] = 2 ; tarif_ciblage[1] = 2.5 ; tarif_ciblage[2] = 3 ; tarif_ciblage[3] = 0.5 ; } ciblage = 0 ; count = 0 ; for(i=0;i<=document.getElementById('ciblage[]').options.length-1;i++) { if (document.getElementById('ciblage[]').options[i].selected) { count++ ; } } if (count <= 3 && count >= 1) ciblage = tarif_ciblage[count-1] ; if (count > 3) { ciblage = tarif_ciblage[2] + ((count - 3) * tarif_ciblage[3]) ; } cpm = cpm + ciblage ; prixSansRemise = Math.ceil((cpm * document.commande.nbItem.value) / 10); prixSansRemise = prixSansRemise / 100 ; if (document.commande.offre[0].checked) { if (prixSansRemise >= 42000) { pctRemise = 0.09 ; } else if (prixSansRemise >= 35000) { pctRemise = 0.08 ; } else if (prixSansRemise >= 21000) { pctRemise = 0.07 ; } else if (prixSansRemise >= 14000) { pctRemise = 0.06 ; } else if (prixSansRemise >= 10500) { pctRemise = 0.05 ; } else if (prixSansRemise >= 8400) { pctRemise = 0.04 ; } else if (prixSansRemise >= 5000) { pctRemise = 0.03 ; } else if (prixSansRemise >= 2900) { pctRemise = 0.02 ; } else pctRemise = 0 ; document.getElementById("remiseVolumetrique").firstChild.nodeValue = Math.round(pctRemise * 100) ; remiz = prixSansRemise * pctRemise ; remiz = Math.floor(remiz * 100) ; remiz = remiz / 100 ; prixAvecRemise = prixSansRemise - remiz ; if (credit > 0 && document.commande.anciennete[0].checked) { progression = (document.commande.nbItem.value * 100) / credit ; if (progression >= 200) { anciennete = 0.09 ; } else if (progression >= 160) { anciennete = 0.08 ; } else if (progression >= 130) { anciennete = 0.06 ; } else anciennete = 0.04 ; document.getElementById("remiseProgression").firstChild.nodeValue = anciennete ; } else { anciennete = 0.03 ; document.getElementById("remiseAnciennete").firstChild.nodeValue = anciennete ; } remiz = prixAvecRemise * anciennete ; remiz = Math.floor(remiz * 100) ; remiz = remiz /100 ; prixAvecRemise = prixAvecRemise - remiz ; } else { prixAvecRemise = prixSansRemise ; } prixAvecRemise = Math.round(prixAvecRemise * 100); prixAvecRemise = prixAvecRemise / 100 ; document.getElementById('prixCPM').firstChild.nodeValue = cpm ; document.getElementById('prixHorsRemise').firstChild.nodeValue = prixSansRemise ; document.getElementById('TotalHT').firstChild.nodeValue = prixAvecRemise ; prixRemise = (prixSansRemise - prixAvecRemise) ; prixRemise = Math.round(prixRemise * 100) ; prixRemise = prixRemise / 100 ; document.getElementById('remise').firstChild.nodeValue = prixRemise ; prixTTC = Math.round(prixAvecRemise * 1.196 * 100) ; prixTTC = prixTTC / 100 ; document.getElementById('TotalTTC').firstChild.nodeValue = prixTTC ; prixTVA = prixTTC - prixAvecRemise ; prixTVA = Math.round(prixTVA * 100) ; prixTVA = prixTVA / 100 ; document.getElementById('TVA').firstChild.nodeValue = prixTVA ; } /** * * @access public * @return void **/ function commandeLogin(){ var conn = new Ajax(true) ; conn.sendAndLoad("commande_login.php?email=" + document.commande.login_email.value + "&password=" + document.commande.login_password.value,"GET",commandLoginHandler) ; } /** * * @access public * @return void **/ function commandLoginHandler(conn){ if (conn.responseText == -1) { alert("Mot de passe incorrecte") ; return false ; } else { credit = conn.responseText ; } document.getElementById('login').innerHTML = "Votre préccédente commande était de " + conn.responseText + " affichages.
" ; calculate() ; } function nouvelAnnonceur() { if (document.commande.nom.value.length < 1) { document.commande.nom.style.borderColor="red" ; document.commande.nom.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.prenom.value.length < 1) { document.commande.prenom.style.borderColor="red" ; document.commande.prenom.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.organisation.value.length < 1) { document.commande.organisation.style.borderColor="red" ; document.commande.organisation.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.email.value.indexOf("@") == -1 || document.commande.email.value.indexOf(".") == -1) { alert('Email non valide') ; document.commande.email.style.borderColor="red" ; document.commande.email.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.adresse.value.length < 1) { document.commande.adresse.style.borderColor="red" ; document.commande.adresse.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.ville.value.length < 1) { document.commande.ville.style.borderColor="red" ; document.commande.ville.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.cp.value.length < 1) { document.commande.cp.style.borderColor="red" ; document.commande.cp.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.pays.value.length < 1) { document.commande.pays.style.borderColor="red" ; document.commande.pays.style.backgroundColor="#EFC2C2" ; return false; } if (document.commande.telephone.value.length < 1) { document.commande.telephone.style.borderColor="red" ; document.commande.telephone.style.backgroundColor="#EFC2C2" ; return false; } document.getElementById('subscribeOk').innerHTML = "
Nom: " + document.commande.nom.value + "
Prénom: " + document.commande.prenom.value + "
Organisation: " + document.commande.organisation.value + "
Siret: " + document.commande.siret.value + "
Email: " + document.commande.email.value + "
Adresse: " + document.commande.adresse.value + "
Ville: " + document.commande.ville.value + "
Code postal: " + document.commande.cp.value + "
Pays: " + document.commande.pays.value + "
Téléphone: " + document.commande.telephone.value + "

"; document.getElementById('subscribeOk').style.display = "inline" ; document.getElementById('subscribeCorr').style.display = "inline" ; document.getElementById('subscribe').style.display = "none" ; } function commandeValidate() { if (document.commande.nbItem.value.length < 1) { alert("Vous devez saisir le nombre d'affichages souhaités !") ; return false ; } if (!document.commande.cgv.checked) { alert("Vous devez accepter les conditions générales de vente pour continuer.") ; return false ; } document.commande.action = "validate_campagne.php" ; document.commande.method = "POST" ; } anciennete = 0.03 ; credit = 0 ; function CompteRebours() { if (document.getElementById("compteReboure")) { tmp = _seconde + (_minute * 60) + (_heure * 60 * 60) + (_jour * 24 * 60 * 60) ; if (tmp > 0) tmp-- ; _jour = Math.floor(tmp / (24*60*60)) ; tmp = tmp - (_jour * 24 * 60 * 60) ; _heure = Math.floor(tmp/(60 * 60)) ; tmp = tmp - (_heure * 60 * 60) ; _minute = Math.floor(tmp/60) ; tmp = tmp - (_minute * 60) ; _seconde = tmp ; if (_jour <=0 && _heure <= 0 && _minute <= 0 && _seconde <= 0) { document.getElementById("compteReboure").innerHTML = ">> Vague en cours <<" ; } else { document.getElementById("jour").firstChild.nodeValue = _jour ; document.getElementById("heure").firstChild.nodeValue = _heure ; document.getElementById("minute").firstChild.nodeValue = _minute ; document.getElementById("seconde").firstChild.nodeValue = _seconde ; window.setTimeout("CompteRebours();", 1000) ; } } } function LiveMailingInscrits() { var conn = new Ajax(true) ; conn.sendAndLoad("checkMailing.php?" + Math.random(), "GET", LiveMailingInscritHandler) ; } function LiveMailingInscritHandler(conn) { document.getElementById('mailing_nbInscrits').innerHTML = conn.responseText ; window.setTimeout("LiveMailingInscrits();",1000) ; } function Ajax() { var http_request = false; var datas = new String(); try { http_request = new XMLHttpRequest(); } catch (error) { try { http_request = new ActiveXObject("Microsoft.XMLHTTP"); } catch (error) { try { http_request = new ActiveXObject("Msxml2.XMLHTTP"); } catch (error) { http_request = false; } } } // + ---------------------------------------------------------------------------------- // + resetData // + Permet de vider les données // + ---------------------------------------------------------------------------------- this.resetData = function() { datas = new String(); datas = ''; }; // + ---------------------------------------------------------------------------------- // + appendData // + Permet d'empiler des données afin de les envoyer // + ---------------------------------------------------------------------------------- this.appendData = function(pfield, pvalue) { datas += (datas.length == 0) ? pfield+ "=" + escape(pvalue) : "&" + pfield + "=" + escape(pvalue); }; this.showData = function () { return datas; } // + ---------------------------------------------------------------------------------- // + sendAndLoad // + http_requestexion à la page désirée avec envoie des données, puis mise en attente de la réponse // + Entrées // + Url String L'url de la page à laquelle l'objet doit se http_requestecter // + httpMode String La méthode de communication HTTP : GET, HEAD ou POST // + callBack Objet Le nom de la fonction de callback // + ---------------------------------------------------------------------------------- this.sendAndLoad = function(Url, httpMode, callBack) { if (!http_request) return false; httpMode = httpMode.toUpperCase(); http_request.onreadystatechange = function() { if ((http_request.readyState == 4) && (typeof callBack == "function")) { callBack(http_request); } }; switch(httpMode) { case "GET": try { Url = (datas.length > 0) ? Url + "?" + datas : Url; http_request.open("GET", Url); http_request.send(null); } catch(error) { return false; } break; case "POST": try { http_request.open("POST", Url); http_request.setRequestHeader("Method", "POST " + Url + " HTTP/1.01"); http_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); http_request.send(datas); } catch(error) { return false; } break; default : return false; break; } return true; }; return this; }