summaryrefslogtreecommitdiff
path: root/lib/VNWeb/Reviews/Elm.pm
diff options
context:
space:
mode:
Diffstat (limited to 'lib/VNWeb/Reviews/Elm.pm')
-rw-r--r--lib/VNWeb/Reviews/Elm.pm5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/VNWeb/Reviews/Elm.pm b/lib/VNWeb/Reviews/Elm.pm
index 385c8b0f..9b520501 100644
--- a/lib/VNWeb/Reviews/Elm.pm
+++ b/lib/VNWeb/Reviews/Elm.pm
@@ -13,13 +13,12 @@ my $VOTE_IN = form_compile in => $VOTE;
our $VOTE_OUT = form_compile out => $VOTE;
elm_api ReviewsVote => $VOTE_OUT, $VOTE_IN, sub {
- return elm_Unauth if !auth;
my($data) = @_;
- my %id = (uid => auth->uid, id => $data->{id});
+ my %id = (auth ? (uid => auth->uid) : (ip => tuwf->reqIP()), id => $data->{id});
my %val = (vote => $data->{my}?1:0, overrule => auth->permBoardmod ? $data->{overrule}?1:0 : 0, date => sql 'NOW()');
tuwf->dbExeci(
defined $data->{my}
- ? sql 'INSERT INTO reviews_votes', {%id,%val}, 'ON CONFLICT (id,uid) DO UPDATE SET', \%val
+ ? sql 'INSERT INTO reviews_votes', {%id,%val}, 'ON CONFLICT (id,', auth ? 'uid' : 'ip', ') DO UPDATE SET', \%val
: sql 'DELETE FROM reviews_votes WHERE', \%id
);
elm_Success