Bug 5028
| Summary: | Add Quoted-Printable encode/decode methods to TMail::Mail class | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Sir Raorn <raorn> |
| Component: | ruby-tmail | Assignee: | nbr <nbr> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | enhancement | ||
| Priority: | P2 | CC: | cas, imz, led, majioa, mike, rider, stalker, stanv, timonbl4 |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
LOL. Вчера ровно этим (decode only, QP+B64) и занимался:
require 'tmail/mail'
module TMail
class Mail
def decode
case transfer_encoding
when nil then return body
when "base64" then return body.unpack('m*')
when "quoted-printable" then return body.unpack('M*')
else return body #raise "Unknown encoding: #{transfer_encoding}"
end
end
#def save(file=nil, decode=true)
# # filename can be set or taken from the mail itself
# file = disposition_param('filename') unless file
#end
end
end
Ну в общем новый TMail умеет и QP тоже. |

Description
Sir Raorn 2004-08-20 09:11:08 MSDSomething like that: module TMail class Mail def qp_encode store 'Content-Transfer-Encoding', 'Quoted-Printable' self.body = [self.body].pack('M') end end def qp_decode if /quoted-printable/i =~ self.transfer_encoding('') store 'Content-Transfer-Encoding', '8bit' self.body = self.body.unpack('M') end end end end