$("#user-setup-modal-window").html("<%= escape_javascript(render partial: 'setup_popup') %>");

// disable the submit button on load
var $input = $('input:text'),
$register = $('#register');

var email_disabled = document.forms["setup_form"]["email"].disabled;
var email_value = document.forms["setup_form"]["email"].value;
var prefix_value = document.forms["setup_form"]["openid_prefix"].value;
if ((email_disabled == false) && (email_value == null || email_value == "" ||
        prefix_value == null || prefix_value == "")) {
  $register.prop('disabled', true);
}

// capture events to enable submit button when applicable
$input.on('keyup paste mouseleave', function() {
  var trigger = false;

  var email_disabled = document.forms["setup_form"]["email"].disabled;
  var email_value = document.forms["setup_form"]["email"].value;
  var prefix_value = document.forms["setup_form"]["openid_prefix"].value;

  var emailRegExp = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
  var validEmail = false;

  if (emailRegExp.test(email_value )) {
    validEmail = true;
  }

  if ((email_disabled == false) && (!validEmail || email_value == null ||
            email_value == "" || prefix_value == null || prefix_value == "")){
    trigger = true;
  }

  $register.prop('disabled', trigger);
});

// reset form input fields, for the next time around
function reset_form() {
  $('#email').val("");
  $('#openid_prefix').val("");
  $('#repo_name').val("");
  $('select').val('')
}