NAME
    Catalyst::Authentication::Credential::Flickr - Flickr authentication for
    Catalyst

SYNOPSIS
    In MyApp.pm

     use Catalyst qw/
        Authentication
        Session
        Session::Store::FastMmap
        Session::State::Cookie
     /;
 
     MyApp->config(
         "Plugin::Authentication" => {
             default_realm => "flickr",
             realms => {
                 flickr => {
                     credential => {
                         class => "Flickr",
                     },

                     key    => 'flickr-key-here',
                     secret => 'flickr-secret-here',
                     perms  => 'read',
                 },
             },
         },
     );

    And then in your Controller:

     sub login : Local {
        my ($self, $c) = @_;
    
        my $realm = $c->get_auth_realm('flickr');
        $c->res->redirect( $realm->credential->authenticate_flickr_url($c) );
     }

    And finally the callback you specified in your API key request (e.g.
    example.com/flickr/ ):

     sub flickr : Local {
        my ($self, $c) = @_;
    
        $c->authenticate();
        $c->res->redirect("/super/secret/member/area");
     }

DESCRIPTION
    This module handles Flickr API authentication in a Catalyst application.

    When Catalyst::Plugin::Authentication 0.10 was released, the API had
    changed, resulting in broken code when using
    Catalyst::Plugin::Authentication::Credential::Flickr.

    This module tries to follow the guidelines of the new API and deprecate
    Catalyst::Plugin::Authentication::Credential::Flickr.

    Code changes are needed, but are fairly minimal.

METHODS
    As per guidelines of Catalyst::Plugin::Authentication, there are two
    mandatory methods, "new" and "authenticate". Since this is not really
    enough for the Flickr API, I've added one more (and an alias).

  new()
    Will not be called by you directly, but will use the configuration you
    provide (see above). Mandatory parameters are "key", "secret" and
    "perms". Please see Flickr::API for more details on them.

  authenticate_flickr_url( $c )
    This method will return the authentication URL. Bounce your users there
    before calling the "authentication" method.

  authenticate( )
    Handles the authentication. Nothing more, nothing less. It returns a
    Catalyst::Authentication::User::Hash with the following keys (all coming
    straight from Flickr).

    fullname
    nsid
    perms
    token
    username

AUTHOR
    M. Blom <blom@cpan.org> <http://menno.b10m.net/perl/>

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

    The full text of the license can be found in the LICENSE file included
    with this module.

SEE ALSO
    Catalyst::Plugin::Authentication, Flickr::API

BUGS
    "Bugs? Impossible!". Please report bugs to
    <http://rt.cpan.org/Ticket/Create.html?Queue=Catalyst-Authentication-Cre
    dential-Flickr>

THANKS
    Thanks go out Daisuke Murase for writing C::P::A::Credential::Flickr,
    Ashley Pond for inspiration and help in C::A::Credential::OpenID, Cal
    Henderson for Flickr::API.

