| 171 |
begin |
begin |
| 172 |
if TagString = 'home' then |
if TagString = 'home' then |
| 173 |
begin |
begin |
| 174 |
if (uri = 'admin')or(uri = 'login') then |
if (uri = 'admin')or(uri = 'login')or(TagParams.Values['ssl'] = 'true') then |
| 175 |
ReplaceText := String(AnsiReplaceText(FDTable2.FieldByName('home') |
ReplaceText := String(AnsiReplaceText(FDTable2.FieldByName('home').AsAnsiString, 'http', 'https')) |
|
.AsAnsiString, 'http', 'https')) |
|
| 176 |
else |
else |
| 177 |
ReplaceText := FDTable2.FieldByName('home').AsString; |
ReplaceText := FDTable2.FieldByName('home').AsString; |
| 178 |
end; |
end; |
| 306 |
then |
then |
| 307 |
something; |
something; |
| 308 |
if x = True then |
if x = True then |
| 309 |
Response.SendRedirect(FDTable2.FieldByName('home').AsAnsiString + 'login'); |
Response.SendRedirect(AnsiReplaceText(FDTable2.FieldByName('home').AsAnsiString,'http','https') + 'login'); |
| 310 |
end; |
end; |
| 311 |
|
|
| 312 |
procedure TWebModule1.WebModule1admindelAction(Sender: TObject; |
procedure TWebModule1.WebModule1admindelAction(Sender: TObject; |
| 483 |
i: integer; |
i: integer; |
| 484 |
s: string; |
s: string; |
| 485 |
begin |
begin |
| 486 |
for i := 0 to Request.ContentFields.count - 1 do |
for i := 0 to Request.ContentFields.Count - 1 do |
| 487 |
begin |
begin |
| 488 |
s := Request.ContentFields.Names[i]; |
s := Request.ContentFields.Names[i]; |
| 489 |
if s <> 'home' then |
if s <> 'home' then |
| 512 |
procedure TWebModule1.WebModuleBeforeDispatch(Sender: TObject; |
procedure TWebModule1.WebModuleBeforeDispatch(Sender: TObject; |
| 513 |
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean); |
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean); |
| 514 |
var |
var |
| 515 |
s: string; |
s, t: string; |
| 516 |
m: TResourceStream; |
m: TResourceStream; |
| 517 |
|
ssl: TStringList; |
| 518 |
begin |
begin |
| 519 |
if FDTable1.Exists = false then |
if FDTable1.Exists = false then |
| 520 |
FDTable1.CreateTable(false, [tpTable]); |
FDTable1.CreateTable(false, [tpTable]); |
| 567 |
Response.Content := PageProducer1.Content; |
Response.Content := PageProducer1.Content; |
| 568 |
Handled := True; |
Handled := True; |
| 569 |
end; |
end; |
| 570 |
|
{ |
| 571 |
|
t:=''; |
| 572 |
|
ssl:=TStringList.Create; |
| 573 |
|
try |
| 574 |
|
ssl.Add('/login'); |
| 575 |
|
ssl.Add('/admin'); |
| 576 |
|
if (ssl.IndexOf(Request.PathInfo) > -1)and(StartsText('https',FDTable2.FieldByName('home').AsString) = false) then |
| 577 |
|
begin |
| 578 |
|
s:=FDTable2.FieldByName('home').AsAnsiString; |
| 579 |
|
Delete(s,Length(s),1); |
| 580 |
|
t:='https'+Copy(s,5,Length(s))+Request.PathInfo; |
| 581 |
|
end; |
| 582 |
|
finally |
| 583 |
|
ssl.Free; |
| 584 |
|
end; |
| 585 |
|
if t <> '' then |
| 586 |
|
begin |
| 587 |
|
Response.SendRedirect(t); |
| 588 |
|
Exit; |
| 589 |
|
end; |
| 590 |
|
} |
| 591 |
end; |
end; |
| 592 |
|
|
| 593 |
procedure TWebModule1.WebModuleCreate(Sender: TObject); |
procedure TWebModule1.WebModuleCreate(Sender: TObject); |