﻿function List(XMLObj) {
    var objNodelist = XMLObj.getElementsByTagName("Table");
    var objNodelistLength = objNodelist.length;
    var objNodelistNames = "";
    if (objNodelistLength > 0) {
        for (i = 0; i < objNodelistLength; i++) {
            objNodelistNames += GetXMLChildValue(XMLObj, "User_Name", objNodelist, i); 
            objNodelistNames += " | hi - ";
            objNodelistNames += GetXMLChildValue(XMLObj, "User_ID", objNodelist, i);            
            objNodelistNames += " | lo - ";
            objNodelistNames += GetXMLChildValue(XMLObj, "Diamond_Hill_ID", objNodelist, i);
            objNodelistNames += " ";            
        }
    }
    return objNodelistNames;
}
function ShowHomePagePhotos(arrPhotos) {
    var imgCount = 0;    
    $('photo').innerHTML = arrPhotos[imgCount];
    new PeriodicalExecuter(function(pe) {
        imgCount = (imgCount < arrPhotos.lenght) ? imgCount++ : 0;
        $('photo').innerHTML = arrPhotos[imgCount];
        //<img src="Handler.ashx?AlbumID=<%# Eval("AlbumID") %>&Size=M" class="photo_198" style="border:4px solid white" alt='Sample Photo from Album Number <%# Eval("AlbumID") %>' />  
    }, 5);

}
function LoadHomePageImages(XMLObj) {
    var objNodelist = XMLObj.getElementsByTagName("Table");
    var objNodelistLength = objNodelist.length;
    var arrPhotos = new Array();
    var count = 0;

    if (objNodelistLength > 0) {
        for (i = 0; i < objNodelistLength; i++) {
            arrPhotos[i] = GetXMLChildValue(XMLObj, "Photo_ID", objNodelist, i); 
        }
    }
    new PeriodicalExecuter(function(pe) {
        $('photo').innerHTML = "<img src=\"Handler.ashx?PID=" + arrPhotos[count] + "&Size=L\">";
        count = (count < arrPhotos.length-1) ? count + 1 : 0;
    }, 5);
   
}

function LoadXMLPrototype(Response) {
    // code for IE
    if (window.ActiveXObject) {
        var XMLObj = new ActiveXObject("Microsoft.XMLDOM");
        XMLObj.async = "false";
        XMLObj.loadXML(Response);
    }
    // code for Mozilla, Firefox, Opera, etc.
    else {
        var parser = new DOMParser();
        var XMLObj = parser.parseFromString(Response, "text/xml");
    }

    return XMLObj;
}

function GetXMLChildValue(XMLObj, ChildName, objNodelist, Row) {
    var Value = "";

    if ((objNodelist == null) || (Row == null)) {
        var XMLChild = XMLObj.getElementsByTagName(ChildName);
        Value = XMLChild[0].childNodes[0].nodeValue;
    }
    else {
        var XMLChild = objNodelist[Row].getElementsByTagName(ChildName)[0].childNodes;
        //alert(XMLChild.length);
        if (XMLChild.length > 0) {
            Value = XMLChild[0].nodeValue;
        }
        else {
            Value = "";
        }
    }
    return Value;
}

function ajaxGetPage(element, func) {
    element.innerHTML = "<img src='images/ajax-loader.gif'/>";  
    
    var url = "proxyPage.aspx";
    new Ajax.Request(url, {
        method: 'get',
        parameters: { func: func },
        onSuccess: function(transport) {
            element.innerHTML = transport.responseText;
        },
        onFailure: function(transport) {
            element.innerHTML = transport.responseText;
        },
        onException: function(transport) {
            element.innerHTML = transport.responseText;
        }
    });
}

function ajaxGetXML(element, func) {
    var dimensions = element.getDimensions();    
    element.innerHTML = element.innerHTML + "<div id='loader' align='center'><img src='images/ajax-loader.gif'/></div>";

    $('loader').setStyle({
        width: dimensions.width,
        height: dimensions.height,
        opacity: 0.5

    });

    
    var XML = "";
    var url = "proxyXML.aspx";
    new Ajax.Request(url, {
        method: 'get',
        parameters: { func: func },
        onSuccess: function(transport) {
            switch (func) {
                case 'GetHomePagePhotos':
                    LoadHomePageImages(LoadXMLPrototype(transport.responseText));
                    break;
                default:
            }
        },
        onFailure: function(transport) {
            element.innerHTML = transport.responseText;
        },
        onException: function(transport) {
            element.innerHTML = transport.responseText;
        }
    });


}

function GetPhoto(AID) {
    func = "GetPhoto";
    element = $('album-list');
    element.innerHTML = "<img src='images/ajax-loader.gif'/>";

    var url = "proxyPage.aspx";
    new Ajax.Request(url, {
        method: 'get',
        parameters: { func: func, AID:AID },
        onSuccess: function(transport) {
            element.innerHTML = transport.responseText;
        },
        onFailure: function(transport) {
            element.innerHTML = transport.responseText;
        },
        onException: function(transport) {
            element.innerHTML = transport.responseText;
        }
    });
   
}

function init() {
    var sXML = ajaxGetXML($('photo'), 'GetHomePagePhotos');
    //ajaxGetPage($('about-photo'), 'GetAboutUsPhoto');
    ajaxGetPage($('about-copy'), 'GetAboutUs');
    ajaxGetPage($('welcome-copy'), 'GetWelcomeNote');
    ajaxGetPage($('albums-photo'), 'GetLatestAlbumFirstPhoto');
    ajaxGetPage($('guestbook-copy'), 'GetLatestGuestbookEntries');
}

function initAlbumPage() {
    ajaxGetPage($('album-list'), 'GetAlbums');
}