IPFrm.pas 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. unit IPFrm;
  2. interface
  3. uses
  4. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5. Dialogs, StdCtrls, CslButton, IniFiles, ComCtrls, ScPageControl, jpeg,
  6. ExtCtrls, JimPages;
  7. type
  8. TIPForm = class(TForm)
  9. jpsIP: TJimPages;
  10. jpsIPPageEdit: TJimPage;
  11. jpsIPPageNo: TJimPage;
  12. jpsIPPageYes: TJimPage;
  13. imgEdit: TImage;
  14. lblTitleEdit: TLabel;
  15. lblTitleEdit2: TLabel;
  16. shpIP: TShape;
  17. lblConSvr: TLabel;
  18. edtIP: TEdit;
  19. btnConSvr: TCslButton;
  20. imgNo: TImage;
  21. lblTitleNo: TLabel;
  22. lblIPNo: TLabel;
  23. lblHintNo: TLabel;
  24. btnReturn: TCslButton;
  25. imgYes: TImage;
  26. lblCompanyName: TLabel;
  27. lblTitleYes: TLabel;
  28. lblIPYes: TLabel;
  29. CslButton1: TCslButton;
  30. btnLogin: TCslButton;
  31. procedure btnConSvrClick(Sender: TObject);
  32. procedure FormCreate(Sender: TObject);
  33. procedure shpIPMouseDown(Sender: TObject; Button: TMouseButton;
  34. Shift: TShiftState; X, Y: Integer);
  35. procedure btnReturnClick(Sender: TObject);
  36. procedure btnLoginClick(Sender: TObject);
  37. procedure CslButton1Click(Sender: TObject);
  38. private
  39. { Private declarations }
  40. public
  41. { Public declarations }
  42. function HasIP: Boolean;
  43. procedure ConnectSever;
  44. end;
  45. implementation
  46. uses ConstUnit, PHPWebDm;
  47. {$R *.dfm}
  48. { TIPForm }
  49. procedure TIPForm.ConnectSever;
  50. var sIP, sN: string;
  51. iResult: Integer;
  52. ini: TIniFile;
  53. begin
  54. sIP := Trim(edtIP.Text);
  55. if sIP = '' then Exit;
  56. if Pos('http://', sIP) =1 then
  57. Delete(sIP, 1, 7);
  58. iResult := PHPWeb.ConnectServer(sIP, sN);
  59. if iResult = 1 then
  60. begin
  61. jpsIP.ActivePage := jpsIPPageYes;
  62. lblIPYes.Caption := sIP;
  63. lblIPYes.Update;
  64. lblCompanyName.Caption := sN;
  65. lblCompanyName.Update;
  66. G_Server := sIP;
  67. G_CompanyName := sN;
  68. ini := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'Cloud.ini');
  69. try
  70. ini.WriteString('URL', 'Server', sIP);
  71. ini.WriteString('URL', 'CompanyName', sN);
  72. ini.WriteString('URL', 'LoginCloudURL', 'http://' + sIP);
  73. finally
  74. ini.Free;
  75. end;
  76. end
  77. else
  78. begin
  79. jpsIP.ActivePage := jpsIPPageNo;
  80. lblIPNo.Caption := sIP;
  81. lblIPNo.Update;
  82. end;
  83. end;
  84. function TIPForm.HasIP: Boolean;
  85. var ini: TIniFile;
  86. begin
  87. ini := TIniFile.Create(ExtractFilePath(Application.ExeName) + 'Cloud.ini');
  88. try
  89. G_Server := Trim(ini.ReadString('URL', 'Server', ''));
  90. Result := G_Server <> '';
  91. if Result then
  92. begin
  93. G_ServerType := ini.ReadString('URL', 'ServerType', '');
  94. G_CompanyName := ini.ReadString('URL', 'CompanyName', '');
  95. G_MeasureURL := 'http://' + G_Server + ini.ReadString('URL', 'MeasureURL', '');
  96. end;
  97. finally
  98. ini.Free;
  99. end;
  100. end;
  101. procedure TIPForm.btnConSvrClick(Sender: TObject);
  102. begin
  103. lblConSvr.Visible := True;
  104. Application.ProcessMessages;
  105. Screen.Cursor := crHourGlass;
  106. try
  107. ConnectSever;
  108. finally
  109. lblConSvr.Visible := False;
  110. Screen.Cursor := crDefault;
  111. end;
  112. end;
  113. procedure TIPForm.FormCreate(Sender: TObject);
  114. begin
  115. Caption := G_ProductName;
  116. lblTitleEdit.Caption := G_ProductName;
  117. lblTitleNo.Caption := G_ProductName;
  118. lblTitleYes.Caption := G_ProductName;
  119. end;
  120. procedure TIPForm.shpIPMouseDown(Sender: TObject; Button: TMouseButton;
  121. Shift: TShiftState; X, Y: Integer);
  122. begin
  123. edtIP.SetFocus;
  124. end;
  125. procedure TIPForm.btnReturnClick(Sender: TObject);
  126. begin
  127. jpsIP.ActivePage := jpsIPPageEdit;
  128. end;
  129. procedure TIPForm.btnLoginClick(Sender: TObject);
  130. begin
  131. ModalResult := mrOk;
  132. end;
  133. procedure TIPForm.CslButton1Click(Sender: TObject);
  134. begin
  135. jpsIP.ActivePage := jpsIPPageEdit;
  136. end;
  137. end.