// JavaScript Document
//Initialisations variables
var LnkWcbVarTelephone = "";
function addScriptTag(id, type, src, language) {
try {
var head = document.getElementsByTagName("head")[0];
var sc = document.createElement("script");
if (id != null && id != undefined && id != "") {
sc.id = id;
}
if (type != null && type != undefined && type != "") {
sc.type = type;
}
if (language != null && language != undefined && language != "") {
sc.language = language;
}
sc.src = src;
head.appendChild(sc);
} catch (exc) {
alert(exc);
}
}
function addLinkTag(id, rel, type, href) {
try {
var head = document.getElementsByTagName("head")[0];
var l = document.createElement("link");
if (id != null && id != undefined && id != "") {
l.id = sId;
}
l.rel = rel;
l.type = type;
l.href = href;
head.appendChild(l);
} catch (exc) {
alert(exc);
}
}
// Initialisation du wcbFrontal et CSS
addLinkTag(null,"stylesheet","text/css",LnkWcbVarUrl+"css/LnkWcb.css");
addScriptTag(null,"text/javascript" ,"http://wcb.linkeo.com/wcbFrontalProd.js");
// Chargement du contenu
function loaddata(url,divId) {
var cible = document.getElementById(divId);
var req = null;
var loadurl = url;
cible.innerHTML = "Started...";
if (window.XMLHttpRequest) {
req = new XMLHttpRequest;
} else if (window.ActiveXObject) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
req.onreadystatechange = function () {
cible.innerHTML = "Chargement en cours, merci de patienter ...";
if (req.readyState == 4) {
if (req.status == 200) {
cible.innerHTML = req.responseText;
if (url == LnkWcbVarUrl + "wcb-differe.htm") {
try {
document.getElementById("LnkWcbFieldTelephone").value = LnkWcbVarTelephone;
horaires(LnkWcbVarCodeboutonDiff);
showLnkDate("dateDiv", "hourDiv");
showLnkTime("hourDiv", 5);
showComponents();
} catch (exc) {
}
}
} else {
cible.innerHTML = "Error: returned status code " + req.status + " " + req.statusText;
}
}
};
req.open("GET", loadurl, true);
req.send(null);
}
// Rappel immediat
function call(){
try{
var LnkWcbVarForm = document.getElementById("LnkWcbForm");
var LnkWcbVarFormStatus = document.getElementById("LnkWcbFormStatus");
var LnkWcbVarUserStatus = document.getElementById("LnkWcbUserStatus");
LnkWcbVarTelephone = document.getElementById('LnkWcbFieldTelephone').value;
var messageErreur="";
if(LnkWcbVarTelephone == null || LnkWcbVarTelephone == undefined || LnkWcbVarTelephone == "" || LnkWcbVarTelephone == "Téléphone" || LnkWcbVarTelephone.length != 10){
messageErreur += '- Vous devez renseigner votre numéro de téléphone.
';
}
if (messageErreur != "") {
LnkWcbVarFormStatus.style.display ="block";
LnkWcbVarFormStatus.innerHTML =messageErreur;
setTimeout("masqueFormStatus()",4000);
return;
}else {
LnkWcbVarUserStatus.style.display ="block";
LnkWcbVarUserStatus.innerHTML ="";
LnkWcbVarForm.style.display ="none";
}
callMeBack(LnkWcbVarCodebouton,LnkWcbVarTelephone, 'LnkWcbUserStatus', 'retour', null, 'LnkWcbForm', 'fonctionPourDebordement');
}
catch(exc){
alert(exc);
}
}
//Fonction de retour donnant le résultat de la demande de rappel immediat.
//Le nom de cette fonction est spécifiée en paramètre de la fonction callMeBack.
function retour(response,options){
try{
var obj = response.responseObj;
if(obj != null && obj != undefined){
var u = obj.u;
if(u == "appel en cours"){
u = "Appel en cours ...";
}
else if(u == "message de bienvenue"){
//u = LnkWcbVarSociete+" vous souhaite la bienvenue.";
u ="Villa Morelia vous souhaite la bienvenue.";
}
else if(u == "musique d'attente"){
u = "merci de patienter ...";
}
else if(u == "échec appel"){
u = "Nous ne pouvons répondre à votre demande, veuillez cliquer ici pour renouvelez votre appel.";
}
else if(u == "communication en cours"){
u = "Communication en cours, merci de patienter ...";
}
else if(u != null && u != undefined){
document.getElementById("LnkWcbUserStatus").innerHTML = u;
}
document.getElementById("LnkWcbUserStatus").innerHTML = u;
//status final de l'appel
var status = obj.status;
if(status != null && status != undefined){
//alert(status);
}
//cause de l'éventuel échec de l'appel
var cause = obj.cause;
if(cause != null && cause != undefined){
//document.getElementById("userStatus").innerHTML = cause;
}
if(obj.ended == "1"){
document.getElementById("LnkWcbUserStatus").innerHTML = "Villa Morelia vous remercie de votre appel."
}
}
}
catch(exc){
}
}
//Récupère les exceptions wcb
function handleLnkWcbExc(exc, excObj) {
LnkWcbVarUserStatus = document.getElementById("LnkWcbUserStatus");
try {
if (excObj.cause == "APPEL_EN_COURS") {
LnkWcbVarUserStatus.innerHTML = "Un appel est déjà en cours.";
} else if (excObj.cause == "CAUSE_FERME") {
LnkWcbVarUserStatus.innerHTML = "Nos bureaux sont actuellement fermés. Veuillez renouveler votre appel.";
} else {
//alert(exc);
}
} catch (exc) {
}
}
// Rappel differe
function delayCall(){
try{
var LnkWcbVarForm = document.getElementById("LnkWcbForm");
var LnkWcbVarFormStatus = document.getElementById("LnkWcbFormStatus");
var LnkWcbVarUserStatus = document.getElementById("LnkWcbUserStatus");
LnkWcbVarTelephone = document.getElementById('LnkWcbFieldTelephone').value;
var LnkWcbVarDate = getLnkDate('dateDiv');
var LnkWcbVarHeure = document.getElementById('hourDiv_hours').options[0].value;
var messageErreur="";
if(LnkWcbVarTelephone == null || LnkWcbVarTelephone == undefined || LnkWcbVarTelephone == "" || LnkWcbVarTelephone == "Téléphone" || LnkWcbVarTelephone.length != 10){
messageErreur += '- Vous devez renseigner votre numéro de téléphone.
';
}
if(LnkWcbVarDate == null || LnkWcbVarDate == undefined || LnkWcbVarDate == "" || LnkWcbVarDate == " --:--"){
messageErreur += '- Vous devez renseigner une date de rappel.
';
}
if(LnkWcbVarDate != " --:--" && LnkWcbVarHeure == "--"){
messageErreur += '- Les bureaux sont fermés à la date que vous avez choisi.
';
}
if (messageErreur != "") {
LnkWcbVarFormStatus.style.display ="block";
LnkWcbVarFormStatus.innerHTML =messageErreur;
setTimeout("masqueFormStatus()",4000);
return;
}else {
LnkWcbVarUserStatus.style.display ="block";
LnkWcbVarUserStatus.innerHTML ="";
LnkWcbVarForm.style.display ="none";
}
delayCallBack(LnkWcbVarCodeboutonDiff,LnkWcbVarTelephone,LnkWcbVarDate,null,'retourDelayCallBack');
}
catch(exc){
alert(exc);
}
}
//Fonction de retour donnant le résultat de la demande de rappel différé.
//Le nom de cette fonction est spécifiée en paramètre de la fonction delayCallBack.
function retourDelayCallBack(xmlResponse,options){
var LnkWcbVarUserStatus = document.getElementById("LnkWcbUserStatus");
try{
hideMask(null);
//Si la demande a réussi alors un callId est envoyé.
var callId = xmlResponse.responseObj.callId;
if(callId != null && callId != undefined && callId != ""){
LnkWcbVarUserStatus.innerHTML ="Votre demande de rappel a bien été enregistrée.";
return;
}
LnkWcbVarUserStatus.innerHTML ="Votre demande de rappel n'a pas été enregistrée.";
}
catch(exc){
}
}
// Debordement d'appel
function fonctionPourDebordement(response,options){
try{
var obj = response.responseObj;
if(obj != null && obj != undefined){
var type = obj.debordementType;
var valeur = obj.debordementValue;
if(type == "URL"){
if(valeur != null && valeur != undefined){
loaddata(LnkWcbVarUrl+'wcb-differe.htm','LnkWcb');
return;
}
}
if(type == "SIMPLE"){
if(valeur != null && valeur != undefined){
document.getElementById("LnkWcbUserStatus").innerHTML =valeur;
return;
}
}
}
}
catch(exc){
}
}
//Fonction de retour pour savoir si les centres d'appels sont ouverts pour le canal donné
function retourEstOuvert(resp){
try{
if(resp.estOuvert == true){
return;
}
//Cas où les bureaux sont fermés
var msg = "Les bureaux sont actuellement fermés";
}
catch(exc){
}
}
// Formulaire, saisie chiffres uniquement
function ValidSaisieNombre(champ){
var chiffres = new RegExp("[0-9]");
var verif;
for(i=0; iRappel immédiat et gratuit";
}
if(mode == "fullInte"){
loaddata(LnkWcbVarUrl+'wcb-immediat.htm','LnkWcb');
}
if(mode == "fullInteDiffere"){
loaddata(LnkWcbVarUrl+'wcb-differe.htm','LnkWcb');
}
if(mode == "btnPop"){
if (LnkWcbVarCodeboutonDiff == null && LnkWcbVarCodeboutonDiff == undefined){
var LnkWcbVarCodeboutonDiff = "";
}
LnkWcbDivContentActif.innerHTML = "Rappel immédiat et gratuit";
}
}
// Initialisation LnkWcb
document.write('Initialisation...
');
initLnkWcb(LnkWcbVarMode);