﻿var sendRegEventOnInputFocusDefaultReg = "notsent";

function recordYNMVoteAndGetNewSlideshowProfile(params, type, memberID, displayedInRightControl, reloadContent) {
    ShowPopupDiv('slideshow-waiting');
    jQuery.get("/Applications/Home/SlideshowProfileAPI.aspx?ynmp=" + params + "&YNMLT=" + type + "&asl=" + reloadContent + "&displayedRight=" + displayedInRightControl, function(data) {

        if (reloadContent == 'true') {
            jQuery('#slideshow').html(data);
            HidePopupDiv('slideshow-waiting');
            refreshTop728by90SR();
            refreshRight300by250SR();

            if (s != null && s != undefined) {
                var originalPageName = s.pageName;
                var typeString;
                PopulateS(true); //clear existing values in omniture "s" object

                switch (type) {
                    case '1':
                        typeString = 'Y';
                        break;
                    case '2':
                        typeString = 'N';
                        break;
                    case '3':
                        typeString = 'M';
                        break;
                }

                s.pageName = originalPageName;
                s.prop30 = typeString + '- Home Page Slideshow';
                s.prop31 = memberID;
                s.t(); //send omniture updated values as page load
            }
        }
    });
}
function recordYNMVoteAndGetNewSlideshowProfileEx(params, type, memberID, displayedInRightControl, reloadContent) {
    ShowPopupDiv('slideshow-waiting');
    jQuery.get("/Applications/Home/SlideshowProfileAPI.aspx?ynmp=" + params + "&YNMLT=" + type + "&asl=" + reloadContent + "&displayedRight=" + displayedInRightControl + "&slideshowmode=SecretAdmirerMode", function(data) {


        if (reloadContent == 'true') {
            jQuery('#slideshow').html(data);
            HidePopupDiv('slideshow-waiting');
            refreshTop728by90SR();
            refreshRight300by250SR();

            var ynmbucket = "";

            switch (type) {
                case '1':
                    ynmbucket = 'Yes';
                    break;
                case '2':
                    ynmbucket = 'No';
                    break;
                case '3':
                    ynmbucket = 'Maybe';
                    break;
            }

            GetYNMMember(memberID, ynmbucket, YNMSucceededGetMember, YNMFailedGetMember);
            if (s != null && s != undefined) {
                var originalPageName = s.pageName;
                var typeString;
                PopulateS(true); //clear existing values in omniture "s" object

                switch (type) {
                    case '1':
                        typeString = 'Y';
                        break;
                    case '2':
                        typeString = 'N';
                        break;
                    case '3':
                        typeString = 'M';
                        break;
                }

                s.pageName = originalPageName;
                s.prop30 = typeString + '– Slideshow';
                s.prop31 = memberID;
                s.t(); //send omniture updated values as page load
            }
        }



    });
}

function YNMSucceededGetMember(result) {
    if (result.d.MemberID >= 0) {
        //var microPrf = $j("#MictoProfileTemplate").render(result.d);
        // console.log("v 1");
        // console.log(result.d.YNMVote);
        var $yesBucket = $j('#yesBucket');
        var $noBucket = $j('#noBucket');
        var $maybeBucket = $j('#maybeBucket');
        switch (result.d.YNMVote) {
            /* case "Yes":
            $j("#MictoProfileTemplate").render(result.d).prependTo("#divMicroProfileInjectYesBucket");
            break;
            case "No":
            $j("#MictoProfileTemplate").render(result.d).prependTo("#divMicroProfileInjectNoBucket");
            break;
            case "Maybe":
            $j("#MictoProfileTemplate").render(result.d).prependTo("#divMicroProfileInjectMaybeBucket");
            break;*/ 
            case "Yes":
                $j("#MictoProfileTemplate").render(result.d).prependTo($j('.carousel>ul', $yesBucket)).show('blind');
                /*$yesBucket.find('.carousel').jCarouselLite({
                btnNext: "#yesBucket>.next",
                btnPrev: "#yesBucket>.prev",
                circular: false,
                vertical: true,
                visible: 4
                });*/
                //$yesBucket.find('.home-your-matches:gt(3)').remove();
                if ($yesBucket.find('.home-your-matches').length <= 4) {
                    $yesBucket.find('.your-matches-view-more-btm').hide();
                } else {
                    $yesBucket.find('.home-your-matches:gt(3)').remove().end().find('.your-matches-view-more-btm').appendTo($yesBucket).fadeIn('fast');
                };
                break;
            case "No":
                $j("#MictoProfileTemplate").render(result.d).prependTo($j('.carousel>ul', $noBucket)).show('blind');
                /*$noBucket.find('.carousel').jCarouselLite({
                btnNext: "#noBucket>.next",
                btnPrev: "#noBucket>.prev",
                circular: false,
                vertical: true,
                visible: 4
                });*/
                //$noBucket.find('.home-your-matches:gt(3)').remove();
                if ($noBucket.find('.home-your-matches').length <= 4) {
                    $noBucket.find('.your-matches-view-more-btm').hide();
                } else {
                    $noBucket.find('.home-your-matches:gt(3)').remove().end().find('.your-matches-view-more-btm').appendTo($noBucket).fadeIn('fast');
                };
                break;
            case "Maybe":
                $j("#MictoProfileTemplate").render(result.d).prependTo($j('.carousel>ul', $maybeBucket)).show('blind');
                /*$maybeBucket.find('.carousel').jCarouselLite({
                btnNext: "#maybeBucket>.next",
                btnPrev: "#maybeBucket>.prev",
                circular: false,
                vertical: true,
                visible: 4
                });*/
                //$maybeBucket.find('.home-your-matches:gt(3)').remove();     
                if ($maybeBucket.find('.home-your-matches').length <= 4) {
                    $maybeBucket.find('.your-matches-view-more-btm').hide();
                } else {
                    $maybeBucket.find('.home-your-matches:gt(3)').remove().end().find('.your-matches-view-more-btm').appendTo($maybeBucket).fadeIn('fast');
                };
                break;
        }


    }
}
function YNMFailedGetMember(result) {
    console.log(result);
}
//MiniSearch
jQuery(document).ready(function() {

    if (jQuery('#MarketingClose').length) {
        jQuery('#profile-full-comm .action-hot-list .listMenuContainer').css({ display: "none" });
    }

    jQuery('#MarketingClose').click(function() {
        jQuery('#divMiniSearchMarketingCopy').hide();
        jQuery('#profile-full-comm .action-hot-list .listMenuContainer').css({ display: "block" });
        return false;
    });
});

//MiniSearch
jQuery(document).ready(function() {

    if (jQuery('#MarketingClose').length) {
        jQuery('#profile-full-comm .action-hot-list .listMenuContainer').css({ display: "none" });
    }

    jQuery('#MarketingClose').click(function() {
        jQuery('#divMiniSearchMarketingCopy').hide();
        jQuery('#profile-full-comm .action-hot-list .listMenuContainer').css({ display: "block" });
        return false;
    });
});

//Peek Banner Hover
jQuery(document).ready(function () {
    jQuery('.plcPeekBnrFlash').hover(function() {
        jQuery(this).css({
            'clip': 'rect(0px 655px 655px 0px)'
        });
    }, function() {
        jQuery(this).css({
            'clip': 'rect(0px 100px 100px 0px)'
        });
    });
});

// rounded corner tab style enhancements
jQuery(document).ready(function() {

    var indHover = '<div class="nav-profile-full-indicator"></div>';
    var indSelected = '<div class="nav-profile-full-selector-indicator"></div>';

    jQuery('.nav-rounded-tabs li.tab.selected').not('#video-tabs .nav-rounded-tabs li.tab.selected').append(indSelected);

    jQuery('.nav-rounded-tabs li.tab a').hover(function() {
        jQuery('.nav-rounded-tabs li.tab .nav-profile-full-indicator').remove();
        jQuery(this).not('#video-tabs ul.nav-rounded-tabs li.tab a').not('.nav-rounded-tabs li.tab.selected a').append(indHover);
        jQuery('.nav-rounded-tabs li.tab.selected.hover').append(indSelected);
    }, function() {
        jQuery('.nav-rounded-tabs li.tab .nav-profile-full-indicator').hide();
    });

    jQuery('.nav-rounded-tabs.click li.tab a').click(function(event) {
        jQuery('.nav-rounded-tabs li.tab div.nav-profile-full-selector-indicator').remove();
        jQuery(this).append(indSelected);
    });

    // Change the down arrow on the tabs. 
    jQuery('.thumbs li').click(function(event) {
        jQuery('.nav-rounded-tabs li.tab div.nav-profile-full-selector-indicator').remove();
        var relatedTab = jQuery(".tab[id*=" + this.className + "]");
        jQuery(relatedTab).append(indSelected);
    });
});

// UI enhancements not based on browser or element widths
//all
jQuery(document).ready(function() {
    //open links that go off-site in new window
    jQuery('a[rel*=external]').attr('target', '_blank');
    jQuery('a[rel*=popup]').click(function() {
        var href = jQuery(this).attr('href');
        window.open(href, 'popup', 'height=500,width=646,toolbar=no,scrollbars=yes,resizable=yes,menubar=yes,location=yes,directories=no,toolbar=yes');
        return false;
    });

    jQuery('a[rel*=hover]').hover(function() {
        var swid = (jQuery('#content-container').width()) - 22;
        var $hoverE = jQuery(this).next('div.rel-layer-div');
        var lmar = jQuery('#content-container').offset();

        jQuery($hoverE).show();

        var hwid = $hoverE.width();
        var iposRaw = jQuery(this).offset();
        var ipos = iposRaw.right - lmar.right

        if (hwid > swid) {
            //alert('DEBUG: hovered layer is wider than site!');
        }
        else if (ipos + hwid > swid) {
            var move = swid - (ipos + hwid);
            $hoverE.css({ right: move });
        }

        return false;
    }, function() {
        //jQuery('#destroyMe').remove();
        jQuery(this).next('div.rel-layer-div').hide().css({ right: '0' });
        return false;
    });

    jQuery('a[rel*=click]').click(function() {
        var swid = (jQuery('#content-container').width()) - 22;
        var $hoverE = jQuery(this).next('div.rel-layer-div');
        var lmar = jQuery('#content-container').offset();

        jQuery($hoverE).show();

        var hwid = $hoverE.width();
        var iposRaw = jQuery(this).offset();
        var ipos = iposRaw.right - lmar.right

        if (hwid > swid) {
        }
        else if (ipos + hwid > swid) {
            var move = swid - (ipos + hwid);
            $hoverE.css({ right: move });
        }
        return false;
    });

    jQuery('.rel-layer-div a.click-close').click(function() {
        jQuery(this).parent().parent().hide();
        return false;
    });
    $j('span.spr').parent().addClass('spr-parent');
});

//generic jQuery onDocReady adjustments
jQuery(document).ready(function() {
    // add element around results member spotlight
    jQuery('.results.spotlight-header').wrap('<div class="spotlighted-header-wrap"></div>');
    jQuery('.results.list-view.spotlighted').wrap('<div class="spotlighted-profile-wrap"></div>');
});

// z-index fixes - these should be made into functions at some point
if ($j.browser.msie && parseInt($j.browser.version) <= "8") {
    jQuery(document).ready(function() {
        var zIndexNumber = 100;
        jQuery('#content-main .listMenuContainer').each(function() {
            jQuery(this).css('zIndex', zIndexNumber);
            zIndexNumber -= 2;
        });
        jQuery('#content-main .sub-item').each(function() {
            jQuery(this).css('zIndex', zIndexNumber);
            zIndexNumber -= 2;
        });
    });
}

// zebra stripe for articles
jQuery(document).ready(function() {
    jQuery('#article table.zebra-striping tr:even').addClass('odd');
});

// zebra stripe inbox
jQuery(document).ready(function() {
    jQuery('#mail-list .mail-table tr:even').addClass('odd');
});


// transparent layer over mini-profile
// compose message
jQuery(document).ready(function() {
    var blockProfiles = jQuery('body.page-email.sub-page-viewmessage .results.list-view')
        .add('body.page-sendtofriend.sub-page-sendtofriend .results.list-view')
        .add('body.page-memberservices.sub-page-reportmember .results.list-view')
        .add('body.page-email.sub-page-tease .results.list-view')
        .add('#profile-mini-blocked .results.list-view');
    jQuery(blockProfiles).block({
        message: null,
        overlayCSS: { backgroundColor: '#96b1cc', opacity: '0.3', cursor: 'auto' }
    }
    );
    jQuery('body.page-subscription .carrot-profile .member-pic, body.page-subscription .carrot-profile .member-info').block({
        message: null,
        overlayCSS: { backgroundColor: '#96b1cc', opacity: '0.0', cursor: 'auto' }
    }
    );
});



//edit profile adjustments
jQuery(document).ready(function() {

    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder tr')
        .add('body.page-memberprofile.sub-page-registrationstep2 #prefBorder tr')
        .add('body.page-memberprofile.sub-page-registrationstep3 #prefBorder tr')
        .add('body.page-memberprofile.sub-page-registrationstep4 #prefBorder tr')
        .css({ height: '2.6em' })
    ;
    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder td')
        .add('body.page-memberprofile.sub-page-registrationstep2 #prefBorder td')
        .add('body.page-memberprofile.sub-page-registrationstep3 #prefBorder td')
        .add('body.page-memberprofile.sub-page-registrationstep4 #prefBorder td')
        .css({ paddingLeft: '.3em' })
    ;
    jQuery('body.page-memberprofile.sub-page-registrationstep3 table.twoColumnCheckList td:even')
        .add('body.page-memberprofile.sub-page-registrationstep4 table.twoColumnCheckList td:even')
        .add('body.page-memberprofile.sub-page-registrationstep3 table.threeColumnCheckList td:even')
        .css({ width: '18em' })
    ;
    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder .edit-profile-form-table')
        .add('body.page-memberprofile.sub-page-registrationstep2 #prefBorder .edit-profile-form-table')
        .add('body.page-memberprofile.sub-page-registrationstep3 #prefBorder .edit-profile-form-table')
        .add('body.page-memberprofile.sub-page-registrationstep4 #prefBorder .edit-profile-form-table')
        .css({ marginRight: '1em' })
    ;
    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder textarea')
        .add('body.page-memberprofile.sub-page-registrationstep2 #prefBorder textarea')
        .add('body.page-memberprofile.sub-page-registrationstep3 #prefBorder textarea')
        .add('body.page-memberprofile.sub-page-registrationstep4 #prefBorder textarea')
        .css({ width: '98%' })
    ;

    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder table.full-width').css({ width: '98%' });
    jQuery('body.page-memberprofile.sub-page-registrationstep1 #prefBorder [width]')
        .add('body.page-memberprofile.sub-page-registrationstep2 #prefBorder [width]')
        .add('body.page-memberprofile.sub-page-registrationstep3 #prefBorder [width]')
        .add('body.page-memberprofile.sub-page-registrationstep4 #prefBorder [width]')
        .removeAttr('width')
    ;

    jQuery('body.page-memberprofile #content-main #prefBorder').show();
    jQuery('body.page-memberprofile #content-main .personal-info').show();
});

// Classic overrides

jQuery(document).ready(function() {
    // Mail make view profile table 100%
    jQuery('#_ctl0__ctl4_viewProfileInfo_ViewProfileTable').css({ width: "100%" });
    jQuery('#_ctl0__ctl4_viewProfileInfo__ctl1_tbInterests td, #_ctl0__ctl4_viewProfileInfo__ctl0_tbRelationship td').css({ paddingBottom: "1em" });
});

jQuery(document).ready(function() {
    // toggle FAQ answer block
    jQuery('#faq-wrapper #top-ten h3').click(function() {
        jQuery(this).next("div.answer-block").toggle();
    });
});


//Show/Hide message setting help blocks
jQuery(document).ready(function() {

    if (jQuery('#msgPrefContainer').length > 0) {
        jQuery(".whatsthis").click(function() {
            //This grabs the first class name of the (What's this?) link, 
            //which should be the same as the first part of the id. It will
            //also be the first part of the corresponding answer box id.
            var answerBox = "#" + jQuery(this).attr("class").split(' ').slice(0)[0] + "-answer";

            //Which (What's this?) link was clicked.
            var whatsThisLink = jQuery(this);

            //Hide the (What's this?) link and show corresponding answer box
            jQuery(whatsThisLink).removeClass('showSpan').addClass('hide');
            jQuery(answerBox).removeClass('hide').addClass('show');

            //Add listener to "[Hide]" link
            var hideLink = answerBox + " .messageSettingsHelpParagraphHide a";
            jQuery(hideLink).click(function() {
                jQuery(answerBox).removeClass('show').addClass('hide');
                jQuery(whatsThisLink).removeClass('hide').addClass('showSpan');
            });
        });
    }
});
/*
jQuery(document).ready(function() {
function showslider() {
var windowHeight = jQuery(document).height();
jQuery('#ie6only #slider-container').width(jQuery(document).width());
jQuery('#slider-container').height(windowHeight).show();
jQuery('#emislider').show().animate({ top: "100px" }, 2000);   // modify the "2000" value to dictate animation speed; higher is slower
}

function setOmnitureValues(propertyValue, pageName) {
PopulateS(true); //clear existing values in omniture "s" object
s.prop14 = propertyValue;
s.pageName = pageName;
s.tl(); //send omniture updated values as page load
}
if (jQuery("#emislider").length > 0) {
// the close button
jQuery("map area#slider_close").click(function() {
jQuery('#emislider').hide();
jQuery('#slider-container').hide();
return false;
});

// the continue button
jQuery("map area#slider_continue, map area#slider_partner, map area#slider_claim").click(function() {
var thehref = jQuery(this).attr("href");
jQuery('#emislider').hide();
jQuery('#slider-container').hide();
setOmnitureValues("JRewards Slider – Continue", "jrewards");
window.open(thehref);
return false;
});
showslider();
}
});

//Close jrewards slider			
function hideSlider() {
jQuery(document).ready(function() {
jQuery('#emislider').hide();
jQuery('#slider-container').hide();
});
}
*/
$j(document).ready(function() {
    // homepage filmstrip
    var filmStripItems = $j(".filmstrip li.item").size();
    if (filmStripItems <= 6) {
        $j('button.filmstrip-next').addClass('disabled');
    }
    $j(".filmstrip").jCarouselLite({
        btnNext: ".filmstrip-next",
        btnPrev: ".filmstrip-prev",
        circular: false,
        mouseWheel: true,
        scroll: 6,
        speed: 600,
        visible: 6
    });

    // homepage activity items
    var vertStripItems = $j(".vertstrip-news li.item").size();
    if (vertStripItems <= 5) {
        $j('button.vertstrip-next').addClass('disabled');
    }
    $j(".vertstrip-news").jCarouselLite({
        btnNext: ".vertstrip-next",
        btnPrev: ".vertstrip-prev",
        circular: false,
        mouseWheel: true,
        visible: 3,
        vertical: true
    });
    $j('button.filmstrip-prev.disabled, button.filmstrip-next.disabled, button.vertstrip-prev.disabled, button.vertstrip-next.disabled').live('click', function() { return false; });

    $j(".ajax-loading").hide();

});

function spark_launchTeaseDialog(obj, evt, title, close) {
    if (obj.tagName.toLowerCase() == 'img') return;
    var href = obj.href;
    href = href.replace("/Tease.aspx?", "/FlirtCollapsiblePopup.aspx?");
    href = href + "&LayoutTemplateID=7&SkipLayoutOverride=0";

    try {
        evt.preventDefault();
    }
    catch (e) {
        ;
    }

    if ($j('#flirtContent').length === 0) {
        $j('<div id="flirtContent" class="hide"></div>').appendTo('body');
    }

    $j('#flirtContent')
        .dialog({
            width: 590,
            modal: true,
            title: title,
            draggable: false,
            resizable: false,
            position: ['center', 'top'],
            dialogClass: 'ui-dialog-rev modal-flirts',
            minHeight: 400,
            open: function () {
                var $this = $j(this),
                    ajax_load = '<div class="loading spinner-only" />',
                    reversedClose = $j('<div class="ui-dialog-titlebar-close-rev link-style">' + close + ' <span class="spr s-icon-closethick-color"></span></div>').bind('click', function () {
                        $j('#flirtContent').dialog('close');
                    });

                $this.html(ajax_load).load(href, function () {
                    $j(this).find('.category:eq(0)').addClass('open');
                });

                $this.parent().find('.ui-dialog-titlebar-close').replaceWith(reversedClose);
                $j('.ui-widget-overlay').bind('click', function () {
                    $j('#flirtContent').dialog('close');
                });
            }
        })
        .parent('.ui-dialog').css('top', function () {
            var x = $j(this).position();
            return x.top + 12;
        });

    //return false;
}


$j(document).ready(function () {
    var $smiles = $j('#smiles');

    //$smiles.find('ul li:first-child a').addClass('open');
    $smiles.find(".category").live('click', function (event) {
        event.preventDefault();
        if ($j(this).siblings().is(':hidden')) {
            $j(this).addClass('open');
            $j(this).siblings().show();
            $j('.ui-widget-overlay').css({ 'height': $j(document).height() });
        } else {
            $j(this).removeClass('open');
            $j(this).siblings().hide();
            // uncomment to shrink the modal height when closing 
            // causes a slight jump in certain situations. perhaps it is better to just let the page get long
            //$j('.ui-widget-overlay').css({'height': 'auto'}).css({'height':$j(document).height()});
        }
    });
    $j('#content-main').delegate('.tooltip', 'mouseover mouseout', function (e) {
        var $target = $j(e.target);
        var tipTitle = $target.attr('title');

        if (tipTitle != '') {
            $target.data('tipTitleData', tipTitle);
        }

        $target.attr('title', '');

        if (e.type == 'mouseover') {
            var tipHtml = '<div class="tooltip-content"><p>' + $target.data('tipTitleData') + '</p></div>';
            var tip = $j(tipHtml);
            tip.appendTo('body').css({ 'position': 'fixed', 'left': (e.pageX - tip.outerWidth()) - 10, 'top': (e.pageY - $j(window).scrollTop()) + 10 }).show();
        }
        if (e.type == 'mouseout') {
            $j('.tooltip-content').remove();
        }
    });
});

// Send reg start event only after focus on reg field when coming from media
$j(document).ready(function() {
    if (getUrlParam(location.href, 'media') == "1") {
        jQuery("#content-main input,#content-main select").focusin(function() {
            if (sendRegEventOnInputFocusDefaultReg == "notsent") {
                sendRegEventOnInputFocusDefaultReg = "sent"
                s.events = s.apl(s.events, omnitureRegStartEvent, ',', 1);
                s.t();
            }

        });
    }
});

__addToNamespace__('spark.util', {
    ajaxCallWithBlock: function(blockElemId, blockParams, ajaxFunc, ajaxUrl) {
        var bool = ajaxFunc();  //ajaxFunc will return false to indicate that ajax was not called in this case, don't block
        if (bool + '' != 'false') {
            var blockObj = (typeof (blockElemId) == 'string') ? $j('#' + blockElemId) : $j(blockElemId);
            blockObj.block(blockParams).addClass('ui-ajax-loader-sm');
            blockObj.ajaxSuccess(function(e, xhr, settings) {
                if (settings.url == ajaxUrl) {
                    blockObj.unblock().removeClass('ui-ajax-loader-sm');
                }
            }).ajaxComplete(function(e, xhr, settings) {
                if (settings.url == ajaxUrl) {
                    blockObj.unblock().removeClass('ui-ajax-loader-sm');
                }
            });
        }
        return bool;
    },
    __init__: function() { }
});
function array2json(arr) {
    var parts = [];
    var is_list = (Object.prototype.toString.apply(arr) === '[object Array]');

    for (var key in arr) {
        var value = arr[key];
        if (typeof value == "object") { //Custom handling for arrays
            if (is_list) parts.push(array2json(value)); /* :RECURSION: */
            else parts[key] = array2json(value); /* :RECURSION: */
        } else {
            var str = "";
            if (!is_list) str = '"' + key + '":';

            //Custom handling for multiple data types
            if (typeof value == "number") str += value; //Numbers
            else if (value === false) str += 'false'; //The booleans
            else if (value === true) str += 'true';
            else str += '"' + value + '"'; //All other things
            // :TODO: Is there any more datatype we should be in the lookout for? (Functions?)

            parts.push(str);
        }
    }
    var json = parts.join(",");

    if (is_list) return '[' + json + ']'; //Return numerical JSON
    return '{' + json + '}'; //Return associative JSON
}


/******* header menu - no cache for subscription image ********/
jQuery(document).ready(function() {
    var src = jQuery(".subli-with-icon img").attr("src");
    var numRand = Math.floor(Math.random() * 9999999);
    src += "?" + numRand;
    jQuery(".subli-with-icon img").attr("src", src);
});

/******* registration welcome one page reg ********/

//track start/end editing attributes vars
var trackStartEditAttribute = false;
var trackEndEditingAttributes = false;

//is already bind to save details click event
var isSaveDetailsBind = false;

jQuery(document).ready(function() {
    coverBody();
    showOverlayBox();
    var attribeCount = 0;

    //count total attributes
    jQuery(".send-attribute ul").each(function() {
        attribeCount++;
    });
    var selectedAttr = 0;

    jQuery(".send-attribute ul li").click(function() {

        //track start editing attributes
        if (!trackStartEditAttribute) {
            var s = s_gi(s_account); s.linkTrackVars = 'events';
            s.linkTrackEvents = 'event57';
            s.events = 'event57';
            s.tl(true, 'o', 'Overlay complete profile - Start: Type=Counter');
            trackStartEditAttribute = true;
        }
        jQuery(".success-message").css("visibility", "hidden");
        jQuery(this).parent().children().each(function() {
            jQuery(this).removeClass("selected");
        });
        jQuery(this).addClass("selected");
        selectedAttr = 0;
        jQuery(".send-attribute ul li.selected").each(function() {
            selectedAttr++;
            if (selectedAttr >= attribeCount) {
                showBtn();
                return false;
            }
        });
    });

    //scroll height to 160cm
    var heightOptionsToScroll = 24;
    var liHeight = jQuery(".Height ul li:first").attr("scrollHeight");
    heightTab = liHeight * heightOptionsToScroll;
    jQuery(".Height ul").animate({ scrollTop: heightTab }, 0);

    //scroll to selected value
    jQuery(".send-attribute").each(function() {
        var i = 0;
        jQuery(this).children("ul").children("li").each(function() {
            if (jQuery(this).hasClass("selected")) {
                if (i == 1 != i == 0) {
                    jQuery(this).parent().animate({ scrollTop: 0 }, 0);
                }
                else {
                    jQuery(this).parent().animate({ scrollTop: i * liHeight }, 0);
                }
            }
            else {
                i++;
            }
        });
    });

});


function showBtn() {
    jQuery("#send-attr-btn").addClass("enabled");

    if (!isSaveDetailsBind) {
        jQuery("#send-attr-btn.enabled").click(function() {

            jQuery("#send-attr-btn").removeClass("enabled");
            var data = "{attributesList:'[";

            jQuery(".send-attribute ul li.selected").each(function() {
                key = jQuery(this).parent().parent().attr("key");
                value = jQuery(this).attr("value");
                data += '{"Key":"' + key + '","Value":"' + value + '"},';
            });
            data = data.substring(0, data.length - 1);
            data += "]'}";
            jQuery.ajax({
                type: "POST",
                url: "/Applications/API/UpdateMember.asmx/SaveMemberAttributes",
                contentType: "application/json; charset=utf-8",
                data: data,
                datatype: "json",
                timeout: 10000,
                success: function(msg) {
                    if (typeof (msg) == "object") {
                        jQuery("#leftbox-1").addClass("enabled");
                        jQuery("#leftbox-2").addClass("enabled");

                        //disable links
                        jQuery(".disabled-matches-btn").hide();
                        jQuery(".enabled-matches-btn").show();
                        jQuery(".success-message").css("visibility", "visible");

                        jQuery("#send-attr-btn").addClass("enabled");
                        setTimeout(function() { closeOverlay() }, 2000);

                        //track end editing attributes
                        if (!trackEndEditingAttributes) {
                            var s = s_gi(s_account); s.linkTrackVars = 'events';
                            s.linkTrackEvents = 'event58';
                            s.events = 'event58';
                            s.tl(true, 'o', 'Overlay complete profile - Complete: Type=Counter');
                            trackEndEditingAttributes = true;
                        }
                    }
                }
            });
        });
        isSaveDetailsBind = true;
    }

}

function coverBody() {
    if ($j.browser.msie && parseInt($j.browser.version) <= "8") {
        jQuery('.bg-cover-fill-details').css({ opacity: 0.5, backgroundColor: '#888888' });
    }
    else {
        jQuery('.bg-cover-fill-details').css({ opacity: 0.5, backgroundColor: '#000' });
    }

}
function showOverlayBox() {
    //if box is not set to open then don't do anything
    // set the properties of the overlay box, the left and top positions
    jQuery('.fill-details-box').css({
        display: 'block',
        left: (jQuery(window).width() - jQuery('.fill-details-box').width()) / 2,
        top: (jQuery(window).height() - jQuery('.fill-details-box').height()) / 2 - 20,
        position: 'absolute'
    });
    // set the window background for the overlay. i.e the body becomes darker
    jQuery('.bg-cover-fill-details').css({
        display: 'block',
        width: jQuery(document).width(),
        height: jQuery(document).height()
    });
}
function closeOverlay() {
    jQuery('.fill-details-box').css('display', 'none');
    // now animate the background to fade out to opacity 0
    // and then hide it after the animation is complete.
    jQuery('.bg-cover-fill-details').animate({ opacity: 0 }, null, null, function() { jQuery(this).hide(); });
}
/******************************/

/********* Quick Message ************/
var mainSubject;
var mainBody;
var defaultLoaderHtml;
var trackInitiateQuickMessage = new Object;
trackInitiateQuickMessage.openQuickMessage = [];
trackInitiateQuickMessage.startQuickMessage = [];
var quickMessage = [];
var alreadyOpen = new Object();
var mainTimer = [];
jQuery(document).ready(function() {
    mainSubject = jQuery(".quick-message-subject").val();
    mainBody = jQuery(".quick-message-body").val();
    defaultLoaderHtml = jQuery(".send-message-loading").html();
    jQuery(".close").click(function() {
        jQuery(this).parent().slideUp();
    });

    //open/close quick message box
    jQuery(".open-quick-message").click(function() {
        var memberid = jQuery(this).attr("memberid");

        clearSubjectAndBody(memberid);

        quickMessage[memberid] = jQuery(".quick-message[memberid='" + memberid + "']");

        jQuery(quickMessage[memberid]).slideDown();
        jQuery(this).unbind('mouseout.myHover');

        //track initiate quick message
        if (trackInitiateQuickMessage.openQuickMessage[memberid] == undefined) {
            trackInitiateQuickMessage.openQuickMessage[memberid] = false;
        }
        if (trackInitiateQuickMessage.startQuickMessage[memberid] == undefined) {
            trackInitiateQuickMessage.startQuickMessage[memberid] = false;
        }
        if (trackInitiateQuickMessage.openQuickMessage[memberid] == false) {
            var s = s_gi(s_account); s.linkTrackVars = 'events';
            s.linkTrackEvents = 'event60';
            s.events = 'event60';
            s.tl(true, 'o', 'click to Initiate Quick Message -IL: Type=Counter');
            trackInitiateQuickMessage.openQuickMessage[memberid] = true;
            clearTracking(trackInitiateQuickMessage.startQuickMessage, memberid);
        }

    });
    jQuery(".open-quick-message").bind('mouseover.myHover', function() {
        var memberid = jQuery(this).attr("memberid");

        quickMessage[memberid] = jQuery(".quick-message[memberid='" + memberid + "']");
        if (!jQuery(quickMessage[memberid]).is(":visible")) {
            if (mainTimer[memberid]) {
                clearTimeout(mainTimer[memberid]);
                mainTimer[memberid] = null;
            }
            mainTimer[memberid] = setTimeout(function() {
                jQuery(quickMessage[memberid]).slideDown();
            }, 500);
            clearSubjectAndBody(memberid);
            jQuery(".open-quick-message[memberid='" + memberid + "']").bind('mouseout.myHover', function() {

                quickMessage[memberid] = jQuery(".quick-message[memberid='" + memberid + "']");
                if (mainTimer[memberid]) {
                    clearTimeout(mainTimer[memberid]);
                    mainTimer[memberid] = null;
                }
                mainTimer[memberid] = setTimeout(function() {
                    jQuery(quickMessage[memberid]).slideUp();
                }, 750);
            });
        }
    });


    //Mouse hover on quick message box
    jQuery(".quick-message").hover(function() {
        var memberid = jQuery(this).attr("memberid");

        if (mainTimer[memberid]) {
            clearTimeout(mainTimer[memberid]);
            mainTimer[memberid] = null;
        }

        jQuery(".open-quick-message[memberid='" + memberid + "']").unbind('mouseout.myHover');

    }, function() {
        var memberid = jQuery(this).attr("memberid");


        var subject = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-subject").val();
        var message = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-body").val();
        if (subject == mainSubject && message == mainBody) {
            if (mainTimer[memberid]) {
                clearTimeout(mainTimer[memberid]);
                mainTimer[memberid] = null;
            }
            mainTimer[memberid] = setTimeout(function() {
                jQuery(".quick-message[memberid='" + memberid + "']").slideUp();
            }, 750);
        }
    });



    //send message
    jQuery(".send-message").click(function() {
        if (!validateQuickMessageForm(this)) {
            jQuery(this).parent().hide();
            var memberid = jQuery(this).parent().attr("memberid");
            jQuery(".send-message-loading[memberid='" + memberid + "']").show();

            var subject = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-subject").val();
            var message = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-body").val();
            var data = '{"targetMemberID":"' + memberid + '","messageSubject":"' + subject + '","message":"' + message + '","profileType":"' + quickMessageProfileType + '"}';

            jQuery.ajax({
                type: "POST",
                url: "/Applications/API/IMailService.asmx/SendMessageLocale",
                contentType: "application/json; charset=utf-8",
                data: data,
                datatype: "json",
                timeout: 30000,
                success: function(msg) {
                    var s = s_gi(s_account); s.linkTrackVars = 'events';
                    s.linkTrackEvents = 'event11';
                    s.events = 'event11';
                    s.eVar26 = "imail";
                    s.tl();

                    clearTracking(trackInitiateQuickMessage.openQuickMessage, memberid);
                    clearTracking(trackInitiateQuickMessage.startQuickMessage, memberid);
                    if (typeof (msg) == "object") {
                        if (msg.d.Status == "2") {
                            showSendMessage(msg.d.StatusMessage, memberid);
                        }
                        else if (msg.d.Status == 4) {
                            window.location = msg.d.SubPageURL;
                        }
                        else {
                            generalError();
                        }
                    }
                    else {
                        generalError();
                    }
                },
                error: function() {
                    generalError();
                }
            });

        }
    });


    //clear subject/body values
    jQuery(".quick-message-subject,.quick-message-body").bind("click focus", function() {
        jQuery(this).removeClass("error");
        var cls = jQuery(this).attr("class");
        if (jQuery(this).val() == mainSubject || jQuery(this).val() == mainBody) {
            jQuery(this).val("");
        }
        for (key in quickMessageValidator[cls]) {
            if (quickMessageValidator[cls][key].message == jQuery(this).val()) {
                jQuery(this).val("");
            }
        }


        jQuery(this).addClass("black");
        var memberid = jQuery(this).parent().parent().attr("memberid");
        //track start typing message
        if (trackInitiateQuickMessage.startQuickMessage[memberid] == undefined) {
            trackInitiateQuickMessage.startQuickMessage[memberid] = false;
        }
        if (trackInitiateQuickMessage.startQuickMessage[memberid] == false) {
            var s = s_gi(s_account); s.linkTrackVars = 'events';
            s.linkTrackEvents = 'event61';
            s.events = 'event61';
            s.tl(true, 'o', 'Quick Message –Start- IL : Type=Counter');
            trackInitiateQuickMessage.startQuickMessage[memberid] = true;
        }
    });
});

function showSendMessage(msg, memberid) {
    jQuery(".send-message-loading[memberid='" + memberid + "']").html(msg)
    timer = setTimeout(function() {
        jQuery(".send-message-loading[memberid='" + memberid + "']").fadeOut();
        timer2 = setTimeout(function() {
            jQuery(".send-message-loading[memberid='" + memberid + "']").html(defaultLoaderHtml);
        }, 5000);
    }, 5000);
}

function validateQuickMessageForm(elem) {
    var elementErrorFlag = false;
    jQuery(elem).parent().find("input,textarea").each(function() {
        if (elementErrorFlag) {
            return elementErrorFlag;
        }
        jQuery(this).removeClass("error");
        jQuery(this).removeClass("black");
        var cls = jQuery(this).attr("class");
        if (quickMessageValidator[cls]) {
            value = jQuery(this).val();
            for (key in quickMessageValidator[cls]) {
                switch (quickMessageValidator[cls][key].errorKey) {
                    case "required":

                        if (value == "" || value.length == 0 || value == " " || value == quickMessageValidator[cls][key].message) {
                            elementErrorFlag = true;
                            jQuery(this).val(quickMessageValidator[cls][key].message);
                            jQuery(this).addClass("error");
                        }
                        break;
                    case "noChange":
                        if (value == mainSubject || value == mainBody || value == quickMessageValidator[cls][key].message) {
                            elementErrorFlag = true;
                            jQuery(this).val(quickMessageValidator[cls][key].message);
                            jQuery(this).addClass("error");
                        }
                        break;
                }
                if (elementErrorFlag) {
                    break;
                }
            }
        }

    });

    return elementErrorFlag;
}

function clearSubjectAndBody(memberid) {
    var val = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-subject").val();
    if (val != mainSubject) {
        jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-subject").val(mainSubject);
        jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-subject").removeClass("black");
    }
    val = jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-body").val();
    if (val != mainBody) {
        jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-body").val(mainBody);
        jQuery(".quick-message[memberid='" + memberid + "'] .quick-message-body").removeClass("black");
    }
}

function generalError() {
    jQuery(".send-message-loading").addClass("error");
    jQuery(".send-message-loading").html(quickMessageGeneralError);
    timer = setTimeout(function() {
        jQuery(".send-message-loading").fadeOut();
        timer2 = setTimeout(function() {
            jQuery(".send-message-loading").html(defaultLoaderHtml);
        }, 5000);
    }, 5000);
}

//clear trackong flag
function clearTracking(obj, memberid) {
    obj[memberid] = false;
}

