fix id3fs-index -l
[id3fs.git] / lib / ID3FS / DB.pm
index 29c50e3..fced79e 100644 (file)
@@ -169,6 +169,33 @@ sub last_update
     return $newval;
 }
 
+sub bare_tags
+{
+    my($self)=@_;
+    my $sql=("SELECT tags.name FROM tags\n" .
+            "WHERE tags.parents_id=''\n" .
+            "GROUP BY tags.name\n");
+    my @names=$self->cmd_firstcol($sql);
+    return (@names);
+}
+
+sub tags_with_values
+{
+    # FIXME: only shows one level of tag depth
+    my($self)=@_;
+    my $sql=("SELECT p.name, t.name  FROM tags t\n" .
+            "INNER JOIN tags p ON t.parents_id=p.id\n" .
+            "GROUP BY p.name, t.name\n");
+#    print "SQL: $sql\n";
+    my $result=$self->cmd_rows($sql);
+    my $tags={};
+    for my $pair (@$result)
+    {
+       push(@{$tags->{$pair->[0]}}, $pair->[1]);
+    }
+    return $tags;
+}
+
 sub tag_has_values
 {
     my($self, $id)=@_;