{$ELSE}
SHDocVw_TLB,
{$IFEND}
- ActiveX, {HTTPApp,} YofUtils, IniFiles, StrUtils,
+ ActiveX, {HTTPApp,} YofUtils, Trip, IniFiles, StrUtils,
GikoSystem, GikoUtil, ImgList, Clipbrd, BoardGroup,
IdAntiFreezeBase, IdAntiFreeze, IdBaseComponent, IdComponent,
IdTCPConnection, IdTCPClient, IdHTTP, ActnList, StdActns, IdIntercept,
TransAction: TAction;
A1: TMenuItem;
KotehanCheckBox: TCheckBox;
- TitlePanel: TPanel;
+ TitlePanel: TPanel;
Label1: TLabel;
TitleEdit: TEdit;
- SelectAllAction: TAction;
- N2: TMenuItem;
- SelectAll1: TMenuItem;
+ SelectAllAction: TAction;
+ N2: TMenuItem;
+ SelectAll1: TMenuItem;
procedure EditorPageChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure BrowserStatusTextChange(Sender: TObject;
AStream: TStream);
procedure IdLogDebugSend(ASender: TIdConnectionIntercept;
AStream: TStream);
- procedure SelectAllActionExecute(Sender: TObject);
+ procedure SelectAllActionExecute(Sender: TObject);
private
FThreadItem: TThreadItem;
FBoard: TBoard;
procedure TEditorForm.FormCreate(Sender: TObject);
var
wp: TWindowPlacement;
- hUser32 : HINST;
+ hUser32 : HINST;
begin
FWork := False;
Browser.Navigate('about:blank');
MailComboBox.Items.Assign(GikoSys.Setting.MailList);
SetFont;
//u32 := GetModuleHandle('User32.dll') <> 0;
- hUser32 := LoadLibrary('User32.dll');
- if hUser32 <> 0 then
- TransAction.Enabled := true
- else
- TransAction.Enabled := false;
- FreeLibrary(hUser32);
+ hUser32 := LoadLibrary('User32.dll');
+ if hUser32 <> 0 then
+ TransAction.Enabled := true
+ else
+ TransAction.Enabled := false;
+ FreeLibrary(hUser32);
end;
// s := StringReplace(s, '&', '&', [rfReplaceAll]);
s := StringReplace(s, '<', '<', [rfReplaceAll]);
s := StringReplace(s, '>', '>', [rfReplaceAll]);
-// s := StringReplace(s, ' ', ' ', [rfReplaceAll]); //\8ed\97l\95Ï\8dX\82É\82æ\82è \8eg\97p\95s\89Â
+// s := StringReplace(s, ' ', ' ', [rfReplaceAll]); //\8ed\97l\95Ï\8dX\82É\82æ\82è \8eg\97p\95s\89Â
s := StringReplace(s, '"', '"', [rfReplaceAll]);
Result := s;
end;
RefURL := GikoSys.UrlToServer(FBoard.URL) + 'test/bbs.cgi';
end else begin
URL := FThreadItem.GetSendURL;
- RefURL := GikoSys.UrlToServer(FThreadItem.ParentBoard.URL)
- + 'test/read.cgi/'
- + FThreadItem.ParentBoard.BBSID
- + '/' + ChangeFileExt(FThreadItem.FileName, '')
- + '/l50';
+ RefURL := FThreadItem.URL;
end;
Indy.Request.UserAgent := GikoSys.GetUserAgent;
Indy.Request.Referer := RefURL;
if AnsiPos('\8f\91\82«\82±\82Ý\82ª\8fI\82í\82è\82Ü\82µ\82½', ResponseText) <> 0 then
Result := grtOK
else if (AnsiPos('\83N\83b\83L\81[\82ª\82È\82¢\82©\8aú\8cÀ\90Ø\82ê\82Å\82·', ResponseText) > 0) or
- (AnsiPos('<title>\83N\83b\83L\81[\8am\94F\81I</title>', ResponseText) > 0) or
- (AnsiPos('<title>\81¡\83N\83b\83L\81[\8am\94F\81I\81¡</title>', ResponseText) > 0) or
+ (AnsiPos('<title>\83N\83b\83L\81[\8am\94F\81I</title>', ResponseText) > 0) or
+ (AnsiPos('<title>\81¡\83N\83b\83L\81[\8am\94F\81I\81¡</title>', ResponseText) > 0) or
//(AnsiPos('\83N\83b\83L\81[\8am\94F', ResponseText) > 0) or
- (AnsiPos(RES2CH_COOKIE, ResponseText) > 0) then
+ (AnsiPos(RES2CH_COOKIE, ResponseText) > 0) then
Result := grtCookie
- else if (AnsiPos('<font size=+2 color=#FF0000>\8f\91\82«\8d\9e\82Ý\83`\83F\83b\83N\81I </font>', ResponseText) > 0) or
- (AnsiPos('<title>\81¡ \8f\91\82«\8d\9e\82Ý\8am\94F\82µ\82Ü\82· \81¡</title>', ResponseText) > 0) or
- (AnsiPos('<title>\93\8a\8de\8am\94F</title>', ResponseText) > 0) or
- (AnsiPos('<b>\8f\91\82«\82±\82Ý\8am\94F</b>', ResponseText) > 0) or
- (AnsiPos('="../test/subbbs.cgi">', ResponseText) > 0) or
- (AnsiPos(RES2CH_FALSE, ResponseText) > 0) then
+ else if (AnsiPos('<font size=+2 color=#FF0000>\8f\91\82«\8d\9e\82Ý\83`\83F\83b\83N\81I </font>', ResponseText) > 0) or
+ (AnsiPos('<title>\81¡ \8f\91\82«\8d\9e\82Ý\8am\94F\82µ\82Ü\82· \81¡</title>', ResponseText) > 0) or
+ (AnsiPos('<title>\93\8a\8de\8am\94F</title>', ResponseText) > 0) or
+ (AnsiPos('<b>\8f\91\82«\82±\82Ý\8am\94F</b>', ResponseText) > 0) or
+ (AnsiPos('="../test/subbbs.cgi">', ResponseText) > 0) or
+ (AnsiPos(RES2CH_FALSE, ResponseText) > 0) then
Result := grtCheck
else
Result := grtError;
var
Board: TBoard;
rc: Integer;
+ state : TGikoDownloadState;
begin
if FWork then
Exit;
Board.KotehanName := NameComboBox.Text;
Board.KotehanMail := MailComboBox.Text;
end;
- Send(Board.SPID, Board.PON, True);
+
+ if Board.IsBoardPlugInAvailable then begin
+ if FThreadItem = nil then begin
+ // \83X\83\8c\97§\82Ä
+ state := TGikoDownloadState( Board.BoardPlugIn.CreateThread(
+ DWORD( Board ), TitleEdit.Text, NameComboBox.Text, MailComboBox.Text, BodyEdit.Text ) );
+
+ if state = gdsComplete then begin
+ GikoForm.PlaySound('ResEnd');
+ SaveSendFile;
+ GikoForm.AddMessageList(FBoard.Title + ' [\90V\83X\83\8c\91\97\90M\8fI\97¹]', nil, gmiOK);
+ Close;
+ end else if State = gdsError then begin
+ GikoForm.AddMessageList(FBoard.Title + ' [\90V\83X\83\8c\91\97\90M\8e¸\94s]', nil, gmiNG);
+ end else if State = gdsAbort then begin
+ GikoForm.AddMessageList(FThreadItem.Title + ' [\92\86\92f]', nil, gmiSAD);
+ end;
+ end else begin
+ // \83\8c\83X
+ state := TGikoDownloadState( FThreadItem.BoardPlugIn.WriteThread(
+ DWORD( FThreadItem ), NameComboBox.Text, MailComboBox.Text, BodyEdit.Text ) );
+
+ if state = gdsComplete then begin
+ GikoForm.PlaySound('ResEnd');
+ SaveSendFile;
+ GikoForm.AddMessageList(FThreadItem.Title + ' [\83\8c\83X\91\97\90M\8fI\97¹]', nil, gmiOK);
+ Close;
+ end else if State = gdsError then begin
+ GikoForm.AddMessageList(FThreadItem.Title + ' [\83\8c\83X\91\97\90M\8e¸\94s]', nil, gmiNG);
+ end else if State = gdsAbort then begin
+ GikoForm.AddMessageList(FThreadItem.Title + ' [\92\86\92f]', nil, gmiSAD);
+ end;
+ end;
+ end else begin
+ Send(Board.SPID, Board.PON, True);
+ end;
finally
FWork := False;
end;