function Authentication() {

  this.dialogID = "authenticationDialog";
  this.dialogDiv = '<div class="ui-corner-all" id="authenticationDialog"></div>';

  this.initDialogDiv = function() {
    if (undefined == $('#'+this.dialogID) || null == $('#'+this.dialogID).html()) {
      $('body').append(this.dialogDiv);
      $('#'+this.dialogID).dialog({
		autoOpen: true,
		bgiframe: true,
		height: 207,
		width: 350,
		resizable: false,
		draggable: false,
		modal: true,
		closeOnEscape: false,
		zIndex: 9999
	  });
      $(".ui-dialog-titlebar").hide();
    }
  }

  this.getDialog = function() {
    $('#'+this.dialogID).remove();
    this.initDialogDiv();
	$('#'+this.dialogID).dialog('open');
  }  

  this.show = function() {
    this.getDialog();
    $.get('/authenticationDialog.jsp', function(data) {
      $('#'+auth.dialogID).html($.trim(data));
    });
  }
  
  this.showLogin = function() {
    this.dialogID = "loginDialog";
    this.dialogDiv = '<div class="ui-corner-all" id="loginDialog"></div>';
    this.getDialog();
    $.get('/loginDialog.jsp', function(data) {
      $('#'+auth.dialogID).html($.trim(data));
    });
  }

  this.close = function() {
	$('#'+this.dialogID).dialog('close');
  }
  
  this.login = function() {
    var username = $('#auth_username').val();
    var password = $('#auth_password').val();
    $.get('/authentication.jsp?cancelRedirect=true&attemptAuthentication=true&username='+username+'&password='+password, function(data) {
      if ($.trim(data) == 'false') {
        $('#authError').html('Invalid login, please try again.');
      } else if ($.trim(data) == 'true') {
        location.reload(true);
      }    
      
    });
  }  
}

function blank() {
  //
}

var auth = new Authentication();
