var Timezone={set:function(){var date=new Date()
var timezone="timezone="+-date.getTimezoneOffset()*60
date.setTime(date.getTime()+(1000*24*60*60*1000))
var expires="; expires="+date.toGMTString()
document.cookie=timezone+expires+"; path=/; domain=.famspam.com"}}
JQ.fn.scrollTo=function(speed){var offset=JQ(this).offset().top-30
JQ('html,body').animate({scrollTop:offset},speed||1000)
return this}
JQ.fn.spin=function(append){if(append)
JQ(this).append('<img src="/images/spinner.gif"/>')
else
JQ(this).after('<img src="/images/spinner.gif"/>')}
JQ.errorBox=function(text){JQ.facebox('<h2 class="title icon_warning">Whoops</h2>'+text)}
JQ.successBox=function(text){JQ.facebox('<h2 class="title icon_check">Success</h2>'+text)}
JQ.fn.spamjax=function(callback,settings){var settings=settings||{}
var options={}
options.complete=function(xhr,ok){callback.call(this,xhr.responseText,ok)}
if(settings.confirmation){options.beforeSubmit=function(){var execute=confirm(settings.confirmation)
if(!execute)return false
if(settings.facebox)JQ.facebox.loading()}}else if(settings.facebox){options.beforeSubmit=JQ.facebox.loading}
JQ(this).ajaxForm(JQ.extend(settings,options))
return this}
JQ(document).ready(function(){JQ('.jump_to_new_conversation').click(function(){JQ('#new-conversation').scrollTo().queue(function(){JQ('#message_subject').focus()})
return false})
JQ('.reply_to_conversation').click(function(){JQ('#new_message').scrollTo().queue(function(){JQ('#message_body').focus()})
return false})
JQ('#add_attachment').click(function(){var input='<li><input name="attachment[]" size="30" type="file" /></li>'
JQ(input).appendTo('#new-attachments')
if(JQ('#add_attachment').text()=='Attach a file'){JQ('#add_attachment').text('Attach another file')}
return false})
JQ('.reset_invite_form').click(function(){JQ('#new_person').resetForm()
JQ('#invite_another').hide()
JQ('#invite_another > span').remove()
JQ('#new_person').show()
return false})
JQ('#new_person').spamjax(function(res,status){if(status=='success'){var email=JQ('#person_name').val()
JQ('#invite_another').prepend('<span>'+email+' has been added!</span>')
JQ('#invite_error').hide()
JQ('#new_person').hide(300,function(){JQ('#invite_another').show(300)})}else{JQ('#invite_error').show().text(res)}})
function previewInvitationLink(url){var person={}
person.email=JQ('#person_email').val()
person.name=JQ('#person_name').val()
if(!(person.email&&person.name)){JQ('#invite_error').show().text('Please enter an email and a name.')
return false}else{JQ('#invite_error').hide()}
JQ.facebox(function(){JQ.get(url,person,function(data){JQ.facebox('<div class="dynamic_popup">'+data+'</div>')})})
return false}
JQ('#preview_invitation_link').click(function(){return previewInvitationLink('/people/preview_invite')})
JQ('#demo_invitation_link').click(function(){return previewInvitationLink('/demo/preview_invite')})
JQ('.avatar_select').change(function(){JQ(this).spin()
var form=this.form
setTimeout(function(){form.submit()},10)})
JQ('#reminder_form').spamjax(function(){JQ('#reminder_update').show()})
JQ('#family_reminder_day').change(function(){JQ('#reminder_form').submit()})
JQ('.unfold').click(function(){if(JQ(this).text().match(/show/i))
JQ(this).text('- Hide repeated text -')
else
JQ(this).text('- Show repeated text -')
JQ(this).parent().next().toggle()
return false})
JQ('.person-tabs a').click(function(){var boss=JQ(this).parent().parent().parent()
boss.find('.person-tabs li').removeClass('on')
JQ(this).parent().addClass('on')
boss.find('.person-panel').hide()
boss.find('.person-'+JQ(this).text().toLowerCase()).show()
return false})
JQ('.email_password').click(function(){if(!confirm('Are you sure you want to send this person their password?  If you recently invited them, we already sent an email with a password - they should get it soon.'))return false
var person_email=JQ(this).parents('li').find('.person_email').val()
JQ.facebox(function(){JQ.post('/password',{email:person_email},function(data){JQ.facebox('<div class="dynamic_popup">'+data+'</div>')})})
return false})
JQ('.demo_email_password').click(function(){JQ.facebox('This would normally be how you re-send your loved one their login information.')
return false})
JQ('.demo_delete_person_form').click(function(){JQ.facebox('This would normally be how you remove someone from your family.')
return false})
var removeEmailHandler=function(){JQ('.remove_email').click(function(){try{JQ(this).parent().remove()}catch(e){}
return false})}
removeEmailHandler()
JQ('.add_email').click(function(){JQ(this).parent().nextAll('.radio').before('<li><label for="person_email">Alternate Email</label> <input id="person[emails][]" name="person[emails][]" size="30" type="text" value="" /><a href="#" class="remove_email"> <img src="/images/icons/tiny/x.png"/> </a> </li>')
removeEmailHandler()
return false})
JQ('.person_form').spamjax(function(data,status){if(status=='success'){JQ.successBox(data)}else{JQ.errorBox(data)}},{facebox:true})
JQ('.delete_person_form').spamjax(function(data,status){if(status=='success'){JQ.successBox(data)
var id=JQ(this).attr('url').split('/').pop()
JQ('#person_'+id).hide()}else{JQ.errorBox(data)}},{facebox:true,confirmation:"Are you positive you want to delete this person? You will not be able to add them back into the family."})
JQ('#signup-terms').click(function(){JQ('#signup-button').attr('disabled',!this.checked)})
JQ('#signup-button').click(function(){JQ(this).attr('disabled',true)
JQ(this).val('Creating your FamSpam site...')
JQ('#signup_form').submit()})
JQ('#plans :radio').change(function(){JQ('#plans tr').removeClass('selected')
JQ(this).parent().parent().addClass('selected')})
JQ('#plans tr').css('cursor','pointer').click(function(){JQ(this).find(':radio').select().change()})
JQ('#plans :checked').parent().parent().addClass('selected')
JQ('#signup_widget .form, #signup_widget, #promo').corner()
JQ('#login_form').submit(Timezone.set)
JQ('#quick_signup').spamjax(function(data,status){if(status=='success'){JQ('#signup_widget').find('input, :submit').attr('disabled',true)
data=JQ('#quick_signup_success').clone()}else{data=JQ('#quick_signup_error').clone()}
JQ('#signup_widget .left').empty().append(data.show())},{beforeSubmit:function(){JQ('#signup_widget .left').empty().removeClass('arrow_bg').spin(true)}})
JQ('.corner').corner()
if(JQ.facebox)
JQ('a[rel*=facebox]').facebox({next_image:'/images/fast_forward.png',play_image:'/images/play.png',pause_image:'/images/pause.png',prev_image:'/images/rewind.png'})});JQ.ajaxSetup({'beforeSend':function(xhr){xhr.setRequestHeader("Accept","text/javascript")}})
