| 114 |
inherited; |
inherited; |
| 115 |
end; |
end; |
| 116 |
function TFavoriteBoardItem.GetItem : TBoard; |
function TFavoriteBoardItem.GetItem : TBoard; |
| 117 |
//var |
var |
| 118 |
|
protocol, host, path, document, port, bookmark : string; |
| 119 |
|
BBSID, BBSKey : string; |
| 120 |
|
tmpURL : string; |
| 121 |
// category : TCategory; |
// category : TCategory; |
| 122 |
begin |
begin |
| 123 |
|
|
| 124 |
if FItem = nil then begin |
if FItem = nil then begin |
| 125 |
FItem := BBSsFindBoardFromURL( URL ); |
FItem := BBSsFindBoardFromURL( URL ); |
|
{ |
|
| 126 |
if FItem = nil then begin |
if FItem = nil then begin |
| 127 |
|
tmpURL := URL; |
| 128 |
|
GikoSys.ParseURI( tmpURL, protocol, host, path, document, port, bookmark ); |
| 129 |
|
if GikoSys.Is2chHost( host ) then begin |
| 130 |
|
GikoSys.Parse2chURL( tmpURL, path, document, BBSID, BBSKey ); |
| 131 |
|
FItem := BBSs[ 0 ].FindBBSID( BBSID ); |
| 132 |
|
end; |
| 133 |
|
{ |
| 134 |
// ※作っても、追加するカテゴリが無いので激しく保留 |
// ※作っても、追加するカテゴリが無いので激しく保留 |
| 135 |
FItem := GikoSys.GetUnknownBoard( nil, URL ); |
FItem := GikoSys.GetUnknownBoard( nil, URL ); |
| 136 |
FItem.Title := Title; |
FItem.Title := Title; |
| 137 |
|
} |
| 138 |
end; |
end; |
|
} |
|
| 139 |
end; |
end; |
| 140 |
|
|
| 141 |
Result := FItem; |
Result := FItem; |
| 177 |
board : TBoard; |
board : TBoard; |
| 178 |
boardURL : string; |
boardURL : string; |
| 179 |
browsableURL : string; |
browsableURL : string; |
| 180 |
|
protocol, host, path, document, port, bookmark : string; |
| 181 |
|
BBSID, BBSKey : string; |
| 182 |
|
tmpURL : string; |
| 183 |
begin |
begin |
| 184 |
|
|
| 185 |
|
Result := nil; |
| 186 |
if FItem = nil then begin |
if FItem = nil then begin |
| 187 |
browsableURL := GikoSys.GetBrowsableThreadURL( URL ); |
browsableURL := GikoSys.GetBrowsableThreadURL( URL ); |
| 188 |
boardURL := GikoSys.GetThreadURL2BoardURL( browsableURL ); |
boardURL := GikoSys.GetThreadURL2BoardURL( browsableURL ); |
| 189 |
board := BBSsFindBoardFromURL( boardURL ); |
board := BBSsFindBoardFromURL( boardURL ); |
| 190 |
|
|
| 191 |
if board = nil then begin |
if board = nil then begin |
| 192 |
Result := nil; |
tmpURL := URL; |
| 193 |
Exit |
GikoSys.ParseURI( tmpURL, protocol, host, path, document, port, bookmark ); |
| 194 |
// ※作っても、追加するカテゴリが無いので激しく保留 |
if GikoSys.Is2chHost( host ) then begin |
| 195 |
//board := GikoSys.GetUnknownBoard( nil, boardURL ) |
GikoSys.Parse2chURL( tmpURL, path, document, BBSID, BBSKey ); |
| 196 |
end else |
board := BBSs[ 0 ].FindBBSID( BBSID ); |
| 197 |
FItem := board.FindThreadFromURL( browsableURL ); |
end; |
| 198 |
|
|
| 199 |
|
if board = nil then begin |
| 200 |
|
Exit; |
| 201 |
|
// ※作っても、追加するカテゴリが無いので激しく保留 |
| 202 |
|
//board := GikoSys.GetUnknownBoard( nil, boardURL ) |
| 203 |
|
end; |
| 204 |
|
end; |
| 205 |
|
|
| 206 |
|
FItem := board.FindThreadFromURL( browsableURL ); |
| 207 |
|
|
| 208 |
if FItem = nil then begin |
if FItem = nil then begin |
| 209 |
FItem := TThreadItem.Create( board.BoardPlugIn, browsableURL ); |
FItem := TThreadItem.Create( board.BoardPlugIn, browsableURL ); |