NAME

Catalyst::View::vCard - vCard view for Catalyst

SYNOPSIS

# in a controller...
my $profile = $foo;

$c->stash->{ vcards }   = [ $profile ];
$c->stash->{ filename } = $profile->username;
$c->forward( $c->view( 'vCard' ) );

# in a view...
package MyApp::View::vCard;

use base qw( Catalyst::View::vCard );

sub convert_to_vcard {
    my( $self, $c, $profile, $vcard ) = @_;
    
    $vcard->nickname( $profile->username );
    $vcard->fullname( $profile->name ) if $profile->name;
    $vcard->email( $profile->email ) if $profile->show_email;
}

DESCRIPTION

This is a view to help you serialize objects to vCard output. You can configure the output filename by supplying a name in $c-stash->{ filename }> (a .vcf extension will automatically added for you). A default convert_to_vcard implementation is provided, however you can provide your own to map your object to a Text::vCard object.

METHODS

process( \@vcards )

This method will loop through and call convert_to_vcard on all of the items in the vcards key of the stash.

convert_to_vcard( $self, $c, $in, $out )

This is a default implementation for converting your items to vCard objects. It will try various hash keys or methods based on the naming scheme of Text::vCard's methods.

AUTHOR

Brian Cassidy <bricas@cpan.org>

COPYRIGHT AND LICENSE

Copyright 2006-2009 by Brian Cassidy

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO