I do something very similar. Though I send plain text email only. I
create my data as fully formatted, sign/encrypt it and then send it to
a template that just outputs the field.

On Mon, Jul 18, 2011 at 12:16 PM, Christophe Vandeplas
<christo...@vandeplas.com> wrote:
> Hello,
>
>
> My webapplication needs to send out emails that are signed with a GPG
> signature.
> However as I am using the Email component this seems a little more
> complicated as I can't really figure out how to do it. Any help will
> be appreciated and compensated with Belgian beer if we ever meet.
>
> Signing data using GnuPG (and the PEAR GPG classes) is relatively
> easy:
>        require_once 'Crypt/GPG.php';
>        $gpg = new Crypt_GPG();
>        $text = "Hello world";
>        $gpg->addSignKey(Configure::read('GnuPG.email'),
> Configure::read('GnuPG.password'));
>        $text_signed = $gpg->sign($text, Crypt_GPG::SIGN_MODE_CLEAR);
>        debug($text_signed);
>
> The code I use to send out the email is here. The "new_event" view
> will be used to format my email message with the data from $event.
>
>        $this->Email->from = "foo <f...@bar.com>";
>        $this->Email->to = "bar <b...@foo.com>";
>        $this->Email->subject = "[foo] new event";
>        $this->Email->delivery = 'debug';   // do not really send out
> mails, only display it on the screen
>        $this->Email->template = 'new_event'; // in views/elements/
> email/html or text
>        $this->Email->sendAs = 'text';        // both text or html
>        $this->set('event', $event);
>        $this->Email->send();
>
> Now the GPG magic needs to happen on the email body/message.
> I've opened the EmailComponent class to find out that the ->send()
> function _renders() the mail using the view and finally sends it using
> the delivery method (mail, smtp,...).
>
> However I can't find a way to extract the rendered body, sign it, push
> it back and then let it be sent.
>
> I guess I will probably need to make a new component class to handle
> this. However I have absolutely no idea where or how to start.
> Considering the few lines required to do the gpg signing it shouldn't
> be to difficult though...
>
> Could you give me some advice to get this going?
>
> Thanks
> Christophe
>
> --
> Our newest site for the community: CakePHP Video Tutorials 
> http://tv.cakephp.org
> Check out the new CakePHP Questions site http://ask.cakephp.org and help 
> others with their CakePHP related questions.
>
>
> To unsubscribe from this group, send email to
> cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
> http://groups.google.com/group/cake-php
>

-- 
Our newest site for the community: CakePHP Video Tutorials 
http://tv.cakephp.org 
Check out the new CakePHP Questions site http://ask.cakephp.org and help others 
with their CakePHP related questions.


To unsubscribe from this group, send email to
cake-php+unsubscr...@googlegroups.com For more options, visit this group at 
http://groups.google.com/group/cake-php

Reply via email to