function togglePlaceholder(obj){
      var name = $(obj).prop('name');
      var label = $('label[for="'+name+'"].ph');
      $(obj).val() == '' ? $(label).show() : $(label).hide();
}

  $(document).ready(function() {
    $('.row .phfield').each(function(){
      togglePlaceholder(this);
    });
    $('label.ph').click(function() {
      var name = $(this).prop('for');
      $('.phfield[name="'+name+'"]').focus();
    });
    $('.phfield').keyup(function(){
      togglePlaceholder(this);
    });
    $('.phfield').blur(function(){
      togglePlaceholder(this);
    });
  });
  
  
function emailSignup() {
  
  var email = $('input.email').val();
  if ( !$('input.email').val() || email == '') {
    $('label[for="email"].message').addClass('error').html('Please enter an email address');
    return;
  } else {
    var emailRegex = /[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}/i;
    var valid = emailRegex.test(email);
    if (valid == false || $('input.email').is(':invalid') ) {
      $('label[for="email"].message').addClass('error').html('Please enter a valid email address');
      return;
    }
  }

  var emailJson = JSON.stringify({'email': email})
  $.ajax({
    beforeSend: function(){
      $('label[for="email"].message').removeClass('error success').html('');
      $('label[for="email"].status').stop().css({opacity:0}).removeClass('error success').addClass('loading').animate({opacity:1},100);
    },
    contentType:'application/json',
    dataType:'json',
    type: "POST",
    url: "https://api.moped.com/api/v1/emails",
    data: emailJson,
    success: function(data, textStatus, jqXHR){
      if (jqXHR.status == 201) { 
        $('label[for="email"].message').addClass('success').html('<em>'+email+'</em> signed up. Thanks!'); 
        $('label[for="email"].status').stop().css({opacity:1}).removeClass('loading').addClass('success').animate({opacity:0},4800);
        $('input.email').val('').blur(); /*togglePlaceholder($('input.email'))*/
      }
    },
    error: function(xhr, ajaxOptions, thrownError) {
      if (xhr.status == 409) { $('label[for="email"].message').html('<em>'+email+'</em> is already registered.'); }
      $('label[for="email"].status').stop().css({opacity:1}).removeClass('loading').addClass('error').animate({opacity:0},4800);
    },
    complete: function() {
      
    }
  });
}
