]> git.openstreetmap.org Git - rails.git/blob - script/deliver-message
Update message delivery script to work with rails 3
[rails.git] / script / deliver-message
1 #!/usr/bin/env ruby
2
3 require File.dirname(__FILE__) + '/../config/environment'
4
5 exit 0 unless recipient = ARGV[0].match(/^([cm])-(\d+)-(.*)$/)
6
7 if recipient[1] == "c"
8   comment = DiaryComment.find(recipient[2])
9   digest = comment.digest
10   from = comment.diary_entry.user
11   to = comment.user
12 else
13   message = Message.find(recipient[2])
14   digest = message.digest
15   from = message.recipient
16   to = message.sender
17 end
18
19 exit 0 unless recipient[3] == digest[0,6]
20
21 mail = Mail.new(STDIN.readlines.join)
22
23 message = Message.new(:sender => from, :recipient => to,
24                       :sent_on => mail.date.new_offset(0),
25                       :title => mail.subject.sub(/\[OpenStreetMap\] */, ""),
26                       :body => mail.body.decoded)
27 message.save!
28
29 Notifier.message_notification(message).deliver
30
31 exit 0