File Coverage

blib/lib/Flickr/API/People.pm
Criterion Covered Total %
statement 12 66 18.1
branch 0 10 0.0
condition n/a
subroutine 4 15 26.6
pod 8 10 80.0
total 24 101 23.7


line stmt bran cond sub pod time code
1             package Flickr::API::People;
2              
3 1     1   121762 use strict;
  1         1  
  1         32  
4 1     1   8 use warnings;
  1         1  
  1         45  
5 1     1   4 use Carp;
  1         1  
  1         51  
6              
7 1     1   361 use parent qw( Flickr::API );
  1         228  
  1         5  
8             our $VERSION = '1.28';
9              
10              
11             sub _initialize {
12              
13 0     0     my $self=shift;
14 0           my $check;
15              
16             #if $self->api_permissions . . .
17 0           my $rsp = $self->execute_method('flickr.auth.oauth.checkToken');
18              
19 0 0         if (!$rsp->success()) {
20              
21 0           $rsp->_propagate_status($self->{flickr}->{status});
22              
23             carp "\nUnable to validate token. Flickr error: ",
24             $self->{flickr}->{status}->{error_code}," - \"",
25 0           $self->{flickr}->{status}->{error_message},"\" \n";
26              
27 0           $self->_set_status(0,"Unable to validate token, Flickr API call not successful.");
28              
29             }
30             else {
31              
32 0           $check = $rsp->as_hash();
33 0           $self->{flickr}->{token} = $check->{oauth};
34 0           $self->_set_status(1,"Token validated.");
35              
36             }
37              
38 0           return;
39              
40             }
41              
42             sub findByEmail {
43              
44 0     0 1   my $self = shift;
45 0           my $email = shift;
46              
47 0           $self->clear_user;
48              
49 0 0         unless ($email) { croak 'Usage: $api->findByEmail("an-email-address")'; }
  0            
50              
51 0           my $rsp = $self->execute_method('flickr.people.findByEmail',{'find_email' => $email});
52 0           $rsp->_propagate_status($self->{flickr}->{status});
53              
54 0 0         if ($rsp->success == 1) {
55              
56 0           my $eresult = $rsp->as_hash();
57 0           $self->_set_status(1,"flickr.people.findByEmail successfully found " . $email);
58 0           $self->{flickr}->{user} = $eresult->{user};
59              
60             }
61             else {
62              
63 0           $self->_set_status(0,"Unable to find user with: " . $email);
64              
65             }
66              
67 0           return $self->username;
68             }
69              
70             sub findByUsername {
71              
72 0     0 1   my $self = shift;
73 0           my $user = shift;
74              
75 0           $self->clear_user;
76              
77 0 0         unless ($user) { croak 'Usage: $api->findByUsername("a_user_name")'; }
  0            
78              
79 0           my $rsp = $self->execute_method('flickr.people.findByUsername',{'username' => $user});
80 0           $rsp->_propagate_status($self->{flickr}->{status});
81              
82 0 0         if ($rsp->success == 1) {
83              
84 0           my $uresult = $rsp->as_hash();
85 0           $self->_set_status(1,"flickr.people.findByUsername successfully found " . $user);
86 0           $self->{flickr}->{user} = $uresult->{user};
87              
88             }
89             else {
90              
91 0           $self->_set_status(0,"Unable to find user with: " . $user);
92              
93             }
94              
95 0           return $self->username;
96             }
97              
98              
99             sub perms {
100 0     0 1   my $self=shift;
101 0           return $self->{flickr}->{token}->{perms};
102             }
103              
104             sub perms_caller {
105 0     0 1   my $self=shift;
106 0           return $self->{flickr}->{token}->{user}->{username};
107             }
108              
109             sub perms_nsid {
110 0     0 1   my $self=shift;
111 0           return $self->{flickr}->{token}->{user}->{nsid};
112             }
113              
114             sub perms_token {
115 0     0 1   my $self=shift;
116 0           return $self->{flickr}->{token}->{token};
117             }
118              
119             sub nsid {
120 0     0 1   my $self=shift;
121 0           return $self->{flickr}->{user}->{nsid};
122             }
123              
124             sub username {
125 0     0 1   my $self=shift;
126 0           return $self->{flickr}->{user}->{username};
127             }
128              
129             sub user {
130 0     0 0   my $self=shift;
131 0           return $self->{flickr}->{user};
132             }
133              
134             sub clear_user {
135 0     0 0   my $self=shift;
136 0           delete $self->{flickr}->{user};
137 0           return;
138             }
139              
140              
141              
142             1;
143              
144             __END__