]> git.evergreen-ils.org Git - working/Evergreen.git/blob - Open-ILS/src/perlmods/lib/OpenILS/WWW/AddedContent/Amazon.pm
Make Evergreen Perl modules installable via Module::Build to match OpenSRF
[working/Evergreen.git] / Open-ILS / src / perlmods / lib / OpenILS / WWW / AddedContent / Amazon.pm
1 package OpenILS::WWW::AddedContent::Amazon;
2 use strict; use warnings;
3 use OpenSRF::Utils::Logger qw/$logger/;
4 use OpenSRF::Utils::SettingsParser;
5 use OpenILS::WWW::AddedContent;
6 use OpenSRF::Utils::JSON;
7 use OpenSRF::EX qw/:try/;
8 use XML::LibXML;
9
10 my $AC = 'OpenILS::WWW::AddedContent';
11
12 sub new {
13     my( $class, $args ) = @_;
14     $class = ref $class || $class;
15     return bless($args, $class);
16 }
17
18 sub base_url {
19     my $self = shift;
20     return $self->{base_url};
21 }
22
23 sub userid {
24     my $self = shift;
25     return $self->{userid};
26 }
27
28
29 # --------------------------------------------------------------------------
30 sub jacket_small {
31     my( $self, $key ) = @_;
32     return $self->send_img(
33         $self->fetch_response('_SCMZZZZZZZ_.jpg', $key));
34 }
35
36 sub jacket_medium {
37     my( $self, $key ) = @_;
38     return $self->send_img(
39         $self->fetch_response('_SCMZZZZZZZ_.jpg', $key));
40
41 }
42 sub jacket_large {
43     my( $self, $key ) = @_;
44     return $self->send_img(
45         $self->fetch_response('_SCZZZZZZZ_.jpg', $key));
46 }
47
48 # --------------------------------------------------------------------------
49
50 sub send_img {
51     my($self, $response) = @_;
52     return { 
53         content_type => $response->header('Content-type'),
54         content => $response->content, 
55         binary => 1 
56     };
57 }
58
59 # returns the raw content returned from the URL fetch
60 sub fetch_content {
61     my( $self, $page, $key ) = @_;
62     return $self->fetch_response($page, $key)->content;
63 }
64
65 # returns the HTTP response object from the URL fetch
66 sub fetch_response {
67     my( $self, $page, $key ) = @_;
68     my $uname = $self->userid;
69     my $url = $self->base_url . "$key.01.$page";
70     return $AC->get_url($url);
71 }
72
73
74
75 1;