﻿var xmlDoc;
function GetWebRequest()
{
    var wRequest = new Sys.Net.WebRequest();
    wRequest.set_url("getRecipes.ashx");
    wRequest.set_httpVerb("GET");
    wRequest.add_completed(OnWebRequestCompleted);
    wRequest.invoke();
}
function OnWebRequestCompleted(executor, eventArgs)
{
    if (executor.get_responseAvailable())
    {
        var xmlString = executor.get_responseData();
        createXMLDoc(xmlString);
    }
    else
    {
        //TODO: Load Defaults?
    }
}

function createXMLDoc(xml)
{
    try //Internet Explorer
    {
          xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
          xmlDoc.async="false";
          xmlDoc.loadXML(xml);
    }
    catch(e)
    {
        try //Firefox, Mozilla, Opera, etc.
        {
            var parser=new DOMParser();
            xmlDoc=parser.parseFromString(xml,"text/xml");
        }
        catch(e)
        {
            alert(e.message);
            return;
        }
    }
    loadCulinaryForecast(0);
}

function loadCulinaryForecast(num)
{
    if (document.getElementById("litCFTitle") != null) //if flash loaded, don't make changes
    {
        //Get all values from the XML
        var features = xmlDoc.getElementsByTagName("feature");
        if (num >= features.length) num = 0;
        var recipeID = features[num].getElementsByTagName("recipeID")[0].childNodes[0].nodeValue;
        var recipeTitle = features[num].getElementsByTagName("recipeTitle")[0].childNodes[0].nodeValue;
        var recipeImage = features[num].getElementsByTagName("recipeImage")[0].childNodes[0].nodeValue;
        var productTitle = features[num].getElementsByTagName("productTitle")[0].childNodes[0].nodeValue;
        var productImage = features[num].getElementsByTagName("productImage")[0].childNodes[0].nodeValue;
        var showNextNum = num + 1;

        //Update the Culinary Forecast with the data
        document.getElementById("imgCFRecipe").src = recipeImage;
        document.getElementById("litCFRecipeName").innerHTML = recipeTitle;
        document.getElementById("hlGetThis").href = "javascript:GoToRecipe(" + recipeID + ");";
        document.getElementById("cfProductName").innerHTML = productTitle;
        
        var imgProductThm = document.getElementById("imgProductThm");
      
        if (! IsIELowVersion()) {
			imgProductThm.src = productImage;
		} else {
			
			imgProductThm.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+productImage+"')";
			imgProductThm.src = "../images/blank.gif";
		}
        document.getElementById("hlViewNext").href = "javascript:loadCulinaryForecast(" + showNextNum + ");";
    }
}
function IsIELowVersion() {
	var browser=navigator.appName;
	var b_version=navigator.appVersion;
	var version=parseFloat(b_version);
	return  (browser=="Microsoft Internet Explorer" && version<7);
}
window.onload = function () {
    if (document.getElementById("litCFTitle") != null) //if flash loaded, don't make changes
    {
        GetWebRequest();
    }
}
