MAJOR_VERSION = 1;
MINOR_VERSION = 0;
RELEASE_VERSION = 'beta';
- REVISION_VERSION = 18;
+ REVISION_VERSION = 19;
// =========================================================================
// \8eG\97p\8aÖ\90\94
const
BBS_HOST = 'machi.to';
THREAD_MARK = '/bbs/read.pl';
+ THREAD_MARK2= '/bbs/read.cgi';
begin
try
foundPos := AnsiPos( BBS_HOST, uri.Host );
if (foundPos > 0) and (Length( uri.Host ) - foundPos + 1 = Length( BBS_HOST )) then begin
foundPos := Pos( THREAD_MARK, inURL );
+ if (foundPos = 0) then begin
+ // \90VURL\91Î\89\9e
+ foundPos := Pos( THREAD_MARK2, inURL );
+ end;
if foundPos > 0 then
Result := atThread
else if (uriList.Count > 1) and (uri.Path <> '/') then // \8dÅ\8cã\82ª '/' \82Å\95Â\82ß\82ç\82ê\82Ä\82é\82È\82ç 3
var
uri : TIdURI;
uriList : TStringList;
- URL : String;
+ URL : String;
const
THREAD_MARK = '/bbs/read.pl';
+ THREAD_MARK2= '/bbs/read.cgi';
begin
URL := string(inURL);
if AnsiPos(THREAD_MARK, URL) > 0 then begin
uri.Free;
uriList.Free;
end;
+ end else if AnsiPos(THREAD_MARK2, URL) > 0 then begin
+ if Copy( inURL, Length( inURL ), 1 ) = '/' then
+ uri := TIdURI.Create( URL )
+ else
+ uri := TIdURI.Create( URL + '/' );
+
+ uriList := TStringList.Create;
+ try
+ // http://kanto.machi.to/bbs/read.cgi/kana/1215253035/l50
+ // http://kanto.machi.to/kana/
+ uriList.Delimiter := '/';
+ uriList.DelimitedText := uri.Path;
+ URL := uri.Protocol + '://' + uri.Host + '/';
+ if (uriList.Count >= 4) then begin
+ URL := URL + uriList[3] + '/';
+ end;
+ outURL := CreateResultString(URL);
+ finally
+ uri.Free;
+ uriList.Free;
+ end;
end else begin
outURL := CreateResultString(URL);
end;
uri : TIdURI;
uriList : TStringList;
foundPos : Integer;
+const
+ THREAD_MARK2= '/bbs/read.cgi';
begin
foundPos := AnsiPos( '?', URL );
uri.Free;
uriList.Free;
end;
- end;
+ end else begin
+ // \90V\8c`\8e® ?
+ foundPos := AnsiPos(THREAD_MARK2, URL);
+ if (foundPos > 0) then begin
+ uri := TIdURI.Create( URL );
+ uriList := TStringList.Create;
+ try
+ uriList.Delimiter := '/';
+ uriList.DelimitedText := uri.Path;
+ if (uriList.Count >= 5) then begin
+ Result :=
+ uri.Protocol + '://' + uri.Host + '/bbs/read.pl?' +
+ 'BBS=' + uriList[3] + '&KEY=' + uriList[4];
+ end;
+ finally
+ uri.Free;
+ uriList.Free;
+ end;
+ end;
+ end;
end;