diff options
author | Yorhel <git@yorhel.nl> | 2020-11-11 20:00:08 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2020-11-11 20:00:08 +0100 |
commit | dd4c7c7c21054ea48985510144c88a1fd823cdd8 (patch) | |
tree | 07ead89180bc369084fcfee11a939121e9caf274 | |
parent | a65f29a9826428fc090ca0a69569e0c8e394d34d (diff) |
VN::Page: Hide publisher of trial release when there is a full release
-rw-r--r-- | lib/VNWeb/VN/Page.pm | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/VNWeb/VN/Page.pm b/lib/VNWeb/VN/Page.pm index 70bad045..c99a2e0c 100644 --- a/lib/VNWeb/VN/Page.pm +++ b/lib/VNWeb/VN/Page.pm @@ -137,7 +137,7 @@ sub infobox_producers_ { my($v) = @_; my $p = tuwf->dbAlli(' - SELECT p.id, p.name, p.original, rl.lang, bool_or(rp.developer) as developer, bool_or(rp.publisher) as publisher + SELECT p.id, p.name, p.original, rl.lang, bool_or(rp.developer) as developer, bool_or(rp.publisher) as publisher, min(r.type) as type FROM releases_vn rv JOIN releases r ON r.id = rv.id JOIN releases_lang rl ON rl.id = rv.id @@ -149,8 +149,9 @@ sub infobox_producers_ { '); return if !@$p; + my $hasfull = grep $_->{type} eq 'complete', @$p; my %dev; - my @dev = grep $_->{developer} && !$dev{$_->{id}}++, @$p; + my @dev = grep $_->{developer} && (!$hasfull || $_->{type} ne 'trial') && !$dev{$_->{id}}++, @$p; tr_ sub { td_ 'Developer'; @@ -160,7 +161,7 @@ sub infobox_producers_ { } if @dev; my(%lang, @lang, $lang); - for(grep $_->{publisher}, @$p) { + for(grep $_->{publisher} && (!$hasfull || $_->{type} ne 'trial'), @$p) { push @lang, $_->{lang} if !$lang{$_->{lang}}; push $lang{$_->{lang}}->@*, $_; } |