bn.spg.login=bn.spg.login||{},bn.spg.login.accessToken=null,bn.spg.login.usernameField=null,bn.spg.login.passwordField=null,bn.spg.login.hasPublishPermissions=!1,bn.spg.login.LinkAccountModel={},bn.spg.login.staticElements={},bn.spg.login.staticElements.loginLink=$("#login-link"),bn.spg.login.sendLogin=function(n){n.keyCode===13&&bn.spg.login.connectAccount()},$(document).ready(function(){bn.spg.login.setupSPGLoginFields();$(document).on("keydown","#password-area-popover #password",bn.spg.login.sendLogin);$(document).on("keydown","#connect-button",bn.spg.login.sendLogin);$(document).on("click","#connect-button",bn.spg.login.connectAccount);$(document).on("click",".join-spg-link",function(){omnitureHelper.joinClicked(null,"Sign In","JoinLink","Sign In")});$(document).on("click","#learn-about",function(){omnitureHelper.buttonClick(null,"Sign In","","Sign In","Learn About SPG")});$(document).on("click","#join-spg-link",function(){omnitureHelper.joinClicked(null,"Sign In","Sign In")})}),bn.spg.login.landingReady=function(){var n=bn.spg.login.getUserStatus();n.done(bn.spg.commonfunctions.showPublicModals),$(".FBLoginButton").click(bn.spg.login.connectWithFB),$(".SPGLearn").click(bn.spg.login.learnScroll)},bn.spg.login.getUserStatus=function(){var n=$.Deferred();return FB.getLoginStatus(function(t){t.status==="connected"?bn.spg.login.checkPermissions().done(function(i){if(i){var r=bn.spg.login.loginUrl+"?accessToken="+t.authResponse.accessToken;bn.spg.login.returnUrl!==""&&(r+="&returnUrl="+bn.spg.login.returnUrl),window.top.location=r,n.reject()}else $(".landing-body-spinner").hide(),n.resolve()}):($(".landing-body-spinner").hide(),n.resolve())}),n.promise()},bn.spg.login.checkPermissions=function(){var n=$.Deferred();return FB.api("/me/permissions",function(t){var r={},u=[];t.data.map(function(n){u.push(n.permission),n.status==="granted"&&(r[n.permission]=1)});var i=!0,e=bn.spg.login.minPerms.split(","),f=bn.spg.login.scope.split(",");$.each(f,function(n,t){u.indexOf(t)===-1&&(i=!1)}),$.each(e,function(n,t){r[t]||(i=!1)}),r.publish_actions&&(bn.spg.login.hasPublishPermissions=!0),n.resolve(i)}),n.promise()},bn.spg.login.connectWithFB=function(){FB.login(function(n){if(n.status==="connected"){var t=bn.spg.login.loginUrl+"?accessToken="+n.authResponse.accessToken;bn.spg.login.returnUrl!==""&&(t+="&returnUrl="+bn.spg.login.returnUrl),window.top.location=t}},{scope:bn.spg.login.scope})},bn.spg.login.requestPublishPermissions=function(){var n=$.Deferred();return FB.login(function(){bn.spg.login.checkPermissions().done(function(){bn.spg.login.hasPublishPermissions?($.ajax("/Modals/PublishPermissionsConfirmed").done(function(){n.resolve(bn.spg.login.hasPublishPermissions)}),$("#wishListPublish").prop("checked",!0)):bn.spg.modals.publishPermissionsDenied()})},{scope:"publish_actions"}),n.promise()},bn.spg.login.setupSPGLoginFields=function(){bn.spg.login.usernameField=$("#user-name"),bn.spg.login.passwordField=$("#password"),bn.spg.login.usernameField.focusin(function(){bn.spg.login.usernameField.val()==="SPG User Name or Number"&&bn.spg.login.usernameField.val("")}),bn.spg.login.usernameField.focusout(function(){bn.spg.login.usernameField.val()===""&&bn.spg.login.usernameField.val("SPG User Name or Number")}),bn.spg.login.passwordField.focusin(function(){bn.spg.login.passwordField.val()==="SPG Password"&&(bn.spg.login.passwordField.replaceWith('<input type="password" value="SPG Password" id="password" class="password" tabindex="2" />'),bn.spg.login.passwordField=$("#password"),bn.spg.login.passwordField.focus(),bn.spg.login.passwordField.val(""),bn.spg.login.setupPasswordOut())})},bn.spg.login.setupPasswordOut=function(){bn.spg.login.passwordField.focusout(function(){bn.spg.login.passwordField.val()===""&&(bn.spg.login.passwordField.replaceWith('<input type="text" value="SPG Password" id="password" class="password" tabindex="2" />'),bn.spg.login.passwordField=$("#password"),bn.spg.login.passwordField.focus(),bn.spg.login.passwordField.val("SPG Password"),bn.spg.login.passwordField.blur(),bn.spg.login.setupPasswordIn())})},bn.spg.login.setupPasswordIn=function(){bn.spg.login.passwordField.focusin(function(){bn.spg.login.passwordField.val()==="SPG Password"&&(bn.spg.login.passwordField.replaceWith('<input type="password" value="SPG Password" id="password" class="password" tabindex="2" />'),bn.spg.login.passwordField=$("#password"),bn.spg.login.passwordField.focus(),bn.spg.login.passwordField.val(""),bn.spg.login.setupPasswordOut())})},bn.spg.login.connectAccount=function(){bn.spg.login.LinkAccountModel.UserName=bn.spg.login.usernameField.val(),bn.spg.login.LinkAccountModel.Password=bn.spg.login.passwordField.val(),bn.spg.login.LinkAccountModel.ReturnUrl=bn.spg.login.returnUrl,bn.spg.login.LinkAccountModel.Password==="SPG Password"||bn.spg.login.LinkAccountModel.UserName==="SPG User Name or Number"?($("#password-area-popover").data("content",$("#input-error").html()),$("#password-area-popover").popover("show"),bn.spg.login.popoverTimeout("#password-area-popover",1e4)):($("#connect-button").hide(),$(".loader-gif").show(),$.ajax({type:"POST",url:"/Account/LinkAccount/",data:JSON.stringify(bn.spg.login.LinkAccountModel),dataType:"json",contentType:"application/json",traditional:!0,success:function(n){n.success&&n.redirect?(omnitureHelper.connectClicked(null,"Sign In","Sign In",!0),window.top.location=n.redirectUrl):!n.success&&n.redirect?(omnitureHelper.connectClicked(null,"Sign In","Sign In",!1),window.top.location=n.redirectUrl):(omnitureHelper.connectClicked(null,"Sign In","Sign In",!1),$(".loader-gif").hide(),$("#connect-button").show(),n.message=="invalid_credentials"?($("#password-area-popover").data("content",$("#authentication-error").html()),$("#password-area-popover").popover("show"),bn.spg.login.popoverTimeout("#password-area-popover",1e4)):n.message==="already_exists"?($("#password-area-popover").data("content",$("#already-exists").html()),$("#password-area-popover").popover("show"),bn.spg.login.popoverTimeout("#password-area-popover",1e4)):($("#password-area-popover").data("content","We're Sorry, an unknown error occured trying to connect your account. Please try again later or contact us."),$("#password-area-popover").popover("show"),bn.spg.login.popoverTimeout("#password-area-popover",1e4)))}}))},bn.spg.login.popoverTimeout=function(n,t){$(".popover").on("click",function(){$(n).popover("hide")});setInterval(function(){$(n).popover("hide")},t)},bn.spg.login.learnScroll=function(){$("html,body").animate({scrollTop:$(".spg-join").offset().top},"slow")}