﻿var Thumbnails_AutoLoadID;
var Thumbnails_TimerInterval = 5000;
var Thumbnails_TimerInitialInterval = 5000;
var Thumbnails_Loading = false;
var Thumbnails_CurrentPage = 1;
var Thumbnails_Results = 4;
var Thumbnails_Theme = 27;
var Thumbnails_RatingDirection = "DESC";

var Thumbnails_ImageCacheArray = new Array();

var Thumbnails_AutoLoad_Index = 0;
var Thumbnails_AutoLoad_Pattern = new Array();
Thumbnails_AutoLoad_Pattern.push(1);
Thumbnails_AutoLoad_Pattern.push(3);
Thumbnails_AutoLoad_Pattern.push(2);
Thumbnails_AutoLoad_Pattern.push(4);

//var Thumbnails_ImageQueue = new Array();

//function Thumbnails_ImageQueue_Entry(Index, UserName, Link, Profession) {
//    this.index = Index;
//    this.userName = UserName;
//    this.link = Link;
//    this.profession = Profession;
//}

function landingBrowseClick(link) {

    showLoadingStars();
    document.getElementById("AllHeaderDiv").style.visibility = "hidden";
    window.location.href = link;
}

function GetThumbnails() {
    //return; ///Temp for now

    //    Thumbnails_ImageQueue.length = 0;

    var url = "data/OnlineThumbnails.aspx";
    var sendData = "verb=get&page=" + Thumbnails_CurrentPage;
    sendData += "&results=" + Thumbnails_Results;
    sendData += "&theme=" + Thumbnails_Theme;
    sendData += "&dir=" + Thumbnails_RatingDirection;

    var gs = document.getElementById("SelectSearchGender")
    sendData += "&gender=" + gs.options[gs.selectedIndex].value;

    AJAXPostWithError(url, "GetThumbnails_ready", "GetThumbnails_error", sendData);
    //AJAXPostWithError(url, "GetThumbnails_ready", sendData);
}

function GetThumbnails_ready(responseText) {
    if (responseText != "") {
        var parsedResponse = responseText.split("|--|");

        //Thumbnails_CurrentPage = parseInt(parsedResponse[0]);

        var PageSplit = parsedResponse[0].split("~");

        if (PageSplit.length > 1) {
            Thumbnails_AutoLoad_Index += parseInt(PageSplit[0]);
            Thumbnails_CurrentPage = parseInt(PageSplit[1]);
        }
        else {
            Thumbnails_CurrentPage = parseInt(parsedResponse[0]);
        }

        if (Thumbnails_CurrentPage == isNaN) Thumbnails_CurrentPage = 1;

        if (parsedResponse.length > 1) {
            var root = document.getElementById("websiteURL").value;

            for (var i = 1; i <= Thumbnails_Results; i++) {
                var ThumbnailUserName = "";
                var ThumbnailLink = "";
                var ThumbnailCareer = "Celebrity";
                var ThumbnailAccount = "";
                var ThumbnailURLNameLink = "";

                if (parsedResponse[i]) {
                    var ThumbnailInfo = parsedResponse[i].split("|-|");

                    ThumbnailUserName = ThumbnailInfo[0];
                    ThumbnailLink = ThumbnailInfo[1];
                    ThumbnailCareer = ThumbnailInfo[2];
                    ThumbnailAccount = ThumbnailInfo[3];
                    ThumbnailURLNameLink = ThumbnailInfo[4];

                    if (ThumbnailAccount && ThumbnailAccount != "") {
                        //ThumbnailLink = root + "/Thumbnail.aspx?AccountID=" + ThumbnailAccount + "&width=55&height=71";
                        ThumbnailLink = root + "/Thumbnail.aspx?AccountID=" + ThumbnailAccount + "&width=75&height=100&theme=27";
                    }

                    if (!ThumbnailCareer) {
                        ThumbnailCareer = "Celebrity";
                    }
                    else {
                        if (ThumbnailCareer.replace(/\s/g, "") == "") {
                            ThumbnailCareer = "Celebrity";
                        }
                    }
                }

                //                if (i == 1) {
                var browseSwf = document.getElementById("BrowseSwapSWF" + i);

                if (ThumbnailLink) {
                    if (ThumbnailLink != "") {
                        if (!Thumbnails_ImageCacheArray[ThumbnailLink]) {
                            Thumbnails_ImageCacheArray[ThumbnailLink] = new Image();
                            Thumbnails_ImageCacheArray[ThumbnailLink].src = ThumbnailLink;
                        }
                    }
                }
                else {
                    ThumbnailLink = "";
                }

                if (ThumbnailURLNameLink && ThumbnailURLNameLink.length > 0) {
                    try {
                        browseSwf.changeImage(ThumbnailLink, "javascript: navigateToProfileLink('" + ThumbnailURLNameLink + "')");
                    } catch (e) {
                    }
                }
                else {
                    try {
                        browseSwf.changeImage(ThumbnailLink, null);
                    } catch (e) {
                    }
                }

                var browseDiv = document.getElementById("browseSwap" + i);
                var infoDiv = document.getElementById("thumbnailInfoPopUp");

                if (ThumbnailUserName != "") {
                    browseDiv.userName = ThumbnailUserName;
                    browseDiv.career = ThumbnailCareer;

                    if (infoDiv.currentControl) {
                        if (infoDiv.currentControl == browseDiv.id) {
                            //landingPicsOn(ThumbnailUserName, ThumbnailCareer);
                            LandingThumbnailPicsOn(browseDiv, true);
                        }
                    }

                    browseDiv.onmouseover = function() {
                        //                        infoDiv.currentControl = this.id;
                        //                        landingPicsOn(this.userName, this.career);
                        LandingThumbnailPicsOn(this);
                    }

                    browseDiv.onmouseout = function() {
                        LandingThumbnailPicsOff(this);
                        //landingPicsOff();
                    }
                }
                else {
                    if (infoDiv.currentControl) {
                        if (infoDiv.currentControl == browseDiv.id) {
                            //                            landingPicsOff();
                            //                            infoDiv.currentControl = browseDiv.id;
                            LandingThumbnailPicsOff(browseDiv);
                        }
                    }

                    browseDiv.onmouseover = function() {
                        //infoDiv.currentControl = this.id;
                        //landingPicsOn(this.userName, this.career);
                    }

                    browseDiv.onmouseout = function() {
                        //infoDiv.currentControl = null;
                    }
                }
                //                }
                //                else {
                //                    Thumbnails_ImageQueue.push(new Thumbnails_ImageQueue_Entry(i, ThumbnailUserName, ThumbnailLink, ThumbnailCareer));
                //                }
            }

            //            window.setTimeout("Thumbnails_CheckImageQueue()", 500);
        }
    }
    else {
        Thumbnails_CurrentPage = 1;
    }

    Thumbnails_Loading = false;
    Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_AutoLoad()", Thumbnails_TimerInitialInterval);
}

function GetThumbnails_error() {
    Thumbnails_Loading = false;
    Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_AutoLoad()", Thumbnails_TimerInterval);
}

function GetThumbnails_Next() {
    window.clearTimeout(Thumbnails_AutoLoadID);
    Thumbnails_AutoLoad_Index = 0;
    Thumbnails_AutoLoadID = null;

    if (!Thumbnails_Loading) {
        Thumbnails_Loading = true;
        Thumbnails_CurrentPage++;
        GetThumbnails();
    }
}

function GetThumbnails_Prev() {
    window.clearTimeout(Thumbnails_AutoLoadID);
    Thumbnails_AutoLoad_Index = 0;
    Thumbnails_AutoLoadID = null;

    if (!Thumbnails_Loading) {
        Thumbnails_Loading = true;
        Thumbnails_CurrentPage--;
        GetThumbnails();
    }
}

function GetThumbnails_AutoLoad() {
    Thumbnails_Loading = true;

    if (Thumbnails_AutoLoad_Index > 1000) Thumbnails_AutoLoad_Index = 0;

    var url = "data/OnlineThumbnails.aspx";
    var sendData = "verb=single&page=" + Thumbnails_CurrentPage + "&next=" + (Thumbnails_AutoLoad_Index + 1);
    sendData += "&theme=" + Thumbnails_Theme;
    sendData += "&dir=" + Thumbnails_RatingDirection;

    var gs = document.getElementById("SelectSearchGender")
    sendData += "&gender=" + gs.options[gs.selectedIndex].value;

    AJAXPostWithError(url, "GetThumbnails_AutoLoad_ready", "GetThumbnails_AutoLoad_error", sendData);
}

function GetThumbnails_AutoLoad_ready(responseText) {
    if (responseText != "") {
        var PatternIndex = Thumbnails_AutoLoad_Index % Thumbnails_AutoLoad_Pattern.length;

        if (PatternIndex > Thumbnails_AutoLoad_Pattern.length - 1) {
            PatternIndex = 0;
        }

        var root = document.getElementById("websiteURL").value;

        var ThumbnailUserName = "";
        var ThumbnailLink = "";
        var ThumbnailCareer = "Celebrity";
        var ThumbnailAccount = "";
        var ThumbnailURLNameLink = "";

        var ThumbnailInfo = responseText.split("|-|");

        ThumbnailUserName = ThumbnailInfo[0];
        ThumbnailLink = ThumbnailInfo[1];
        ThumbnailCareer = ThumbnailInfo[2];
        ThumbnailAccount = ThumbnailInfo[3];
        ThumbnailURLNameLink = ThumbnailInfo[4];
        if (ThumbnailAccount && ThumbnailAccount != "") {
            //ThumbnailLink = root + "/Thumbnail.aspx?AccountID=" + ThumbnailAccount + "&width=55&height=71";
            ThumbnailLink = root + "/Thumbnail.aspx?AccountID=" + ThumbnailAccount + "&width=75&height=100&theme=27";
        }

        if (!ThumbnailCareer) {
            ThumbnailCareer = "Celebrity";
        }
        else {
            if (ThumbnailCareer.replace(/\s/g, "") == "") {
                ThumbnailCareer = "Celebrity";
            }
        }

        var browseSwf = document.getElementById("BrowseSwapSWF" + Thumbnails_AutoLoad_Pattern[PatternIndex]);

        if (ThumbnailLink) {
            if (ThumbnailLink != "") {
                if (!Thumbnails_ImageCacheArray[ThumbnailLink]) {
                    Thumbnails_ImageCacheArray[ThumbnailLink] = new Image();
                    Thumbnails_ImageCacheArray[ThumbnailLink].src = ThumbnailLink;
                }
            }
        }
        else {
            ThumbnailLink = "";
        }

        if (ThumbnailURLNameLink && ThumbnailURLNameLink.length > 0) {
            try {
                browseSwf.changeImage(ThumbnailLink, "javascript: navigateToProfileLink('" + ThumbnailURLNameLink + "')");
            } catch (e) {
            }
        }
        else {
            try {
                browseSwf.changeImage(ThumbnailLink, null);
            } catch (e) {
            }
        }

        var browseDiv = document.getElementById("browseSwap" + Thumbnails_AutoLoad_Pattern[PatternIndex]);
        var infoDiv = document.getElementById("thumbnailInfoPopUp");

        if (ThumbnailUserName != "") {
            browseDiv.userName = ThumbnailUserName;
            browseDiv.career = ThumbnailCareer;

            if (infoDiv.currentControl) {
                if (infoDiv.currentControl == browseDiv.id) {
                    //landingPicsOn(ThumbnailUserName, ThumbnailCareer);
                    LandingThumbnailPicsOn(browseDiv, true);
                }
            }

            browseDiv.onmouseover = function() {
                //                infoDiv.currentControl = this.id;
                //                landingPicsOn(this.userName, this.career);
                LandingThumbnailPicsOn(this);
            }

            browseDiv.onmouseout = function() {
                LandingThumbnailPicsOff(this);
            }
        }
        else {
            if (infoDiv.currentControl) {
                if (infoDiv.currentControl == browseDiv.id) {
                    //                    landingPicsOff();
                    //                    infoDiv.currentControl = browseDiv.id;
                    LandingThumbnailPicsOff(browseDiv);
                }
            }

            browseDiv.onmouseover = function() {
                //infoDiv.currentControl = this.id;
            }

            browseDiv.onmouseout = function() {
                //infoDiv.currentControl = null;
            }
        }
    }

    Thumbnails_AutoLoad_Index++;
    Thumbnails_Loading = false;
    Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_AutoLoad()", Thumbnails_TimerInterval);
}

function GetThumbnails_AutoLoad_error() {
    Thumbnails_Loading = false;
    Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_AutoLoad()", Thumbnails_TimerInterval);
}

function LandingThumbnailPicsOn(browseDiv, noPosition) {
    var CommonID = "thumbnailInfoPopUp";

    var thumbnailInfoPopUp = document.getElementById(CommonID);
    var thumbnailInfoPopUp_Name = document.getElementById(CommonID + "_Name");
    var thumbnailInfoPopUp_Career = document.getElementById(CommonID + "_Career");

    thumbnailInfoPopUp.currentControl = browseDiv.id;

    thumbnailInfoPopUp.style.visibility = "";
    thumbnailInfoPopUp_Name.innerHTML = (browseDiv.userName ? browseDiv.userName : "");
    thumbnailInfoPopUp_Career.innerHTML = (browseDiv.career ? browseDiv.career : "");

    var offsetPointer = browseDiv;
    var x = 0;
    var y = 0;

    while (offsetPointer) {
        x += offsetPointer.offsetLeft;
        y += offsetPointer.offsetTop;

        offsetPointer = offsetPointer.offsetParent
    }

    if (parseInt(thumbnailInfoPopUp.offsetWidth) < parseInt(browseDiv.offsetWidth)) {
        var diff = parseInt((parseInt(browseDiv.offsetWidth) - parseInt(thumbnailInfoPopUp.offsetWidth)) / 2)

        thumbnailInfoPopUp.style.left = (parseInt(x) + diff) + "px";
    }
    else if (parseInt(thumbnailInfoPopUp.offsetWidth) > parseInt(browseDiv.offsetWidth)) {
        var diff = parseInt((parseInt(thumbnailInfoPopUp.offsetWidth) - parseInt(browseDiv.offsetWidth)) / 2)

        thumbnailInfoPopUp.style.left = (parseInt(x) - diff) + "px";
    }
    else {
        thumbnailInfoPopUp.style.left = parseInt(x) + "px";
    }

    thumbnailInfoPopUp.style.top = (parseInt(y) + parseInt(browseDiv.offsetHeight)) + "px";
}

function LandingThumbnailPicsOff(browseDiv) {
    var CommonID = "thumbnailInfoPopUp";

    var thumbnailInfoPopUp = document.getElementById(CommonID);
    var thumbnailInfoPopUp_Name = document.getElementById(CommonID + "_Name");
    var thumbnailInfoPopUp_Career = document.getElementById(CommonID + "_Career");

    thumbnailInfoPopUp.currentControl = null;

    thumbnailInfoPopUp.style.visibility = "hidden";
    thumbnailInfoPopUp.style.left = "-500px";
    thumbnailInfoPopUp.style.top = "-500px";

    thumbnailInfoPopUp_Name.innerHTML = "";
    thumbnailInfoPopUp_Career.innerHTML = "";
}

//function Thumbnails_CheckImageQueue() {
//    if (Thumbnails_ImageQueue.length > 0) {
//        var Entry = Thumbnails_ImageQueue.shift();
//        var browseSwf = document.getElementById("BrowseSwapSWF" + Entry.index);

//        browseSwf.changeImage(Entry.link, null);

//        var browseDiv = document.getElementById("browseSwap" + Entry.index);
//        var infoDiv = document.getElementById("infoPopUp");

//        if (Entry.userName != "") {
//            browseDiv.userName = Entry.userName;
//            browseDiv.career = Entry.career;

//            if (infoDiv.currentControl) {
//                if (infoDiv.currentControl == browseDiv.id) {
//                    landingPicsOn(Entry.userName, Entry.career);
//                }
//            }

//            browseDiv.onmouseover = function() {
//                infoDiv.currentControl = this.id;
//                landingPicsOn(this.userName, this.career);
//            }

//            browseDiv.onmouseout = function() {
//                landingPicsOff();
//            }
//        }
//        else {
//            if (infoDiv.currentControl) {
//                if (infoDiv.currentControl == browseDiv.id) {
//                    landingPicsOff();
//                    infoDiv.currentControl = browseDiv.id;
//                }
//            }

//            browseDiv.onmouseover = function() {
//                infoDiv.currentControl = this.id;
//                //landingPicsOn(this.userName, this.career);
//            }

//            browseDiv.onmouseout = function() {
//                infoDiv.currentControl = null;
//            }
//        }

//        if (Thumbnails_ImageQueue.length == 0) {
//            Thumbnails_Loading = false;
//            Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_Next()", Thumbnails_TimerInterval);
//        }
//        else {
//            window.setTimeout("Thumbnails_CheckImageQueue()", 500);
//        }       
//    }
//    else {
//        Thumbnails_Loading = false;
//        Thumbnails_AutoLoadID = window.setTimeout("GetThumbnails_Next()", Thumbnails_TimerInterval);
//    }  
//}

function navigateToProfileLink(url) {
    var color = QueryStringValue(url, "color");
    var shade = QueryStringValue(url, "shade");

    Set_Cookie("shade", shade, 30, "/");
    Set_Cookie("theme", color, 30, "/");

    var extra = "&nolink=1"

    if (!/\&themeId/.test(url)) {
        var themeId = document.getElementById("themeId");
        if (themeId)
        extra += "&themeId=" + themeId.value;
}
    
    document.location.href = url + extra;
}
