aboutsummaryrefslogtreecommitdiff
path: root/lib/App/MediaControl/DB.rakumod
diff options
context:
space:
mode:
Diffstat (limited to 'lib/App/MediaControl/DB.rakumod')
-rw-r--r--lib/App/MediaControl/DB.rakumod17
1 files changed, 17 insertions, 0 deletions
diff --git a/lib/App/MediaControl/DB.rakumod b/lib/App/MediaControl/DB.rakumod
index 428ed51..20fe956 100644
--- a/lib/App/MediaControl/DB.rakumod
+++ b/lib/App/MediaControl/DB.rakumod
@@ -105,6 +105,23 @@ class App::MediaControl::DB {
}
}
+ method get-parents-of(Int:D() $id) {
+ self!db: {
+ .query(q:to/END/,$id).hashes.reverse;
+ WITH f(id, parent_id, name) AS (
+ SELECT id, parent_id, name
+ FROM files
+ WHERE id=$id
+ UNION ALL
+ SELECT files.id, files.parent_id, files.name
+ FROM files JOIN f ON files.id=f.parent_id
+ )
+ SELECT id, name
+ FROM f
+ END
+ }
+ }
+
method get-entry(Int:D() $id) {
self!db: {
.query(q:to/END/,$id).hash;