#!/usr/bin/perl -- # -*- Perl -*-

use strict;
use Net::Amazon;
use Getopt::Std;
use LWP::UserAgent;
use HTTP::Cookies;
use vars qw($opt_a $opt_k);

my $usage = "Usage: $0 -a artist -k keywords\n";

die $usage if ! getopts('a:k:');
die $usage if ! $opt_a || ! $opt_k;

my $lwpua = LWP::UserAgent->new();
my $amzua = Net::Amazon->new(token => 'YOUR-AMAZON-KEY', max_pages => 1);

  # Get a request object
my $response = $amzua->search(artist => $opt_a,
			      mode => 'music',
			      keywords => $opt_k);

if ($response->is_success()) {
    my $prop = $response->properties();
    if (defined $prop && exists $prop->{'ImageUrlLarge'}) {
	print "Match: ", $prop->{'album'};
	print " by ", join(", ", @{$prop->{'artists'}}), "\n";

	$response = $lwpua->get($prop->{'ImageUrlLarge'});

	if ($response->is_success()) {
	    unlink "/tmp/cover.jpg";
	    open (F, ">/tmp/cover.jpg");
	    print F $response->content();
	    close (F);
	    system("open /tmp/cover.jpg");
	}
    } else {
	print "No ImageUrlLarge property\n";
    }
} else {
    print "Error: ", $response->message(), "\n";
}
