X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=ExternalThreadItem.pas;h=18d2c10d6ad1326f7830645cd9c552042b2a6ae5;hb=refs%2Fheads%2FBb62;hp=3220604a0dd1ad6512006868dd7508fd527de7fa;hpb=ec45be188b75f5e79381482a76210b2c547d708a;p=gikonavigoeson%2Fgikonavi.git diff --git a/ExternalThreadItem.pas b/ExternalThreadItem.pas index 3220604..18d2c10 100644 --- a/ExternalThreadItem.pas +++ b/ExternalThreadItem.pas @@ -31,7 +31,8 @@ type tipDownloadHost, // : string // ¡‚̃zƒXƒg‚ƈႤê‡‚̃zƒXƒg tipAgeSage, // : TThreadAgeSage // ƒAƒCƒeƒ€‚̏グ‰º‚° tipURL, // : string // ƒXƒŒƒbƒh‚ðƒuƒ‰ƒEƒU‚Å•\Ž¦‚·‚éÛ‚Ì URL - tipFilePath // : string // ‚±‚̃XƒŒ‚ª•Û‘¶‚³‚ê‚Ä‚¢‚éƒpƒX + tipFilePath, // : string // ‚±‚̃XƒŒ‚ª•Û‘¶‚³‚ê‚Ä‚¢‚éƒpƒX + tipJumpAddress // : Integer // JUMPæƒŒƒX”ԍ† ); // ************************************************************************* @@ -113,7 +114,7 @@ function ThreadItemDat2HTML( implementation -uses ExternalBoardManager, GikoSystem, BoardGroup; +uses ExternalBoardManager, GikoSystem, BoardGroup, HTMLCreate, MojuUtils; // ************************************************************************* // TThreadItem ƒNƒ‰ƒX‚̃vƒƒpƒeƒB‚ðŽæ“¾‚·‚é @@ -168,6 +169,8 @@ begin Result := DWORD( CreateResultString( threadItem.URL ) ); tipFilePath: // ‚±‚̃XƒŒ‚ª•Û‘¶‚³‚ê‚Ä‚¢‚éƒpƒX Result := DWORD( CreateResultString( threadItem.FilePath ) ); + tipJumpAddress: + Result := threadItem.JumpAddress; else Result := 0; end; @@ -206,7 +209,8 @@ begin tipRound: // : Boolean // „‰ñƒtƒ‰ƒO threadItem.Round := Boolean( param ); tipRoundName: // : string // „‰ñ–¼ - threadItem.RoundName := string( PChar( param ) ); + //threadItem.RoundName := string( PChar( param ) ); + threadItem.RoundName := PChar( param ); tipIsLogFile: // : Boolean // ƒƒO‘¶Ýƒtƒ‰ƒO threadItem.IsLogFile := Boolean( param ); tipKokomade: // : Integer // ƒRƒR‚Ü‚Å“Ç‚ñ‚¾”ԍ† @@ -225,8 +229,10 @@ begin threadItem.AgeSage := TGikoAgeSage( param ); tipURL: // : string // ƒXƒŒƒbƒh‚ðƒuƒ‰ƒEƒU‚Å•\Ž¦‚·‚éÛ‚Ì URL threadItem.URL := string( PChar( param ) ); - tipFilePath: // : string // ‚±‚̃XƒŒ‚ª•Û‘¶‚³‚ê‚Ä‚¢‚éƒpƒX - threadItem.FilePath := string( PChar( param ) ); + //tipFilePath: // : string // ‚±‚̃XƒŒ‚ª•Û‘¶‚³‚ê‚Ä‚¢‚éƒpƒX + // threadItem.FilePath := string( PChar( param ) ); + tipJumpAddress: + threadItem.JumpAddress := param; end; end; @@ -289,31 +295,35 @@ var threadItem : TThreadItem; res : TResRec; no : string; + resLink : TResLinkRec; begin threadItem := TThreadItem( inInstance ); // ˆø”‚𕪉ð - res := GikoSys.DivideStrLine( string( inDatRes ) ); - if AnsiCompareStr( string( inDatRes ) , '' ) <> 0 then begin - res.FBody := GikoSys.AddAnchorTag( res.FBody ); - res.FBody := GikoSys.ConvRes( res.FBody, threadItem.ParentBoard.BBSID, ChangeFileExt( threadItem.FileName, '' ), 'bbs', 'key', 'st', 'to', 'nofirst', 'true'); - - no := IntToStr( inResNo ); - - try - if GikoSys.Setting.UseSkin then begin - // ƒXƒLƒ“ - if inIsNew then - Result := CreateResultString( GikoSys.SkinedRes( - GikoSys.LoadFromSkin( - GikoSys.Setting.GetSkinNewResFileName, threadItem, threadItem.Size - ), res, no + THTMLCreate.DivideStrLine( string( inDatRes ) , @res); + if AnsiCompareStr( string( inDatRes ) , '' ) <> 0 then begin + res.FBody := THTMLCreate.DeleteLink(res.FBody); + resLink.FBbs := threadItem.ParentBoard.BBSID; + resLink.FKey := ChangeFileExt( threadItem.FileName, '' ); + HTMLCreater.AddAnchorTag( @res ); + HTMLCreater.ConvRes( @res, @resLink ); + + no := IntToStr( inResNo ); + + try + if GikoSys.Setting.UseSkin then begin + // ƒXƒLƒ“ + if inIsNew then + Result := CreateResultString( HTMLCreater.SkinedRes( + HTMLCreater.LoadFromSkin( + GikoSys.GetSkinNewResFileName, threadItem, threadItem.Size + ), @res, no ) ) else - Result := CreateResultString( GikoSys.SkinedRes( - GikoSys.LoadFromSkin( - GikoSys.Setting.GetSkinResFileName, threadItem, threadItem.Size - ), res, no + Result := CreateResultString( HTMLCreater.SkinedRes( + HTMLCreater.LoadFromSkin( + GikoSys.GetSkinResFileName, threadItem, threadItem.Size + ), @res, no ) ); end else if GikoSys.Setting.UseCSS then begin // CSS @@ -385,7 +395,7 @@ begin try if GikoSys.Setting.UseSkin then begin // ƒXƒLƒ“ - skinHeader := GikoSys.LoadFromSkin( GikoSys.Setting.GetSkinHeaderFileName, threadItem, threadItem.Size ); + skinHeader := HTMLCreater.LoadFromSkin( GikoSys.GetSkinHeaderFileName, threadItem, threadItem.Size ); if Length( optionalHeader ) > 0 then skinHeader := StringReplace( skinHeader, '', optionalHeader + '', [] ); @@ -441,7 +451,7 @@ begin try if GikoSys.Setting.UseSkin then begin // ƒXƒLƒ“ - skinFooter := GikoSys.LoadFromSkin( GikoSys.Setting.GetSkinFooterFileName, threadItem, threadItem.Size ); + skinFooter := HTMLCreater.LoadFromSkin( GikoSys.GetSkinFooterFileName, threadItem, threadItem.Size ); if Length( optionalFooter ) > 0 then skinFooter := StringReplace( skinFooter, '', optionalFooter + '', [] );