mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-06-20 09:48:46 +02:00
62 lines
1.4 KiB
ObjectPascal
62 lines
1.4 KiB
ObjectPascal
unit webmodule;
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, FileUtil, LResources, HTTPDefs, websession, fpHTTP, fpWeb;
|
|
|
|
type
|
|
|
|
{ TFPWebModule1 }
|
|
|
|
TFPWebModule1 = class(TFPWebModule)
|
|
procedure func1callRequest(Sender: TObject; ARequest: TRequest;
|
|
AResponse: TResponse; var Handled: Boolean);
|
|
private
|
|
{ private declarations }
|
|
procedure func1callReplaceTag(Sender: TObject; const TagString:String;
|
|
TagParams: TStringList; Out ReplaceText: String);
|
|
public
|
|
{ public declarations }
|
|
end;
|
|
|
|
var
|
|
FPWebModule1: TFPWebModule1;
|
|
|
|
implementation
|
|
|
|
{ TFPWebModule1 }
|
|
|
|
procedure TFPWebModule1.func1callRequest(Sender: TObject; ARequest: TRequest;
|
|
AResponse: TResponse; var Handled: Boolean);
|
|
begin
|
|
Template.FileName := 'mytemplate1.html';
|
|
Template.AllowTagParams := true;
|
|
Template.OnReplaceTag := @func1callReplaceTag;
|
|
|
|
AResponse.Content := Template.GetContent;
|
|
|
|
Handled := true;
|
|
end;
|
|
|
|
procedure TFPWebModule1.func1callReplaceTag(Sender: TObject; const TagString:
|
|
String; TagParams: TStringList; Out ReplaceText: String);
|
|
begin
|
|
if AnsiCompareText(TagString, 'TagName1') = 0 then
|
|
begin
|
|
ReplaceText := 'Here I am from the web module!';
|
|
end else begin
|
|
|
|
//Not found value for tag -> TagString
|
|
ReplaceText := 'Template tag {' + TagString + '} is not implemented yet.';
|
|
end;
|
|
end;
|
|
|
|
initialization
|
|
{$I webmodule.lrs}
|
|
|
|
RegisterHTTPModule('TFPWebModule1', TFPWebModule1);
|
|
end.
|