summaryrefslogtreecommitdiff
path: root/lib/VNDB/Handler
diff options
context:
space:
mode:
authormorkt <morkt@users.noreply.github.com>2015-11-10 06:06:54 +0400
committermorkt <morkt@users.noreply.github.com>2015-11-10 06:06:54 +0400
commitd488967ebdde36bf2c959f1d4e1c55c622887bf8 (patch)
treedeed89549ba634260924c932021be0de1796d62e /lib/VNDB/Handler
parentddbf3ae0ae530954b0e105e99819c85cfe4de17c (diff)
parent052b78e84b4c7379f107cfaa5f9cede09b8b1b7b (diff)
Merge branch 'master' into poll
Diffstat (limited to 'lib/VNDB/Handler')
-rw-r--r--lib/VNDB/Handler/Chars.pm15
-rw-r--r--lib/VNDB/Handler/Misc.pm7
-rw-r--r--lib/VNDB/Handler/Producers.pm21
-rw-r--r--lib/VNDB/Handler/Releases.pm19
-rw-r--r--lib/VNDB/Handler/Staff.pm28
-rw-r--r--lib/VNDB/Handler/Users.pm9
-rw-r--r--lib/VNDB/Handler/VNEdit.pm24
-rw-r--r--lib/VNDB/Handler/VNPage.pm20
8 files changed, 76 insertions, 67 deletions
diff --git a/lib/VNDB/Handler/Chars.pm b/lib/VNDB/Handler/Chars.pm
index 7171d506..98847b4c 100644
--- a/lib/VNDB/Handler/Chars.pm
+++ b/lib/VNDB/Handler/Chars.pm
@@ -20,9 +20,10 @@ TUWF::register(
sub page {
my($self, $id, $rev) = @_;
- my $r = $self->dbCharGet(
+ my $method = $rev ? 'dbCharGetRev' : 'dbCharGet';
+ my $r = $self->$method(
id => $id,
- what => 'extended traits vns seiyuu'.($rev ? ' changes' : ''),
+ what => 'extended traits vns seiyuu',
$rev ? ( rev => $rev ) : ()
)->[0];
return $self->resNotFound if !$r->{id};
@@ -32,7 +33,7 @@ sub page {
return if $self->htmlHiddenMessage('c', $r);
if($rev) {
- my $prev = $rev && $rev > 1 && $self->dbCharGet(id => $id, rev => $rev-1, what => 'changes extended traits vns')->[0];
+ my $prev = $rev && $rev > 1 && $self->dbCharGetRev(id => $id, rev => $rev-1, what => 'extended traits vns')->[0];
$self->htmlRevision('c', $prev, $r,
[ name => diff => 1 ],
[ original => diff => 1 ],
@@ -265,9 +266,9 @@ sub edit {
$copy = $rev && $rev eq 'copy' || $copy && $copy eq 'copy';
$rev = undef if defined $rev && $rev !~ /^\d+$/;
- my $r = $id && $self->dbCharGet(id => $id, what => 'changes extended vns traits', $rev ? (rev => $rev) : ())->[0];
+ my $r = $id && $self->dbCharGetRev(id => $id, what => 'extended vns traits', $rev ? (rev => $rev) : ())->[0];
return $self->resNotFound if $id && !$r->{id};
- $rev = undef if !$r || $r->{cid} == $r->{latest};
+ $rev = undef if !$r || $r->{lastrev};
return $self->htmlDenied if !$self->authCan('edit')
|| $id && (($r->{locked} || $r->{hidden}) && !$self->authCan('dbmod'));
@@ -343,8 +344,8 @@ sub edit {
$_->[1]||=undef for (@vns);
$frm->{vns} = \@vns;
- my $nrev = $self->dbItemEdit(c => !$copy && $id ? $r->{cid} : undef, %$frm);
- return $self->resRedirect("/c$nrev->{iid}.$nrev->{rev}", 'post');
+ my $nrev = $self->dbItemEdit(c => !$copy && $id ? ($r->{id}, $r->{rev}) : (undef, undef), %$frm);
+ return $self->resRedirect("/c$nrev->{itemid}.$nrev->{rev}", 'post');
}
}
diff --git a/lib/VNDB/Handler/Misc.pm b/lib/VNDB/Handler/Misc.pm
index 8176d854..cb9a508a 100644
--- a/lib/VNDB/Handler/Misc.pm
+++ b/lib/VNDB/Handler/Misc.pm
@@ -70,12 +70,12 @@ sub homepage {
a href => '/hist', mt '_home_recentchanges'; txt ' ';
a href => '/feeds/changes.atom'; cssicon 'feed', mt '_atom_feed'; end;
end;
- my $changes = $self->dbRevisionGet(what => 'item user', results => 10, auto => 1);
+ my $changes = $self->dbRevisionGet(results => 10, auto => 1);
ul;
for (@$changes) {
li;
lit mt '_home_recentchanges_item', $_->{type},
- sprintf('<a href="%s" title="%s">%s</a>', "/$_->{type}$_->{iid}.$_->{rev}",
+ sprintf('<a href="%s" title="%s">%s</a>', "/$_->{type}$_->{itemid}.$_->{rev}",
xml_escape($_->{ioriginal}||$_->{ititle}), xml_escape shorten $_->{ititle}, 33),
$_;
end;
@@ -213,8 +213,7 @@ sub history {
# get the edit history
my($list, $np) = $self->dbRevisionGet(
- what => 'item user',
- $type && $type ne 'u' ? ( type => $type, iid => $id ) : (),
+ $type && $type ne 'u' ? ( type => $type, itemid => $id ) : (),
$type eq 'u' ? ( uid => $id ) : (),
$f->{t} ? ( type => $f->{t} eq 'a' ? [qw|v r p|] : $f->{t} ) : (),
page => $f->{p},
diff --git a/lib/VNDB/Handler/Producers.pm b/lib/VNDB/Handler/Producers.pm
index 6369d4d1..69000b27 100644
--- a/lib/VNDB/Handler/Producers.pm
+++ b/lib/VNDB/Handler/Producers.pm
@@ -44,9 +44,10 @@ sub rg {
sub page {
my($self, $pid, $rev) = @_;
- my $p = $self->dbProducerGet(
+ my $method = $rev ? 'dbProducerGetRev' : 'dbProducerGet';
+ my $p = $self->$method(
id => $pid,
- what => 'extended relations'.($rev ? ' changes' : ''),
+ what => 'extended relations',
$rev ? ( rev => $rev ) : ()
)->[0];
return $self->resNotFound if !$p->{id};
@@ -56,7 +57,7 @@ sub page {
return if $self->htmlHiddenMessage('p', $p);
if($rev) {
- my $prev = $rev && $rev > 1 && $self->dbProducerGet(id => $pid, rev => $rev-1, what => 'changes extended relations')->[0];
+ my $prev = $rev && $rev > 1 && $self->dbProducerGetRev(id => $pid, rev => $rev-1, what => 'extended relations')->[0];
$self->htmlRevision('p', $prev, $p,
[ type => serialize => sub { mt "_ptype_$_[0]" } ],
[ name => diff => 1 ],
@@ -200,9 +201,9 @@ sub _releases {
sub edit {
my($self, $pid, $rev) = @_;
- my $p = $pid && $self->dbProducerGet(id => $pid, what => 'changes extended relations', $rev ? (rev => $rev) : ())->[0];
+ my $p = $pid && $self->dbProducerGetRev(id => $pid, what => 'extended relations', rev => $rev)->[0];
return $self->resNotFound if $pid && !$p->{id};
- $rev = undef if !$p || $p->{cid} == $p->{latest};
+ $rev = undef if !$p || $p->{lastrev};
return $self->htmlDenied if !$self->authCan('edit')
|| $pid && (($p->{locked} || $p->{hidden}) && !$self->authCan('dbmod'));
@@ -246,16 +247,16 @@ sub edit {
$frm->{relations} = $relations;
$frm->{l_wp} = undef if !$frm->{l_wp};
- my $nrev = $self->dbItemEdit(p => $pid ? $p->{cid} : undef, %$frm);
+ my $nrev = $self->dbItemEdit(p => $pid||undef, $pid ? $p->{rev} : undef, %$frm);
# update reverse relations
if(!$pid && $#$relations >= 0 || $pid && $frm->{prodrelations} ne $b4{prodrelations}) {
my %old = $pid ? (map { $_->{id} => $_->{relation} } @{$p->{relations}}) : ();
my %new = map { $_->[1] => $_->[0] } @$relations;
- _updreverse($self, \%old, \%new, $nrev->{iid}, $nrev->{rev});
+ _updreverse($self, \%old, \%new, $nrev->{itemid}, $nrev->{rev});
}
- return $self->resRedirect("/p$nrev->{iid}.$nrev->{rev}", 'post');
+ return $self->resRedirect("/p$nrev->{itemid}.$nrev->{rev}", 'post');
}
}
@@ -329,10 +330,10 @@ sub _updreverse {
# edit all related producers
for my $i (keys %upd) {
- my $r = $self->dbProducerGet(id => $i, what => 'relations')->[0];
+ my $r = $self->dbProducerGetRev(id => $i, what => 'relations')->[0];
my @newrel = map $_->{id} != $pid ? [ $_->{relation}, $_->{id} ] : (), @{$r->{relations}};
push @newrel, [ $upd{$i}, $pid ] if $upd{$i};
- $self->dbItemEdit(p => $r->{cid},
+ $self->dbItemEdit(p => $i, $r->{rev},
relations => \@newrel,
editsum => "Reverse relation update caused by revision p$pid.$rev",
uid => 1,
diff --git a/lib/VNDB/Handler/Releases.pm b/lib/VNDB/Handler/Releases.pm
index b06a62f3..30505562 100644
--- a/lib/VNDB/Handler/Releases.pm
+++ b/lib/VNDB/Handler/Releases.pm
@@ -20,9 +20,10 @@ TUWF::register(
sub page {
my($self, $rid, $rev) = @_;
- my $r = $self->dbReleaseGet(
+ my $method = $rev ? 'dbReleaseGetRev' : 'dbReleaseGet';
+ my $r = $self->$method(
id => $rid,
- what => 'vn extended producers platforms media'.($rev ? ' changes' : ''),
+ what => 'vn extended producers platforms media',
$rev ? (rev => $rev) : (),
)->[0];
return $self->resNotFound if !$r->{id};
@@ -32,7 +33,7 @@ sub page {
return if $self->htmlHiddenMessage('r', $r);
if($rev) {
- my $prev = $rev && $rev > 1 && $self->dbReleaseGet(
+ my $prev = $rev && $rev > 1 && $self->dbReleaseGetRev(
id => $rid, rev => $rev-1,
what => 'vn extended producers platforms media changes'
)->[0];
@@ -271,9 +272,9 @@ sub edit {
$rid = 0;
}
- my $r = $rid && $self->dbReleaseGet(id => $rid, what => 'vn extended producers platforms media changes', $rev ? (rev => $rev) : ())->[0];
+ my $r = $rid && $self->dbReleaseGetRev(id => $rid, what => 'vn extended producers platforms media', $rev ? (rev => $rev) : ())->[0];
return $self->resNotFound if $rid && !$r->{id};
- $rev = undef if !$r || $r->{cid} == $r->{latest};
+ $rev = undef if !$r || $r->{lastrev};
my $v = $vid && $self->dbVNGet(id => $vid)->[0];
return $self->resNotFound if $vid && !$v->{id};
@@ -349,7 +350,7 @@ sub edit {
}
if(!$frm->{_err}) {
- my $nrev = $self->dbItemEdit(r => !$copy && $rid ? $r->{cid} : undef,
+ my $nrev = $self->dbItemEdit(r => !$copy && $rid ? ($r->{id}, $r->{rev}) : (undef, undef),
(map { $_ => $frm->{$_} } qw| type title original gtin catalog languages website released minage
notes platforms resolution editsum patch voiced freeware doujin ani_story ani_ero ihid ilock|),
vn => $new_vn,
@@ -357,7 +358,7 @@ sub edit {
media => $media,
);
- return $self->resRedirect("/r$nrev->{iid}.$nrev->{rev}", 'post');
+ return $self->resRedirect("/r$nrev->{itemid}.$nrev->{rev}", 'post');
}
}
@@ -388,8 +389,8 @@ sub _form {
[ check => short => 'patch', name => mt('_redit_form_patch') ],
[ check => short => 'freeware', name => mt('_redit_form_freeware') ],
[ check => short => 'doujin', name => mt('_redit_form_doujin') ],
- [ input => short => 'title', name => mt('_redit_form_title'), width => 300 ],
- [ input => short => 'original', name => mt('_redit_form_original'), width => 300 ],
+ [ input => short => 'title', name => mt('_redit_form_title'), width => 450 ],
+ [ input => short => 'original', name => mt('_redit_form_original'), width => 450 ],
[ static => content => mt '_redit_form_original_note' ],
[ select => short => 'languages', name => mt('_redit_form_languages'), multi => 1,
options => [ map [ $_, "$_ (".mt("_lang_$_").')' ], sort @{$self->{languages}} ] ],
diff --git a/lib/VNDB/Handler/Staff.pm b/lib/VNDB/Handler/Staff.pm
index 88e6d7c8..0f878ca6 100644
--- a/lib/VNDB/Handler/Staff.pm
+++ b/lib/VNDB/Handler/Staff.pm
@@ -19,9 +19,10 @@ TUWF::register(
sub page {
my($self, $id, $rev) = @_;
- my $s = $self->dbStaffGet(
+ my $method = $rev ? 'dbStaffGetRev' : 'dbStaffGet';
+ my $s = $self->$method(
id => $id,
- what => 'extended aliases roles'.($rev ? ' changes' : ''),
+ what => 'extended aliases roles',
$rev ? ( rev => $rev ) : ()
)->[0];
return $self->resNotFound if !$s->{id};
@@ -31,7 +32,7 @@ sub page {
return if $self->htmlHiddenMessage('s', $s);
if($rev) {
- my $prev = $rev && $rev > 1 && $self->dbStaffGet(id => $id, rev => $rev-1, what => 'changes extended aliases')->[0];
+ my $prev = $rev && $rev > 1 && $self->dbStaffGetRev(id => $id, rev => $rev-1, what => 'extended aliases')->[0];
$self->htmlRevision('s', $prev, $s,
[ name => diff => 1 ],
[ original => diff => 1 ],
@@ -179,18 +180,18 @@ sub _cast {
sub edit {
my($self, $sid, $rev) = @_;
- my $s = $sid && $self->dbStaffGet(id => $sid, what => 'changes extended aliases', $rev ? (rev => $rev) : ())->[0];
+ my $s = $sid && $self->dbStaffGetRev(id => $sid, what => 'extended aliases roles', $rev ? (rev => $rev) : ())->[0];
return $self->resNotFound if $sid && !$s->{id};
- $rev = undef if !$s || $s->{cid} == $s->{latest};
+ $rev = undef if !$s || $s->{lastrev};
- return $self->htmlDenied if !$self->authCan('staffedit')
+ return $self->htmlDenied if !$self->authCan('edit')
|| $sid && (($s->{locked} || $s->{hidden}) && !$self->authCan('dbmod'));
my %b4 = !$sid ? () : (
(map { $_ => $s->{$_} } qw|name original gender lang desc l_wp l_site l_twitter l_anidb ihid ilock|),
primary => $s->{aid},
aliases => [
- map +{ aid => $_->{id}, name => $_->{name}, orig => $_->{original} },
+ map +{ aid => $_->{aid}, name => $_->{name}, orig => $_->{original} },
sort { $a->{name} cmp $b->{name} || $a->{original} cmp $b->{original} } @{$s->{aliases}}
],
);
@@ -220,20 +221,26 @@ sub edit {
);
if(!$frm->{_err}) {
- my %old_aliases = $sid ? ( map +($_->{id} => 1), @{$self->dbStaffAliasIds($sid)} ) : ();
+ my %old_aliases = $sid ? ( map +($_->{aid} => 1), @{$self->dbStaffAliasIds($sid)} ) : ();
$frm->{primary} = 0 unless exists $old_aliases{$frm->{primary}};
# reset aid to zero for newly added aliases.
$_->{aid} *= $old_aliases{$_->{aid}} ? 1 : 0 for(@{$frm->{aliases}});
+ # Make sure no aliases that have been linked to a VN are removed.
+ my %new_aliases = map +($_, 1), grep $_, $frm->{primary}, map $_->{aid}, @{$frm->{aliases}};
+ $frm->{_err} = [ 'usedalias' ] if grep !$new_aliases{$_->{aid}}, @{$s->{roles}}, @{$self->{cast}};
+ }
+
+ if(!$frm->{_err}) {
$frm->{ihid} = $frm->{ihid} ?1:0;
$frm->{ilock} = $frm->{ilock}?1:0;
$frm->{aid} = $frm->{primary} if $sid;
$frm->{desc} = $self->bbSubstLinks($frm->{desc});
return $self->resRedirect("/s$sid", 'post') if $sid && !form_compare(\%b4, $frm);
- my $nrev = $self->dbItemEdit ('s' => $sid ? $s->{cid} : undef, %$frm);
- return $self->resRedirect("/s$nrev->{iid}.$nrev->{rev}", 'post');
+ my $nrev = $self->dbItemEdit(s => $sid ? ($s->{id}, $s->{rev}) : (undef, undef), %$frm);
+ return $self->resRedirect("/s$nrev->{itemid}.$nrev->{rev}", 'post');
}
}
@@ -384,4 +391,3 @@ sub staffxml {
}
1;
-__END__
diff --git a/lib/VNDB/Handler/Users.pm b/lib/VNDB/Handler/Users.pm
index 491c573b..6b30db7b 100644
--- a/lib/VNDB/Handler/Users.pm
+++ b/lib/VNDB/Handler/Users.pm
@@ -33,6 +33,7 @@ sub userpage {
return $self->resNotFound if !$u->{id};
my $votes = $u->{c_votes} && $self->dbVoteStats(uid => $uid);
+ my $list_visible = !$u->{hide_list} || ($self->authInfo->{id}||0) == $u->{id} || $self->authCan('usermod');
my $title = mt '_userpage_title', $u->{username};
$self->htmlHeader(title => $title, noindex => 1);
@@ -70,7 +71,7 @@ sub userpage {
Tr;
td mt '_userpage_votes';
td;
- if($u->{hide_list}) {
+ if(!$list_visible) {
txt mt '_userpage_hidden';
} elsif($votes) {
my($total, $count) = (0, 0);
@@ -100,7 +101,7 @@ sub userpage {
Tr;
td mt '_userpage_list';
- td $u->{hide_list} ? mt('_userpage_hidden') :
+ td !$list_visible ? mt('_userpage_hidden') :
mt('_userpage_list_item', $u->{releasecount}, $u->{vncount});
end;
@@ -117,7 +118,7 @@ sub userpage {
end 'table';
end 'div';
- if(!$u->{hide_list} && $votes) {
+ if($votes && $list_visible) {
div class => 'mainbox';
h1 mt '_userpage_votestats';
$self->htmlVoteStats(u => $u, $votes);
@@ -125,7 +126,7 @@ sub userpage {
}
if($u->{c_changes}) {
- my $list = $self->dbRevisionGet(what => 'item user', uid => $uid, results => 5);
+ my $list = $self->dbRevisionGet(uid => $uid, results => 5);
h1 class => 'boxtitle';
a href => "/u$uid/hist", mt '_userpage_changes';
end;
diff --git a/lib/VNDB/Handler/VNEdit.pm b/lib/VNDB/Handler/VNEdit.pm
index 8869d1a9..2d67a3df 100644
--- a/lib/VNDB/Handler/VNEdit.pm
+++ b/lib/VNDB/Handler/VNEdit.pm
@@ -64,8 +64,8 @@ sub addform {
$self->htmlForm({ frm => $frm, action => '/v/add', continue => @$l ? 2 : 1 },
vn_add => [ mt('_vnedit_title_add'),
- [ input => short => 'title', name => mt '_vnedit_frm_title' ],
- [ input => short => 'original', name => mt '_vnedit_original' ],
+ [ input => short => 'title', name => mt('_vnedit_frm_title'), width => 450 ],
+ [ input => short => 'original', name => mt('_vnedit_original'), width => 450 ],
[ static => content => mt '_vnedit_original_msg' ],
[ textarea => short => 'alias', name => mt('_vnedit_alias'), rows => 4 ],
[ static => content => mt '_vnedit_alias_msg' ],
@@ -77,9 +77,9 @@ sub addform {
sub edit {
my($self, $vid, $rev, $nosubmit) = @_;
- my $v = $vid && $self->dbVNGet(id => $vid, what => 'extended screenshots relations anime credits changes', $rev ? (rev => $rev) : ())->[0];
+ my $v = $vid && $self->dbVNGetRev(id => $vid, what => 'extended screenshots relations anime credits changes', $rev ? (rev => $rev) : ())->[0];
return $self->resNotFound if $vid && !$v->{id};
- $rev = undef if !$vid || $v->{cid} == $v->{latest};
+ $rev = undef if !$vid || $v->{lastrev};
return $self->htmlDenied if !$self->authCan('edit')
|| $vid && (($v->{locked} || $v->{hidden}) && !$self->authCan('dbmod'));
@@ -176,7 +176,7 @@ sub edit {
return $self->resRedirect("/v$vid", 'post') if $vid && !form_compare(\%b4, $frm);
# perform the edit/add
- my $nrev = $self->dbItemEdit(v => $vid ? $v->{cid} : undef,
+ my $nrev = $self->dbItemEdit(v => $vid ? ($v->{id}, $v->{rev}) : (undef, undef),
(map { $_ => $frm->{$_} } qw|title original image alias desc length l_wp l_encubed l_renai editsum img_nsfw ihid ilock credits seiyuu screenshots|),
anime => [ keys %$anime ],
relations => $relations,
@@ -186,10 +186,10 @@ sub edit {
if(!$vid && $#$relations >= 0 || $vid && $frm->{vnrelations} ne $b4{vnrelations}) {
my %old = $vid ? (map +($_->{id} => [ $_->{relation}, $_->{official} ]), @{$v->{relations}}) : ();
my %new = map +($_->[1] => [ $_->[0], $_->[2] ]), @$relations;
- _updreverse($self, \%old, \%new, $nrev->{iid}, $nrev->{rev});
+ _updreverse($self, \%old, \%new, $nrev->{itemid}, $nrev->{rev});
}
- return $self->resRedirect("/v$nrev->{iid}.$nrev->{rev}", 'post');
+ return $self->resRedirect("/v$nrev->{itemid}.$nrev->{rev}", 'post');
}
}
@@ -250,8 +250,8 @@ sub _form {
my $import = @$chars ? $self->dbVNImportSeiyuu($v->{id}, [ map $_->{id}, @$chars ]) : [];
$self->htmlForm({ frm => $frm, action => $v ? "/v$v->{id}/edit" : '/v/new', editsum => 1, upload => 1 },
vn_geninfo => [ mt('_vnedit_geninfo'),
- [ input => short => 'title', name => mt '_vnedit_frm_title' ],
- [ input => short => 'original', name => mt '_vnedit_original' ],
+ [ input => short => 'title', name => mt('_vnedit_frm_title'), width => 450 ],
+ [ input => short => 'original', name => mt('_vnedit_original'), width => 450 ],
[ static => content => mt '_vnedit_original_msg' ],
[ textarea => short => 'alias', name => mt('_vnedit_alias'), rows => 4 ],
[ static => content => mt '_vnedit_alias_msg' ],
@@ -422,7 +422,7 @@ sub _form {
# Update reverse relations and regenerate relation graph
# Arguments: %old. %new, vid, rev
-# %old,%new -> { vid2 => [ relation, official ], .. }
+# %old,%new -> { vid => [ relation, official ], .. }
# from the perspective of vid
# rev is of the related edit
sub _updreverse {
@@ -441,10 +441,10 @@ sub _updreverse {
# edit all related VNs
for my $i (keys %upd) {
- my $r = $self->dbVNGet(id => $i, what => 'relations')->[0];
+ my $r = $self->dbVNGetRev(id => $i, what => 'relations')->[0];
my @newrel = map $_->{id} != $vid ? [ $_->{relation}, $_->{id}, $_->{official} ] : (), @{$r->{relations}};
push @newrel, [ $upd{$i}[0], $vid, $upd{$i}[1] ] if $upd{$i};
- $self->dbItemEdit(v => $r->{cid},
+ $self->dbItemEdit(v => $r->{id}, $r->{rev},
relations => \@newrel,
editsum => "Reverse relation update caused by revision v$vid.$rev",
uid => 1, # Multi
diff --git a/lib/VNDB/Handler/VNPage.pm b/lib/VNDB/Handler/VNPage.pm
index 9c85f922..02d14139 100644
--- a/lib/VNDB/Handler/VNPage.pm
+++ b/lib/VNDB/Handler/VNPage.pm
@@ -187,8 +187,7 @@ my @rel_cols = (
sub releases {
my($self, $vid) = @_;
- my $v = $self->dbVNGet(
- id => $vid)->[0];
+ my $v = $self->dbVNGet(id => $vid)->[0];
return $self->resNotFound if !$v->{id};
my $title = mt('_vnpage_rel_title', $v->{title});
@@ -334,9 +333,10 @@ sub page {
my $staff = $rev && $rev eq 'staff';
$rev = undef if $char || $staff;
- my $v = $self->dbVNGet(
+ my $method = $rev ? 'dbVNGetRev' : 'dbVNGet';
+ my $v = $self->$method(
id => $vid,
- what => 'extended anime relations screenshots rating ranking'.($staff || $rev ? ' credits' : '').($rev ? ' changes' : ''),
+ what => 'extended anime relations screenshots rating ranking'.($staff || $rev ? ' credits' : ''),
$rev ? (rev => $rev) : (),
)->[0];
return $self->resNotFound if !$v->{id};
@@ -508,8 +508,8 @@ sub _revision {
my($self, $v, $rev) = @_;
return if !$rev;
- my $prev = $rev && $rev > 1 && $self->dbVNGet(
- id => $v->{id}, rev => $rev-1, what => 'extended anime relations screenshots credits changes'
+ my $prev = $rev && $rev > 1 && $self->dbVNGetRev(
+ id => $v->{id}, rev => $rev-1, what => 'extended anime relations screenshots credits'
)->[0];
$self->htmlRevision('v', $prev, $v,
@@ -554,7 +554,7 @@ sub _revision {
return @r ? @r : (mt '_revision_empty');
}],
[ screenshots => join => '<br />', split => sub {
- my @r = map sprintf('[%s] <a href="%s" rel="iv:%dx%d">%d</a> (%s)',
+ my @r = map sprintf('[%s] <a href="%s" data-iv="%dx%d">%d</a> (%s)',
$_->{rid} ? qq|<a href="/r$_->{rid}">r$_->{rid}</a>| : 'no release',
imgurl(sf => $_->{id}), $_->{width}, $_->{height}, $_->{id},
mt($_->{nsfw} ? '_vndiff_nsfw_notsafe' : '_vndiff_nsfw_safe')
@@ -668,7 +668,7 @@ sub _anime {
}
txt '] ';
end;
- acronym title => $_->{title_kanji}||$_->{title_romaji}, shorten $_->{title_romaji}, 50;
+ abbr title => $_->{title_kanji}||$_->{title_romaji}, shorten $_->{title_romaji}, 50;
b ' ('.(defined $_->{type} ? mt("_animetype_$_->{type}").', ' : '').$_->{year}.')';
br;
}
@@ -748,7 +748,7 @@ sub _affiliate_links {
|| ($f->{default_version} && $f->{default_version}->($self, $link, $rel))
|| $version;
txt " at $f->{name}";
- acronym class => 'pricenote', title =>
+ abbr class => 'pricenote', title =>
$link->{lastfetch} ? sprintf('Last updated: %s.', $en->age($link->{lastfetch})) : '', " for $link->{price}"
if $link->{price};
txt ' ยป';
@@ -859,7 +859,7 @@ sub _screenshots {
my($w, $h) = imgsize($_->{width}, $_->{height}, @{$self->{scr_size}});
a href => imgurl(sf => $_->{id}),
class => sprintf('scrlnk%s%s', $_->{nsfw} ? ' nsfw':'', $_->{nsfw}&&!$self->authPref('show_nsfw')?' hidden':''),
- rel => "iv:$_->{width}x$_->{height}:scr";
+ 'data-iv' => "$_->{width}x$_->{height}:scr";
img src => imgurl(st => $_->{id}),
width => $w, height => $h, alt => mt '_vnpage_scr_num', $_->{id};
end;