var ua=navigator.userAgent.toLowerCase()
var isAndroid=ua.indexOf('android')>-1
var isIE=/msie|trident/.test(ua)
var isIOS=/iPhone|iPad|iPod/.test(navigator.platform)&&!window.MSStream
var windowWidth=window.screen.width<window.outerWidth?window.screen.width:window.outerWidth
var isDesktop=windowWidth>=980
var isTablet=windowWidth<980
var isMobile=windowWidth<768
$(document).ready(function(){initGlobalScripts()
if($('body.signup').length)initSignupScripts()
if($('body.home').length)initHomepageScripts()
if($('body.learn-more').length)initLearnMoreScripts()
if($('body.faq').length)initFaqScripts()
if($('body.alert-page').length)initAlertScripts()
if($('body.billing-history-page').length)initBillingHistoryScripts()
if($('body.action-page').length)initActionScripts()
if($('body.live-id-protect').length)initLiveIdScripts()
if($('body.alert-settings').length)initAlertSettingsScripts()
if($('body.close-page-5').length)initClosePage5Scripts()
if($('body.mm-account-type-page').length)initMmAccountType()
if($('body.mm-select-creditor').length)initMmSelectCreditor()
if($('body.tu-credit-report-update').length)initTuCreditReportUpdate()
if($('body.auto-loan-calculator').length)initAutoLoanCalculator()
if($('body.mortgage-calculator').length)initMortgageCalculator()
if($('body.billing-information').length)initBillingInformationScripts()
if($('body.confirm-3b').length)initConfirm3BScripts()
if($('body.view-3b').length)initView3BScripts()
if($('body.splash').length)initSplashPage()
if($('body.activation').length)initActivationScripts()
if($('body.score-builder').length)initScoreBuilderScripts()
if($('body.score-master').length)initScoreMasterScripts()
if($('body.score-tools').length)initScoreToolsScripts()
if($('body.email-recovery').length)initEmailRecoveryScripts()
if($('body.quick-definitions').length)initQuickDefinitionScripts()
if($('body.login-required').length)initLoginFormScripts()
if($('body.privacy-master').length)initInsuranceFormScripts()
if($('body.member-home').length)initInsuranceFormScripts()
if($('body.member-home #alert-bubble').length)initAlertBubble()})
function initGlobalScripts(){if('function'==typeof $().placeholder){$('input[placeholder]:visible').placeholder()}
if(isIE){jQuery('#old-browser').show()}
if(isIOS){$('body').css('cursor','pointer')}
if($('body.logged-in').length&&window.location==window.parent.location){$(document).idleTimeout({inactivity:900000,noconfirm:60000,sessionAlive:200000,redirect_url:'/auto-logout.htm?role='+role,alive_url:'/keepalive.jsp',})}
$('#reactivate-link').click(function(){$(document.body).append('<div class="modal fade" id="success-modal"><div class="modal-header"><h3 class="modal-title">Account Reactivated</h3></div><div class="modal-body"><p class="remove-bottom">Your account has been reactivated.</p></div><div class="modal-footer"><button type="button" class="btn btn-sc btn-sm" type="button" data-dismiss="modal">Dismiss</button></div></div>')
$(document.body).append('<div class="modal fade" id="failure-modal"><div class="modal-header"><h3 class="modal-title">Unable to Reactivate Account</h3></div><div class="modal-body"><p class="remove-bottom">There was a problem reactivating your account. Please contact customer support.</p></div><div class="modal-footer"><button type="button" class="btn btn-sc btn-sm" type="button" data-dismiss="modal">Dismiss</button></div></div>')
$.ajax({type:'POST',url:'/member/account/reactivation/closed-pending.json',dataType:'json',context:$(this),success:function(data,textStatus){if(data.success){$('#success-modal').modal().on('hide',function(){window.location.reload()})}else{$('#failure-modal').modal()}},error:function(jqXHR,textStatus,errorThrown){$('#failure-modal').modal()},})})
if(window.location!=window.parent.location){jQuery('body').addClass('windowed')
if(jQuery('header').length)jQuery('header').hide()
if(jQuery('#page-title').length)jQuery('#page-title').hide()
if(jQuery('#section-navigation').length)jQuery('#section-navigation').hide()
if(jQuery('footer').length)jQuery('footer').hide()
jQuery('body').css('background-color','transparent')}
if(jQuery().mask!='undefined'){var phoneMask='(000) 000-0000'
if(jQuery('input.phoneUS').length)jQuery('input.phoneUS').mask(phoneMask)
if(jQuery('input.zipcode').length)jQuery('input.zipcode').mask('99999')}
initFormInputMasking()
if(jQuery('#cobrand-message-container').length){$('.cobrand-parent .brand-link').popover({placement:get_popover_placement('bottom',250,172),html:true,title:'Special Message',container:'body',content:$('#cobrand-message-container').html(),template:'<div class="popover cobrand-message" role="tooltip"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>',})}
jQuery('.dropdown-toggle').click(function(event){var target=jQuery(this),dropdown=target.siblings('.dropdown-menu')
if(dropdown.length>0){var offset=target.offset(),w=dropdown.width()
if(offset.left+w>jQuery(window).width()){dropdown.addClass('pull-right')}else{dropdown.removeClass('pull-right')}}})
jQuery('.google-link-track').click(function(event){url=this.href
if(typeof _gaq!='undefined'){if(this.target=='_blank'){_gat._getTrackerByName()._getLinkerUrl(url)}else{_gaq.push(['_link',url])}}})
jQuery.ajaxPool=[]
jQuery.ajaxPool.abortAll=function(){jQuery(this).each(function(idx,jqXHR){jqXHR.abort()})
jQuery.ajaxPool.length=0}
jQuery.ajaxSetup({beforeSend:function(jqXHR){jQuery.ajaxPool.push(jqXHR)},complete:function(jqXHR){var index=jQuery.inArray(jqXHR,jQuery.ajaxPool)
if(index>-1){jQuery.ajaxPool.splice(index,1)}},})
var logoutLink=jQuery('#logout-link a')
if(logoutLink.length){logoutLink.click(function(event){jQuery.ajaxPool.abortAll()})}
$('.edit-disabled-field').each(function(index,element){var closestInputField=$(element).closest('.control-group, .form-group, .checkbox-group').find('input')
closestInputField.data('value',closestInputField.val())
$(element).click(function(){event.preventDefault()
var target=$(this)
var formField=target.closest('.control-group, .form-group, .checkbox-group').find('input')
var auxiliaryFormGroup=formField.data('auxiliary-group')
formField.toggleDisabled()
if(formField.is(':disabled')){formField.val(formField.data('value'))}else{formField.val('')
formField.focus()}
newLabelValue=target.html()=='(Change)'?'(Cancel Change)':'(Change)'
target.html(newLabelValue)
if(auxiliaryFormGroup){$(auxiliaryFormGroup).toggle()
$(auxiliaryFormGroup).find('.form-control').toggleDisabled()}})})
if(jQuery('.mask-onblur').length){jQuery('.mask-onblur').each(function(index,element){jQuery(element).blur(function(){var $realInput=$(this)
var maxLength=jQuery(this).prop('maxlength')
var realInputName=jQuery(this).prop('name')
var realInputId=jQuery(this).prop('id')
var fakeInputName=realInputName+'-fake'
var fakeInputId=realInputId+'Fake'
if($realInput.val().length<=maxLength&&$realInput.val().length>0&&$realInput.parents('.has-feedback').hasClass('has-success')){$realInput.hide().after('<input id='+
fakeInputId+' class="form-control input-block-level" type="text" name='+
fakeInputName+'>')
jQuery('#'+fakeInputId).val($realInput.val().replace(/./g,'*')).on('click focus',function(){jQuery('#'+realInputId).show().focus()
jQuery('#'+fakeInputId).remove()})}})})}
jQuery('.modal-iframe, .modal-content').click(handleModalLinkClick)
jQuery('button[data-loading-text]').click(handleButtonClickLoadingMessage)
if(jQuery('#fetch-credit-report').length){jQuery('#fetch-credit-report, #message').toggle()
jQuery('#fetch-credit-report').submit()}
if(jQuery('#launch-acs').length){jQuery('#launch-acs').submit()}
if(!jQuery('#isHomeAndBillingDifferent').is(':checked')&&jQuery('.control-group.billing-address').length)
jQuery('.control-group.billing-address').hide()
if(jQuery('#isHomeAndBillingDifferent').length)
jQuery('#isHomeAndBillingDifferent').click(function(event){if(jQuery('.control-group.billing-address').length)
jQuery('.control-group.billing-address').toggle()
var yesNo=jQuery('#isHomeAndBillingDifferent').is(':checked')?'1':'0'
jQuery('#_isHomeAndBillingDifferent').val(yesNo)})
if(jQuery('#isConfirmedTermsCheckbox').length)
jQuery('#isConfirmedTermsCheckbox').click(function(event){if(jQuery('#isConfirmedTerms').length){var yesNo=jQuery(event.currentTarget).is(':checked')?'true':'false'
jQuery('#isConfirmedTerms').val(yesNo)}})
if(jQuery('#marketingOptInCheckbox').length)
jQuery('#marketingOptInCheckbox').click(function(event){if(jQuery('#marketingOptIn').length){var yesNo=jQuery(event.currentTarget).is(':checked')?'Y':'N'
jQuery('#marketingOptIn').val(yesNo)}})
if(jQuery('#isMemberPlanOptionCheckbox').length)
jQuery('#isMemberPlanOptionCheckbox').click(function(event){if(jQuery('#isMemberPlanOption').length){var yesNo=jQuery(event.currentTarget).is(':checked')?'true':'false'
jQuery('#isMemberPlanOption').val(yesNo)}})
if(jQuery('.input-append .input-help a').length){jQuery('.input-append .input-help a').each(function(){jQuery(this).click(function(event){event.preventDefault()})
var id=jQuery(this).attr('id')
if(id!=null){var contentId='#'+id+'-content'
if(jQuery(contentId).length){var contentData=jQuery(contentId).html()
jQuery(this).popover({html:true,content:contentData,template:'<div class="popover input-help"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"><div></div>',placement:get_popover_placement('right',250,200),trigger:'click',})}}})}
if(jQuery('.how-you-compare').length&&jQuery('.how-you-compare td.active').length){jQuery('.how-you-compare-bubble').css('left',jQuery('.how-you-compare td.active').position().left-
(jQuery('.how-you-compare-bubble').width()-
jQuery('.how-you-compare td.active').width())/2).show()}else{if(jQuery('.how-you-compare').length){jQuery('.how-you-compare').hide()}}
if(jQuery('.score-tracker-graph').length){var context=new DevExpress.data.ODataStore({url:'/member/scores/score-tracker-chart.json'})
var tuSeries=[{valueField:'credit',name:'Credit Score'},{valueField:'insurance',name:'Insurance',visible:!isMobile},]
var scSeries=[{valueField:'credit',name:'Credit Score'},{valueField:'auto',name:'Auto Score',visible:!isMobile},{valueField:'insurance',name:'Insurance',visible:!isMobile},]
var seriesArg=jQuery('body').hasClass('product-tu')?tuSeries:scSeries
jQuery('.score-tracker-graph').dxChart({dataSource:context,commonSeriesSettings:{argumentField:'date',},series:seriesArg,argumentAxis:{grid:{visible:true,},},valueAxis:{label:{visible:false,},},legend:{verticalAlignment:'bottom',horizontalAlignment:'center',},tooltip:{enabled:true,},commonPaneSettings:{border:{visible:true,},},onLegendClick:function(e){var series=e.target
if(series.isVisible()){series.hide()}else{series.show()}},})}
if(jQuery('.score-container').length||jQuery('#chart-container-grade').length){jQuery('.score-container').each(function(index,element){var score=jQuery(element).find('.score-details-container h4').length?jQuery(element).find('.score-details-container h4').html():null
if(score!=null){if(jQuery('body').hasClass('product-tu')&&jQuery(element).attr('id')==='insurance-score-container'){var startValue=150
var endValue=950
var customTickValues=[160,270,380,490,600,710,820]
var ranges=[{startValue:150,endValue:220,color:'#f70f0f'},{startValue:220,endValue:290,color:'#f73a0f'},{startValue:290,endValue:360,color:'#f75b0f'},{startValue:360,endValue:430,color:'#f78c0f'},{startValue:430,endValue:500,color:'#f7b80f'},{startValue:500,endValue:570,color:'#f7e40f'},{startValue:570,endValue:640,color:'#def70f'},{startValue:640,endValue:710,color:'#97f70f'},{startValue:710,endValue:780,color:'#4bf70f'},{startValue:780,endValue:850,color:'#0ff73a'},{startValue:850,endValue:950,color:'#0ea62a'},]}else{var startValue=300
var endValue=850
var customTickValues=[360,440,510,580,650,720,800]
var ranges=[{startValue:300,endValue:350,color:'#f70f0f'},{startValue:350,endValue:400,color:'#f73a0f'},{startValue:400,endValue:450,color:'#f75b0f'},{startValue:450,endValue:500,color:'#f78c0f'},{startValue:500,endValue:550,color:'#f7b80f'},{startValue:550,endValue:600,color:'#f7e40f'},{startValue:600,endValue:650,color:'#def70f'},{startValue:650,endValue:700,color:'#97f70f'},{startValue:700,endValue:750,color:'#4bf70f'},{startValue:750,endValue:800,color:'#0ff73a'},{startValue:800,endValue:850,color:'#0ea62a'},]}
jQuery(element).find('.chart-container').dxCircularGauge({scale:{startValue:startValue,endValue:endValue,label:{font:{family:'Open Sans, Helvetica',size:9,weight:700,},indentFromTick:3,},majorTick:{showCalculatedTicks:false,customTickValues:customTickValues,},},geometry:{startAngle:360,endAngle:5,},valueIndicator:{offset:25,type:'rangeBar',color:'#E9E9E9',size:4,},subvalueIndicator:{type:'triangleMarker',length:35,width:45,offset:30,color:'#356bA7',},rangeContainer:{width:25,orientation:'inside',backgroundColor:'#727272',ranges:ranges,},value:score,subvalues:[score],})}})
var scoreGrade=jQuery('#score-grade-number').length?jQuery('#score-grade-number').html():null
jQuery('#chart-container-grade').dxCircularGauge({scale:{startValue:1,endValue:14,label:{customizeText:function(label){var labelDisplay='F'
if(label.value=='2')labelDisplay='F'
if(label.value=='4')labelDisplay='D'
if(label.value=='7')labelDisplay='C'
if(label.value=='10')labelDisplay='B'
if(label.value=='13')labelDisplay='A'
return labelDisplay},font:{family:'Open Sans, Helvetica',size:9,weight:700,},indentFromTick:3,},majorTick:{showCalculatedTicks:false,customTickValues:[2,4,7,10,13],},},geometry:{startAngle:360,endAngle:5,},valueIndicator:{offset:25,type:'rangeBar',color:'#E9E9E9',size:4,},subvalueIndicator:{type:'triangleMarker',length:35,width:45,offset:30,color:'#356bA7',},rangeContainer:{width:25,orientation:'inside',backgroundColor:'#727272',ranges:[{startValue:1,endValue:2,color:'#f70f0f'},{startValue:2,endValue:3,color:'#f73a0f'},{startValue:3,endValue:4,color:'#f75b0f'},{startValue:4,endValue:5,color:'#f78c0f'},{startValue:5,endValue:6,color:'#f7b80f'},{startValue:6,endValue:7,color:'#f7e40f'},{startValue:7,endValue:8,color:'#def70f'},{startValue:8,endValue:9,color:'#97f70f'},{startValue:9,endValue:10,color:'#4bf70f'},{startValue:10,endValue:11,color:'#0ff73a'},{startValue:11,endValue:14,color:'#0ea62a'},],},value:scoreGrade,subvalues:[scoreGrade],})}
if(jQuery('#live-id-protect').length){var percentageComplete=jQuery('#percentage-details-info').find('span').html()
var hasMobileView=jQuery('#live-id-protect-mobile').length
var desktopChartInitState=jQuery('#live-id-protect').find('.chart-container').css('display')
var mobileInitState=hasMobileView?jQuery('#live-id-protect-mobile').css('display'):null
var initRenderLocation=getRenderLocation(mobileInitState,desktopChartInitState)
jQuery(window).resize(function(){var currentMobileDisplayState=jQuery('#live-id-protect-mobile').css('display')
var currentDesktopChartDisplayState=jQuery('#live-id-protect').find('.chart-container').css('display')
var newRenderLocation=false
if(mobileInitState!=currentMobileDisplayState||currentDesktopChartDisplayState!=desktopChartInitState){mobileInitState=currentMobileDisplayState
desktopChartInitState=currentDesktopChartDisplayState
newRenderLocation=true}
if(newRenderLocation){var renderLocation=getRenderLocation(currentMobileDisplayState,currentDesktopChartDisplayState)
if(renderLocation)drawLiveIdSettingsProgressBar(percentageComplete,renderLocation)}})
if(initRenderLocation){drawLiveIdSettingsProgressBar(percentageComplete,initRenderLocation)}}
jQuery('a.accordion-toggle').click(function(e){e.preventDefault()
var accordion=jQuery(this).closest('.accordion')
if(!jQuery(this).parent().hasClass('active')){accordion.find('.accordion-heading').removeClass('active')
accordion.find('.accordion-body').removeClass('active')
jQuery(this).parent().addClass('active').next().addClass('active')}else{accordion.find('.accordion-heading').removeClass('active')
accordion.find('.accordion-body').removeClass('active')}})
if($('.billing-form').length){initBillingFormScripts()}
if(jQuery('.action-submit').length){jQuery('.action-submit').click(handleActionSubmit)}
$('nav a[data-toggle="collapse"]').click(function(event){$(this).find('i.fa').toggleClass('fa-caret-up fa-caret-down')})
if($('body.product-mt').length){$('#account-nav-upgrade').click(function(event){$(this).parents('a').first().dropdown('toggle')
window.location='/member/upgrade/billing.htm'})}
if(!Cookies.get('cookie-disclaimer-alert')){$('#cookie-disclaimer-alert').toggleClass('hidden')
$('#cookie-disclaimer-alert button').on('click',function(event){create_display_cookie('cookie-disclaimer-alert',true,false,30,'/')})}
$('#sidebar').on('shown.bs.collapse',function(event){var $sidebar=$(this)
if($sidebar.is(event.target)){$('html').on('click',function(clickEvent){var $target=$(clickEvent.target)
if(!$target.hasClass('navbar-toggle')&&$target.parents('#sidebar').length==0){$sidebar.collapse('hide')}})}}).on('hidden.bs.collapse',function(event){var $sidebar=$(this)
if($sidebar.is(event.target)){$('html').off('click')}})
$(":input[value='']:not(.nofocus):visible:enabled:first").focus()}
function initSignupScripts(){if(jQuery('.loading-text-button').length){jQuery('#signup-form').submit(function(){var form=jQuery(this)
var button=form.find('.loading-text-button')
var alert=button.next('.alert')
button.hide()
alert.show()})}}
function initHomepageScripts(){var step=sessionStorage.getItem('step')
if(step&&parseInt(step)>1){var $form=$('#signup-form')
$form.attr('method','get')
$form.find('input').prop('disabled',true)
$form.find('button').html('Continue Signing Up')}
if(typeof Rellax!=='undefined'){var rellax=new Rellax('.cd-parallax')
initFadeInElements('.cd-fade-in')}}
function initLearnMoreScripts(){if(jQuery('.scr-slider .custom-slider').length){jQuery('.scr-slider .custom-slider').flexslider({animation:'slide',controlsContainer:'.scr-slider .custom-slider',slideshowSpeed:5000,animationLoop:false,start:function(slider){if(slider.find('.bubble').size()){var currIdx=0
var targetLi=slider.find('li').eq(currIdx)
setTimeout(function(){targetLi.find('.bubble').each(function(){var self=jQuery(this).show(),posT=self.offset().top,posL=self.offset().left
jQuery(this).hide()
var clone=self.clone()
clone.addClass('bubble-clone').appendTo('body')
clone.css({top:posT,left:posL,}).fadeIn()})},500)}
if(slider.find('a.tooltip-show').size()){var currIdx=0
var targetLi=slider.find('li').eq(currIdx)
setTimeout(function(){targetLi.find('a.tooltip-show').each(function(){var posT=jQuery(this).offset().top
var posL=jQuery(this).offset().left
var tip=jQuery(this).find('span').clone()
tip.appendTo('body')
tip.css({top:posT,left:posL,}).show().addClass('tip-active')})},500)}},before:function(slider){if(slider.find('.bubble').size()){jQuery('.bubble-clone').fadeOut(200,function(){jQuery(this).remove()})}
if(slider.find('a.tooltip-show').size()){jQuery('.tip-active').fadeOut(200,function(){jQuery(this).remove()})}},after:function(slider){if(slider.find('.bubble').size()){var currIdx=slider.currentSlide
var targetLi=slider.find('li').eq(currIdx)
targetLi.find('.bubble').each(function(){var self=jQuery(this).show(),posT=self.offset().top,posL=self.offset().left
jQuery(this).hide()
var clone=self.clone()
clone.addClass('bubble-clone').appendTo('body')
clone.css({top:posT,left:posL,}).fadeIn()})}
if(slider.find('a.tooltip-show').size()){var currIdx=slider.currentSlide
var targetLi=slider.find('li').eq(currIdx)
targetLi.find('a.tooltip-show').each(function(){var posT=jQuery(this).offset().top
var posL=jQuery(this).offset().left
var tip=jQuery(this).find('span').clone()
tip.appendTo('body')
tip.css({top:posT,left:posL,}).show().addClass('tip-active')})}},})}}
function initFaqScripts(){if(jQuery('.slide-toggle-list a').length){jQuery('.add-top > a').click(function(){var div=jQuery(this).parent()
div.find('.expand').slideToggle('slow')
div.siblings().find('.expand').slideUp('slow',jQuery.noop)
return false})
if(jQuery('.slide-toggle-list a').length>1){jQuery('.slide-toggle-list a:first').trigger('click')}}}
function initActionScripts(){initActionTable()}
function initAlertScripts(){var alertTable=jQuery('#alert-table').dataTable({bAutoWidth:false,bLengthChange:false,iDisplayLength:5,sPaginationType:'full_numbers',oLanguage:{sSearch:'',sEmptyTable:'No Alerts',},aoColumnDefs:[{bSortable:false,aTargets:[0,4,5,6,7]},{bVisible:false,aTargets:[5,8]},],aaSorting:[[1,'desc']],asStripeClasses:[],sDom:'T<"clear">lfrtip',oTableTools:{aButtons:[],sSwfPath:'/swf/table-tools/copy_cvs_xls_pdf.swf',sRowSelect:'single',sSelectedClass:'cd-highlight active',fnRowSelected:onAlertRowSelectedFn,fnRowDeselected:onAlertRowDeselectedFn,},fnDrawCallback:function(settings){if($('#alerts-loaded').hasClass('hidden')){$('#alerts-loading').toggleClass('hidden')
$('#alerts-loaded').toggleClass('hidden')}
bindToAlertDeleteClick(this)
loadAlertSelector(this)
var tableTools=TableTools.fnGetInstance('alert-table')
var selected=tableTools.fnGetSelected()
if(selected.length&&!jQuery('#'+selected[0].id).length){tableTools.fnDeselect(selected)}},})
jQuery('.alert-table').css('width','')
bindToAlertFilterClick(alertTable)
var alertIdContainer=jQuery('#alert-id')
var tableTools=TableTools.fnGetInstance('alert-table')
if(alertIdContainer.length){var alertId=alertIdContainer.html()
var row=jQuery('#alert-table tbody tr#alert-id-'+alertId)[0]
if(!row){var pageCount=Math.ceil(alertTable.fnGetData().length/alertTable.fnSettings()._iDisplayLength)
var count=1
while(!row&&count<pageCount){alertTable.fnPageChange('next')
row=jQuery('#alert-table tbody tr#alert-id-'+alertId)[0]
count++}}
tableTools.fnSelect(row)}else{if(alertTable!=null&&!$.isEmptyObject(alertTable.fnGetData()))
tableTools.fnSelect(jQuery('#alert-table tbody tr').get(0))}}
function initBillingHistoryScripts(){jQuery('.data-table').dataTable({bFilter:false,bAutoWidth:true,bLengthChange:false,iDisplayLength:10,aoColumnDefs:[{bSearchable:false,aTargets:[0]}],aaSorting:[[0,'desc']],asStripeClasses:[],oLanguage:{sSearch:'',sEmptyTable:'No billing transactions',oPaginate:{sPrevious:'Prev',},},sPaginationType:'full_numbers',})}
function initLiveIdScripts(){if(jQuery('.scrollable').length){jQuery('.scrollable').scrollable({touch:false,onSeek:function(event,index){var size=jQuery('.scrollable').scrollable().getSize()
if(index==size-1){jQuery('#not-mine-form').submit()}},})}
if(jQuery('#creditor-search-form').length){jQuery('#creditor-search-form').submit(function(event){event.preventDefault()
var form=jQuery(this)
doCreditorSearch(form,handleLiveIdProtectCreditorSearchClick)
return false})
var searchTerm=jQuery('#creditor-name').val()
if(searchTerm.length>=3){doCreditorSearch(jQuery('#creditor-search-form'),handleLiveIdProtectCreditorSearchClick,true)}}}
function initAlertSettingsScripts(){$('#transaction-exceeding-limit-select').change(function(event){var select=$(this)
var form=$('#transaction-exceeding-limit-form')
var alertTypeId=form.find('input[name="alertTypeId"]').val()
var alertThresholdId=select.val()
select.blur()
$.ajax({url:'/member/alert/settings/alert-threshhold.json',type:'POST',data:{alertTypeId:alertTypeId,alertThresholdId:alertThresholdId},dataType:'json',cache:false,success:function(data,textStatus,jqXHR){if(data.success){var customThresholdOption=select.find('option[value="0"]')
if(customThresholdOption.length){customThresholdOption.remove()}}else{alert('Something went wrong updating your alert settings, please reload the page and try again.')}},error:function(jqXHR,textStatus,errorThrown){alert('Something went wrong updating your alert settings, please reload the page and try again.')},})})
$('#activation-toggle').click(function(event){var $this=this
function setNotification(isNotify){$.ajax({url:'/member/alert/settings/score-boost/notification',type:'PUT',contentType:'application/x-www-form-urlencoded',data:'isNotify='+isNotify,})}
if($this.text=='Activate'){$this.text='Deactivate'
setNotification(true)}else if($this.text=='Deactivate'){$this.text='Activate'
setNotification(false)}})}
function initScoreMasterScripts(){$('#email-button').click(function(event){emailButtonConfirmation('#confirm-email-score-master-plan','/member/score-boost/plan/email')})}
function initClosePage5Scripts(){jQuery('#submit-link').click(function(event){jQuery('form').submit()
return false})}
function initAutoLoanCalculator(){;(function($){FormValidation.Validator.dependentPrice={validate:function(validator,$field,options){var value=$field.val()
var sum=0
var fields=options.fields||[]
fields.forEach(function(field){var _$field=$('input[name='+field+']')
sum+=Number(_$field.val())||0})
return sum<=value},}})(jQuery)
$('#auto-calculator-form').formValidation({framework:'bootstrap',fields:{downpayment:{validators:{lessThan:{inclusive:true,value:'purchaseprice',message:'Please enter a value less than the purchase price',},},onSuccess:function(e,data){data.fv.revalidateField('purchaseprice')},},tradein:{validators:{lessThan:{inclusive:true,value:'purchaseprice',message:'Please enter a value less than the purchase price',},},onSuccess:function(e,data){data.fv.revalidateField('purchaseprice')},},purchaseprice:{validators:{dependentPrice:{fields:['downpayment','tradein'],message:'Purchase price must be greater than the sum of your down payment and trade in value',},},onSuccess:function(e,data){if(!data.fv.isValidField('downpayment')){data.fv.revalidateField('downpayment')}
if(!data.fv.isValidField('tradein')){data.fv.revalidateField('tradein')}},},},}).on('success.form.fv',function(event){event.preventDefault()
var form=event.currentTarget
var princ=Number(form.purchaseprice.value)
var downPayment=Number(form.downpayment.value)+Number(form.tradein.value)
var intRate=Number(form.interest.value)
var term=Number(form.term.value)
var taxRate=Number(form.tax.value)/100
var principal=finance.calculatePrincipal(princ,downPayment,taxRate)
var payment=finance.calculatePayment(principal,term,intRate)
var interestPaid=payment*term-principal
form.monthlypayment.value=typeof payment==='number'&&isFinite(payment)?finance.format(payment,'USD'):'--'
form.principal.value=typeof principal==='number'&&isFinite(principal)?finance.format(principal,'USD'):'--'
form.interestpaid.value=typeof interestPaid==='number'&&isFinite(interestPaid)?finance.format(interestPaid,'USD'):'--'
$(event.currentTarget).data('formValidation').resetForm()})}
function initMortgageCalculator(){$('#mortgage-calculator-form').formValidation({framework:'bootstrap',fields:{downpayment:{validators:{lessThan:{inclusive:true,value:'mortgageAmount',message:'Please enter a value less than the home value',},},},mortgageAmount:{onSuccess:function(e,data){data.fv.revalidateField('downpayment')},},},}).on('success.form.fv',function(event){event.preventDefault()
var form=event.currentTarget
var term=Number(form.term.value)*12
var principal=finance.calculatePrincipal(Number(form.mortgage.value),Number(form.downpayment.value),0)
var payment=finance.calculatePayment(principal,term,Number(form.interest.value))
var interestPaid=payment*term-principal
form.principal.value=typeof principal==='number'&&isFinite(principal)?finance.format(principal,'USD'):'--'
form.monthlypayment.value=typeof payment==='number'&&isFinite(payment)?finance.format(payment,'USD'):'--'
form.interestpaid.value=typeof interestPaid==='number'&&isFinite(interestPaid)?finance.format(interestPaid,'USD'):'--'
$(event.currentTarget).data('formValidation').resetForm()})}
function initFormInputMasking(){var phoneMask='(000) 000-0000'
var ssnMask='000-00-0000'
if($('.phone-mask').length)$('.phone-mask').mask(phoneMask)
if($('.ssn-mask').length)$('.ssn-mask').mask(ssnMask,{clearIfNotMatch:true})
if($('.zip-mask').length)$('.zip-mask').mask('00000',{clearIfNotMatch:true})
if($('.birth-date-mask').length)
$('.birth-date-mask').mask('0Z/0Z/0000',{clearIfNotMatch:true,translation:{Z:{pattern:/[0-9]/,optional:true}},})}
function initBillingInformationScripts(){if(jQuery('.has-bind-errors').length||jQuery('#first-credit-card').length){jQuery('#edit-credit-card').trigger('click')}}
var create_display_cookie=function(id,visible,session,expires,path){if(typeof Cookies=='function'){var parameters={path:path,secure:true,sameSite:'None'}
if(!session)parameters.expires=expires!=null?expires:30
Cookies.set(id,visible,parameters)}}
function initBillingFormScripts(){var form=document.getElementById('billing-information-form')
var $submitButton=$(form).find('button[type="submit"]')
var FV=FormValidation.formValidation(form,{fields:{name:{validators:{notEmpty:{message:'This field is required',},stringLength:{message:'Invalid name length',},},},address:{validators:{notEmpty:{message:'This field is required',},stringLength:{message:'Invalid address length',},},},city:{validators:{notEmpty:{message:'This field is required',},stringLength:{message:'Invalid city length',},},},state:{validators:{notEmpty:{message:'This field is required',},},},zip:{validators:{notEmpty:{message:'This field is required',},digits:{message:'This field contains invalid characters',},regexp:{message:'Invalid zip code, must be 5 digits',},stringLength:{message:'Invalid zip code, must be 5 digits',},},},numberAlpha:{validators:{notEmpty:{enabled:false,message:'This field is required',},digits:{message:'Invalid credit card number',},stringLength:{message:'Invalid credit card number',},callback:{message:'Invalid credit card number',callback:function(input){var cards={AMERICAN_EXPRESS:{prefix:['34','37'],},DISCOVER:{prefix:['6011','622126','622127','622128','622129','62213','62214','62215','62216','62217','62218','62219','6222','6223','6224','6225','6226','6227','6228','62290','62291','622920','622921','622922','622923','622924','622925','644','645','646','647','648','649','65',],},MASTERCARD:{prefix:['2221','2222','2223','2224','2225','2226','2227','2228','2229','223','224','225','226','227','228','229','23','24','25','26','270','271','2720','51','52','53','54','55',],},VISA:{prefix:['4'],},}
var type,i
var value=input.value
if(value.length){for(type in cards){for(i in cards[type].prefix){if(input.value.substr(0,cards[type].prefix[i].length)===cards[type].prefix[i]){return true}}}
return false}},},},},expirationMonthAlpha:{validators:{notEmpty:{enabled:false,message:'This field is required',},},},expirationYearAlpha:{validators:{notEmpty:{enabled:false,message:'This field is required',},},},cvv:{validators:{notEmpty:{message:'This field is required',},regexp:{message:'Invalid CVV, must be 3-4 digits',},},},},plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),defaultSubmit:new FormValidation.plugins.DefaultSubmit(),declarative:new FormValidation.plugins.Declarative({html5Input:true,}),trigger:new FormValidation.plugins.Trigger(),sequence:new FormValidation.plugins.Sequence({enabled:{numberAlpha:true,zip:true,},}),},}).on('core.form.invalid',function(){$($submitButton).button('reset')})
$('.cc-edit').click(function(event){event.preventDefault()
$('.cc-read, .cc-write').toggle()
if($('.cc-write').is(':visible')){FV.enableValidator('numberAlpha').enableValidator('expirationMonthAlpha').enableValidator('expirationYearAlpha')}else{FV.disableValidator('numberAlpha').disableValidator('expirationMonthAlpha').disableValidator('expirationYearAlpha')}
$('#is-new-credit-card').val($('#is-new-credit-card').val()!='true')
return false})
initInputTooltip()}
function initConfirm3BScripts(){if(document.getElementById('confirm-3b-form')){FormValidation.formValidation(document.getElementById('confirm-3b-form'),{plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),declarative:new FormValidation.plugins.Declarative({html5Input:true,}),},}).on('core.form.valid',function(){$('#confirm-3b-form').submit()}).on('core.form.invalid',function(){$(this).find('button[type="submit"]').button('reset')})}
$('#toggle-marketing, #toggle-marketing-xs').click(function(){jQuery('#marketing').css('display','none')
jQuery('#confirm').removeClass('hidden')
if($('#three-bureau-order-container').length){if(typeof dataLayer!='undefined'){var theeBureauCharge=$('#three-bureau-order-container').data('three-bureau-report-charge')
if(theeBureauCharge!=null&&theeBureauCharge!='undefined'){dataLayer.push({event:'3BConfirmPurchase',charge3B:theeBureauCharge,})}}}})}
function initView3BScripts(){if(typeof dataLayer!='undefined'){dataLayer.push({event:'3BViewed',})};(function($){'use strict'
var cdContextMenu=$('#cd-context-menu')
var cdContextMenuClassName='cd-three-bureau-context'
var cdContextMenuIdName='cd-context-menu'
var cdContextMenuState=0
var cdContextMenuCallbacks={Source:ShowReportSource}
var CD_CONTEXT_MENU_VERSION='0.1'
var CDContextMenuListener=function(e){if(_clickInsideCdContextMenuContext(e,cdContextMenuClassName,cdContextMenuIdName)){e.preventDefault()
_positionContextMenu(cdContextMenu,e.pageX,e.pageY)
CDToggleContextMenuOn()}else{CDToggleContextMenuOff()}}
var CDContextMenuItemListener=function(e){e.preventDefault()
var el=e.srcElement||e.target
var dataItem=el.dataset.item
var callback=cdContextMenuCallbacks[dataItem]
callback()}
var CDClickListener=function(e){if(e&&e.button!=2){CDToggleContextMenuOff(e)}}
var CDToggleContextMenuOn=function(e){if(cdContextMenuState!=1){cdContextMenuState=1
cdContextMenu.addClass('active')}}
var CDToggleContextMenuOff=function(e){if(cdContextMenuState!=0){cdContextMenuState=0
cdContextMenu.removeClass('active')}}
var _positionContextMenu=function(menu,x,y){var pixelBuffer=5
var windowWidth=window.innerWidth-pixelBuffer
var windowHeight=window.innerHeight-pixelBuffer
var relativeX=x-window.pageXOffset
var relativeY=y-window.pageYOffset
if(relativeX+menu.width()>windowWidth){menu.css('left',x-menu.width())}else{menu.css('left',x)}
if(relativeY+menu.height()>windowHeight){menu.css('top',y-menu.height())}else{menu.css('top',y)}}
var _clickInsideCdContextMenuContext=function(e,menuClassName,contextMenuIdName){var el=e.srcElement||e.target
if(el.classList.contains(menuClassName)){return el}else{while((el=el.parentNode)){if(el.classList&&(el.classList.contains(menuClassName)||el.id==contextMenuIdName)){return el}}}
return false}
$(document).on('contextmenu',CDContextMenuListener)
$(document).on('click',CDClickListener)
$('.cd-context-menu-item a').on('click',CDContextMenuItemListener)
$('.report-history select').on('change',function(event){window.location='/member/credit-report/3b/?serviceBundleFulfillmentId='+$(this).val()
$('#report-history-loading, #TokenDisplay').toggleClass('hidden')})})($)
function ShowReportSource(){var companyName=$('.site-logo').attr('alt')
var threeBureauHtml=$('#TokenDisplay').html()
var $styleSheets=$('link[rel="stylesheet"]')
var html='<!DOCTYPE html><html><head>'
html+='</head><body><div id="content"><div id="reportTop" class="container"><h1>'+
companyName+'</h1><div class="content-box"><div id="TokenDisplay">'+
threeBureauHtml+'</div></div></div></div></body></html>'
html=html.replace(/</g,'&lt;').replace(/>/g,'&gt;')
html='<pre>'+html+'</pre>'
var win=window.open(' ','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=1000,height=720')
win.document.write(html)
win.document.title=companyName
win.document.close()
win.focus()}}
function initActivationScripts(){$('#home-phone').mask('(000) 000-0000',{clearIfNotMatch:true})
$('#ssnAlpha').mask('999-99-9999')
$('#ssnAlphaMatch').mask('999-99-9999')
var form=document.getElementById('security-info-form')
var $submitButton=$(form).find('button[type="submit"]')
var FV=FormValidation.formValidation(form,{fields:{firstName:{validators:{notEmpty:{enabled:false,message:'This field is required',},stringLength:{message:'Invalid field length',},},},middleName:{validators:{stringLength:{message:'Invalid field length',},},},lastName:{validators:{notEmpty:{enabled:false,message:'This field is required',},stringLength:{message:'Invalid field length',},},},'homeAddress.street':{validators:{notEmpty:{enabled:false,message:'This field is required',},stringLength:{message:'Invalid field length',},},},'homeAddress.street2':{validators:{stringLength:{message:'Invalid field length',},},},'homeAddress.city':{validators:{notEmpty:{enabled:false,message:'This field is required',},stringLength:{message:'Invalid field length',},},},'homeAddress.state':{validators:{notEmpty:{enabled:false,message:'This field is required',},},},'homeAddress.zip':{validators:{notEmpty:{enabled:false,message:'This field is required',},digits:{message:'This field contains invalid characters',},regexp:{message:'Invalid zip code, must be 5 digits',},stringLength:{message:'Invalid zip code, must be 5 digits',},},},homePhone:{validators:{notEmpty:{required:false,message:'Please enter a phone number',},phone:{country:'US',message:'The value is not a valid phone number',},},},'identity.ssnAlpha':{validators:{notEmpty:{message:'This field is required',},regexp:{message:'Please enter a valid 9 digit social security number',},stringLength:{message:'Please enter a valid 9 digit social security number',},},},'identity.ssnAlphaMatch':{validators:{notEmpty:{message:'This field is required',},regexp:{message:'Please enter a valid 9 digit social security number',},identical:{compare:function(){return form.querySelector('[name="identity.ssnAlpha"]').value},message:'Social Security Numbers entered did not match, please re-type them.',},stringLength:{message:'Invalid field length',},},},'identity.birthMonth':{validators:{notEmpty:{message:'This field is required',},},},'identity.birthDay':{validators:{notEmpty:{message:'This field is required',},},},'identity.birthYear':{validators:{notEmpty:{message:'This field is required',},stringLength:{message:'Invalid year',},},},'securityQuestionAnswer.securityQuestionId':{validators:{notEmpty:{message:'This field is required',},},},'securityQuestionAnswer.answer':{validators:{notEmpty:{message:'This field is required',},stringLength:{message:'Invalid field length',},},},},plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),defaultSubmit:new FormValidation.plugins.DefaultSubmit(),declarative:new FormValidation.plugins.Declarative({html5Input:true,}),trigger:new FormValidation.plugins.Trigger(),sequence:new FormValidation.plugins.Sequence({enabled:{'identity.ssnAlpha':true,'identity.ssnAlphaMatch':true,},}),},}).on('core.form.invalid',function(){$($submitButton).button('reset')})
if(jQuery('.toggle-personal-info').length){jQuery('.toggle-personal-info').click(function(event){event.preventDefault()
jQuery('#saved-personal-information').addClass('hidden')
jQuery('#personal-information-form-container').removeClass('hidden')
FV.enableValidator('firstName').enableValidator('lastName').enableValidator('homeAddress.street').enableValidator('homeAddress.city').enableValidator('homeAddress.state').enableValidator('homeAddress.zip').enableValidator('homePhone')})}
$('a[data-loading-text]').click(function(event){$(this).button('loading')})}
function initScoreBuilderScripts(){jQuery('a[data-loading-text]').click(function(event){$(this).button('loading')})}
function initScoreToolsScripts(){initFadeInElements('.cd-fade-in')}
function initLoginFormScripts(){var $form=document.getElementById('login-form')
if($form.length){var $submitButton=$form.querySelector('button[type="submit"]')
var usernameInputField=$form.querySelector('input[name="j_username"]')
var rememberMeInput=$form.querySelector('input[name="rememberMe"]')
var username=Cookies.get('remember-me')
var FV=FormValidation.formValidation($form,{fields:{j_username:{validators:{notEmpty:{message:'This field is required',},regexp:{regexp:/^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,10})$/,message:'Please enter a valid email address',},},},j_password:{validators:{notEmpty:{message:'This field is required',},stringLength:{max:100,message:'Your password may not be more than 100 characters in length',},},},},plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),defaultSubmit:new FormValidation.plugins.DefaultSubmit(),},}).on('core.form.invalid',function(){$($submitButton).button('reset')}).on('core.form.valid',function(){localStorage.setItem('alertBubble',true)
if(rememberMeInput){var rememberMe=rememberMeInput.checked
if(rememberMe){var username=usernameInputField.value
Cookies.set('remember-me',username,{expires:1825,path:'/',secure:true,sameSite:'None',})}else{Cookies.remove('remember-me')}}})
if(usernameInputField.value!=''){FV.validateField('j_username').then(function(status){if(status==='Valid')usernameInputField.removeAttribute('readonly')})}else if(rememberMeInput){if(username){usernameInputField.value=username
rememberMeInput.checked=true}}else{}}
setInputValidation('j_username',FV)
setInputValidation('j_password',FV)}
function initEmailRecoveryScripts(){var $form=document.getElementById('email-recovery-credentials-form')
if($form){var $submitButton=$form.querySelector('button[type="submit"]')
var FV=FormValidation.formValidation($form,{fields:{email:{validators:{notEmpty:{message:'This field is required',},regexp:{regexp:/^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,10})$/,message:'Please enter a valid email address',},},},password:{validators:{notEmpty:{message:'Please enter your password',},regexp:{regexp:'^(?=[-a-zA-Z0-9@_*.!#$%^&]*$).*',message:'The password contains invalid characters',},stringLength:{min:8,max:100,message:'Your password must be at least 8 and no more than 100 characters in length',},different:{compare:function(){if(document.querySelector('[name="email"]')){return document.querySelector('[name="email"]').value}else{return''}},message:'Your password cannot be the same as email',},},},confirmPassword:{validators:{notEmpty:{message:'Please confirm your new password',},regexp:{regexp:'^(?=[-a-zA-Z0-9@_*.!#$%^&]*$).*',message:'The password contains invalid characters',},stringLength:{min:8,max:100,message:'Your password must be at least 8 and no more than 100 characters in length',},identical:{compare:function(){return document.querySelector('[name="password"]').value},message:'Please make sure your passwords match',},},},},plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),defaultSubmit:new FormValidation.plugins.DefaultSubmit(),trigger:new FormValidation.plugins.Trigger(),sequence:new FormValidation.plugins.Sequence({enabled:{confirmPassword:true,},}),},}).on('core.form.invalid',function(){$($submitButton).button('reset')}).on('core.form.valid',function(){var $currentPageInput=$($form).find('input[name="currentPage"]')
if($currentPageInput.length&&$currentPageInput.val()=='change-credentials'){Cookies.remove('remember-me')}})}}
function initQuickDefinitionScripts(){if($('.list-navigation').length){$('.list-navigation').listnav({showCounts:false})}}
function initInsuranceFormScripts(){$('#fraud-insurance-activation-form').on('submit',function(e){e.preventDefault()
jQuery.ajax({url:'/member/api/id-fraud-insurance/register',type:'POST',cache:false,success:function(data,textStatus,jqXHR){location.reload()},error:function(jqXHR,textStatus,errorThrown){var message=''
if(jqXHR.status===422){message=jqXHR.responseJSON.errors[0].message}else{message='Sorry something went wrong. Please try again.'}
$('<p class="alert alert-danger">'+message+'</p>').insertBefore('#fraud-insurance-activation-form')
setTimeout(()=>location.reload(),2000)},})})}
function handleModalLinkClick(event){event.preventDefault()
var link=jQuery(this)
var isIframe=link.hasClass('modal-iframe')?true:false
var href=link.attr('href')
var title=link.attr('title')
var callback
if(event.data&&event.data.callback){callback=event.data.callback}else if(link.hasClass('reload')){callback=reloadParent}else{callback=closeModal}
generateModal(isIframe,href,title,null,callback)
return false}
function generateModal(isIframe,href,title,modalClass,callback){if(isIframe){var queryStart=href.indexOf('?')
var query=''
var path=queryStart>-1?href.substring(0,queryStart):href
if(queryStart>-1&&queryStart<href.length-1){query=href.substring(queryStart+1,href.length)
query=query.replace(/isWindowed=.*?(&|$)/g,'')
if(query!==''&&query.lastIndexOf('&')!==query.length-1)query+='&'}
href=path+'?'+query+'isWindowed=true'}
var modalHtml='<div id="cd-modal" class="modal container fade">'+'<div class="modal-close hide">'+'<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>'+'</div>'+'<div class="modal-header">'+'<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>'+'<h3 class="modal-title"></h3>'+'</div>'+'<div class="modal-body"></div>'+'</div>'
var modalIframeBodyContent='<div class="modal-body-content" style="height: 650px;">'+'<iframe src="'+
href+'" width="100%" height="100%"></iframe>'+'</div>'
var modal=jQuery(modalHtml)
if(isIframe){modal.find('.modal-body').addClass('modal-iframe-body').html(modalIframeBodyContent)}else{modal.find('.modal-body').html(jQuery(href).html())}
if(title){modal.find('.modal-title').html(title)}else{modal.find('.modal-close').removeClass('hide')
modal.find('.modal-header').addClass('hide')}
if(modalClass){modal.addClass(modalClass)}
if(callback){modal.data('callback',callback)}
modal.modal({})
jQuery('#cd-modal').removeAttr('tabindex')
modal.on('hidden',function(){jQuery(this).remove()})}
function handleButtonClickLoadingMessage(event){var btn=jQuery(this)
btn.button('loading')}
function handleEditCreditCardClick(event){event.preventDefault()
jQuery('#is-new-credit-card').val(jQuery('#is-new-credit-card').val()!='true')
jQuery('#edit-credit-card').html(jQuery('#edit-credit-card').html()=='(Change)'?'(Cancel Change)':'(Change)')
jQuery('#credit-card-information .edit, #credit-card-information .no-edit').toggle()
return false}
function doCreditorSearch(form,callback,isAutomaticSearch){var source=jQuery('#creditor-search-results-template').html()
var tpl=Handlebars.compile(source)
jQuery.ajax({url:'/creditor/search.json',type:'POST',data:form.serialize(),cache:false,success:function(data,textStatus,jqXHR){if(data.success){jQuery('#creditor-search-results').html(tpl(data))
if(!isAutomaticSearch)form.find('button[type="submit"]:visible').focus()
if(callback)callback()}else{console.log('Search creditor was not a success')}},error:function(jqXHR,textStatus,errorThrown){console.log('Search creditor had an error: '+errorThrown)},})}
function handleLiveIdProtectCreditorSearchClick(){jQuery('#creditor-search-results-content a').click(function(event){event.preventDefault()
var anchor=jQuery(this)
var creditorId=getURLParameter('creditorId',anchor.attr('href'))
jQuery('#not-mine-form').prepend('<input type="hidden" name="creditorId" value="'+creditorId+'" />')
jQuery('.scrollable').scrollable().next()
return false})}
function handleActionSubmit(event){$(event.target).addClass('disabled').button('loading')}
function closeModal(){if(parent.jQuery('.modal:visible').length){parent.jQuery('.modal:visible').modal('hide')}}
function reloadParent(){parent.window.location.reload()}
function drawLiveIdSettingsProgressBar(percentage,location){location.find('.chart-container').dxBarGauge({label:false,startValue:0,endValue:100,values:[percentage],relativeInnerRadius:0.7,geometry:{startAngle:90,endAngle:90,},palette:['#6BE59D','#6BE59D','#6BE59D','#6BE59D','#6BE59D'],})}
function getRenderLocation(mobileLocation,desktopLocation){var location
if(mobileLocation=='block'){location=jQuery('#live-id-protect-mobile')}else if(desktopLocation=='block'){location=jQuery('#live-id-protect')}else{location=null}
return location}
function initInputTooltip(){if($('.input-group-addon a.help-tooltip').length){$('.input-group-addon a.help-tooltip').each(function(){$(this).click(function(event){event.preventDefault()})
var id=$(this).attr('id')
if(id!=null){var contentId='#'+id+'-content'
if($(contentId).length){var contentData=$(contentId).html()
$(this).popover({html:true,content:contentData,template:'<div class="popover input-help"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"><div></div>',placement:'left',trigger:'click',})}}})}}
var initialize_tooltip_from_content_class=function(contentSelector,idExtension,targetElement){jQuery(contentSelector).each(function(){var elementClass=this.id.substring(0,this.id.lastIndexOf(idExtension))
var contentId=this.id
var tooltipData={title:jQuery('#'+contentId).html(),}
if(targetElement!=null&&targetElement.length){targetElement.find('.'+elementClass).tooltip(tooltipData)}else{jQuery('.'+elementClass).tooltip(tooltipData)}})}
var get_popover_placement=function(defaultPosition,width,height){return function(tip,element){var position,top,bottom,left,right
var jQueryelement=jQuery(element)
var boundTop=jQuery(document).scrollTop()
var boundLeft=jQuery(document).scrollLeft()
var boundRight=boundLeft+jQuery(window).width()
var boundBottom=boundTop+jQuery(window).height()
var pos=jQuery.extend({},jQuery(element).offset(),{width:element.offsetWidth,height:element.offsetHeight,})
var isWithinBounds=function(elPos){return(boundTop<elPos.top&&boundLeft<elPos.left&&boundRight>elPos.left+width&&boundBottom>elPos.top+height)}
var testTop=function(){if(top===false)return false
top=isWithinBounds({top:pos.top-height,left:pos.left+pos.width/2-width/2,})
return top?'top':false}
var testBottom=function(){if(bottom===false)return false
bottom=isWithinBounds({top:pos.top+pos.height,left:pos.left+pos.width/2-width/2,})
return bottom?'bottom':false}
var testLeft=function(){if(left===false)return false
left=isWithinBounds({top:pos.top+pos.height/2-height/2,left:pos.left-width,})
return left?'left':false}
var testRight=function(){if(right===false)return false
right=isWithinBounds({top:pos.top+pos.height/2-height/2,left:pos.left+pos.width,})
return right?'right':false}
switch(defaultPosition){case'top':if((position=testTop()))return position
case'bottom':if((position=testBottom()))return position
case'left':if((position=testLeft()))return position
case'right':if((position=testRight()))return position
default:if((position=testTop()))return position
if((position=testBottom()))return position
if((position=testLeft()))return position
if((position=testRight()))return position
return defaultPosition}}}
jQuery.fn.toggleDisabled=function(){return this.each(function(){this.disabled=!this.disabled})}
function initSplashPage(){var $dontShowToggle=$('#dont-show')
if($dontShowToggle.length){var id=$('body').attr('id')
var bodyId=id?id:false
if(bodyId){$dontShowToggle.bind('click',function(event){var isTargetChecked=$(event.currentTarget).is(':checked')
create_display_cookie(bodyId,isTargetChecked,false,360,'/')
create_display_cookie(bodyId+'-permanent',isTargetChecked,false,360,'/')})}}}
function setInputValidation(inputId,initializedForm){var inputField=document.getElementById(inputId)
inputField.addEventListener('blur',function(){if(inputField.value.length>0){initializedForm.validateField(inputId)}
inputField.addEventListener('keyup',function(){if(inputField.value.length>0){initializedForm.validateField(inputId)}})})}
function initAlertBubble(){if(localStorage.getItem('alertBubble')==='true'){const $alertBubble=$('#alert-bubble')
$alertBubble.removeClass('alert-bubble-closed')
const listLength=$('#alert-bubble .alert-bubble__list-item').length
$('#alert-bubble-steps').html(listLength)
if(listLength===1){$alertBubble.addClass('alert-bubble-list-1')
$('#alert-bubble-step-plurality').hide()}
$('#alert-bubble.alert-bubble-small .alert-bubble__content').click(function(){$alertBubble.removeClass('alert-bubble-small').addClass('alert-bubble-large')})
$('#alert-bubble .alert-bubble__control').on('click','.alert-bubble__control-minimize',function(){$alertBubble.addClass('alert-bubble-small').removeClass('alert-bubble-large')})
$('#alert-bubble .alert-bubble__control').on('click','.alert-bubble__control-close',function(){$alertBubble.addClass('alert-bubble-closed')
localStorage.setItem('alertBubble','false')})}}
var mmBankTitle='Please find your online bank account to view your transactions.'
var mmCreditCardTitle='Please find your online credit card account to view your transactions.'
var mmBillTitle='Please find your online household account (i.e. - utility/wireless/etc) to track your balances.'
var mmLoanTitle='Please find your online lender account to view your transactions.'
var mmInvestmentTitle='Please find your online investment/brokerage account to view your transactions.'
var mmPropertyTitle="IMPORTANT: To see property values, select 'Others' in the lower left, then click on 'Real-Estate Accounts'."
function formatCurrency(num,showCents,hideDollarSign){var sign,cents
if(num==null)num='0'
num=num.toString().replace(/\$|\,/g,'')
if(isNaN(num)){num='0'}
sign=num==Math.abs(num)
num=Math.floor(Math.abs(num)*100+0.50000000001)
cents=num%100
num=showCents?Math.floor(num/100).toString():Math.round(num/100).toString()
if(cents<10){cents='0'+cents}
for(var i=0;i<Math.floor((num.length-(1+i))/3);i++){num=num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3))}
return(sign?'':'-')+(hideDollarSign?'':'$')+num+(showCents?'.'+cents:'')}
function getURLParameter(name,url){if(!url)url=location.search
return(decodeURIComponent((new RegExp('[?|&]'+name+'='+'([^&;]+?)(&|#|;|$)').exec(url)||[,''])[1].replace(/\+/g,'%20'))||null)}
function toTitleCase(str){return str?str.replace(/\w\S*/g,function(txt){return txt.charAt(0).toUpperCase()+txt.substr(1).toLowerCase()}):str}
function getNameByValue(object,value){var name
for(x in object){if(object[x]==value){name=x
break}}
return name}
var sort_by;(function(){var default_cmp=function(a,b){if(a==b)return 0
return a<b?-1:1},getCmpFunc=function(primer,reverse){var dfc=default_cmp,cmp=default_cmp
if(primer){cmp=function(a,b){return dfc(primer(a),primer(b))}}
if(reverse){return function(a,b){return-1*cmp(a,b)}}
return cmp}
sort_by=function(){var fields=[],n_fields=arguments.length,field,name,reverse,cmp
for(var i=0;i<n_fields;i++){field=arguments[i]
if(typeof field==='string'){name=field
cmp=default_cmp}else{name=field.name
cmp=getCmpFunc(field.primer,field.reverse)}
fields.push({name:name,cmp:cmp,})}
return function(A,B){var a,b,name,result
for(var i=0;i<n_fields;i++){result=0
field=fields[i]
name=field.name
result=field.cmp(A[name],B[name])
if(result!==0)break}
return result}}})()
function loadAlertSelector(alertTable){markAllReadButton=jQuery('.mark-all-read')
markAllReadButton.unbind('click')
markAllReadButton.click(function(event){loadReadAllModal(alertTable,$(this))
return false})}
function loadReadAllModal(alertTable,button){button.button('loading')
var modal=jQuery('#confirm-read-all').modal()
modal.on('shown.bs.modal',function(){var continueButton=modal.find('button.continue')
continueButton.unbind('click')
continueButton.click(function(event){modal.modal('hide')
jQuery.ajax({url:'/member/alert/mark-all-read.json',type:'POST',dataType:'json',cache:false,success:function(data){if(data.success){if(data.alertUnviewedCount!=null){var alertUnviewedNotification=jQuery('.alert-unviewed-count')
var allRows=alertTable.fnGetNodes()
for(var i=0;i<allRows.length;i++){var row=jQuery(allRows[i])
row.removeClass('unviewed')
row.find('.alert-viewed-column').html('')
alertUnviewedNotification.remove()}}}else{alert('Marking all Rows Read encountered an error')}},error:function(){alert('Marking all Rows Read encountered an error')},})})
modal.on('hide.bs.modal',function(){button.button('reset')})})
return false}
function emailButtonConfirmation(modalId,apiEndpoint){button=jQuery('#foo')
var modal=jQuery(modalId).modal()
modal.on('shown.bs.modal',function(){var continueButton=modal.find('button.continue')
continueButton.unbind('click')
continueButton.click(function(event){modal.modal('hide')
$.ajax({url:apiEndpoint,type:'GET',})})
modal.on('hide.bs.modal',function(){button.button('reset')})})}
function loadWillBeNotifiedAlert(isNotify,model){if(isNotify!=false||model.isNotifyFlag==true)return false
button=jQuery('#foo')
var modal=jQuery('#confirm-will-be-notified').modal()
modal.on('shown.bs.modal',function(){var continueButton=modal.find('button.continue')
continueButton.unbind('click')
continueButton.click(function(event){modal.modal('hide')
$.ajax({url:'/member/alert/settings/score-boost/notification',type:'PUT',contentType:'application/x-www-form-urlencoded',data:'isNotify=true',success:function(){model.isNotifyFlag=true
$('#is-notify').removeClass('hidden')
$('#is-not-notify').addClass('hidden')},})})
modal.on('hide.bs.modal',function(){button.button('reset')})})}
function bindToAlertDeleteClick(alertTable){jQuery('.alert-delete-link').unbind('click')
jQuery('.alert-delete-link').click(function(event){var alertId=jQuery(this).parents('tr.alert-row').first().attr('id').replace('alert-id-','')
var tableTools=TableTools.fnGetInstance(jQuery(this).parents('table').get(0))
jQuery.ajax({url:'/member/alert/delete.json',type:'POST',dataType:'json',cache:false,data:'id='+alertId,success:function(data){var row=jQuery('#alert-id-'+alertId).get(0)
if(tableTools){var selected=tableTools.fnGetSelected()
if(selected.length&&row.id==selected[0].id){tableTools.fnDeselect(row)}}
alertTable.fnDeleteRow(row)
var alertUnviewedCount=data.alertUnviewedCount
var alertUnviewedNotification=jQuery('.alert-unviewed-count')
if(alertUnviewedCount==0){alertUnviewedNotification.remove()}else{alertUnviewedNotification.html(alertUnviewedCount)}},})
return false})}
function bindToAlertFilterClick(alertTable){jQuery('.alert-filter a').click(function(event){var anchor=jQuery(this)
anchor.parents('.alert-filters').find('a').removeClass('active')
anchor.addClass('active')
var filterId=anchor.attr('id')
if(filterId=='all-filter'){alertTable.fnFilter('',8)}else if(filterId=='live-id-protect-filter'){alertTable.fnFilter('Credit Monitoring',8,false,true,false,true)}else if(filterId=='money-manager-filter'){alertTable.fnFilter('Money Manager',8,false,true,false,true)}else if(filterId=='membership-filter'){alertTable.fnFilter('Membership',8,false,true,false,true)}
return false})}
function markAlertViewed(row,alertId){jQuery.ajax({url:'/member/alert/mark-viewed.json',type:'POST',dataType:'json',cache:false,data:'id='+alertId,success:function(data){markAlertViewedUi(row,data.alertUnviewedCount)},})}
function markAlertViewedUi(row,alertUnviewedCount){row.removeClass('unviewed')
row.find('.alert-viewed-column').html('')
var alertUnviewedNotification=jQuery('.alert-unviewed-count')
if(alertUnviewedCount==0){alertUnviewedNotification.remove()}else{alertUnviewedNotification.html(alertUnviewedCount)}}
var alertTemplates={address:{id:'address-template',tpl:null},alert:{id:'alert-template',tpl:null},employment:{id:'employment-template',tpl:null},inquiry:{id:'inquiry-template',tpl:null},paymentReminder:{id:'payment-reminder-template',tpl:null},publicRecord:{id:'public-record-template',tpl:null},tradeMonitoring:{id:'trade-monitoring-template',tpl:null},transactionItem:{id:'transaction-item-template',tpl:null},transactionItemYodlee:{id:'transaction-item-yodlee-template',tpl:null},triggerEvent:{id:'trigger-event-template',tpl:null},}
var onAlertRowSelectedFn=function onAlertRowSelected(node){var row=jQuery(node[0])
var alertId=row.attr('id').replace('alert-id-','')
var oTable=jQuery('#alert-table').dataTable()
if(oTable.fnIsOpen(node[0])){oTable.fnClose(node[0])}else{jQuery.ajax({url:'/member/alert/load.json',type:'GET',dataType:'json',cache:false,data:'id='+alertId,success:function(data){if(data.success){var tpl
var oTable=jQuery('#alert-table').dataTable()
if(data.address){tpl=loadAlertTemplate('address')}else if(data.employment){tpl=loadAlertTemplate('employment')}else if(data.inquiry){tpl=loadAlertTemplate('inquiry')}else if(data.paymentDue){tpl=loadAlertTemplate('paymentReminder')}else if(data.publicRecord){tpl=loadAlertTemplate('publicRecord')}else if(data.tradeMonitoring){tpl=loadAlertTemplate('tradeMonitoring')}else if(data.transactionItem){tpl=loadAlertTemplate('transactionItem')}else if(data.transactionItemYodlee){tpl=loadAlertTemplate('transactionItemYodlee')}else if(data.triggerEvent){tpl=loadAlertTemplate('triggerEvent')}else{tpl=loadAlertTemplate('alert')}
var alertHtml=tpl(data)
oTable.fnOpen(node[0],alertHtml,'details')
if(data.alertUnviewedCount!=null){markAlertViewedUi(row,data.alertUnviewedCount)}
jQuery('.action-submit').click(handleActionSubmit)}else{alert('Loading of alert details failed for '+row.find('.alert-title-column').html())}},error:function(){alert('Loading of alert details failed for '+row.find('.alert-title-column').html())},})}}
function loadAlertTemplate(templateName){var tpl=null,alertTemplate=alertTemplates[templateName]
if(alertTemplate.tpl==null){var source=$('#'+alertTemplate.id).html()
tpl=Handlebars.compile(source)
alertTemplate.tpl=tpl}else{tpl=alertTemplate.tpl}
return tpl}
var onAlertRowDeselectedFn=function onAlertRowDeselected(node){var oTable=jQuery('#alert-table').dataTable()
if(oTable.fnIsOpen(node[0]))oTable.fnClose(node[0])}
function initActionTable(){var actionTables=$('.action-table')
var pageLength=5
var actionSearchId=$('#action-id').data('actionId')
var actionIndex=$('#action-index').data('actionIndex')
if(typeof actionIndex=='number'){var pageId=Math.floor((actionIndex+1)/pageLength)}
actionTables.each(function(){var actionTable=$(this).dataTable({bAutoWidth:false,bLengthChange:false,iDisplayLength:pageLength,sPaginationType:'full_numbers',oLanguage:{sSearch:'',sEmptyTable:'No Actions',},aoColumnDefs:[{bSortable:false,aTargets:[4]}],aaSorting:[[0,'desc']],asStripeClasses:[],sDom:'T<"clear">lfrtip',oTableTools:{aButtons:[],sSwfPath:'/swf/table-tools/copy_cvs_xls_pdf.swf',sRowSelect:'single',sSelectedClass:'cd-highlight active',fnRowSelected:function(node){var row=jQuery(node)
var actionId=row.attr('id').replace('action-id-','')
actionTable.fnOpen(node[0],jQuery('#action-detail-'+actionId).html(),'details')
onActionTableDraw(actionTable)},fnRowDeselected:function(node){if(actionTable.fnIsOpen(node[0]))actionTable.fnClose(node[0])},},fnDrawCallback:function(){var actionTable=this
onActionTableDraw(actionTable)},})
selectRowInActionTable(actionTable,actionSearchId,pageId)})}
function onActionTableDraw(actionTable){var deleteActionLink=actionTable.find('.action-delete-link')
jQuery(deleteActionLink).unbind('click')
jQuery(deleteActionLink).click(function(event){var actionId=jQuery(this).attr('title')
var modal=jQuery('#cancel-action-modal').modal()
var currentTable=actionTable
modal.on('shown.bs.modal',function(){var continueButton=modal.find('button.continue')
continueButton.unbind('click')
continueButton.click(function(event){modal.modal('hide')
jQuery.ajax({url:'/member/action/delete.json',type:'POST',dataType:'json',cache:false,data:'id='+actionId,success:function(data){if(data.success){var currentRow=$('#action-id-'+actionId)
var currentRowDetails=$('#action-detail-'+actionId)
var currentSlide=currentRow.parents('.sb-slider__slide')
var pageId=Number.parseInt($('.paginate_active').html())
var cancelledHtml='<span class="action-cancelled text-600">Action Cancelled</span>'
currentRow.find('.action-status-column').html(cancelledHtml)
currentRowDetails.find('.action-status-description').html(cancelledHtml)
if(currentSlide.length){var actionCount=currentSlide.find('.actions-taken-count')
actionCount.html(actionCount.html()-1)}
if(pageId<0){pageId=0}else{pageId--}
selectRowInActionTable(currentTable,Number.parseInt(actionId),pageId)}else{alert("We're sorry but there was a problem canceling your pending action. Please contact customer service.")}},error:function(){alert("We're sorry but there was a problem canceling your pending action. Please contact customer service.")},})})})
return false})}
function selectRowInActionTable(table,actionId,pageId){if(table!=null&&!$.isEmptyObject(table.fnGetData())){var tableTools=TableTools.fnGetInstance(table.attr('id'))
if(tableTools&&typeof tableTools!=='undefined'){if(typeof actionId=='number'&&typeof pageId=='number'){table.fnPageChange(pageId,true)
var row=table.find('#action-id-'+actionId)
if(row&&typeof row!=='undefined'){tableTools.fnSelect(row)}else{tableTools.fnSelect(table.find('tbody tr').first())}}else{tableTools.fnSelect(table.find('tbody tr').first())}}}}
var onTransactionDetailRowCallback=function onTransactionDetailRowCallback(nRow,aData,iDisplayIndex,iDisplayIndexFull){var row=jQuery(nRow)
var dateColumn=row.children('.transaction-detail-date-column')
var descriptionColumn=row.children('.transaction-detail-description-column')
var categoryColumn=row.children('.transaction-detail-category-column')
var amountColumn=row.children('.transaction-detail-amount-column')
var institutionColumn=row.children('.transaction-detail-institution-column')
var accountColumn=row.children('.transaction-detail-account-column')
var actionColumn=row.children('.transaction-detail-action-column')
var date=aData[0]
var description=aData[1]
var category=aData[2]
var amount=aData[3]
var institutionName=aData[4]
var accountName=aData[5]
var feedDescription=aData[6]
var accountNumber=aData[7].replace(/([^\n]{1,30})/g,'$1\n')
var transactionType=aData[8]
var transactionStatus=aData[9]
var transactionId=aData[10]
var memberId=aData[11]
var institutionId=aData[12]
var isCredit=transactionType=='CREDIT'
var isDebit=transactionType=='DEBIT'
var isPending=transactionStatus=='PENDING'
var isModal=window.location!=window.parent.location
if(isPending)row.addClass('light-grey italic')
if(description)
descriptionColumn.html('<a href="#" class="transaction-popover hidden-xs">'+
description+'</a>'+'<span class="visible-xs-inline">'+
description+'</span>')
if(category)categoryColumn.attr('title',category)
amountColumn.html((isDebit?'-':'')+formatCurrency(Math.abs(amount),true))
if(isCredit)amountColumn.addClass('green')
if(institutionColumn.length){institutionColumn.attr('title',institutionName)
institutionColumn.html('<div class="mm-logo mm-logo-xs"><img src="/api/money-manager/institution/'+
institutionId+'/small-logo"></div>'+
institutionName)}
if(accountColumn.length){if(accountName){accountColumn.attr('title',accountName)}else{accountColumn.html('--')}}
if(actionColumn.length){var classesDesktop='action-submit mm-transaction-action-btn hidden-xs hidden-sm'
var classesMobile='action-submit visible-sm visible-xs'
actionColumn.html('<a target="_top" href="/member/action-wizard/select-transaction-action.htm?recordId='+
transactionId+'&recordType=TRANSACTION&initiator=MONEY_MANAGER" class="'+
classesDesktop+'" data-loading-text="Processing...">Dispute</a><a target="_top" href="/member/action-wizard/select-transaction-action.htm?recordId='+
transactionId+'&recordType=TRANSACTION&initiator=MONEY_MANAGER" class="'+
classesMobile+'" data-loading-text="Processing...">Dispute</a>')
actionColumn.find('a.action-submit').click(function(event){if(isModal){window.parent.jQuery('.modal-title:visible').html('&nbsp;')}
handleActionSubmit(event)})}
var descriptionTip='<dl class="transaction-detail">'+'<dt>Date</dt><dd>'+
date+'</dd>'+'<dt>Statement Description</dt><dd>'+
feedDescription+'</dd>'+'<dt>Category</dt><dd>'+
category+'</dd>'+'<dt>Amount</dt><dd'+
(isCredit?' class="green"':'')+'>'+
(isDebit?'-':'')+
formatCurrency(Math.abs(amount),true)+'</dd>'+'<dt>Institution</dt><dd>'+
institutionName+'</dd>'+
(accountName?'<dt>Account</dt><dd>'+accountName+'</dd>':'')+
(accountNumber?'<dt>Account Number</dt><dd>'+accountNumber+'</dd>':'')+'</dl>'
row.find('a.transaction-popover').popover({placement:get_popover_placement('right',250,200),title:isPending?'Pending Transaction Detail':'Transaction Detail',content:descriptionTip,html:true,sanitize:false,trigger:'click',delay:250,container:'body',}).click(function(event){event.preventDefault()
jQuery(this).focus()
return false}).blur(function(){jQuery(this).popover('hide')})
return false}
function initFadeInElements(selector){var scheduledAnimationFrame=false
var $elements=$(selector)
var tickCallback=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame||function(callback){setTimeout(callback,1000/60)}
$elements.each(function(){var $this=$(this)
var pageYOffset=window.pageYOffset
var innerHeight=window.innerHeight
$this.data({middle:($this.outerHeight()>>1)+$this.offset().top,})
if($this.data('middle')>pageYOffset+innerHeight)this.classList.add('cd-invisible')})
function toggleVisibility(){scheduledAnimationFrame=false
var pageYOffset=window.pageYOffset
var innerHeight=window.innerHeight
$elements.each(function(){var $this=$(this)
if($this.data('middle')>pageYOffset+innerHeight)this.classList.add('cd-invisible')
else this.classList.remove('cd-invisible')
return $this})}
function onScroll(){if(!scheduledAnimationFrame){tickCallback(toggleVisibility)}
scheduledAnimationFrame=true}
$(window).scroll(onScroll)}
function initAppDownloadPrompt(){var a=navigator.userAgent;var deviceDetected=a.match(/android/i)?"android":a.match(/ipad/i)||a&&Ia(a)&&a&&-1<a.indexOf("Macintosh")&&Ja(a,13)&&screen.height>screen.width?"ipad":a.match(/i(os|p(hone|od))/i)?"ios":a.match(/\(BB[1-9][0-9]*\;/i)?"blackberry":a.match(/Windows Phone/i)?"windows_phone":a.match(/Kindle/i)||a.match(/Silk/i)||a.match(/KFTT/i)||a.match(/KFOT/i)||a.match(/KFJWA/i)||a.match(/KFJWI/i)||a.match(/KFSOWI/i)||a.match(/KFTHWA/i)||a.match(/KFTHWI/i)||a.match(/KFAPWA/i)||a.match(/KFAPWI/i)?"kindle":!1
if(deviceDetected!=="android")return
const appInstallPrompt=localStorage.getItem('appInstallPrompt')
const date=new Date()
if(!appInstallPrompt||(date>appInstallPrompt)){const $modal=$('#app-download-modal')
$modal.addClass('open')
$('body').on('click','[data-dismiss-modal]',closeModal)}}
function closeModal(){const date=new Date();const weekInMilliseconds=7*24*60*60*1000;const appInstallPromptData=date.getTime()+weekInMilliseconds
localStorage.setItem('appInstallPrompt',appInstallPromptData)
document.getElementById('app-download-modal').classList.remove('open')}
function Ia(a){return!!/^((?!chrome|android|crios|firefox|fxios|edg|yabrowser).)*safari/i.test(a)}
function Ja(a,b){b=b||11;var c=/version\/([^ ]*)/i.exec(a);if(c&&c[1])
try{if(parseFloat(c[1])>=b)
return!0}catch(d){}
return!1}
var FV=(function(){'use strict'
var publicMethods={}
var fallbackMax=100000
var initializeForm=function($form,fields){var $submitButton=$form.querySelector('button[type="submit"]')
var fv=FormValidation.formValidation($form,{fields:fields,plugins:{bootstrap3:new FormValidation.plugins.Bootstrap3(),icon:new FormValidation.plugins.Icon({valid:'fa fa-check',invalid:'fa fa-times',validating:'fa fa-refresh',}),submitButton:new FormValidation.plugins.SubmitButton(),trigger:new FormValidation.plugins.Trigger({event:{reason:'blur keyup',},}),sequence:new FormValidation.plugins.Sequence({enabled:{password:true,confirmPassword:true,},}),},}).on('core.form.invalid',function(){$($submitButton).button('reset')}).on('core.element.validating',function(e){$(e.element).parent().children('.help-block').hide()}).on('core.form.valid',function(){const $reason=$('textarea[name="reason"]')
if($reason.length){$reason.val(Filter.clean($reason.val()))}
$form.submit()})
return fv}
function getOptions(){var options={firstName:{validators:{notEmpty:{message:'This field is required',},},},lastName:{validators:{notEmpty:{message:'This field is required',},},},email:{validators:{notEmpty:{message:'This field is required',},regexp:{regexp:/^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,10})$/,message:'Please enter a valid email address',},},},fromEmail:{validators:{notEmpty:{message:'This field is required',},regexp:{regexp:/^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,10})$/,message:'Please enter a valid email address',},},},j_username:{validators:{notEmpty:{message:'This field is required',},regexp:{regexp:/^([a-zA-Z0-9_\-\.]+)@([a-zA-Z0-9_\-\.]+)\.([a-zA-Z]{2,10})$/,message:'Please enter a valid email address',},},},j_password:{validators:{notEmpty:{message:'This field is required',},stringLength:{max:100,message:'Your password may not be more than 100 characters in length',},},},phone:{validators:{phone:{country:'US',message:'The value is not a valid phone number',},notEmpty:{message:'Please enter a phone number',},},},contactPhone:{validators:{phone:{country:'US',message:'The value is not a valid phone number',},notEmpty:{message:'Please enter a phone number',},},},telephone:{validators:{phone:{country:'US',message:'The value is not a valid phone number',},notEmpty:{message:'Please enter a phone number',},},},passwordAlpha:{validators:{notEmpty:{message:'Please enter your password',},stringLength:{max:100,message:'Your password may not be more than 100 characters in length',},},},password:{validators:{notEmpty:{message:'Please enter your password',},regexp:{regexp:'^(?=[-a-zA-Z0-9@_*.!#$%^&]*$).*',message:'The password contains invalid characters',},stringLength:{min:8,max:100,message:'Your password must be at least 8 and no more than 100 characters in length',},different:{compare:function(){if(document.querySelector('[name="email"]')){return document.querySelector('[name="email"]').value}else{return''}},message:'Your password cannot be the same as email',},},},confirmPassword:{validators:{notEmpty:{message:'Please confirm your new password',},regexp:{regexp:'^(?=[-a-zA-Z0-9@_*.!#$%^&]*$).*',message:'The password contains invalid characters',},stringLength:{min:8,max:100,message:'Your password must be at least 8 and no more than 100 characters in length',},identical:{compare:function(){return document.querySelector('[name="password"]').value},message:'Please make sure your passwords match',},},},ssn:{validators:{notEmpty:{message:'Please enter your social security number',},stringLength:{min:isAndroid?9:11,max:11,message:'Please enter a valid 9 digit social security number',},regexp:{regexp:'^(?=[-0-9]*$).*',message:'Please enter a valid 9 digit social security number',},},},'identity.ssnPartial':{validators:{notEmpty:{message:'Please enter your social security number',},stringLength:{min:4,max:4,message:'Please enter the last 4 digits of your social security number',},regexp:{regexp:'^(d{4})$',message:'Please enter the last 4 digits of your social security number',},},},birthDate:{validators:{notEmpty:{message:'Please enter your birth date',},date:{format:'MM/DD/YYYY',message:'Please enter a date',},},},debtSettlementMonthsToPay:{validators:{lessThan:{max:36,message:'Please request a settlement period no longer than 36 months',},greaterThan:{min:0,message:'Please request a settlement period of at least 0 months (immediate payoff)',},notEmpty:{message:'This field is required',},},},debtSettlementInterestPercentage:{validators:{greaterThan:{min:4.0,message:'Please select an interest rate between 4 and 22%',},lessThan:{max:22,message:'Please select an interest rate between 4 and 22%',},notEmpty:{message:'This field is required',},},},debtSettlementOfferAmount:{validators:{greaterThan:{min:0,message:'Your payoff offer must be more than 0',inclusive:false,},lessThan:{max:'currentBalanceAmount'in window?currentBalanceAmount:fallbackMax,message:'Your payoff offer must be less than the total debt',},notEmpty:{message:'This field is required',},},},securityQuestionId:{validators:{notEmpty:{message:'This field is required',},},},answer:{validators:{notEmpty:{message:'This field is required',},},},answer1:{validators:{notEmpty:{message:'This field is required',},},},answer2:{validators:{notEmpty:{message:'This field is required',},},},answer3:{validators:{notEmpty:{message:'This field is required',},},},answer4:{validators:{notEmpty:{message:'This field is required',},},},answer5:{validators:{notEmpty:{message:'This field is required',},},},companyName:{validators:{notEmpty:{message:'This field is required',},},},companyWebsite:{validators:{notEmpty:{message:'This field is required',},},},position:{validators:{notEmpty:{message:'This field is required',},},},industry:{validators:{notEmpty:{message:'This field is required',},},},streetAddress:{validators:{notEmpty:{message:'This field is required',},},},city:{validators:{notEmpty:{message:'This field is required',},},},state:{validators:{notEmpty:{message:'This field is required',},},},zip:{validators:{digits:{message:'Please enter a valid zip code',},notEmpty:{message:'This field is required',},},},howDidYouHear:{validators:{notEmpty:{message:'This field is required',},},},marketingType:{validators:{notEmpty:{message:'This field is required',},},},subject:{validators:{notEmpty:{message:'This field is required',},},},bodyString:{validators:{notEmpty:{message:'This field is required',},},},isConfirmedTerms:{validators:{notEmpty:{message:'This field is required',},},},'homeAddress.street':{validators:{notEmpty:{message:'This field is required',},},},'homeAddress.city':{validators:{notEmpty:{message:'This field is required',},},},'homeAddress.state':{validators:{notEmpty:{message:'This field is required',},},},'homeAddress.zip':{validators:{notEmpty:{message:'This field is required',},},},'securityQuestionAnswerAlpha.securityQuestionId':{validators:{notEmpty:{message:'This field is required',},},},'securityQuestionAnswerAlpha.answer':{validators:{notEmpty:{message:'This field is required',},},},birthDateMonth:{validators:{notEmpty:{message:'This field is required',},},},birthDateDay:{validators:{notEmpty:{message:'This field is required',},},},birthDateYear:{validators:{notEmpty:{message:'This field is required',},},},securityAnswer:{validators:{notEmpty:{message:'This field is required',},},},reason:{validators:{notEmpty:{message:'This field is required',},},},reason_alt:{validators:{notEmpty:{message:'This field is required',},},},actionReasonId:{validators:{notEmpty:{message:'This field is required',},},},carrier:{validators:{notEmpty:{message:'This field is required',},},},creditorName:{validators:{notEmpty:{message:'This field is required',},},},reportUpdatePermission:{validators:{notEmpty:{message:'You must agree to the information statement',},},},'g-recaptcha':{validators:{callback:{message:'The captcha is not valid',callback:function(input){if(grecaptcha.getResponse()){return true}else{return false}},},},},}
return options}
publicMethods.init=function(formId,fields){var $form=document.getElementById(formId)
var fieldOpts=fields?fields:getOptions()
if($form.length){return initializeForm($form,fieldOpts)}}
return publicMethods})(this)