﻿

jQuery.fn.roundBorders = function(style) {
	var clearW = '<div class="rbox-flex-clear"><div class="rbox-flex-outer-clear"><div class="rbox-flex-inner"><div class="rbox-flex-inner-inner clear-floats-after"></div></div></div></div>';
	var greyGradW = '<div class="rbox-flex"><div class="rbox-flex-outer"><div class="rbox-flex-inner"><div class="rbox-flex-inner-inner clear-floats-after"></div></div></div></div>';
	var highW = '<div class="rbox-flex-high"><div class="rbox-flex-outer-high"><div class="rbox-flex-inner-high"><div class="rbox-flex-inner-inner-high clear-floats-after"></div></div></div></div>';
	
    if (style == "clear") {
        jQuery(this).wrap(clearW);
    }
    else if (style == "gradient") {
        jQuery(this).wrap(greyGradW);
    }
    else if (style == "high") {
        jQuery(this).wrap(highW);
    }
    else {
        jQuery(this).wrap(clearW);
    }
}

//Search results adjustments

function galleryColumnator(containerEl, containerWidth){
    if (containerWidth <= 520) {
        containerEl.css({width : '96%'});
    }
    if ((containerWidth > 520) && (containerWidth <= 830)) {
        containerEl.css({width : '48%'});
    }
    if ((containerWidth > 830) && (containerWidth < 1160)) {
        containerEl.css({width : '32%'});
    }
    if (containerWidth >= 1160) {
        containerEl.css({width : '24%'});
    }
}

function galleryColumnAdjust(){
    // sets columns in gallery view. this is inline to reduce flash of reconfiguration
    // begin full profile adjustments
    var CMWidthInLoad = jQuery('#content-main').width();      
    
    //begin gallery-view adjustments
    if (jQuery('#results-container .results.gallery-view').length > 0) {
        galleryContainer = jQuery('#results-container .results.gallery-view');
        galleryColumnator(galleryContainer, CMWidthInLoad);
    }
    jQuery('#results-container').show();
}

function galleryColumnAdjustResize(){
    // begin full profile adjustments
    var CMWidthIn = jQuery('#content-main').width();      
    
    //begin gallery-view adjustments
    if (jQuery('#results-container .results.gallery-view').length > 0) {
        galleryContainerResize = jQuery('#results-container .results.gallery-view');
        galleryColumnator(galleryContainerResize, CMWidthIn);
    }
}

//begin list-view adjustments
//function listColumnAdjust() {
//     var CMWidth = jQuery('#content-main').width();
//     if(CMWidth >= 1080) {
//        //add wide class
//        jQuery('#content-container .list-view .communications, #content-container .list-view').addClass('wide');
//    } else {
//        //remove narrow class
//        jQuery('#content-container .list-view .communications, #content-container .list-view').removeClass('wide');
//    }
//}

// LAYOUT ADJUSTMENTS ON LOAD/RELOAD/RESIZE
// reconfigure header based on window resize

if (jQuery.ieDetection.browserTypeIE6 == true) {
    // do nothing
}
else {
    jQuery(window).bind("resize load", function() {
        var CMWidth = jQuery('#content-main').width();
        // begin mini-profile adjustments     
        //alert(CMWidth);
        //if(CMWidth <= 567) {
            //add narrow class
            //jQuery('#content-container .list-view .communications, #content-container .list-view .liquid').addClass('narrow');
            // hide .narrow-hide elements
            //jQuery('#content-container .list-view .communications .narrow-hide').hide();
        //} else {
            //remove narrow class
            //jQuery('#content-container .list-view .communications, #content-container .list-view .liquid').removeClass('narrow');
            // show .narrow-hide elements
            //jQuery('#content-container .list-view .communications .narrow-hide').show();
        //}        
        //end mini-profile adjustments
    });
}

//MiniSearch - by Gaurav
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;
    });
});

// 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').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);
        if (jQuery.ieDetection.browserTypeIE6 == true) {
            jQuery(this).parent().not('.selected').addClass('hover');
        }
		jQuery('.nav-rounded-tabs li.tab.selected.hover').append(indSelected);		
	}, function() {
		jQuery('.nav-rounded-tabs li.tab .nav-profile-full-indicator').hide();
		if (jQuery.ieDetection.browserTypeIE6 == true) {
            jQuery(this).parent().removeClass('hover');
        }
	});	

	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 .content-rounded-inner3').width()) - 22;
	    var $hoverE = jQuery(this).next('div.rel-layer-div');
	    var lmar = jQuery('#content-container .content-rounded-inner3').offset();
	    
	    jQuery($hoverE).show();
	    
	    var hwid = $hoverE.width();
	    var iposRaw = jQuery(this).offset();
	    var ipos = iposRaw.left - lmar.left

	    if (hwid > swid) {
	        //alert('DEBUG: hovered layer is wider than site!');
	    }
	    else if (ipos + hwid > swid) {
	        var move = swid - (ipos + hwid);
	        $hoverE.css({left: move});
	    }
	    //var helpLayer = '<p id="destroyMe" style="position:absolute;top:0;left:0;padding:4px; border: 1px solid black;background-color: white;">hwid: ' + hwid + 'px<br />ipos: ' + ipos + 'px<br />swid: ' + swid + 'px <br />lmar: ' + lmar.left + 'px <br />hwid: ' + (hwid + ipos) + 'px</p>';
	    //jQuery(helpLayer).insertAfter('.sub');
	    
	    return false;
    }, function() {
        //jQuery('#destroyMe').remove();
	    jQuery(this).next('div.rel-layer-div').hide().css({left: '0'});
	    return false;
    });
    
    jQuery('a[rel*=click]').click(function() {
	    var swid = (jQuery('#content-container .content-rounded-inner3').width()) - 22;
	    var $hoverE = jQuery(this).next('div.rel-layer-div');
	    var lmar = jQuery('#content-container .content-rounded-inner3').offset();
	    
	    jQuery($hoverE).show();
	    
	    var hwid = $hoverE.width();
	    var iposRaw = jQuery(this).offset();
	    var ipos = iposRaw.left - lmar.left

	    if (hwid > swid) {
	    }
	    else if (ipos + hwid > swid) {
	        var move = swid - (ipos + hwid);
	        $hoverE.css({left: move});
	    }
	    return false;
    });

	jQuery('.rel-layer-div a.click-close').click(function() {
		jQuery(this).parent().parent().hide();
		return false;
	});

    jQuery(".rbox-style-gradient").css("border", "none").roundBorders('gradient');
	jQuery(".rbox-style-clear").css("border", "none").roundBorders('clear');
	jQuery(".rbox-style-high").css("border", "none").roundBorders('high');
});

//filter IE6
if (jQuery.ieDetection.browserTypeIE6 == true) {
    jQuery(document).ready(function() {
        // stack your IE6 specific fixes in here
        jQuery('#content-main .results.list-view .note input:text').css({width : "540px", marginLeft : ".4em"});
    });
}
else {
    jQuery(document).ready(function() {
        // stack all other browser fixes here
        // 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 (jQuery.ieDetection.browserTypeIEAll == true) {
    jQuery(document).ready(function() {
	    var zIndexNumber = 100;
	    jQuery('#content-main .listMenuContainer').each(function() {
		    jQuery(this).css('zIndex', zIndexNumber);
		    zIndexNumber -= 2;
	    });
	    jQuery('#content-main .results.photo-view').each(function() {
		    jQuery(this).css('zIndex', zIndexNumber);
		    zIndexNumber -= 2;
	    });
//	    jQuery('#content-main ul li[class^=plansRow]').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' }
        }
    );
    jQuery('body.page-subscription .carrot-profile .member-pic, body.page-subscription .carrot-profile .member-info').block({
        message: null,
        overlayCSS: { backgroundColor: '#96b1cc',opacity: '0.0' }
        }
    );
});

//search preferences
jQuery(document).ready(function() {
    var Toggled = false;
    jQuery('#search-pref-toggle-more').click(function(){
        if(Toggled==false){
            jQuery(this).html('<img border="0" src="/img/Community/JDate/icon-preference-module-hide.gif" />&nbsp;Hide additional search preferences');
            
            Toggled=true;
        }
        else{
            jQuery(this).html('<img border="0" src="/img/Community/JDate/icon-preference-module-show.gif" />&nbsp;Add more search preferences');
            
            Toggled=false;
        }
        jQuery('#search-pref-more').slideToggle(400); return false;
    });
});

//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({paddingRight : '.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({marginLeft : '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();
});

// 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 div.answer-block').hide();
    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();
    });
}

