Changeset 3 for trunk/UFormMain.pas
- Timestamp:
- Aug 24, 2019, 10:44:11 AM (5 years ago)
- Location:
- trunk
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk
-
Property svn:ignore
set to
Android
Win32
__recovery
__history
-
Property svn:ignore
set to
-
trunk/UFormMain.pas
r2 r3 7 7 FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls, 8 8 FMX.Layouts, FMX.Objects, FMX.Controls.Presentation, FMX.MultiView, IniFiles, 9 System.IOUtils, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, 10 IdHTTP{$IFDEF ANDROID},IdSSLOpenSSLHeaders{$endif}, IdIOHandler, IdIOHandlerSocket, 11 IdIOHandlerStack, IdSSL, IdSSLOpenSSL; 9 System.IOUtils, UOdorikApi; 12 10 13 11 type … … 23 21 VertScrollBox2: TVertScrollBox; 24 22 LabelCredit: TLabel; 25 IdHTTP1: TIdHTTP;26 23 Timer1: TTimer; 27 IdSSLIOHandlerSocketOpenSSL1: TIdSSLIOHandlerSocketOpenSSL;28 24 RectangleCalls: TRectangle; 29 25 Label1: TLabel; … … 31 27 procedure FormCreate(Sender: TObject); 32 28 procedure FormSaveState(Sender: TObject); 33 procedure ButtonReloadCreditClick(Sender: TObject);34 29 procedure Timer1Timer(Sender: TObject); 35 30 procedure FormShow(Sender: TObject); … … 38 33 { Private declarations } 39 34 public 40 UserName: string; 41 Password: string; 42 ServerUrl: string; 35 OdorikApi: TOdorikApi; 43 36 Credit: Double; 44 37 ConfigFileName: string; … … 46 39 procedure LoadConfig; 47 40 procedure SaveConfig; 48 procedure GetCredit;49 function SendGet(Path: string; Parameters: string = ''): string;50 41 end; 51 42 … … 61 52 UFormSettings, UFormCalls; 62 53 63 procedure TFormMain.ButtonReloadCreditClick(Sender: TObject);64 begin65 GetCredit;66 end;67 68 54 procedure TFormMain.FormCreate(Sender: TObject); 69 55 begin 70 {$IFDEF ANDROID} 71 IdOpenSSLSetLibPath(System.IOUtils.TPath.GetDocumentsPath); 72 {$ENDIF} 56 OdorikApi := TOdorikApi.Create(nil); 73 57 ConfigFileName := TPath.Combine(TPath.GetHomePath, 'OdorikApi.ini'); 74 58 LoadConfig; … … 85 69 procedure 86 70 begin 87 GetCredit;71 Credit := OdorikApi.GetCredit; 88 72 end).Start; 89 end;90 91 procedure TFormMain.GetCredit;92 var93 Response: string;94 Value: Extended;95 begin96 Response := SendGet('/balance');97 if Response <> '' then begin98 Response := StringReplace(Response, '.', FormatSettings.DecimalSeparator, [rfReplaceAll]);99 if TryStrToFloat(Response, Value) then100 Credit := Value101 else Credit := 0;102 end else Credit := 0;103 73 end; 104 74 … … 110 80 with IniFile do 111 81 try 112 UserName := ReadString('General', 'UserName', '');113 Password := ReadString('General', 'Password', '');114 ServerUrl := ReadString('General', 'ServerUrl', 'https://www.odorik.cz/api/v1');82 OdorikApi.UserName := ReadString('General', 'UserName', ''); 83 OdorikApi.Password := ReadString('General', 'Password', ''); 84 OdorikApi.ServerUrl := ReadString('General', 'ServerUrl', 'https://www.odorik.cz/api/v1'); 115 85 finally 116 86 IniFile.Free; … … 137 107 with IniFile do 138 108 try 139 WriteString('General', 'UserName', UserName);140 WriteString('General', 'Password', Password);141 WriteString('General', 'ServerUrl', ServerUrl);109 WriteString('General', 'UserName', OdorikApi.UserName); 110 WriteString('General', 'Password', OdorikApi.Password); 111 WriteString('General', 'ServerUrl', OdorikApi.ServerUrl); 142 112 finally 143 113 IniFile.Free; … … 145 115 end; 146 116 147 function TFormMain.SendGet(Path: string; Parameters: string = ''): string;148 var149 Url: string;150 begin151 if (ServerUrl <> '') and (UserName <> '') and (Password <> '') then begin152 Url := ServerUrl + Path + '?user=' + UserName + '&password=' + Password;153 if Parameters <> '' then Url := Url + '&' + Parameters;154 Result := IdHTTP1.Get(Url);155 end else Result := '';156 end;157 117 158 118 procedure TFormMain.Timer1Timer(Sender: TObject); … … 160 120 if ReloadPending then begin 161 121 ReloadPending := False; 162 GetCredit;122 Credit := OdorikApi.GetCredit; 163 123 end; 164 124 LabelCredit.Text := 'Credit: ' + FloatToStr(Credit) + ' Kè';
Note:
See TracChangeset
for help on using the changeset viewer.