﻿// JScript File

var ajax1;
var ajax2;
var infoPanFadeDir = 0;
var infoPanOpacity = 0;
var infoPanFadeT;

var ddlStep1_1;
var ddlStep1_2;
var ddlStep1_3;
var step1OrderXML;
var step1List;


function setVars(ePA1, ePA2) 
{
    ajax1 = ePA1;
    ajax2 = ePA2;     
    step1OrderXML = document.createElement( "div" ); 
    ddlStep1_1 = document.getElementById("ddlStep1_1");
    ddlStep1_2 = document.getElementById("ddlStep1_2");
    ddlStep1_3 = document.getElementById("ddlStep1_3");     
    txtStep1Keyword = document.getElementById("txtStep1Keyword");
    step1List = document.getElementById("step1List");
}

if (this.addEventListener)
{
    window.addEventListener("load", pageLoad, false);
} 
else if (this.attachEvent)
{
    window.attachEvent("onload", pageLoad);
}

function pageLoad(e) 
{
    populate_Step1();
}

function resetFilter() 
{
    ddlStep1_1.selectedIndex = 0;
    ddlStep1_2.selectedIndex = 0;
    ddlStep1_3.selectedIndex = 0;
    step1OrderXML.innerHTML = "";
    
    populate_Step1();
}

/**************   Step 1 ********************/

function populate_Step1() 
{
    //step1Hide.style.display="block";
    collectionID=0;
    designID=0;
    colourID=0;
    keywords='';
    
    if( ddlStep1_1 ) 
    {
        if( ddlStep1_1.selectedIndex > 0 )
            collectionID = ddlStep1_1.options[ddlStep1_1.selectedIndex ].value;    
        if( ddlStep1_2.selectedIndex > 0 )
            designID = ddlStep1_2.options[ddlStep1_2.selectedIndex ].value;    
        if( ddlStep1_3.selectedIndex > 0 )
            colourID = ddlStep1_3.options[ddlStep1_3.selectedIndex ].value;
        keywords = txtStep1Keyword.value;
     }  
    ajax1.loadXMLRequest("../WebServices/Crucial.asmx/GetStep1Ddls", "collectionID=" + collectionID + "&designID=" + designID + "&colourID=" + colourID + "&sequence=<sequence>" + step1OrderXML.innerHTML + "</sequence>&keywords=" + keywords, true, populate_Step1_Callback);    
}

function populate_Step1_Callback() 
{
    if( ajax1.GetRequest().readyState == 4 ) 
    {
         newLogItems = ajax1.applyXSLTransform( ajax1.GetRequest().responseXML, "../XSL/SelectARugCentre2.xsl" );
         document.getElementById( "ddlsRugFilters" ).innerHTML = newLogItems;    
         
         ddlStep1_1 = document.getElementById("ddlStep1_1");
         ddlStep1_2 = document.getElementById("ddlStep1_2");
         ddlStep1_3 = document.getElementById("ddlStep1_3");     
         txtStep1Keyword = document.getElementById("txtStep1Keyword");
         populate_RugCentreList();
         
         //step1Hide.style.display="none";
         
    }
}

function step1_1Changed() 
{
    txtStep1Keyword.value = '';
    if( ddlStep1_1.selectedIndex > 0 ) {
        sItem = document.createElement( "collection" );
        if( step1OrderXML.getElementsByTagName( "collection" ).length == 0 )     
        step1OrderXML.appendChild(sItem);
    } else {
        step1OrderXML.removeChild( step1OrderXML.getElementsByTagName( "collection" )[0]  );
    }
    populate_Step1();
}

function step1_2Changed() 
{
    txtStep1Keyword.value = '';
    if( ddlStep1_2.selectedIndex > 0 ) {
        sItem = document.createElement( "design" );
        if( step1OrderXML.getElementsByTagName( "design" ).length == 0 )     
        step1OrderXML.appendChild(sItem);
    } else {
        step1OrderXML.removeChild( step1OrderXML.getElementsByTagName( "design" )[0] );
    }
    populate_Step1();
}

function step1_3Changed() 
{
    txtStep1Keyword.value = '';
    if( ddlStep1_3.selectedIndex > 0 ) {
        sItem = document.createElement( "colour" );   
        if( step1OrderXML.getElementsByTagName( "colour" ).length == 0 )     
            step1OrderXML.appendChild(sItem);
    } else {
        step1OrderXML.removeChild( step1OrderXML.getElementsByTagName( "colour" )[0] );
    }
    populate_Step1();
}

function btnStep1Search_Click() 
{
    ddlStep1_1.selectedIndex = 0;
    ddlStep1_2.selectedIndex = 0;
    ddlStep1_3.selectedIndex = 0;
    step1OrderXML.innerHTML = "";
    populate_Step1();
}

function populate_RugCentreList() 
{    
    collectionID=0;
    designID=0;
    colourID=0;
    keywords="";
    
    if( ddlStep1_1 ) 
    {
        if( ddlStep1_1.selectedIndex > 0 )
            collectionID = ddlStep1_1.options[ddlStep1_1.selectedIndex ].value;    
        if( ddlStep1_2.selectedIndex > 0 )
            designID = ddlStep1_2.options[ddlStep1_2.selectedIndex ].value;    
        if( ddlStep1_3.selectedIndex > 0 )
            colourID = ddlStep1_3.options[ddlStep1_3.selectedIndex ].value;
        keywords = txtStep1Keyword.value;
        if( keywords == "Keyword")
            keywords = "";
     }
    ajax1.loadXMLRequest("../WebServices/Crucial.asmx/GetRugCentres", "collectionID=" + collectionID + "&designID=" + designID + "&colourID=" + colourID + "&keywords=" + keywords + "&usage=floorcovering", true, populate_RugCentreList_Callback);
}

function populate_RugCentreList_Callback() 
{
    if( ajax1.GetRequest().readyState == 4 ) 
    {
         newLogItems = ajax1.applyXSLTransform( ajax1.GetRequest().responseXML, "../XSL/FloorCoveringList.xsl" );
         step1List.innerHTML = newLogItems;         
    }
}

function applyRugCentre( code, colName, colour, info, cost, maxWidth ) 
{
    hidFCCode.value = code;
    hidFCColName.value = colName;
    hidFCColour.value = colour;
    document.getElementById("txtRugCentre").value = colName + code;
    redrawRug();
    
    hidFCInfo.value = info;
    document.getElementById("floorcoveringMap").onmouseover =  function() {showInfoPanel(code,info);};
    selectFloorcoveringCost = cost;
    hidFCMaxWidth.value = maxWidth;   
    
     if( step2Hide.innerHTML=='')
        populate_Step2();
}


/***********************************************************************************************************/

/* step 1 Change stuff */
//function step1Changed() 
//{
//    collectionID = collectionsDdl.options[collectionsDdl.selectedIndex].value;
//    colourID = coloursDdl.options[coloursDdl.selectedIndex].value;
//    weaveID = weavesDdl.options[weavesDdl.selectedIndex].value;
//    
//        //ajax2.loadXMLRequest("../WebServices/Crucial.asmx/GetRugCentres", step1DDL.options[step1DDL.selectedIndex].value + "&weaveStyleID=0", true, timeSheet_Callback);
//        ajax2.loadXMLRequest("../WebServices/Crucial.asmx/GetRugCentres", "collectionID=" + collectionID + "&colourID=" + colourID + "&weaveStyleID=" + weaveID + "&keywords=" , true, timeSheet_Callback);
//        document.getElementById( "rugList" ).innerHTML = "<div style=\"text-align:center;margin:50px auto 50px auto; font-size:20px;\">Loading...</div>";        
//        document.getElementById( "rugList").style.display = "block";    
//}

//function search() 
//{
//    
//        ajax2.loadXMLRequest("../WebServices/Crucial.asmx/GetRugCentres", "collectionID=0&colourID=0&weaveStyleID=0&keywords=" + txtSearch.value, true, timeSheet_Callback);
//        document.getElementById( "rugList" ).innerHTML = "<div style=\"text-align:center;margin:50px auto 50px auto; font-size:20px;\">Loading...</div>";        
//        document.getElementById( "rugList").style.display = "block";  
//}

//function ddlCollection_Changed() {
//coloursDdl.selectedIndex = 0;
//weavesDdl.selectedIndex = 0;step1Changed() ;
//    
//}
//function ddlColour_Changed() {
//collectionsDdl.selectedIndex = 0;
//weavesDdl.selectedIndex = 0;step1Changed() ;
//}
//function ddlWeave_Changed() {
//collectionsDdl.selectedIndex = 0;
//coloursDdl.selectedIndex = 0;step1Changed() ;
//}

//function timeSheet_Callback() 
//{
//    if( ajax2.GetRequest().readyState == 4 ) 
//    {
//         newLogItems = ajax2.applyXSLTransform( ajax2.GetRequest().responseXML, "../XSL/FloorCoveringList.xsl" );
//         document.getElementById( "rugList" ).innerHTML = newLogItems;         
//    }
//}

var showInfoDelay;

function showInfoPanel( code, infoHTML ) 
{
    clearTimeout( showInfoDelay );
    showInfoDelay = setTimeout( function() {
        infoPanFadeDir = 0.2;
        infoPanFade();
        var rugInfoPanel= document.getElementById("rugInfoPanel");
        
        rugInfoPanel.style.visibility="hidden";
        rugInfoPanel.style.display="block";
        setInfoPannelPos();
        rugInfoPanel.style.visibility="visible";
        
        rugInfoPanel.getElementsByTagName("div")[1].getElementsByTagName("div")[0].style.backgroundImage = "url(../Resources/FloorCoverings/203_203/"+code + ".jpg)";
        rugInfoPanel.getElementsByTagName("div")[1].getElementsByTagName("div")[1].innerHTML=infoHTML;
    }, 1000 );
    
}

function hideInfoPanel() 
{
    //infoPanFadeDir = -0.2;
    //infoPanFade();
    clearTimeout( showInfoDelay );
    removeInfoPanel();
}

function infoPanFade() 
{
    if(infoPanFadeDir > 0 ) {
        document.getElementById("rugInfoPanel").style.display="block"; 
        //document.getElementById("rugInfoPanel").style.visibility="visible"; 
        clearTimeout( infoPanFadeT );       
    } else {
        infoPanFadeT = setTimeout( "removeInfoPanel()", 200);            
    }
    /*
   clearInterval( infoPanFadeT );
   infoPanFadeT = setInterval( "infoPanFadeGo()", 100);   
   */
}

function removeInfoPanel() {
        document.getElementById("rugInfoPanel").style.display="none";   
        //document.getElementById("rugInfoPanel").style.visibility="hidden"; 
}

function infoPanFadeGo() 
{
        
    if(infoPanOpacity <= 0 &&  infoPanFadeDir < 0) 
    {
        clearInterval( infoPanFadeT );
    }
    else if (infoPanOpacity >= 1 && infoPanFadeDir > 0)
    {
        clearInterval( infoPanFadeT );
    }
    else 
    {
        infoPanOpacity += infoPanFadeDir;
        if( document.getElementById("rugInfoPanel").style.filter == null )
            document.getElementById("rugInfoPanel").style.opacity=infoPanOpacity;
        else
            document.getElementById("rugInfoPanel").style.filter= "alpha(opacity=" +(infoPanOpacity*100) + ")";
    }
    
    if(infoPanOpacity > 0 ) {
        document.getElementById("rugInfoPanel").style.display="block";        
    } else {
        document.getElementById("rugInfoPanel").style.display="none";
            
    }
}
 