+function TThreadItem.GetOfflaw2SoURL: string;
+begin
+ Result := GikoSys.UrlToServer(ParentBoard.URL)
+ + 'test/offlaw2.so?shiro=kuma&bbs=' + ParentBoard.BBSID
+ + '&key=' + ChangeFileExt(FileName, '');
+end;
+
+function TThreadItem.GetRokkaURL(const SessionID: string): string;
+var
+ Domain: string;
+ Host: string;
+ Idx: Integer;
+ HostPos: Integer;
+begin
+ if FDownloadHost = '' then begin
+ Idx := AnsiPos('.2ch.net/', ParentBoard.URL);
+ if (Idx > 0) then begin
+ Domain := '2ch.net';
+ end else begin
+ Idx := AnsiPos('.bbspink.com/', ParentBoard.URL);
+ if (Idx > 0) then
+ Domain := 'bbspink.com';
+ end;
+ if (Idx > 0) then begin
+ HostPos := AnsiPos('://', ParentBoard.URL) + 3;
+ Host := Copy(ParentBoard.URL, HostPos, Idx - HostPos);
+ end;
+ end else begin
+ Idx := AnsiPos('.2ch.net', FDownloadHost);
+ if (Idx > 0) then begin
+ Domain := '2ch.net';
+ end else begin
+ Idx := AnsiPos('.bbspink.com', FDownloadHost);
+ if (Idx > 0) then
+ Domain := 'bbspink.com';
+ end;
+ if (Idx > 0) then begin
+ Host := Copy(FDownloadHost, 1, Idx - 1);
+ end;
+ end;
+
+ if ((Domain = '') or (Host = '')) then
+ Result := ''
+ else
+ Result := 'http://rokka.' + Domain + '/' + Host + '/'
+ + ParentBoard.BBSID + '/' + ChangeFileExt(FileName, '')
+ + '/?sid=' + SessionID;
+end;
+
+// \8aO\95\94\94Â\89ß\8b\8e\83\8d\83OURL\8eæ\93¾
+function TThreadItem.GetExternalBoardKakoDatURL: string;
+var
+ DatNo: string;
+begin
+ DatNo := ChangeFileExt(FileName, '');
+ //http://xxx.vip2ch.com/xxx/kako/1234/12345/1234567890.dat
+ Result := Format('%s%s/%.4s/%.5s/%s.dat', [ParentBoard.URL, 'kako', DatNo, DatNo, DatNo]);
+end;
+// \8aO\95\94\94Â\89ß\8b\8e\83\8d\83OURL\8eæ\93¾
+