#!/usr/bin/ruby -Ke
require 'net/smtp'
require 'kconv'
require 'uconv'

REPOS=ARGV[0]
REV=ARGV[1].to_i
USER=ARGV[2]
PROPNAME=ARGV[3]
ACTION=ARGV[4]
OLDVALUE=Uconv.u8toeuc(STDIN.read).chomp
NEWVALUE=""

if "svn:log" == PROPNAME
    NEWVALUE = %x{svnlook log #{REPOS} -r #{REV}}.chomp
end

toaddr=['manhole@xxxxx']

body = <<END_OF_BODY
Subversion revprop changed to #{REPOS} #{REV}

USER=#{USER}
PROPNAME=#{PROPNAME}
ACTION=#{ACTION}

old value:
--------------------------------------------------------
#{OLDVALUE}

new value:
--------------------------------------------------------
#{NEWVALUE}

END_OF_BODY

message = <<END_OF_MESSAGE
From: Subversion Admin <manhole@xxxxx>
To: Subversion committers:;
Subject: [pj-#{REV}] revprop
MIME-Version: 1.0
Content-Type: text/plain; charset = ISO-2022-JP
X-Mailer: Subversion email-send.rb

#{body.tojis}
END_OF_MESSAGE

Net::SMTP.start('localhost', 25) { |smtp|
    smtp.send_mail(message, 'manhole@xxxxx', *toaddr)
}
