function Login() {

  var un  = $('#LoginEmailField').val();
  var pwd = $('#PasswordField').val();

  if (!un || !pwd) {
    ShowLoginFailure("Please enter your e-mail address and password.");
  }
  
  $.post("/login",
    { ajax : 'CheckLoginCredentials',
      un : un,
      pwd : pwd },
      function(data) {
        if(data) {
          $('#CheckLoginResult').html(data);
        } else {
          document.location = '/my/front';
        }
      },
      'html');
}

function AccountCreate() {

  var dob_d = $('#DobDayField').val();
  var dob_m = $('#DobMonthField').val();
  var dob_y = $('#DobYearField').val();
  
  var mode = GetSelectedUserMode();
  
  $.blockUI({ message: $('#CreateAccountProcessing'), css: { width: '275px' } });
  $.post("/user/createaccount",
    { ajax : 'ValidateCreateAccount',
      em : $('#RegisterEmailField').val(),
      fn : $('#RegisterFirstNameField').val(),
      ln : $('#RegisterLastNameField').val(),
      dob_d : $('#DobDayField').val(),
      dob_m : $('#DobMonthField').val(),
      dob_y : $('#DobYearField').val(),
      mode : mode
       },
      function(data) {
        if(data) {
          ShowFormValidationError(data);
        } else {
          $.unblockUI();
          document.location = '/user/createaccount';
        }
      },
      'html');
}

function GetSelectedUserMode() {
  var mode = '';
  if ($('#UserModeIndividualRadio')[0].checked) { mode = '0'; }
  if ($('#UserModeTeacherRadio')[0].checked) { mode = '1'; }
  return mode;
}

function ValidateUserModeSelection() {
  var mode = GetSelectedUserMode();
  
  if (mode == '1') {
    $('#DateOfBirthBlock').hide();
  } else {
    $('#DateOfBirthBlock').show();
  }
}

function ValidateCreateAccountForm() {

  var errors = "";
  
  if (!$('#RegisterEmailField').val()) {
    $('#RegisterEmailField').css("background-color","red");
      $('#RegisterEmailField').focus(function() {
        $(this).css("background-color","white");
      });
    errors += "<li>Please enter your e-mail address.</li>";
  }
  if (!$('#RegisterFirstNameField').val()) {
    $('#RegisterFirstNameField').css("background-color","red");
      $('#RegisterFirstNameField').focus(function() {
        $(this).css("background-color","white");
      });
    errors += "<li>Please enter your first name.</li>";
  }
  if (!$('#RegisterLastNameField').val()) {
    $('#RegisterLastNameField').css("background-color","red");
      $('#RegisterLastNameField').focus(function() {
        $(this).css("background-color","white");
      });
    errors += "<li>Please enter your last (family) name.</li>";
  }
  
  var mode = GetSelectedUserMode();
  if (!mode) {
    errors += "<li>Please select your user mode (individual candidate OR teacher/similar).</li>";
  }
  
  var dob_d = $('#DobDayField').val();
  var dob_m = $('#DobMonthField').val();
  var dob_y = $('#DobYearField').val();
  if (mode != '1' && !(dob_d || dob_m || dob_y)) {
    if (!dob_d) {
      $('#DobDayField').css("background-color","red");
      $('#DobDayField').focus(function() {
        $(this).css("background-color","white");
      });
    }
    if (!dob_m) {
      $('#DobMonthField').css("background-color","red");
      $('#DobMonthField').focus(function() {
        $(this).css("background-color","white");
      });
    }
    if (!dob_y) {
      $('#DobYearField').css("background-color","red");
      $('#DobYearField').focus(function() {
        $(this).css("background-color","white");
      });
    }
    errors += "<li>Please enter your complete Date of Birth.</li>";
  } else if (mode == '0') {
    if (dob_y < 1976) {
      return "<p>Unfortunately you are not allowed to entry any of Coupe Mondiale categories. All candidates must be born in year 1976 or later.</p>";
    }
  }
  
  if (errors) {
    return "<ul>" + errors + "</ul>";
  } else {
    return false;
  }
}

function ShowLoginFailure(msg) {
    $('#LoginFailureMessage').html("<p>" + msg + "</p>");
    $('#LoginFailureMessage').show();
}


function CheckPasswordChange() {
  var pwd1 = $('#NewPassword1Field').val();
  var pwd2 = $('#NewPassword2Field').val();
  
  if (pwd1 && pwd2 && pwd1 == pwd2) {
    $("#PasswordChangeCommitButton").removeAttr("disabled");
    $("#ChangePasswordInstructor").html("");
  } else {
    $("#PasswordChangeCommitButton").attr("disabled","disabled");
    $("#ChangePasswordInstructor").html("Please type the password exactly twice.");
  }
}

