summaryrefslogtreecommitdiff
path: root/lib/VNDB/DB
diff options
context:
space:
mode:
authormorkt <>2014-12-22 11:49:08 +0100
committerYorhel <git@yorhel.nl>2014-12-22 11:49:08 +0100
commit12338003bde24a3a263abe8caca71b1836ecee83 (patch)
tree81cdb33820f949f229e84ab17233420d8cb592b8 /lib/VNDB/DB
parentdf383d117908160d1a84ce4519edc0c9bcf08c3b (diff)
bbcode: Replace [vcpgi][0-9]+ links with a [url] tag
Patch from https://vndb.org/t5564.13
Diffstat (limited to 'lib/VNDB/DB')
-rw-r--r--lib/VNDB/DB/Chars.pm12
-rw-r--r--lib/VNDB/DB/Discussions.pm4
-rw-r--r--lib/VNDB/DB/Producers.pm13
-rw-r--r--lib/VNDB/DB/VN.pm13
4 files changed, 38 insertions, 4 deletions
diff --git a/lib/VNDB/DB/Chars.pm b/lib/VNDB/DB/Chars.pm
index 86b3a859..f387b044 100644
--- a/lib/VNDB/DB/Chars.pm
+++ b/lib/VNDB/DB/Chars.pm
@@ -5,7 +5,7 @@ use strict;
use warnings;
use Exporter 'import';
-our @EXPORT = qw|dbCharGet dbCharRevisionInsert dbCharImageId|;
+our @EXPORT = qw|dbCharGet dbCharRevisionInsert dbCharImageId dbCharNames|;
# options: id rev instance tagspoil trait_inc trait_exc char what results page gender bloodt
@@ -138,6 +138,16 @@ sub dbCharImageId {
}
+sub dbCharNames {
+ my ($self, @ids) = @_;
+ return $self->dbAll(q|
+ SELECT c.id, cr.name
+ FROM chars c
+ JOIN chars_rev cr ON cr.id = c.latest
+ WHERE c.id IN (!l)|, \@ids
+ );
+}
+
1;
diff --git a/lib/VNDB/DB/Discussions.pm b/lib/VNDB/DB/Discussions.pm
index 9da25384..d1462249 100644
--- a/lib/VNDB/DB/Discussions.pm
+++ b/lib/VNDB/DB/Discussions.pm
@@ -4,6 +4,7 @@ package VNDB::DB::Discussions;
use strict;
use warnings;
use Exporter 'import';
+use VNDB::Util::Misc 'bbSubstLinks';
our @EXPORT = qw|dbThreadGet dbThreadEdit dbThreadAdd dbPostGet dbPostEdit dbPostAdd dbThreadCount|;
@@ -214,7 +215,7 @@ sub dbPostEdit {
my($self, $tid, $num, %o) = @_;
my %set = (
- 'msg = ?' => $o{msg},
+ 'msg = ?' => bbSubstLinks($self, $o{msg}),
'edited = to_timestamp(?)' => $o{lastmod},
'hidden = ?' => $o{hidden}?1:0,
);
@@ -236,6 +237,7 @@ sub dbPostAdd {
my $num = $self->dbRow('SELECT num FROM threads_posts WHERE tid = ? ORDER BY num DESC LIMIT 1', $tid)->{num};
$num = $num ? $num+1 : 1;
$o{uid} ||= $self->authInfo->{id};
+ $o{msg} = bbSubstLinks($self, $o{msg});
$self->dbExec(q|
INSERT INTO threads_posts (tid, num, uid, msg)
diff --git a/lib/VNDB/DB/Producers.pm b/lib/VNDB/DB/Producers.pm
index ad6f22b2..7d4b6897 100644
--- a/lib/VNDB/DB/Producers.pm
+++ b/lib/VNDB/DB/Producers.pm
@@ -5,7 +5,7 @@ use strict;
use warnings;
use Exporter 'import';
-our @EXPORT = qw|dbProducerGet dbProducerRevisionInsert|;
+our @EXPORT = qw|dbProducerGet dbProducerRevisionInsert dbProducerNames|;
# options: results, page, id, search, char, rev
@@ -94,5 +94,16 @@ sub dbProducerRevisionInsert {
}
+sub dbProducerNames {
+ my($self, @ids) = @_;
+ return $self->dbAll(q|
+ SELECT p.id, pr.name
+ FROM producers p
+ JOIN producers_rev pr ON pr.id = p.latest
+ WHERE p.id IN (!l)|, \@ids
+ );
+}
+
+
1;
diff --git a/lib/VNDB/DB/VN.pm b/lib/VNDB/DB/VN.pm
index 090f9ecb..ecf49f96 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|;
+our @EXPORT = qw|dbVNGet dbVNRevisionInsert dbVNImageId dbScreenshotAdd dbScreenshotGet dbScreenshotRandom dbVNHasChar dbVNTitles|;
# Options: id, rev, char, search, length, lang, olang, plat, tag_inc, tag_exc, tagspoil,
@@ -290,5 +290,16 @@ sub dbVNHasChar {
)->{exists};
}
+
+sub dbVNTitles {
+ my ($self, @vids) = @_;
+ return $self->dbAll(q|
+ SELECT v.id, vr.title
+ FROM vn v
+ JOIN vn_rev vr ON vr.id = v.latest
+ WHERE v.id IN (!l)|, \@vids
+ );
+}
+
1;