use Cwd;
use DBI;
+use Getopt::Long;
+
+if (@ARGV && $ARGV[0] eq '--help') {
+ die <<AMEN ;
+Usage: gal mj-digikam [<album>]
+AMEN
+}
my $photos_root = $ENV{HOME} . '/photos';
$tag_id // die "Cannot find web tag\n";
print "## Tag ID: $tag_id\n";
+my $res = $dbh->selectall_arrayref( <<AMEN, { Slice => {} },
+ SELECT
+ i.name AS name,
+ p.latitudeNumber AS lat,
+ p.longitudeNumber AS lon,
+ p.altitude AS alt
+ FROM Images i
+ JOIN ImageTags t ON (i.id = t.imageid)
+ LEFT JOIN ImagePositions p ON (i.id = p.imageid)
+ WHERE i.album=? AND t.tagid=?
+ ORDER BY i.modificationDate
+AMEN
+ $album_id,
+ $tag_id,
+ );
+
open OUT, '|-', $ENV{GALLERY_ROOT} . '/bin/gal-scan' or die "Cannot feed gal scan\n";
-for my $r (@{$dbh->selectall_arrayref(
- 'SELECT i.name AS name FROM Images i JOIN ImageTags t ON (i.id = t.imageid) WHERE i.album=? AND t.tagid=? ORDER BY i.modificationDate',
- { Slice => {} },
- $album_id, $tag_id)}) {
+for my $r (@$res) {
print OUT "$photos_root/$album/" . $r->{name}, "\n";
+ for my $k (qw(lat lon alt)) {
+ print OUT "\t$k=", $r->{$k}, "\n" if defined $r->{$k};
+ }
}
close OUT;