//var divid = 'output';
var loadingmessage = '';

function GetRate(rid,sid,oid,bid,dbid)
{   
    index = document.getElementById(sid).selectedIndex;
    ddlValue=document.getElementById(sid).options[index].value;
    stringIndex=ddlValue.indexOf(":");
    rate=ddlValue.substring(0,stringIndex);    
    document.getElementById(rid).innerText = rate;
    document.getElementById(rid).textContent =  rate;
    /* Always IId length is 15, so we skip 15 charactes after finding ":" */
    /* Get Active String Index */
    getActiveIndex=stringIndex+1+15+1;
    /* Get the string "y" or "n" from ddlvalue */
    getActive=ddlValue.substring(getActiveIndex);    
    if(getActive=="n")
    {
        document.getElementById(bid).style.display = 'none';
        document.getElementById(dbid).innerText = 'To purchase please contact store';
        document.getElementById(dbid).textContent = 'To purchase please contact store';
    }
    else
    {
        document.getElementById(bid).style.display = 'inline';
        document.getElementById(dbid).innerText = '';
        document.getElementById(dbid).textContent = '';
    }
}
function DisplayHeading(hid,text)
{
    document.getElementById(hid).innerText=text;
    document.getElementById(hid).textContent=text;    
}
function SubmitOrder(sid)
{   
    //Get Values
    index = document.getElementById(sid).selectedIndex;    
    ddlValue=document.getElementById(sid).options[index].value;
    stringIndex=ddlValue.indexOf(":");
    /* Get IId from Option Value*/
    /* Always IId length is 15, so we get 15 charactes after finding ":" */
    iId=ddlValue.substring(stringIndex+1,stringIndex+1+15);    
    rate=ddlValue.substring(0,stringIndex);
    //Assign Values
    document.getElementById('txtHBuy').value=iId;
    document.getElementById('txtHRate').value=rate;
    document.getElementById('txtHDecide').value="A";
    document.getElementById('txtHQty').value=1;
    //Submit Values
    formget(document.getElementById('frmBuyItem'),"./cart.php","output");
    //After Submit Nullify form values
    document.getElementById('txtHBuy').value="";
    document.getElementById('txtHRate').value="";
    document.getElementById('txtHDecide').value="";
    document.getElementById('txtHQty').value="";    
}
function RemoveItem(lblId)
{   
    // Get Values
    iidIndex=lblId.indexOf(":");    
    iId=lblId.substring(iidIndex+1);
    rate=lblId.substring(3,iidIndex);    
    //Assign Values
    document.getElementById('txtHBuy').value=iId;
    document.getElementById('txtHRate').value=rate;
    document.getElementById('txtHDecide').value="R";    
    document.getElementById('txtHQty').value=0;
    //Submit Values
    formget(document.getElementById('frmBuyItem'),"./cart.php","output");
    //After Submit Nullify form values
    document.getElementById('txtHBuy').value="";
    document.getElementById('txtHRate').value="";    
    document.getElementById('txtHDecide').value="";    
    document.getElementById('txtHQty').value="";
}
function UpdateItem(txtId,txtHId)
{   
    // Validation
    if (isNaN(document.getElementById(txtId).value) || document.getElementById(txtId).value=='' || 
        document.getElementById(txtId).value == 0)
    {
        alert("Please enter a valid quantity");        
        document.getElementById(txtId).value=document.getElementById(txtHId).value;
        document.getElementById(txtId).focus();        
    }
    else
    {   
        // Get Values
        iidIndex=txtId.indexOf(":");                                     //Get Index of ":" in textbox id
        iId=txtId.substring(iidIndex+1);                                 //separate iId from txtId
        rate=txtId.substring(3,iidIndex);                                //separate rate from txtId
        qty=document.getElementById(txtId).value;                        //get qty from txtId value
        //Assign Values
        document.getElementById('txtHBuy').value=iId;
        document.getElementById('txtHRate').value=rate;
        document.getElementById('txtHQty').value=qty;    
        document.getElementById('txtHDecide').value="Q";    
        //Submit Values
        formget(document.getElementById('frmBuyItem'),"./cart.php","output");
        //After Submit Nullify form values
        document.getElementById('txtHBuy').value="";
        document.getElementById('txtHRate').value="";    
        document.getElementById('txtHDecide').value="";
        document.getElementById('txtHQty').value="";
    }
}
function LoadTinyMCE()
{
	tinyMCE.init({
				mode : "textareas",
				theme : "advanced",				
				theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,formatselect,fontselect,fontsizeselect,|,forecolor,backcolor",
				theme_advanced_toolbar_location : "top",
				theme_advanced_toolbar_align : "left",				
				width : "625px",
				height : "400px"
			});
}
function CallFormGetFunction()
{
	//Submit Values
    formget(document.getElementById('frmBuyItem'),"./cart.php","output");
    //After Submit Nullify form values
    document.getElementById('txtHBuy').value="";
    document.getElementById('txtHRate').value="";    
    document.getElementById('txtHDecide').value="";
    document.getElementById('txtHQty').value="";    
    ScreenResolution();
}
function SubmitCartOnLoad()
{       
    CallFormGetFunction();
    LoadTinyMCE();
}
function SubmitCartOnLoadWithProdGallery()
{       
    SubmitCartOnLoad();
    PhotoGalleryOnLoad();
}
function ScreenResolution()
{  
  //document.getElementById("hidCart").value=document.getElementById("hidCart").value+1;  
  screenWidth=screen.width;
  if (screenWidth>1024) 
  {  
     /*alert(screenWidth);*/
     document.getElementById("output").style.left=636+(screenWidth-1024)/2+"px";     
  }  
}
function ToggleCart()
{   
    var displayStyle = document.getElementById('divOuterCart').style.display;    
    if (displayStyle == "" || displayStyle == "block")
    {
        document.getElementById('divOuterCart').style.display="none";
    }            
    else if(displayStyle == "" || displayStyle == "none")
    {    
        document.getElementById('divOuterCart').style.display="block";        
    }    
}
//Function wriiten to go to productsstyle.php by click style
function GoToProductsStylePage(sid)
{
    //Get Values
    index = document.getElementById(sid).selectedIndex;    
    ddlValue=document.getElementById(sid).options[index].value;
    stringIndex=ddlValue.indexOf(":");
    iId=ddlValue.substring(stringIndex+1,stringIndex+1+15);
    window.location.href="./productsstyle.php?id="+iId;
}
function GetRateForProductsStylePage(rid,sid)
{   
    index = document.getElementById(sid).selectedIndex;
    ddlValue=document.getElementById(sid).options[index].value;    
    stringIndex=ddlValue.indexOf(":");
    /* Get Option Id which is stored as a Img */
    oid=document.getElementById(sid).options[index].id;
    oidUnderScoreIndex=oid.indexOf("_");
    oid=oid.substring(0,oidUnderScoreIndex);
    /* Rate */
    rate=ddlValue.substring(0,stringIndex);
    cateId=oid.substring(2,5);    
    imgSrc="./dynamic_images/product_images/"+cateId+"/"+oid;    
    document.getElementById(rid).innerText = rate;
    document.getElementById(rid).textContent =  rate;    
    document.getElementById("imgProductsStyleLargeImage").src=imgSrc;
    /* Always IId length is 15, so we skip 15 charactes after finding ":" */
    /* Get Active String Index */
    getActiveIndex=stringIndex+1+15+1;
    /* Get the string "y" or "n" from ddlvalue */
    getActive=ddlValue.substring(getActiveIndex);    
    if(getActive=="n")
    {
        document.getElementById("btnAddToCart").style.display = 'none';
        document.getElementById("lblAddToCart").innerText = 'To purchase please contact store';
        document.getElementById("lblAddToCart").textContent = 'To purchase please contact store';
    }
    else
    {
        document.getElementById("btnAddToCart").style.display = 'inline';
        document.getElementById("lblAddToCart").innerText = '';
        document.getElementById("lblAddToCart").textContent = '';
    }
}
function DDLDefaultSelection(sid,sValue)
{   
    document.getElementById(sid).value=sValue; 
}
function DDLSelectionAndShowImage(sValue,rid)
{   
    document.getElementById("ddlProductsStyle").value=sValue;     
    index = document.getElementById("ddlProductsStyle").selectedIndex;
    ddlValue=document.getElementById("ddlProductsStyle").options[index].value;    
    stringIndex=ddlValue.indexOf(":");
    /* Get Option Id which is stored as a Img */
    oid=document.getElementById("ddlProductsStyle").options[index].id;    
    oidUnderScoreIndex=oid.indexOf("_");
    oid=oid.substring(0,oidUnderScoreIndex);
    /* Rate */
    rate=ddlValue.substring(0,stringIndex);    
    cateId=oid.substring(2,5);    
    imgSrc="./dynamic_images/product_images/"+cateId+"/"+oid;    
    document.getElementById(rid).innerText = rate;
    document.getElementById(rid).textContent =  rate;    
    document.getElementById("imgProductsStyleLargeImage").src=imgSrc;
    /* Always IId length is 15, so we skip 15 charactes after finding ":" */
    /* Get Active String Index */
    getActiveIndex=stringIndex+1+15+1;
    /* Get the string "y" or "n" from ddlvalue */
    getActive=ddlValue.substring(getActiveIndex);    
    if(getActive=="n")
    {
        document.getElementById("btnAddToCart").style.display = 'none';
        document.getElementById("lblAddToCart").innerText = 'To purchase please contact store';
        document.getElementById("lblAddToCart").textContent = 'To purchase please contact store';
    }
    else
    {
        document.getElementById("btnAddToCart").style.display = 'inline';
        document.getElementById("lblAddToCart").innerText = '';
        document.getElementById("lblAddToCart").textContent = '';
    }
}
//Function wriiten to submit page by ajax and insert cart
function SubmitOrderFromProductsStylePage(sid)
{   
    //Get Values
    index = document.getElementById(sid).selectedIndex;    
    ddlValue=document.getElementById(sid).options[index].value;
    stringIndex=ddlValue.indexOf(":");
    iId=ddlValue.substring(stringIndex+1,stringIndex+1+15);    
    rate=ddlValue.substring(0,stringIndex);
    //Add Hyphen in Prefix of rate in order to use existing functions in clsbuyitem.php.
    //ie., In Function "CallInsertIntoAddToCartTable" Rate is get by 'substr($_POST['txtHRate'],1)'.
    //So,we need one character in 0th index.
    //Hereby add "Hyphen" as Dummy Character.
    rate="-"+rate;    
    //Assign Values
    document.getElementById('txtHBuy').value=iId;
    document.getElementById('txtHRate').value=rate;
    document.getElementById('txtHDecide').value="A";
    document.getElementById('txtHQty').value=1;
    //Submit Values
    formget(document.getElementById('frmBuyItem'),"./cart.php","output");
    //After Submit Nullify form values
    document.getElementById('txtHBuy').value="";
    document.getElementById('txtHRate').value="";
    document.getElementById('txtHDecide').value="";
    document.getElementById('txtHQty').value="";    
}
/* Default Selection of ddl on refresh in FIREFOX Browser */
function SetSelected(sid)
{
    document.getElementById(sid).selectedIndex=0;
}
function AJAX(){
	
	var xmlHttp;
	try{
	xmlHttp=new XMLHttpRequest(); // Firefox, Opera 8.0+, Safari
	return xmlHttp;
	}
	catch (e){
	try{
	xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); // Internet Explorer
	return xmlHttp;
	}
	catch (e){
	try{
	xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
     return xmlHttp;
	}
	catch (e){
	alert("Your browser does not support AJAX!");
	return false;
	}
	}
	}

}

   function formget(f, url,divid) {

      var poststr = getFormValues(f);      
      postData(url, poststr,divid);

   }

function postData(url, parameters,divid){

var xmlHttp = AJAX();

      xmlHttp.onreadystatechange =  function()
	  {
      	if(xmlHttp.readyState > 0 && xmlHttp.readyState < 4)
		{  
			document.getElementById(divid).innerHTML=loadingmessage;  
		}  
        if (xmlHttp.readyState == 4) 
		{
		 	document.getElementById(divid).innerHTML=xmlHttp.responseText;
         /*if (xmlHttp.status == 200) 
		 {		
 				document.getElementById(divid).innerHTML=xmlHttp.responseText;
 				*/
 				/*var varredirect=xmlHttp.responseText.indexOf('valid'); 
				if (varredirect!= -1 ) 
				{ 	
					window.location.href="./setup.php";
				}*/
         /*}
		 else
		 {
			xmlHttp.open("POST", url, true);      
			xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
			xmlHttp.setRequestHeader("Content-length", parameters.length);
			xmlHttp.setRequestHeader("Connection", "close");
			xmlHttp.send(parameters);
		}*/  
      }
      }
      xmlHttp.open("POST", url, true);      
      xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
      xmlHttp.setRequestHeader("Content-length", parameters.length);
      xmlHttp.setRequestHeader("Connection", "close");
      xmlHttp.send(parameters);
   }

   function getFormValues(fobj)

    {   
       var str = "";
       var valueArr = null;
       var val = "";
       var cmd = "";

       for(var i = 0;i < fobj.elements.length;i++)

       {
           switch(fobj.elements[i].type)

           {
               case "text":

                    str += fobj.elements[i].name +
                     "=" + escape(fobj.elements[i].value) + "&";
                     break;
                     
                case "hidden":

                    str += fobj.elements[i].name +
                     "=" + escape(fobj.elements[i].value) + "&";
                     break;                     

               case "select-one":

                    str += fobj.elements[i].name +
                    "=" + fobj.elements[i].options[fobj.elements[i].selectedIndex].value + "&";
                    break;
           }
       }

       str = str.substr(0,(str.length - 1));       
       return str;
       
       
       }
