GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  CATALYST::VIEW::EMAIL::TEMPLATE (3)

.ds Aq ’

NAME

Catalyst::View::Email::Template - Send Templated Email from Catalyst

CONTENTS

SYNOPSIS

Sends templated mail, based upon your default view. It captures the output of the rendering path, slurps in based on mime-types and assembles a multi-part email using Email::MIME::Creator and sends it out.

CONFIGURATION

WARNING: since version 0.10 the configuration options slightly changed!

Use the helper to create your view:



    $ script/myapp_create.pl view Email::Template Email::Template



For basic configuration look at CONFIGURATION in Catalyst::View::Email.

In your app configuration (example in YAML):



    View::Email::Template:
        # Optional prefix to look somewhere under the existing configured
        # template  paths.
        # Default: none
        template_prefix: email
        # Define the defaults for the mail
        default:
            # Defines the default view used to render the templates.
            # If none is specified neither here nor in the stash
            # Catalysts default view is used.
            # Warning: if you dont tell Catalyst explicit which of your views should
            # be its default one, C::V::Email::Template may choose the wrong one!
            view: TT



SENDING EMAIL

Sending email works just like for Catalyst::View::Email but by specifying the template instead of the body and forwarding to your Email::Template view:



    sub controller : Private {
        my ( $self, $c ) = @_;

        $c->stash->{email} = {
            to          => jshirley@gmail.com,
            cc          => abraxxa@cpan.org,
            from        => no-reply@foobar.com,
            subject     => I am a Catalyst generated email,
            template    => test.tt,
            content_type => multipart/alternative
        };
       
        $c->forward( $c->view(Email::Template) );
    }



Alternatively if you want more control over your templates you can use the following idiom to override the defaults. If charset and encoding given, the body become properly encoded.



    templates => [
        {
            template        => email/test.html.tt,
            content_type    => text/html,
            charset         => utf-8,
            encoding        => quoted-printable,
            view            => TT,
        },
        {
            template        => email/test.plain.mason,
            content_type    => text/plain,
            charset         => utf-8,
            encoding        => quoted-printable,
            view            => Mason,
        }
    ]



HANDLING ERRORS

See HANDLING ERRORS in Catalyst::View::Email.

METHODS

generate_part Generates a MIME part to include in the email. Since the email is template based every template piece is a separate part that is included in the email.
process The process method is called when the view is dispatched to. This creates the multipart message and then sends the message contents off to Catalyst::View::Email for processing, which in turn hands off to Email::Sender::Simple.

TODO

    ATTACHMENTS

There needs to be a method to support attachments. What I am thinking is something along these lines:



    attachments => [
        # Set the body to a file handle object, specify content_type and
        # the file name. (name is what it is sent at, not the file)
        { body => $fh, name => "foo.pdf", content_type => "application/pdf" },
        # Or, specify a filename that is added, and hey, encoding!
        { filename => "foo.gif", name => "foo.gif", content_type => "application/pdf", encoding => "quoted-printable" },
        # Or, just a path to a file, and do some guesswork for the content type
        "/path/to/somefile.pdf",
    ]



SEE ALSO

    Catalyst::View::Email - Send plain boring emails with Catalyst

    Catalyst::Manual - The Catalyst Manual

    Catalyst::Manual::Cookbook - The Catalyst Cookbook

AUTHORS

J. Shirley <jshirley@gmail.com>

Simon Elliott <cpan@browsing.co.uk>

Alexander Hartmaier <abraxxa@cpan.org>

LICENSE

This library is free software, you can redistribute it and/or modify it under the same terms as Perl itself.
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 CATALYST::VIEW::EMAIL::TEMPLATE (3) 2015-09-25

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.