sub tags
{
- my($self, @constraints)=@_;
+ my($self, $path)=@_;
+ my @constraints=@{$path->{elements}};
if(!@constraints) # /
{
# FIXME: add ALL?
sub artists
{
- my($self, @constraints)=@_;
+ my($self, $path)=@_;
+ my @constraints=@{$path->{elements}};
if(!@constraints) # /ALL
{
my $sql="SELECT DISTINCT name FROM artists;";
sub albums
{
- my($self, @constraints)=@_;
+ my($self, $path)=@_;
+ my @constraints=@{$path->{elements}};
my @ids=();
# FIXME: rework PathElements
if(ref($constraints[$#constraints]) eq "ID3FS::PathElement::Artist")
{
- return $self->artist_albums($constraints[$#constraints]->{id}, @constraints);
+ return $self->artist_albums($constraints[$#constraints]->{id}, $path);
}
my $sql=("SELECT albums.name\n" .
"\tFROM (\n" .
sub artist_albums
{
- my($self, $artist_id, @constraints)=@_;
+ my($self, $artist_id, $path)=@_;
+ my @constraints=@{$path->{elements}};
my $sql=("SELECT albums.name FROM (\n" .
$self->tags_subselect(@constraints) .
"\t) AS subselect\n" .
sub artist_tracks
{
- my($self, $artist_id, @constraints)=@_;
+ my($self, $artist_id, $path)=@_;
+ my @constraints=@{$path->{elements}};
my $sql=("SELECT files.name FROM (\n" .
$self->tags_subselect(@constraints) .
"\t) AS subselect\n" .
sub tracks
{
- my($self, @constraints)=@_;
+ my($self, $path)=@_;
+ my @constraints=@{$path->{elements}};
# FIXME: rework PathElements
if(ref($constraints[$#constraints]) eq "ID3FS::PathElement::Artist")
{
sub filename
{
- my($self, $mountpoint, @constraints)=@_;
+ my($self, $mountpoint, $path)=@_;
+ my @constraints=@{$path->{elements}};
if(ref($constraints[$#constraints]) eq "ID3FS::PathElement::File")
{
my $id=$constraints[$#constraints]->{id};