diff options
author | Yorhel <git@yorhel.nl> | 2020-01-08 15:33:42 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2020-01-08 15:34:19 +0100 |
commit | a462070881b07a4db4898df69d2cb1e04ca9b23e (patch) | |
tree | 51a4467757b952b6488c2c1c079aac9de5ddae14 /lib | |
parent | 8046ec0d1c290420a0820b79849500af37a5739c (diff) |
ulist: Display vote stats for public votes even when "Vote" label is private
Fixes the last paragraph of https://vndb.org/t13365.36
Diffstat (limited to 'lib')
-rw-r--r-- | lib/VNWeb/User/Page.pm | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/VNWeb/User/Page.pm b/lib/VNWeb/User/Page.pm index 5ba088e6..a1d86c58 100644 --- a/lib/VNWeb/User/Page.pm +++ b/lib/VNWeb/User/Page.pm @@ -112,12 +112,12 @@ sub _votestats_ { my $recent = tuwf->dbAlli(' SELECT vn.id, vn.title, vn.original, uv.vote,', sql_totime('uv.vote_date'), 'AS date - FROM ulist_vns uv', + FROM ulist_vns uv + JOIN vn ON vn.id = uv.vid + WHERE uv.vote IS NOT NULL AND uv.uid =', \$u->{id}, $own ? () : ( - 'JOIN ulist_labels ul ON ul.uid = uv.uid AND ul.id =', \7, 'AND NOT ul.private' + 'AND EXISTS(SELECT 1 FROM ulist_vns_labels uvl JOIN ulist_labels ul ON ul.uid = uvl.uid AND ul.id = uvl.lbl WHERE uvl.uid = uv.uid AND uvl.vid = uv.vid AND NOT ul.private)' ), ' - JOIN vn ON vn.id = uv.vid - WHERE uv.vote IS NOT NULL AND uv.uid =', \$u->{id}, ' ORDER BY uv.vote_date DESC LIMIT', \8 ); @@ -152,11 +152,11 @@ TUWF::get qr{/$RE{uid}}, sub { $u->{votes} = tuwf->dbAlli(' SELECT (uv.vote::numeric/10)::int AS idx, COUNT(uv.vote) as votes, SUM(uv.vote) AS total - FROM ulist_vns uv', + FROM ulist_vns uv + WHERE uv.vote IS NOT NULL AND uv.uid =', \$u->{id}, $own ? () : ( - 'JOIN ulist_labels ul ON ul.uid = uv.uid AND ul.id =', \7, 'AND NOT ul.private' + 'AND EXISTS(SELECT 1 FROM ulist_vns_labels uvl JOIN ulist_labels ul ON ul.uid = uvl.uid AND ul.id = uvl.lbl WHERE uvl.uid = uv.uid AND uvl.vid = uv.vid AND NOT ul.private)' ), ' - WHERE uv.vote IS NOT NULL AND uv.uid =', \$u->{id}, ' GROUP BY (uv.vote::numeric/10)::int '); |