Index: VerpakkingsDefinitie/UI/LogInScherm.pas =================================================================== diff -u -r551 -r552 --- VerpakkingsDefinitie/UI/LogInScherm.pas (.../LogInScherm.pas) (revision 551) +++ VerpakkingsDefinitie/UI/LogInScherm.pas (.../LogInScherm.pas) (revision 552) @@ -6,7 +6,8 @@ Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, - Subscherm; + Main, ApplicationContext, Subscherm, + Agent; type TFormLogin = class(TFormSubscherm) @@ -23,19 +24,27 @@ procedure PanelLogInMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure PanelButtonEnableChange(Sender: TPanel); private + FAgent: TAgent; procedure Login(); public - { Public declarations } + Constructor Create(AOwner: TComponent; Navigator: TFormMain; ApplicationContext: TApplicationContext; Agent: TAgent); + overload; end; implementation uses - Main, Util, - UserServerService, Agent, ApplicationContext; + Util, + UserServerService; {$R *.dfm} +constructor TFormLogin.Create(AOwner: TComponent; Navigator: TFormMain; ApplicationContext: TApplicationContext; Agent: TAgent); +begin + inherited Create(AOwner, Navigator, ApplicationContext); + self.FAgent := Agent; +end; + procedure TFormLogin.FormCreate(Sender: TObject); begin EditWachtwoord.PasswordChar := '*'; // Verberg paswoord @@ -85,35 +94,28 @@ procedure TFormLogin.Login(); var - Agent: TAgent; ErrorMessage: string; begin - Agent := nil; - try - Agent := TAgent.Create(); - Agent.GebruikerAanmelden(EditGebruikersnaam.Text, EditWachtwoord.Text, ApplicationContextObj.UserServerServiceContext); + FAgent.GebruikerAanmelden(EditGebruikersnaam.Text, EditWachtwoord.Text, ApplicationContextObj.UserServerServiceContext); - if ApplicationContextObj.UserServerServiceContext.IsOK then + if ApplicationContextObj.UserServerServiceContext.IsOK then + begin + (self.Navigator as TFormMain).NavigeerNaar(Main.NAVZOEKPRODUCTEN); + end + else + begin + // Login gefaald + ErrorMessage := ApplicationContextObj.UserServerServiceContext.ErrorMessage; + if ApplicationContextObj.UserServerServiceContext.InternalErrorMessage <> '' then begin - (self.Navigator as TFormMain).NavigeerNaar(Main.NAVZOEKPRODUCTEN); - end - else - begin - // Login gefaald - ErrorMessage := ApplicationContextObj.UserServerServiceContext.ErrorMessage; - if ApplicationContextObj.UserServerServiceContext.InternalErrorMessage <> '' then - begin - ErrorMessage := ErrorMessage + sLineBreak + ApplicationContextObj.UserServerServiceContext.InternalErrorMessage; - end; + ErrorMessage := ErrorMessage + sLineBreak + ApplicationContextObj.UserServerServiceContext.InternalErrorMessage; + end; - if MessageDlg(ErrorMessage, TMsgDlgType.mtInformation, [mbRetry, mbCancel], 0, mbCancel) = mrRetry then - begin - // Retry gedrukt - Login(); - end; + if MessageDlg(ErrorMessage, TMsgDlgType.mtInformation, [mbRetry, mbCancel], 0, mbCancel) = mrRetry then + begin + // Retry gedrukt + Login(); end; - finally - Agent.Free(); end; end;