﻿// JScript File
/// <reference path="MicrosoftAjax.js" />
/// <reference path="../WLJQuery/jquery-1.4.1-vsdoc.js" />

/* ==================================== */
/* Page Tools                           */
/* ==================================== */
var currentTabOpen = null;
$(document).ready(function ()
{
    /* --------------------- */
    /* Font Size             */
    /* --------------------- */
    var fontSize = "small";

    var coo = document.cookie.split(';');
    for (var i = 0; i < coo.length; i++)
    {
        if (coo[i].indexOf("FontSize") > -1)
        {
            fontSize = coo[i].substring("FontSize=".length + 1, coo[i].length);
            break;
        }
    }

    className = "master_body_" + fontSize;

    $('body').removeClass("master_body_small").removeClass("master_body_medium").removeClass("master_body_big").addClass(className);

    $('a.master_pageToolsFontSizeSmall').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSizeMedium').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSizeBig').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSize' + fontSize.charAt(0).toUpperCase() + fontSize.slice(1)).addClass("master_pageToolsFontSizeSelected");

    /* ----------------------------------- */
    /* menu: remember current tab  */
    /* ---------------------------------- */
    currentTabOpen = $(".CMSMenuHighlightedMenuItem").attr("id");
    if (currentTabOpen)
    {
        while (currentTabOpen.indexOf("-") != currentTabOpen.lastIndexOf("-"))
        {
            currentTabOpen = currentTabOpen.substring(0, currentTabOpen.lastIndexOf("-"));
        }
    }

});


var linkPrevTopSize = null;
function pageTools_fontSize(fontSize)
{
    className = "master_body_" + fontSize;

    $('body').removeClass("master_body_small").removeClass("master_body_medium").removeClass("master_body_big").addClass(className);

    // save the FontSize to a cookie
    var date = new Date();
    date.setYear(date.getYear() + 1);
    document.cookie = "FontSize=" + fontSize + "; path=/";

    $('a.master_pageToolsFontSizeSmall').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSizeMedium').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSizeBig').removeClass("master_pageToolsFontSizeSelected");
    $('a.master_pageToolsFontSize' + fontSize.charAt(0).toUpperCase() + fontSize.slice(1)).addClass("master_pageToolsFontSizeSelected");
}

function master_getParams()
{
    var arrPath = document.URL.split("?");
    if (arrPath.length == 2)
    {
        var arrPageName = arrPath[0].split("/");
        if (arrPageName.length > 0)
        {

            var strPage = arrPageName[arrPageName.length - 1].toLowerCase();

            switch (strPage)
            {
                case "doctor-profile.aspx":
                    indexDoctorID = arrPath[1].indexOf("DoctorID=");
                    if (indexDoctorID != -1)
                    {
                        params = arrPath[1].split("&");
                        return "|" + params[0];
                    }
                    break;
                default:
                    var reAmp = new RegExp("&", "ig");
                    return arrPath[1].replace(reAmp, "|");
                    break;
            }

        }
    }
    return "";
}

function master_getTitle()
{
    var arrPath = document.URL.split("?");
    var arrPageName = arrPath[0].split("/");

    if (arrPageName.length > 0)
    {
        var strPage = arrPageName[arrPageName.length - 1].toLowerCase();
        switch (strPage)
        {
            case "class.aspx":
                var reAmp = new RegExp("&", "ig");
                return document.title.replace("Pinnacle Site - ", "").replace(reAmp, "|");
                break;
            case "doctor-profile.aspx":
                arrPath[1].indexOf("DoctorID=");
                return document.title.replace("Pinnacle Site - ", "").replace(reAmp, "|");
                break;
        }
    }
    return "";
}

function pageTools_email(aliasPath)
{
    var strParams = "&AliasPath=" + aliasPath + "&MoreParams=" + master_getParams();
    tb_show("Send to a Friend", strPathPopups.replace("~", "") + 'PageToolsEmail.aspx?keepThis=true&modal=false&width=440&height=300' + strParams + '&TB_iframe=true', false);
}

function pageTools_addToMyFolders(aliasPath)
{
    var strParams = "&AliasPath=" + aliasPath + "&Title=" + escape(master_getTitle()) + "&MoreParams=" + master_getParams();
    tb_show("Add to My Folders", strPathPopups.replace("~", "") + 'PageToolsAddToMyFolders.aspx?keepThis=true&modal=false&width=440&height=206' + strParams + '&TB_iframe=true', false);
}

/* ==================================== */
/* SearchBox.ascx                       */
/* ==================================== */
function master_getBrowser()
{
    if (navigator["userAgent"].indexOf("Macintosh") > -1 && navigator["userAgent"].indexOf("Safari") > -1)
    {
        return "Safari-Mac";
    }
    else if (navigator["userAgent"].indexOf("Macintosh") > -1 && navigator["userAgent"].indexOf("Firefox") > -1)
    {
        return "Firefox-Mac";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("Safari") > -1)
    {
        return "Safari-Win";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("Firefox") > -1)
    {
        return "Firefox-Win";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("MSIE 9.0") > -1)
    {
        return "Explorer9-Win";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("MSIE 8.0") > -1)
    {
        return "Explorer8-Win";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("MSIE 7.0") > -1)
    {
        return "Explorer7-Win";
    }
    else if (navigator["userAgent"].indexOf("Windows") > -1 && navigator["userAgent"].indexOf("MSIE") > -1)
    {
        return "Explorer-Win";
    }
    else
    {
        return "Default";
    }
}

function master_searchBox_onFocus(obj)
{
    if (obj.value == Dictionary_SearchBox_DefaultPhrase)
    {
        obj.value = "";
    }
}

function master_searchBox_onBlur(obj)
{
    if (obj.value == "")
    {
        obj.value = Dictionary_SearchBox_DefaultPhrase;
    }
}

function master_searchBox_onKeyPress(e)
{

    if (window.event) // IE
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape, Firefox, Opera
    {
        keynum = e.which
    }

    if (keynum == 13)
    {
        switch (master_getBrowser())
        {
            case "Firefox-Win":
            case "Explorer9-Win":
                e.preventDefault();
                e.stopPropagation();
                break;

            default:
                e.cancelBubble = true;
                e.returnValue = false;
                break;
        }

        master_searchBox_onClick();
    }
}

function master_searchBox_onClick()
{
    var txtSearch = $("input.master_search_box");
    if (txtSearch.val() != Dictionary_SearchBox_DefaultPhrase)
    {
        var reAmp = new RegExp("&", "ig");
        location.href = Params_PageSearchByPhrase.replace("{0}", txtSearch.val().replace(reAmp, "%26"));
    }
}


/* ================================ */
/* HP                               */
/* ================================ */

// -----------
// Newsletter
// -----------

function hp_newsletter()
{
    var strParams = "";
    tb_show("Get Our Newsletter", strPathPopups.replace("~", "") + 'NewsletterSubscribe.aspx?keepThis=true&modal=false&width=440&height=206' + strParams + '&TB_iframe=true', false);

    /*var webReq = new Sys.Net.WebRequest;
    //webReq.add_completed(hp_newsletterComplete);
    webReq.set_url(strPathHandlers.replace("~", "") + "NewsletterGet.ashx");
    webReq.set_httpVerb("POST");
    webReq.set_body("");
    webReq.get_headers()["Content-Length"] = 0;
    webReq.invoke(); */
}

// -----------
// What's News
// -----------

function hp_whatsNew_filter(id)
{
    if (id == "Most")
    {
        document.getElementById("linkNewsRecent").className = "hp_newFilterOff";
        document.getElementById("linkNewsMost").className = "hp_newFilterOn";

        document.getElementById("ulNewsRecent").style.display = "none";
        document.getElementById("ulNewsMost").style.display = "";
    }
    else if (id == "Recent")
    {
        document.getElementById("linkNewsMost").className = "hp_newFilterOff";
        document.getElementById("linkNewsRecent").className = "hp_newFilterOn";

        document.getElementById("ulNewsMost").style.display = "none";
        document.getElementById("ulNewsRecent").style.display = "";
    }

}


// -----------
// carousel
// -----------

var carousel_GbackgroundColors = new Array();
var carousel_GCurrentItemIndex = 0;
var carousel_GlistItemsCount = 0;

function hp_carousel_onload(scrollDelay, _animationType, listItemsCount)
{
    carousel_GlistItemsCount = listItemsCount;
    $(document).ready(function ()
    {
        //unhide all li-s
        for (i = 1; i <= listItemsCount; i++)
        {
            document.getElementById("ItemList" + i).style.display = "";
        }
        //start the carousel
        $("#carousel").jcarousel({
            start: 1,
            scroll: 1,
            auto: (listItemsCount > 1 ? scrollDelay : 0),
            wrap: "circular",
            initCallback: hp_carouselInitCallback,
            itemVisibleInCallback: hp_carouselItemVisibleInCallback,
            animation: 'fast',
            animationType: _animationType
        });
    });
}

function hp_carouselInitCallback(carousel)
{

    $('.hp_carousel_pagingNext').bind('click', function ()
    {
        carousel.next();
        carousel.startAuto(0);
        return false;
    });

    $('.hp_carousel_pagingPrev').bind('click', function ()
    {
        carousel.prev();
        carousel.startAuto(0);
        return false;
    });

    $(".hp_carousel_pagingNums a").bind('click', function ()
    {
        // carousel.scroll:
        // 1st param {Number} The index of the element to scoll to.
        // 2ns param {Boolean} Flag indicating whether to perform animation.
        carousel.scroll($.jcarousel.intval($(this).text()), false);
        carousel.startAuto(0);

        if (carousel_GlistItemsCount > 1)
        {
            hp_carousel_pagingSetCurrentPage($(this).text());
        }

        return false;
    });
}

function hp_carouselItemVisibleInCallback(carousel, liObj, nCurrIndex, state)
{
    var tdPaging = document.getElementById("tdPaging");
    var nNewIndex = hp_carouselGetAbsIndex(nCurrIndex, parseInt(CB_carousel_itemsCount));

    if (carousel_GlistItemsCount > 1)
    {
        hp_carousel_pagingSetCurrentPage(nNewIndex + 1);
    }
}

// currentCarouselIndex: circular carousel indexes position(-infinite,-76,....,-3,-2,-1,0,1,2,3,...,76,...infinite)
function hp_carouselGetAbsIndex(currentCarouselIndex, itemsCount)
{
    var remainderIndex;
    var resultIndex = (currentCarouselIndex == 0 ? itemsCount - 1 : ((currentCarouselIndex - 1) % itemsCount));

    if ((currentCarouselIndex) < 0)
    {
        remainderIndex = currentCarouselIndex % itemsCount;
        resultIndex = (remainderIndex == 0 ? (itemsCount) : ((remainderIndex + itemsCount) % itemsCount));

        //because there is position 0 in the circular indexs
        resultIndex--;
    }

    $("#indexLabel").html("color index=" + resultIndex);
    return resultIndex;
}

function hp_carousel_pagingSetCurrentPage(pagingIndex)
{

    for (i = 1; i < carousel_GlistItemsCount + 1; i++)
    {
        if ((pagingIndex) == i)
        {
            $("#" + document.getElementsByName("PagingItem" + i)[0].id).addClass("hp_carousel_pagingNumSelected");
        }
        else
        {
            $("#" + document.getElementsByName("PagingItem" + i)[0].id).removeClass("hp_carousel_pagingNumSelected");
        }
    }
}

function hp_carousel_pagingMouseOver(obj)
{
    obj.src = obj.src.replace("_Off.gif", "_On.gif");
}

function hp_carousel_pagingMouseOut(obj)
{
    obj.src = obj.src.replace("_On.gif", "_Off.gif");
}


// -----------
// find
// -----------

var hp_findSelectedTab = "";
function hp_findTabHover(obj)
{
    if (hp_findSelectedTab == "")
    {
        var li = $("li.hp_findTabOn");

        if (li.length > 0)
        {
            hp_findSelectedTab = li[0].id;
        }
        else
        {
            // in case the querystring has 'tab' but it's incorrect
            var li = $("li.hp_findTabOff");
            hp_findSelectedTab = li[0].id;
        }

    }

    obj.className = "hp_findTabOn";
}

function hp_findTabOut(obj)
{
    if (obj.id == hp_findSelectedTab)
    {
        return;
    }

    obj.className = "hp_findTabOff";
}

function hp_findTabClick(obj)
{
    if (obj.id == hp_findSelectedTab)
    {
        return;
    }

    if (hp_findSelectedTab == "")
    {
        var li = $("li.hp_findTabOn");
        hp_findSelectedTab = li[0].id;
    }

    document.getElementById(hp_findSelectedTab).className = "hp_findTabOff";
    hp_findSelectedTab = obj.id;
    var strParams = "";

    retrieveUrlAJAX(strPathAjaxPages + "MinisiteHomepageFind" + obj.id.replace("liFindTab", "") + ".aspx", "divFindMain", strParams, true);
}

function hp_findTabDoctorSearchTextboxKeypress(ev, obj)
{
    if (ev.keyCode == 13)
    {
        hp_findTabDoctorSearchButtonClick();
        return false;
    }

}

function hp_findTabDoctorSearchTextboxClick(obj)
{
    if (obj.value == Dictionary_MinisiteHP_FindDoctor_LabelSearch)
    {
        obj.value = "";
    }
}

function hp_findTabDoctorSearchButtonClick(obj)
{
    var txtDoctorSearch = $("input.hp_findDoctorsSearch");

    if (txtDoctorSearch.val() != "" && txtDoctorSearch.val() != Dictionary_MinisiteHP_FindDoctor_LabelSearch)
    {
        var reAmp = new RegExp("&", "ig");
        location.href = Params_PageDoctorsResultByName + txtDoctorSearch.val().replace(reAmp, "%26") + "&Specialty=" + Settings_FindADoctorSpecialty;
    }
    else
    {
        var divDoctorSearchError = $("div.hp_findDoctorsSearchError");
        divDoctorSearchError.show();
    }
}

function hp_findTabServiceSearchTextboxKeypress(ev, obj)
{
    if (ev.keyCode == 13)
    {
        hp_findTabServiceSearchButtonClick();
        return false;
    }

}

function hp_findTabServiceSearchTextboxClick(obj)
{
    if (obj.value == Dictionary_MinisiteHP_FindService_LabelSearch)
    {
        obj.value = "";
    }
}

function hp_findTabServiceSearchButtonClick(obj)
{
    var txtServiceSearch = $("input.hp_findServiceSearch");

    if (txtServiceSearch.val() != "" && txtServiceSearch.val() != Dictionary_MinisiteHP_FindService_LabelSearch)
    {
        var reAmp = new RegExp("&", "ig");
        location.href = Params_PageServiceResultByName.replace("{2}", txtServiceSearch.val().replace(reAmp, "%26"));
    }
    else
    {
        var divServiceSearchError = $("div.hp_findServiceSearchError");
        divServiceSearchError.show();
    }
}

function hp_findTabLocationsSearchButtonChanged(obj)
{
    location.href = Params_PageLocationsResultByCategory.replace("{0}", obj.value);
}

function hp_findTabClassSearchButtonChanged(obj)
{
    location.href = Params_PageClassesResultByCategory.replace("{2}", obj.value);
}


// -----------
// share
// -----------

function hp_shareParticipateClick()
{
    var divParticipateOverlay = document.getElementById("divParticipateOverlay");

    if (divParticipateOverlay.style.display == "none")
    {
        divParticipateOverlay.style.display = "inline";
    }
    else
    {
        divParticipateOverlay.style.display = "none";
    }

}
