﻿// Fichier JScript
var addadDiv;
var optSelected = null;
function CheckCompareValid(msg)
{
    var inputs = document.getElementsByTagName('input');
    var cpt=0; 
    
    for (i=0; i<inputs.length; ++i) 
    { 
        if ('checkbox' == inputs[i].type.toLowerCase() && inputs[i].checked==true)
            {
                cpt++;
            }
    }
    
    if (cpt>1 && cpt <5)
    {   
        return true;
    }
    else
    {
        window.alert(msg)
        return false;
    }
}
function afterCallBack (div){
    document.getElementById(div).innerHTML = "<img alt='' src='./images/loading.gif' />";
}
function OnCallBackEnd (Results, context){
    var _resXml;
    var _isIeExplorer;
    if (window.ActiveXObject)   // Version Active
    {
           _resXml = new ActiveXObject("Microsoft.XMLDOM");    // Internet Explorer
           _resXml.loadXML(Results);
           _isIeExplorer = true;
    }
    else if (window.XMLHttpRequest)     // Objet de la fenêtre courant
    {
            _resXml = document.implementation.createDocument("", "", null);
            _resXml = (new DOMParser()).parseFromString(Results,"text/xml" );
            _isIeExplorer = false;
    }
    var responses = _resXml.getElementsByTagName("RESPONSE");
    for (var i=0;i<responses.length;i++)
    {
        var _divId = _isIeExplorer ? responses[i].getElementsByTagName("ID")[0].text : responses[i].getElementsByTagName("ID")[0].textContent;
        var _resultHtml = _isIeExplorer ? responses[i].getElementsByTagName("HTML")[0].text : responses[i].getElementsByTagName("HTML")[0].textContent;
        try{
            document.getElementById(_divId).innerHTML = _resultHtml;
            enableDivList(_divId);
        }
        catch(e){}
    }
    
    responses = _resXml.getElementsByTagName("MESSAGE");
    if (responses.length==1)
    {
        if (responses[0].getElementsByTagName("HTML").length>0)
        {
            var _innerHtml = _isIeExplorer ? responses[0].getElementsByTagName("HTML")[0].text : responses[0].getElementsByTagName("HTML")[0].textContent;
            DisplayMessageOver(_innerHtml);
        }
        else if (responses[0].getElementsByTagName("TEXT").length>0)
        {
            var _msg = _isIeExplorer ? responses[0].getElementsByTagName("TEXT")[0].text : responses[0].getElementsByTagName("TEXT")[0].textContent;
            alert(_msg);
            removeDiv('over_body');
            enableAllSelect(document.body);
        }
    }
    __theFormPostData = '';
    WebForm_InitCallback();
    try{
        previewMiniBasket();
    }catch(e){
    }
}

function OnCallBackEndMessage (Results, context){
    DisplayMessageOver(Results);
}
function DisplayMessageOver (innerHtml, flDisableClick){
    var _isIeExplorer;
    _isIeExplorer = window.ActiveXObject ? true : false;

    disableBody();
    addDiv('over_msg', 'message');
    document.getElementById('over_msg').innerHTML = innerHtml;
    if (_isIeExplorer)
        addIFrameUnder('under_msg','over_msg');
    else{
        if(!detectDoctype()){
            document.getElementById('over_msg').style.top = (document.body.clientHeight - document.getElementById('over_msg').clientHeight)/2;
            document.getElementById('over_msg').style.left = (document.body.clientWidth - document.getElementById('over_msg').clientWidth)/2;
        }else{
            document.getElementById('over_msg').style.top = (window.screen.availHeight - document.getElementById('over_msg').offsetHeight)/2 - 50 + "px";
            document.getElementById('over_msg').style.left = (window.screen.availWidth - document.getElementById('over_msg').offsetWidth)/2 + "px";
        }
    }
    if(!flDisableClick){
        document.getElementById('over_msg').onclick = function() {
            removeDiv('over_msg');
            removeDiv('over_body');
            removeIFrame('under_msg');
            enableAllSelect(document.body)
        }
    }
}
function detectDoctype(){
    var re=/\s+(X?HTML)\s+([\d\.]+)\s*([^\/]+)*\//gi
    if(typeof document.namespaces != "undefined"){
        if(document.all[0].nodeType == 8)
            re.exec(document.all[0].nodeValue)
        else
            return false
    }else{
        if(document.doctype != null)
            re.exec(document.doctype.publicId)
        else
            return false
    }
    return true
}
function removeIFrameMessage(){
    removeDiv('over_msg');
    removeIFrame('under_msg');
}
function enableBody(){
    enableAllSelect(document.body);
    removeDiv('over_body');
}
function OnError(){
    removeDiv("over_body");
    removeDiv(addadDiv);
    alert("Global.Error");
}
function context(id){
    var me;
    var listselect = document.getElementsByTagName('input')
    for (var a = 0; a < listselect.length; ++a)
    {
        if (listselect[a].name.indexOf(id) > 0)
            me = listselect[a];
    }       
    //return "$" + document.getElementsByName(id)[0].value;
    return "$" + me.value
}
function disableBody(){
    disableAllSelect(document.body);
    if (document.getElementsByName("over_body").length == 0)
    {
        addDiv("over_body","disableBody");
        document.getElementsByName("over_body")[0].style.width = document.body.offsetWidth + "px";
        document.getElementsByName("over_body")[0].style.height = document.body.offsetHeight + "px";
        document.getElementsByName("over_body")[0].style.display = (document.getElementsByName('over_body')[0].style.display== 'block') ? 'none' : 'block';
    }
}
function disableDivList(contentDiv){
    disableAllSelect(document.getElementsByName(contentDiv)[0]);
    addDiv('over_' + contentDiv,'disableDataList');
    document.getElementsByName('over_' + contentDiv)[0].style.width = document.getElementsByName(contentDiv)[0].offsetWidth + "px";
    document.getElementsByName('over_' + contentDiv)[0].style.height = document.getElementsByName(contentDiv)[0].offsetHeight + "px";
    document.getElementsByName('over_' + contentDiv)[0].style.top = getTop(document.getElementsByName(contentDiv)[0]) + "px";
    document.getElementsByName('over_' + contentDiv)[0].style.left = getLeft(document.getElementsByName(contentDiv)[0]) + "px";
    document.getElementsByName('over_' + contentDiv)[0].style.display = (document.getElementsByName('over_' + contentDiv)[0].style.display== 'block') ? 'none' : 'block';
}
function enableDivList(name){
    removeDiv('over_' + name);
}
function disableAllSelect(elemt){
    //corrige le bug ie qui empèche une balise select de passer en dessous d'une div
    if (navigator.appName=='Microsoft Internet Explorer'){
        var listselect = elemt.getElementsByTagName('select')
        for (var a = 0; a < listselect.length; ++a)
            listselect[a].disabled = true;
    }
}
function enableAllSelect(elemt){
    //corrige le bug ie qui empèche une balise select de passer en dessous d'une div
    if (navigator.appName=='Microsoft Internet Explorer'){
        var listselect = elemt.getElementsByTagName('select')
        for (var a = 0; a < listselect.length; ++a)
            listselect[a].disabled = false;
    }
}
//Fonction permettant de connaître la position d'un objet
//par rapport au bord gauche de la page.
//Cet objet peut être à l'intérieur d'un autre objet.
function getLeft(MyObject){
if (MyObject.offsetParent)
    return (MyObject.offsetLeft + getLeft(MyObject.offsetParent));
else
    return (MyObject.offsetLeft);
}
//Fonction permettant de connaître la position d'un objet
//par rapport au bord haut de la page.
//Cet objet peut être à l'intérieur d'un autre objet.
function getTop(MyObject){
if (MyObject.offsetParent)
    return (MyObject.offsetTop + getTop(MyObject.offsetParent));
else
    return (MyObject.offsetTop);
}
function addDiv(name,style){
    var bloOver;
    if (document.getElementsByName(name).length == 0)
    {
        bloOver = document.createElement("div");
        bloOver.className=style;
        bloOver.id = name;
        bloOver.name = name;
        bloOver.setAttribute("name",name);
        document.body.insertBefore(bloOver,document.body.firstChild);
        addadDiv = name;
    }
}
function removeDiv(name){
    if (document.getElementsByName(name).length == 1)
    {
        document.getElementsByName(name)[0].parentNode.removeChild(document.getElementsByName(name)[0]);
        addadDiv = "";
    }
    document.body.style.cursor = "default";
}
function addIFrameUnder(name, divname){
    var ifrUnder;
    var divOver;
    if (document.getElementsByName(name).length == 0 && document.getElementsByName(divname).length == 1)
    {
        ifrUnder = document.createElement('iframe');
        divOver = document.getElementsByName(divname)[0];
        ifrUnder.id = name;
        ifrUnder.name = name;
        ifrUnder.style.width=divOver.offsetWidth;
        ifrUnder.style.height= divOver.offsetHeight;
        ifrUnder.className = 'iframefixed_undermessage';
        ifrUnder.scrolling = 'no';
        document.body.insertBefore(ifrUnder,divOver);
    }
}
function removeIFrame(name){
    if (document.getElementsByName(name).length == 1)
    {
        document.getElementsByName(name)[0].parentNode.removeChild(document.getElementsByName(name)[0]);
    }
}
function setProductUpSell(idProductUpSell){
	if (document.getElementById("idProductUpSell"))
		document.getElementById("idProductUpSell").value = idProductUpSell;
}
function doAfterCallBack(Results, context){
	var idProductUpSell = document.getElementById("idProductUpSell");
	if (Results.indexOf("ERROR_MESSAGE") > 0 || !idProductUpSell || idProductUpSell && idProductUpSell.value=="")
		OnCallBackEnd (Results, context);
	else{
		var mscssid = document.getElementById("mscssid") ? document.getElementById("mscssid").value : null,
			ttUrl = location.protocol + "//" + location.host + "/Catalogue/catProductUpSell.aspx",
			Qs = window.location.search;	
		if (Qs.indexOf("mscssid") > 0)
			ttUrl += mscssid ? "?mscssid=" + escape(mscssid) : "";
		ttUrl += (ttUrl.indexOf("?") > 0 ? "&" : "?") + 'idProduct=' + idProductUpSell.value;
		window.location.href = ttUrl;
	}
}