# -*-perl-*-
# keitairc/lib/plugins/00postme
# $Id: 00postme,v 1.1 2008/01/13 12:12:55 morimoto Exp $
# $Source: /cvsroot/keitairc/lib/plugins/00postme,v $

use Net::SMTP;

$plugin = {
	name => 'postme',
	action_imprementation => sub {
		my ($request, $name, $session_id, $param_string) = @_;
		my $ci = new Keitairc::ClientInfo($request);
		my $view = new Keitairc::View($::cf, $ci);

		my $error = {};
		$error->{no_smtp_server} = 1 unless $::cf->smtp_server();
		$error->{no_smtp_from} = 1 unless $::cf->smtp_from();
		$error->{no_smtp_to} = 1 unless $::cf->smtp_to();
		if(keys(%{$error})){
			$error->{has_error} = 1;
			$error->{session_id} = $session_id;
			return $view->render('postme.html', $error);
		}

		my $message = $request->content();
		$message =~ s/^text=//;
		$message =~ s/\+/ /g;
		Encode::from_to($message, 'shiftjis', 'jis');

		my $smtp = Net::SMTP->new($::cf->smtp_server());
		$smtp->mail($::cf->smtp_from());
		$smtp->to($::cf->smtp_to());
		$smtp->data();
		$smtp->datasend('To: ' . $::cf->smtp_to() . "\n");
		$smtp->datasend("Subject: memo from keitairc\n");
		$smtp->datasend("Content-Type: text/plain; charset=iso-2022-jp\n");
		$smtp->datasend("MIME-Version: 1.0\n");
		$smtp->datasend("\n");
		$smtp->datasend($message);
		$smtp->datasend("\n");
		$smtp->dataend();
		$smtp->quit();

		my $p = {};
		$p->{smtp_to} = $::cf->smtp_to();
		$p->{session_id} = $session_id;
		return $view->render('postme.html', $p);
	}
};

1;
