Catalyst-Authentication-Credential-Twitter

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN


     sub callback : Local {
        my ($self, $c) = @_;
    
        if (my $user = $c->authenticate(undef,'twitter')) {
                    # user has an account - redirect or do something cool
            $c->res->redirect("/super/secret/member/area");
            }
            else {
                    # user doesn't have an account - either detect Twitter
                    # credentials and create one, or return an error.
                    #
                    # Note that "request_token" and "request_token_secret"
                    # are stored in $c->user_session as hashref variables under
                    # the same names
            }
     }

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

README.mkdn  view on Meta::CPAN

```perl
sub callback : Local {
   my ($self, $c) = @_;
   
   if (my $user = $c->authenticate(undef,'twitter')) {
               # user has an account - redirect or do something cool
       $c->res->redirect("/super/secret/member/area");
       }
       else {
               # user doesn't have an account - either detect Twitter
               # credentials and create one, or return an error.
               #
               # Note that "request_token" and "request_token_secret"
               # are stored in $c->user_session as hashref variables under
               # the same names
       }
}
```

# DESCRIPTION

lib/Catalyst/Authentication/Credential/Twitter.pm  view on Meta::CPAN

		# this is in case we need to register the user after the oauth process
		$c->user_session->{'access_token'} = $access_token;
		$c->user_session->{'access_token_secret'} = $access_token_secret;
	}

	# get the user
	$self->_twitter->access_token($access_token);
    $self->_twitter->access_token_secret($access_token_secret);

	my $twitter_user_hash = eval {
		$self->_twitter->verify_credentials;
	};

	if ($@ || !$twitter_user_hash) {
		$c->log->debug("no twitter_user_hash or error: ".$@);
		return undef;
	}

	$twitter_user_hash->{'access_token'} = $access_token;
	$twitter_user_hash->{'access_token_secret'} = $access_token_secret;

lib/Catalyst/Authentication/Credential/Twitter.pm  view on Meta::CPAN


 sub callback : Local {
    my ($self, $c) = @_;
    
    if (my $user = $c->authenticate(undef,'twitter')) {
		# user has an account - redirect or do something cool
    	$c->res->redirect("/super/secret/member/area");
	}
	else {
		# user doesn't have an account - either detect Twitter
		# credentials and create one, or return an error.
		#
		# Note that "request_token" and "request_token_secret"
		# are stored in $c->user_session as hashref variables under
		# the same names
	}
 }

=head1 DESCRIPTION

This module handles Twitter API authentication in a Catalyst application.

t/basic_app.t  view on Meta::CPAN

    access_token => 'alpha',
    access_token_secret => 'beta',
},
{
    id => 'wilfred',
    access_token => 'delta',
    access_token_secret => 'gamma',
},
);

$twitter->mock( 'verify_credentials' => sub {
        return shift @users;
} );


# all used by TestApp
for my $plugin ( qw/
    Authentication
    Session
    Session::State::Cookie
    / ) {

t/fail_callback.t  view on Meta::CPAN

my $twitter = Test::MockObject->new;
$twitter->fake_module( 'Net::Twitter' );
$twitter->fake_new( 'Net::Twitter' );
#$twitter->set_always( get_authentication_url => 'http://twit/auth' );
#$twitter->set_always( request_token => 'abc' );
#$twitter->set_always( request_token_secret => 'hush' );
#$twitter->set_always( request_access_token => 'request_access_token' );
#$twitter->set_always( access_token => 'access_token' );
#$twitter->set_always( access_token_secret => 'access_token_secret' );

0 and $twitter->mock( 'verify_credentials' => sub {
#        return shift @users;
} );


# all used by TestApp
for my $plugin ( qw/
    Authentication
    Session
    Session::State::Cookie
    / ) {

t/no_per_user.t  view on Meta::CPAN


my $twitter = Test::MockObject->new;
$twitter->fake_module( 'Net::Twitter' );
$twitter->fake_new( 'Net::Twitter' );
$twitter->set_always( get_authorization_url => 'http://twit/auth' );
$twitter->set_always( request_token => 'abc' );
$twitter->set_always( request_token_secret => 'hush' );
$twitter->set_always( request_access_token => 'request_access_token' );
$twitter->set_always( access_token => 'access_token' );
$twitter->set_always( access_token_secret => 'access_token_secret' );
$twitter->mock( 'verify_credentials' => sub { 
        return {
            access_token => 'alpha',
            access_token_secret => 'beta',
        };
    } );


# all used by TestApp
for my $plugin ( qw/ 
    Authentication 



( run in 0.395 second using v1.01-cache-2.11-cpan-4d50c553e7e )