#!/usr/bin/perl

BEGIN {
#use lib 'd:/Programs/Perl/lib';
#use lib '/home/tkamiya/bin/lib';
my $BaseDir = $ENV{'TkPerlDir'};
#print "\nBaseDir: $BaseDir\n";
@INC = ("$BaseDir/lib", "$BaseDir/VNL", "d:/Programs/Perl/lib", @INC);
}


use strict;
#use warnings;
use Jcode;
use Net::SMTP;

use Utils;
use MyApplication;

my $App = new MyApplication;
exit 1 if($App->Initialize() < 0);
exit 2 if($App->ReadArgs(1, "sjis", 0) != 1);
my $Args = $App->Args();
my %ArgHash = $Args->GetArgHash();

#foreach my $key (keys %ArgHash) {
#	print "key: $key: $ArgHash{$key}\n";
#}

my $SMTPServer = $ArgHash{SMTPServer};
my $MailerName = $ArgHash{MailerName};
my $Domain     = $ArgHash{Domain};
my $To         = $ArgHash{To};
my $From       = $ArgHash{From};
my $Subject    = $ArgHash{Subject};
my $Now        = Utils::BuildDateString(time());
my $Content    = "HostName: $ArgHash{HostName}\nTitle: $ArgHash{Title}\nDate: $Now\nDir: $ArgHash{WorkDir}\n";
#print "C: $Content\n";

&SendMail2($SMTPServer, $MailerName, $Domain, $To, '', $From, $Subject, $Content, undef);
print "E-Mail has been sent to $To\n";
print "  HostName  : $ArgHash{HostName}\n";
print "  SMTPServer: $SMTPServer\n";
print "  MailerName: $MailerName\n";
print "  Domain: $Domain\n";
print "  Subject: $Subject\n";
exit;

sub SendMail2
{
	my ($SMTPServer, $MailerName, $Domain, $to, $cc, $from, $subject, $body, $charset) = @_;
	$charset = "iso-8859-1" if($charset eq '');

	my($server) = new Net::SMTP($SMTPServer, Hello => $Domain);
	unless ($server) {
		print "Can not connect to the mail server [$SMTPServer]<br>\n";
		return 0;
	}

	my $recipients;
	foreach ($cc) {
		next unless $_;
		$recipients = $recipients.',' if $recipients;
		$recipients = $recipients.$_;
	}
#メッセージの送信
	$server->mail($from);
	$server->to($to);
	$server->recipient($recipients);
	$server->data();
	$server->datasend("Content-Type: text/plain; charset=$charset\n");
	$server->datasend("To: $to\n");
	$server->datasend("Cc: $cc\n");
#	$server->datasend("Bcc: $Arg{Bcc}\n") if ($Arg{Bcc});
	$server->datasend("From: $from\n");
	$server->datasend("Subject: $subject\n");
#ヘッダの終わり
	$server->datasend("\n");

	$server->datasend($body);
	$server->dataend();

#サーバとの接続をクローズ
	$server->quit();

	return 1;
}