function InitializeLogon()
{
  $(".logonlink").click(DoLogon);
  $(".logofflink").click(DoLogoff);
}

function DoLogon()
{
  $("#popupcontent").load("view/logon.view.xhtml", null,AfterLoadView);
  $("#popupcontent").attr("title", "Inloggen");

  return false;
}

function ShowLogonPopup()
{
		$("#popupcontent").dialog({
			bgiframe: true,
			modal: true,
      resizable: false,
      draggable: false,
      width: 400,
      height: 320,
			buttons: {
				Ok: AttemptLogon,
				Annuleren: function() {
					$(this).dialog('close');
				}
			}
		});
}

function AfterLoadView()
{
  ShowLogonPopup();
  $("#txtLoginName").focus();
  $("#logonform").submit(AttemptLogon);

  $("#forgotpasswordlink").click(DoPassmailer);
}

function AttemptLogon()
{
  var arguments = {loginname: $("#txtLoginName").val(), password: $("#txtPassword").val()};
  ServiceProxy.Call("UserService", "logon", arguments, LogonResult);

  return false;
}

function LogonResult(result)
{
  if(result == true)
  {
    $("#popupcontent").dialog('close');
    location.reload();
  }
  else
  {
    $("#logonError").show();
  }
}

function DoLogoff()
{
  ServiceProxy.Call("UserService", "logoff", null, LogoffResult);
}

function LogoffResult(result)
{
  location.href = '.';
}

function DoPassmailer()
{
  $("#popupcontent").load("view/passmailer.view.xhtml", null,AfterLoadViewPassmailer);
  $("#popupcontent").attr("title", "Wachtwoord vergeten");
}

function AfterLoadViewPassmailer()
{
  $("#popupcontent").dialog('close');
  $("#popupcontent").attr("title", "Wachtwoord vergeten");
  $("#popupcontent").dialog({
    bgiframe: true,
    title: "Wachtwoord vergeten",
    modal: true,
    resizable: false,
    draggable: false,
    width: 300,
    height: 250,
    buttons: {
      Ok: AttemptMailPassword,
      Annuleren: function() {
        $(this).dialog('close');
      }
    }
  });

  $("#txtLoginName").focus();
  $("#passmailerform").submit(AttemptMailPassword);
}

function AttemptMailPassword()
{
  var arguments = {loginName: $("#txtLoginName").val()};
  ServiceProxy.Call("UserService", "requestPass", arguments, PassmailerResult);

  return false;
}

function PassmailerResult(result)
{
  if(result)
  {
    $("#popupcontent").dialog('close');
    alert("Er is een nieuw wachtwoord verzonden naar uw e-mailadres.");
  }
  else
  {
    $("#popupcontent").dialog('close');
    alert("Er kon geen nieuw wachtwoord verzonden worden. \r\n\r\nMogelijke oorzaken zijn: \r\n - U heeft geen email adres opgegeven bij ons\r\n - De loginnaam die u heeft ingetoetst is ongedig\r\n - Het e-mailadres dat u heeft opgegeven werkt niet\r\n - De gebruikersnaam die u heeft opgegeven bestaat niet\r\n\r\nProbeer het opnieuw of neem contact op met de HT organisatie.");
  }
}


$(document).ready(InitializeLogon);