summaryrefslogtreecommitdiff
path: root/lib/VNDB/Handler/Releases.pm
diff options
context:
space:
mode:
authorYorhel <git@yorhel.nl>2019-08-19 14:43:58 +0200
committerYorhel <git@yorhel.nl>2019-08-19 14:43:58 +0200
commitfdfc92a0520bb30dbc26ada97223ee075e702b3e (patch)
tree99e426215c93b876f37765e1910b41ed7079c66d /lib/VNDB/Handler/Releases.pm
parent2c692f6dc640a93e70229795170910f75544fb14 (diff)
Add Digiket.com links to releases
Diffstat (limited to 'lib/VNDB/Handler/Releases.pm')
-rw-r--r--lib/VNDB/Handler/Releases.pm9
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/VNDB/Handler/Releases.pm b/lib/VNDB/Handler/Releases.pm
index 06ca25f0..6c9967fc 100644
--- a/lib/VNDB/Handler/Releases.pm
+++ b/lib/VNDB/Handler/Releases.pm
@@ -66,6 +66,7 @@ sub page {
[ l_denpa => 'Denpasoft', htmlize => sub { $_[0] ? sprintf '<a href="https://denpasoft.com/products/%s">%1$s</a>', $_[0] : '[empty]' } ],
[ l_jlist => 'J-List', htmlize => sub { $_[0] ? sprintf '<a href="https://www.jlist.com/%s">%1$s</a>', $_[0] : '[empty]' } ],
[ l_gyutto => 'Gyutto', htmlize => sub { $_[0] ? sprintf '<a href="https://gyutto.com/i/item%d">%1$d</a>', $_[0] : '[empty]' } ],
+ [ l_digiket => 'Digiket', htmlize => sub { $_[0] ? sprintf '<a href="https://www.digiket.com/work/show/_data/ID=ITM%07d/">%1$d</a>', $_[0] : '[empty]' } ],
[ released => 'Release date', htmlize => \&fmtdatestr ],
[ minage => 'Age rating', serialize => \&minage ],
[ notes => 'Notes', diff => qr/[ ,\n\.]/ ],
@@ -314,7 +315,8 @@ sub edit {
my $vn = $rid ? $r->{vn} : [{ vid => $vid, title => $v->{title} }];
my %b4 = !$rid ? () : (
- (map { $_ => $r->{$_} } qw|type title original gtin catalog languages website l_steam l_dlsite l_dlsiteen l_gog l_denpa l_jlist l_gyutto released minage
+ (map { $_ => $r->{$_} } qw|type title original gtin catalog languages website released minage
+ l_steam l_dlsite l_dlsiteen l_gog l_denpa l_jlist l_gyutto l_digiket
notes platforms patch resolution voiced freeware doujin uncensored ani_story ani_ero engine ihid ilock|),
media => join(',', sort map "$_->{medium} $_->{qty}", @{$r->{media}}),
producers => join('|||', map
@@ -347,6 +349,7 @@ sub edit {
{ post => 'l_denpa', required => 0, default => '', regex => [ qr/^[a-z0-9-]+$/, 'Invalid Denpasoft ID' ] },
{ post => 'l_jlist', required => 0, default => '', regex => [ qr/^[a-z0-9-]+$/, 'Invalid J-List ID' ] },
{ post => 'l_gyutto', required => 0, default => 0, template => 'uint' },
+ { post => 'l_digiket', required => 0, default => 0, func => [ sub { $_[0] =~ s/^(?:ITM)?0+//; $_[0] =~ /^[0-9]+$/ }, 'Invalid Digiket ID' ] },
{ post => 'released', required => 0, default => 0, template => 'rdate' },
{ post => 'minage' , required => 0, default => -1, enum => $self->{age_ratings} },
{ post => 'notes', required => 0, default => '', maxlength => 10240 },
@@ -399,7 +402,8 @@ sub edit {
if(!$frm->{_err}) {
my $nrev = $self->dbItemEdit(r => !$copy && $rid ? ($r->{id}, $r->{rev}) : (undef, undef),
- (map { $_ => $frm->{$_} } qw| type title original gtin catalog languages website l_steam l_dlsite l_dlsiteen l_gog l_denpa l_jlist l_gyutto released minage
+ (map { $_ => $frm->{$_} } qw| type title original gtin catalog languages website released minage
+ l_steam l_dlsite l_dlsiteen l_gog l_denpa l_jlist l_gyutto l_digiket
notes platforms resolution editsum patch voiced freeware doujin uncensored ani_story ani_ero engine ihid ilock|),
vn => $new_vn,
producers => $producers,
@@ -453,6 +457,7 @@ sub _form {
[ input => short => 'l_denpa', name => 'Denpasoft', pre => 'https://denpasoft.com/products/' ],
[ input => short => 'l_jlist', name => 'J-List', pre => 'https://www.jlist.com/', post => ' (the last part of the URL, e.g. "np004")' ],
[ input => short => 'l_gyutto', name => 'Gyutto', pre => 'https://gyutto.com/i/item', post => ' (item number)' ],
+ [ input => short => 'l_digiket', name => 'Digiket', pre => 'https://www.digiket.com/work/show/_data/ID=ITM', post => ' (item number)' ],
[ date => short => 'released', name => 'Release date' ],
[ static => content => 'Leave month or day blank if they are unknown' ],
[ select => short => 'minage', name => 'Age rating',