Skip to main navigation Skip to main content Skip to page footer
unit LoginForm;

interface

uses
  Winapi.Windows,
  Winapi.Messages,
  System.SysUtils,
  System.Variants,
  System.Classes,
  Vcl.Graphics,
  Vcl.Controls,
  Vcl.Forms,
  Vcl.Dialogs,
  Vcl.StdCtrls,
  Vcl.Mask,
  Vcl.ExtCtrls,
  TL.Components,
  Vcl.Imaging.jpeg;

type
  TfrmLogin = class(TLForm)
    Panel1: TPanel;
    Image1: TImage;
    btnConnect: TButton;
    Button1: TButton;
    pnlCopyright: TPanel;
    GroupBox1: TGroupBox;
    ledServer: TLabeledEdit;
    ledUserName: TLabeledEdit;
    ledPassword: TLabeledEdit;
    pnlCaption: TPanel;
    procedure btnConnectClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
    private
      { Private declarations }
    public
      { Public declarations }
      function Execute: TModalResult;
  end;

var
  frmLogin: TfrmLogin;

implementation

{$R *.dfm}

uses
  DataModule;

procedure TfrmLogin.btnConnectClick(Sender: TObject);
  begin
    if dm.Connect(ledServer.Text, ledUserName.Text, ledPassword.Text)
    then
    begin
      ModalResult                         := mrOk;
      frmLogin.RegVars.Values['Server']   := ledServer.Text;
      frmLogin.RegVars.Values['UserName'] := ledUserName.Text;
      frmLogin.SaveConfig;
    end
    else
      ModalResult := mrAbort
  end;

function TfrmLogin.Execute: TModalResult;
  begin
    frmLogin := TfrmLogin.Create(nil);
    try
      Result := frmLogin.Showmodal;
    finally
      frmLogin.Free;
    end;
  end;

procedure TfrmLogin.FormCreate(Sender: TObject);
  begin
    Self.pnlCaption.Caption := 'Financiële Administratie - ' + TL.Components.Folder.AppVersion;

    // Set default values
    Self.RegVars.Values['Server']   := 'Server';
    Self.RegVars.Values['UserName'] := 'UserName';

    // Override default values read fron registry if exists
    Self.LoadConfig;

    ledServer.Text   := Self.RegVars.Values['Server'];
    ledUserName.Text := Self.RegVars.Values['UserName'];
    ledPassword.Text := Self.RegVars.Values['Password'];
  end;

procedure TfrmLogin.FormShow(Sender: TObject);
  begin
    ledPassword.SetFocus;
  end;

end.