- my($self, $tag)=@_;
- my $sql=("SELECT DISTINCT tagvals.name FROM tags\n" .
- "INNER JOIN tags_x_tagvals ON tags.id=tags_x_tagvals.tags_id\n" .
- "INNER JOIN tagvals ON tagvals.id=tags_x_tagvals.tagvals_id\n" .
- "WHERE tags.name=?");
- my $tags=$self->cmd_rows($sql, $tag);
- return(map { $_->[0]; } @$tags);
+ my($self, $tagid)=@_;
+ my $sql=("SELECT DISTINCT tagvals.name FROM tagvals\n" .
+ "INNER JOIN tags_x_tagvals ON tagvals.id=tags_x_tagvals.tagvals_id\n" .
+ "WHERE tags_x_tagvals.tags_id=?");
+ my $tags=$self->cmd_rows($sql, $tagid);
+ my @tags=map { $_->[0]; } @$tags;
+ # FIXME: handle when indexing, not here
+ @tags=map { s/[^[:print:]]//g; $_; } @tags;
+ @tags=map { length($_) ? $_ : "NOVALUE"; } @tags;
+ return @tags;