Download & Extend

Anonymous vote rollover set to "Never" doesn't work

Project:Voting API
Version:6.x-2.0-rc2
Component:Code
Category:bug report
Priority:major
Assigned:Unassigned
Status:active

Issue Summary

After "anonymous vote rollover" is set to "Never", votingapi_select_votes($criteria) incorrectly returns an empty array (uid=0 with matching IP address).

However, when "anonymous vote rollover" is switched to "1 week", votingapi_select_votes($criteria) returns correct result.

Testing was conducted with plus1-6.x-2.5.

Comments

#1

I have this problem too. Need solution.

#2

Me too! This becomes an issue when you are using Views together with Voting API / Fivestar. If a guest votes on the same item twice from the same computer, and the time between the votes exceeds anonymous vote rollover, you will duplicate rows in the View.

#3

Same problem here. IF you look in the database at the "variables" table, you can find "votingapi_anonymous_window"

When set to "Never" it's set to 's:2:"-1";'. That's all nice and fine, except the actual calculation algorithm in the module doesn't work with the negative one. I changed mine to 's:8:"31556926";' (the number of seconds in a year) and that works. Hopefully someone in charge of the module can figure out where the calculation error is.

#4

Same problem here. The solution #3 works.

#5

Status:active» fixed

Fixed in the dev snapshot. Thanks!

#6

Status:fixed» closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

#7

Priority:normal» major
Status:closed (fixed)» active

This issue still persists in 6.x-2.3, etc. It does not recognize the -1 variable. Updated the priority to Major since this is a problem that undermines the modules major functionality.

#8

I've got a similar problem at http://coloradoan-anti-censorship.net, except that the module is ignoring the Voting-API settings. I have the following configuration:
Poll/Core 6.22
Voting API 6.x-2.3
MySQL 5.0.91
PHP 5.2.17
Preformance Options Enabled, Normal Caching Mode, 5 minute lifetime.
Voting API is set to:

  • Anonymous vote rollover: Immediately
  • Voting tally: Tally results whenever a vote is cast

Recent Updates: CKEditor - WYSIWYG HTML editor to 6.x-1.6

My intent is to allow anonymous voters to vote at will, and also view the results. So this is what I believe should be happening with the above settings (please correct me if I'm wrong):

  1. Anonymous votes, and the voting results are displayed.
  2. Anonymous refreshes the screen, and is allowed to vote again.

However what happens now is that after step 1, Anonymous is locked into voting tally, regardless of whether I clear the cache, vote with a test account, etc. If I'm logged in as a user, I get the vote button, then the tally with a vote cancel button. It just doesn't appear to work correctly with Anonymous users. Maybe it never did and I hadn't exercised it enough to catch the bug. If I come in from an IP address that I know hasn't voted, i.e. using Tor, then it shows the vote button. I would think with the above settings, it would ignore the IP address.

The actual poll is at http://coloradoan-anti-censorship.net/poll/should-medical-marijuana-disp...