summaryrefslogtreecommitdiff
path: root/lib/VNDB/DB/VN.pm
diff options
context:
space:
mode:
authormorkt <>2014-12-28 12:44:24 +0100
committerYorhel <git@yorhel.nl>2014-12-28 12:44:24 +0100
commit30acfccc74971acaf0addd521cf24bbb5221618b (patch)
tree1679224554d2e785f7504ba1f570821941985709 /lib/VNDB/DB/VN.pm
parent6399d6d4e21bd4464c7224f821d6ea071ea7a614 (diff)
staff: Import cast from other VN + some styling + more improvements
Diffstat (limited to 'lib/VNDB/DB/VN.pm')
-rw-r--r--lib/VNDB/DB/VN.pm17
1 files changed, 16 insertions, 1 deletions
diff --git a/lib/VNDB/DB/VN.pm b/lib/VNDB/DB/VN.pm
index 97fc3086..edb55377 100644
--- a/lib/VNDB/DB/VN.pm
+++ b/lib/VNDB/DB/VN.pm
@@ -7,7 +7,7 @@ use Exporter 'import';
use VNDB::Func 'gtintype', 'normalize_query';
use Encode 'decode_utf8';
-our @EXPORT = qw|dbVNGet dbVNRevisionInsert dbVNImageId dbScreenshotAdd dbScreenshotGet dbScreenshotRandom dbVNHasChar dbVNHasStaff|;
+our @EXPORT = qw|dbVNGet dbVNRevisionInsert dbVNImageId dbScreenshotAdd dbScreenshotGet dbScreenshotRandom dbVNHasChar dbVNHasStaff dbVNImportSeiyuu|;
# Options: id, rev, char, search, length, lang, olang, plat, tag_inc, tag_exc, tagspoil,
@@ -342,5 +342,20 @@ sub dbVNHasStaff {
}
+# returns seiyuus that voice characters referenced by $cids in VNs other than $vid
+sub dbVNImportSeiyuu {
+ my($self, $vid, $cids) = @_;
+ return $self->dbAll(q|
+ SELECT DISTINCT ON(cr.cid) cr.cid, cr.name AS c_name, s.id AS sid, sa.id AS aid, sa.name
+ FROM vn_seiyuu vs
+ JOIN vn v ON v.latest = vs.vid
+ JOIN chars c ON c.id = vs.cid
+ JOIN chars_rev cr ON cr.id = c.latest
+ JOIN staff_alias sa ON sa.id = vs.aid
+ JOIN staff s ON sa.rid = s.latest
+ WHERE vs.cid IN(!l) AND v.id <> ?|, $cids, $vid);
+}
+
+
1;