﻿function onSearchButtonClick(textboxid, dropdown) {
    var text = escape(document.getElementById(textboxid).value.trim());
    if (text == "Search..." || text == "")
        return false;
    var url = "";
    if (searchBoxRedirectUrl && searchBoxRedirectUrl != "") {
        url = searchBoxRedirectUrl;
    } else {
        url = window.location.toString();
    }

    var newurl = "";
    if (url.search(/search=[^&]*/) != -1) {
        newurl = url.replace(/search=[^&]*/, "search=" + text);
    } else {
        if (url.search("\\?") == -1) {
            newurl = url + "?search=" + text;
        } else {
            newurl = url + "&search=" + text;
        }
    }
    window.location = newurl;
    return false;
}

function setUpPaging(control, itemsPerPage, itemWidth) {
    var children = control.find("li");
    page = control.parent().find("div.paging span");
    if (page != null) {
        page.css("width", itemWidth * Math.ceil(children.length / itemsPerPage) + "px");
        return Math.ceil(children.length / itemsPerPage);
    }
    return -1;

}
function paging(control, next, currentP, maxP, itemWidth, circular) {
    //stop if reach the end
    if (!circular && next && currentP == maxP)
        return maxP;
    if (!circular && !next && currentP <= 1) return 1;
    //find paging position	
    var param = "background-position-x";
    if (control == null || control.html() == null) return -1;
    var length = control.css("width");
    var bgX = control.css(param);
    if (bgX == 'undefined' || bgX == null) {
        param = "background-position";
        bgX = control.css(param).split(" ")[0];
    }
    var position = Number(bgX.replace("px", ""));

    var init = (0 - itemWidth * Math.max(maxP - 1, 4));

    //if control circulates, and it reaches the end, circulate!
    if (circular && next && currentP == maxP) {
        control.css(param, init + "px");
        return 1;
    }
    //if control circulates, and it reaches the beginning, circulate!
    if (circular && !next && currentP == 1) {
        control.css(param, (init + (itemWidth * (maxP - 1))) + "px");
        return maxP;
    }
    //regular case paging
    if (next) {
        control.css(param, position + itemWidth + "px");
        return (currentP + 1) % (maxP + 1);
    }
    else {
        control.css(param, position - itemWidth + "px");
        return (currentP - 1) % (maxP + 1);
    }


}

function setUpVote() {

    $("div.vote img.vbtn").bind('click', function () {
        $(this).parent().parent().find("div.question").fadeOut("slow");
        $(this).parent().parent().find("div.result").fadeIn("slow");
    });
    var current = 1;

    var pages = setUpPaging(jQuery("#votePanel"), 1, 10);
    var first = true;
    function myvote_initCallback(carousel) {

        $('#vRt').bind('click', function () {
            carousel.next();
            current = paging($('div.vote div.paging').find("span"), true, current, pages, 10, false);
            return false;
        });

        $('#vLf').bind('click', function () {
            carousel.prev();
            current = paging($(this).parent().find("span"), false, current, pages, 10, false);
            return false;
        });
    };
    $('#votePanel').jcarousel({
        scroll: 1,
        visible: 1,
        initCallback: myvote_initCallback
    });
}

function setUPMenu() {
    function mycarousel_initCallback(carousel) {

        $('#CBrt').bind('click', function () {
            carousel.next();
            return false;
        });

        $('#CBlf').bind('click', function () {
            carousel.prev();
            return false;
        });
    };

    $('#sMenu').jcarousel({
        buttonPrevHTML: '',
        buttonNextHTML: '',
        scroll: 2,
        visible: 6,
        initCallback: mycarousel_initCallback
    });
}

/*********************************************
Capture all EXTERNAL links
*********************************************/
jQuery(function () {
    externalLinkConfig();
});

function externalLinkConfig() {
    $('a[href^=http]').click(function () {
        //var path = location.pathname;
        //var link = $(this).attr("href");
        if (this.host != location.host) {
            this.target = "_blank";
        }
    });
}

function AddParamToExternalLink(container) {
    $('a[href^=http]', container).click(function () {
        var linktext = jQuery(this).attr('href');
        var ignore = 'www.bookpsnow.com';
        if (linktext.match(document.domain) == null && linktext.match(ignore) == null) {
            try {
                //alert('/outgoing/' + linktext);
                _gaq.push(['_trackPageview', '/outgoing/' + linktext]);
                //pageTracker._trackPageview('/outgoing/' + linktext);
            }
            catch (e) {
            }
            if (linktext.indexOf('pl=visitpalmsprings') == -1) {
                if (linktext.search("\\?") == -1) {
                    $(this).attr("href", linktext + "?pl=visitpalmsprings");
                }
                else {
                    $(this).attr("href", linktext + "&pl=visitpalmsprings");
                }
            }
        }
    });
}

function pausecomp(millis) {
    var date = new Date();
    var curDate = null;

    do { curDate = new Date(); }
    while (curDate - date < millis);
}



function openWindow(obj) {
    //alert('1');
    //$.alerts._hide();
    //  pausecomp(2000);
    $.alerts._hide();

    window.open(obj.href, "");
    //document.getElementById("clicktoopen").click();
}

/*********************************************
Home Page
*********************************************/
function setUPLifeStyle() {

    if (jQuery("#TopMenu") == null || jQuery("#TopMenu").length < 1) return;
    //generate pager
    //add page buttons
    var page = 0; var init = true;

    var styles = jQuery("#TopMenu").find("li:has(ul)");
    for (i = 0; i < styles.length; i++) {
        var html = jQuery("#LSpaging").html() + "<div id=\"" + (i + 1) + "\"></div>";
        jQuery("#LSpaging").html(html);
        if (i > 0) {
            styles.eq(i).find("img").attr("src", styles.eq(i).find("div.img").html());
            styles.eq(i).find("div.img").hide();
        }
    }
    //add pause button
    var html = jQuery("#LSpaging").html() + "<div id=\"pause\">PAUSE</div>";
    jQuery("#LSpaging").html(html);

    function pauseButton(control) {
        control.options.auto = 0;
        control.stopAuto();
        jQuery("#LSpaging #pause").css("background-color", "#FF6600");
        jQuery("#LSpaging #pause").text("PLAY");
    }
    function startButton(control) {
        control.options.auto = 4;
        control.startAuto();
        jQuery("#LSpaging #pause").css("background-color", "#666666");
        jQuery("#LSpaging #pause").text("PAUSE");
    }

    function mycarousel_initCallback(carousel) {

        $(window).bind('resize', function () {
            carousel.scroll(jQuery.jcarousel.intval(0));
            jQuery("#LSpaging div").css("background-color", "#ccc");
            jQuery("#LSpaging div").eq(0).css("background-color", "#FF6600");
            page = 1;
        });
        jQuery("#LSpaging div:first").css("background-color", "#FF6600");
        //paging button click
        jQuery("#LSpaging div").bind('click', function () {
            if (jQuery(this).attr("id") == "pause") {
                if (jQuery(this).text() == "PAUSE")
                    pauseButton(carousel);
                else
                    startButton(carousel);
                return true;
            }
            else {
                carousel.options.auto = 0;
                carousel.stopAuto();
                carousel.scroll(jQuery.jcarousel.intval(jQuery(this).attr("id")));
                page = jQuery.jcarousel.intval(jQuery(this).attr("id"));
                jQuery("#LSpaging div:not(#pause)").css("background-color", "#ccc");
                jQuery(this).css("background-color", "#FF6600");
                pauseButton(carousel);
                return true;
            }
        });

        jQuery("#TopMenu ul ul").bind('mouseover', function () {
            carousel.options.auto = 0;
            carousel.stopAuto();
        });
        jQuery("#TopMenu ul ul").bind('mouseleave', function () {
            carousel.options.auto = 4;
            carousel.startAuto();
        });
        jQuery("#TopMenu ul ul").fadeIn("slow");

    };

    function mycar_bfAnim(carousel) {
        var IE6 = /msie|MSIE/.test(navigator.userAgent);
        //  if (IE6 && init == true) { init = false; return; }

        //highlight paging
        if (carousel.options.auto == 0) return;
        if (page == styles.length) {
            jQuery("#TopMenu ul:first").fadeOut();
            var current = jQuery("#LSpaging div").eq(page - 1);
            current.css("background-color", "#ccc");
            jQuery("#LSpaging div").eq(0).css("background-color", "#FF6600");
            page++;
        }
        else {
            var current = jQuery("#LSpaging div").eq(page)
            if (current.attr("id") != "pause") {
                page++;
                current.css("background-color", "#FF6600");
                var prev = jQuery("#LSpaging div").eq(page - 2)
                if (prev != null)
                    prev.css("background-color", "#ccc");
            }
        }
    }

    function mycar_AfAnim(carousel) {
        if (page == (styles.length + 1)) {
            jQuery("#TopMenu ul").fadeIn("slow");
            page = 1;
        }
    }
    var autoSetting;
    autoSetting = 8;
    //init carousel
    jQuery('#TopMenu').jcarousel({
        buttonPrevHTML: '',
        buttonNextHTML: '',
        scroll: 1,
        wrap: "last",
        auto: autoSetting,
        visible: 1,
        initCallback: mycarousel_initCallback,
        itemLoadCallback: { onBeforeAnimation: mycar_bfAnim, onAfterAnimation: mycar_AfAnim }
    });

    //postload images
    for (i = 1; i < styles.length; i++) {
        styles.eq(i).find("img").attr("src", styles.eq(i).find("div.img").html());
        styles.eq(i).find("div.img").hide();
    }



    return false;
}

//function newsLetter() {
//    $("#nl-pop").dialog({
//        bgiframe: true,
//        width: 580,
//        modal: true,
//        dialogClass: 'newDia',
//        autoOpen: false,
//        closeText: ''
//    });

//    jQuery("#newsLet").bind("click", function() {
//        $("#nl-pop").dialog('open');
//    });
//}


//function ShowSubscribe() {
//    jQuery(function() {
//        $("#nl-pop").dialog('open');
//    });
//}

/*********************************************
Profile Page
*********************************************/
function PhotoGallery() {
    function setUpDialog(control, height, autoOpen) {

        for (i = 0; i < control.length; i++) {
            control.eq(i).dialog({
                bgiframe: true,
                modal: true,
                autoOpen: autoOpen,
                width: 750,
                dialogClass: 'pdia',
                resizable: false
            });
            var alt = control.eq(i).attr("alt");
            control.eq(i).html("<img src=\"" + control.eq(i).html() + "\" alt=\"" + alt + "\" />");
        }
    }

    var mg = jQuery("#profImg");
    if (mg.length > 0) {
        setUpDialog(jQuery("#pPop div"), 800, false);
    }

    jQuery("#profImg td img").bind('click', function () {
        var id = "#pop" + jQuery(this).attr("id");
        jQuery(id).dialog('open');
    });
}


