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.