{ AutoCommit => 0,
RaiseError => 1 });
-my $st_get_set = $DB->prepare("SELECT name, ndisc FROM dvd_set
- WHERE id = ?");
-my $st_add_set = $DB->prepare("INSERT INTO dvd_set (name, ndisc)
- VALUES (?, ?)
- RETURNING id");
-my $st_update_set = $DB->prepare("UPDATE dvd_set
- SET name = ?, ndisc = ?
- WHERE id = ?");
+my $st_get_set = $DB->prepare
+ ("SELECT name, n_disc FROM dvd_set WHERE id = ?");
+my $st_add_set = $DB->prepare
+ ("INSERT INTO dvd_set (name, n_disc) VALUES (?, ?) RETURNING id");
+my $st_update_set = $DB->prepare
+ ("UPDATE dvd_set SET name = ?, n_disc = ? WHERE id = ?");
my $st_delete_set = $DB->prepare("DELETE FROM dvd_set WHERE id = ?");
-my $st_get_discs = $DB->prepare("SELECT disc, path FROM dvd_disc
- WHERE set_id = ? AND ? <= disc AND disc < ?
- ORDER BY disc");
-my $st_add_disc = $DB->prepare("INSERT INTO dvd_disc (set_id, disc, path)
- VALUES (?, ?, ?)");
-my $st_update_disc = $DB->prepare("UPDATE dvd_disc SET path = ?
- WHERE set_id = ? AND disc = ?");
-my $st_delete_disc_range = $DB->prepare("DELETE FROM dvd_disc
- WHERE set_id = ? AND
- ? <= disc AND disc < ?");
-my $st_delete_discs = $DB->prepare("DELETE FROM dvd_disc WHERE set_id = ?");
+my $st_get_discs = $DB->prepare
+ ("SELECT disc, path FROM dvd_disc
+ WHERE set_id = ? AND ? <= disc AND disc < ?
+ ORDER BY disc");
+my $st_add_disc = $DB->prepare
+ ("INSERT INTO dvd_disc (set_id, disc, path) VALUES (?, ?, ?)");
+my $st_update_disc = $DB->prepare
+ ("UPDATE dvd_disc SET path = ?, disc_id = NULL
+ WHERE set_id = ? AND disc = ?");
+my $st_delete_disc_range = $DB->prepare
+ ("DELETE FROM dvd_disc WHERE set_id = ? AND ? <= disc AND disc < ?");
+my $st_delete_discs = $DB->prepare
+ ("DELETE FROM dvd_disc WHERE set_id = ?");
my ($id, $name, $ndisc) = (undef, undef, -1);
my @path;
} else {
defined $name or die "missing name";
}
- } elsif (/^ \s+ !! \s* (\S .*) $/x) {
+ } elsif (/^ \s+ (?: !! \s*)? (\S .*) $/x) {
my $path = $1;
defined $id or die "no active set";
- push @path, undef;
- } elsif (/^ \s+ (\S .*) $/x) {
- my $path = $1;
- defined $id or die "no active set";
- -f "$ROOT/$path" && ! -l "$ROOT/$path" or die "file `$path' not found";
push @path, $path;
} elsif (/^ .* \S .* $/) {
die "unrecognized line `$_'";