| 127 |
if FItem = nil then begin |
if FItem = nil then begin |
| 128 |
FItem := BBSsFindBoardFromURL( URL ); |
FItem := BBSsFindBoardFromURL( URL ); |
| 129 |
if FItem = nil then begin |
if FItem = nil then begin |
|
//===== プラグイン |
|
|
try |
|
|
//作業中// |
|
|
bi := High( BoardPlugIns ); |
|
|
for i := Low( BoardPlugIns ) to bi do begin |
|
|
if Assigned( Pointer( BoardPlugIns[ i ].Module ) ) then begin |
|
|
case BoardPlugIns[ i ].AcceptURL( URL ) of |
|
|
atThread: |
|
|
begin |
|
|
FItem := BBSsFindBoardFromURL(BoardPlugIns[ i ].ExtractBoardURL(URL)); |
|
|
//tmpThread := TThreadItem.Create( BoardPlugIns[ i ], FItem, URL ); |
|
|
//boardURL := tmpThread.BoardPlugIn.GetBoardURL( DWORD( tmpThread ) ); |
|
|
//FItem := BBSsFindBoardFromURL( boardURL ); |
|
|
URL := FItem.URL; |
|
|
//tmpThread.Free; |
|
|
break; |
|
|
end; |
|
|
atBoard: |
|
|
begin |
|
|
//tmpBoard := TBoard.Create(BoardPlugIns[ i ], URL); |
|
|
FItem := BBSsFindBoardFromURL( BoardPlugIns[ i ].ExtractBoardURL(URL) ); |
|
|
//tmpBoard.Free; |
|
|
if FItem <> nil then begin |
|
|
URL := FItem.URL; |
|
|
end; |
|
|
break; |
|
|
end; |
|
|
end; |
|
|
end; |
|
|
end; |
|
|
except |
|
|
// exception が発生した場合は内部処理に任せたいのでここでは何もしない |
|
|
end; |
|
|
end; |
|
|
if FItem = nil then begin |
|
| 130 |
tmpURL := URL; |
tmpURL := URL; |
| 131 |
GikoSys.ParseURI( tmpURL, protocol, host, path, document, port, bookmark ); |
GikoSys.ParseURI( tmpURL, protocol, host, path, document, port, bookmark ); |
| 132 |
if GikoSys.Is2chHost( host ) then begin |
if GikoSys.Is2chHost( host ) then begin |