View Issue Details

This bug affects 2 person(s).
 20
IDProjectCategoryView StatusLast Update
18315Bug reportsSurvey participants (Tokens)public2023-08-14 09:30
ReporterJmantysalo Assigned Totibor.pacalat  
PrioritynoneSeveritypartial_block 
Status closedResolutionfixed 
Product Version5.3.x 
Summary18315: Uses left -value goes to negative
Description

First: In participant settings there is a setting 'Allow multiple responses or update responses with one access code:'. Why so? Here a users wants only one answer for one token, but still be possible to modify the answer. So it seems logical to split this setting.

Then, if this is set to On, I can add a participant and put 2 as a value to Uses left, fill the survey three times, and Uses left shows -1. Because of this I mark this as a bug, not as a feature request.

TagsNo tags attached.
Bug heat20
Complete LimeSurvey version number (& build) 5.3.26+220720
I will donate to the project if issue is resolvedNo
Browser
Database type & versionN/A
Server OS (if known)
Webserver software & version (if known)
PHP VersionN/A

Users monitoring this issue

There are no users monitoring this issue.

Activities

gabrieljenik

gabrieljenik

2022-08-17 17:19

manager   ~71472

Will try to reproduce

gabrieljenik

gabrieljenik

2022-12-22 22:35

manager   ~73296

Last edited: 2023-01-03 15:43

Hi,

If I understand correctly, your steps are:

  • Set 'Allow multiple responses or update responses with one access code' --> On
  • Add a participant
  • Set 2 as a value to Uses left
  • Fill the survey three times
    Uses left shows -1.

The expected would be to have uses left to 0 and only allow 2 times, right?

gabrieljenik

gabrieljenik

2022-12-22 22:38

manager   ~73297

This setting is always tricky :)

'Allow multiple responses or update responses with one access code:'.

This refers that:

  • If token persistence is Off, by checking the checkbox you will allow multiple responses with the same access code.
  • If token persistence is ON, by checking the checkbox you will be able to update the responses with the access code.

https://manual.limesurvey.org/Participant_settings/en#Allow_multiple_responses_or_update_responses_with_one_token

I agree this UI could be enhanced. With a bit of JQuery, the proper texts could be set in place depending on which prio option is checked.

Jmantysalo

Jmantysalo

2023-01-02 08:32

reporter   ~73323

There are several places where more dynamic GUI would be nice. For example, if 'Show welcome screen' is Off, then the page 'Survey text elements' could show an info text about this in Description-field.

But this is somewhat different. Why can't there be an option where a participant could change his/her answer, but not make another answer?

And in any case, if I set 'Uses left' to 2, I suppose the participant can answer 2 times.

gabrieljenik

gabrieljenik

2023-01-02 13:12

manager   ~73328

Last edited: 2023-01-03 15:29

Why can't there be an option where a participant could change his/her answer, but not make another answer?

That's the case when If token persistence is ON, by checking the checkbox you will be able to update the responses with the access code.

And in any case, if I set 'Uses left' to 2, I suppose the participant can answer 2 times.

I agree that setting may not make much sense if you set token persistence to ON

gabrieljenik

gabrieljenik

2023-01-03 15:44

manager   ~73337

Confirmed this behaviour, which is not as expected.
https://bugs.limesurvey.org/view.php?id=18315#c73296

gabrieljenik

gabrieljenik

2023-01-04 14:55

manager   ~73358

OK, current behaviour is as follows.

If token persistence is Off, by checking the checkbox you will allow multiple responses with the same access code.

This allows infinite responses. Uses Left field is not honored.
This field is only honored when "token persistence" is Off and "allow multiple responses with the same access code" is Off

So, my conclusion is we should update a bit the GUI to:

  • make the text dynamic and change according to previous checkboxes
  • update the texts to be more clear.
  • update the manual

@c_schmitz thoughts?

c_schmitz

c_schmitz

2023-02-23 17:57

administrator   ~73942

@gabrieljenik I agree that this definitely needs clarification, so I agree to your proposal.

gabrieljenik

gabrieljenik

2023-03-21 18:05

manager   ~74219

Jquery screen rules for "Allow multiple responses or update responses with one token":
1) If:

  • the survey is anonymous or
  • "Enable token-based response persistence" is set to "Off"

    Then:

  • Make the label "Allow multiple responses with the same access code"
  • Show a help text (or similar) that says "Participants will be able to enter as many responses as they want, despite what 'Uses Left' token attribute is set to."

2) If:

  • the survey is NOT anonymous and
  • "Enable token-based response persistence" is set to "On"

    Then:

  • Make the label "Allow to update the responses using the access code"
gabrieljenik

gabrieljenik

2023-03-23 20:38

manager   ~74256

https://github.com/LimeSurvey/LimeSurvey/pull/3010

As an improvement: persistence could be turned off automatically if the anonymous responses option is ON, to make it clearer for the user.

DenisChenu

DenisChenu

2023-03-24 09:10

developer   ~74272

As an improvement: persistence could be turned off automatically if the anonymous responses option is ON, to make it clearer for the user.

:/ unsure on this point, just leave it like this since. It's not a good way to do something without user action.

  1. You check persistence to ON + Anonymity to OFF
  2. Save
  3. By error : Anonymity to ON
  4. Fix your error
  5. persistence is OFF but you don't see it.
gabrieljenik

gabrieljenik

2023-04-19 23:25

manager   ~74553

New PR: https://github.com/LimeSurvey/LimeSurvey/pull/3060/files
Had to do a new PR as for easier merging

guest

guest

2023-08-10 13:53

viewer   ~76530

Fix committed to master branch: http://bugs.limesurvey.org/plugin.php?page=Source/view&id=35340

tibor.pacalat

tibor.pacalat

2023-08-10 13:53

administrator   ~76531

Tested and merged.

LimeBot

LimeBot

2023-08-14 09:30

administrator   ~76559

Fixed in Release 6.2.2+230814

Related Changesets

LimeSurvey: master 841ebf99

2023-08-10 13:53:12

Gabriel Jenik


Committer: GitHub Details Diff
Fixed issue 18315: Uses left value goes to negative (#3060)

Co-authored-by: Lapiu Dev <devgit@lapiu.biz>
Affected Issues
18315
mod - application/views/admin/survey/subview/accordion/_tokens_panel.php Diff File

Issue History

Date Modified Username Field Change
2022-08-17 08:15 Jmantysalo New Issue
2022-08-17 17:18 gabrieljenik Severity minor => partial_block
2022-08-17 17:19 gabrieljenik Assigned To => gabrieljenik
2022-08-17 17:19 gabrieljenik Status new => acknowledged
2022-08-17 17:19 gabrieljenik Note Added: 71472
2022-08-17 17:19 gabrieljenik Bug heat 0 => 2
2022-08-19 14:23 gabrieljenik Assigned To gabrieljenik =>
2022-08-19 14:23 gabrieljenik Status acknowledged => confirmed
2022-12-15 17:41 gabrieljenik Assigned To => gabrieljenik
2022-12-15 17:41 gabrieljenik Status confirmed => assigned
2022-12-22 22:35 gabrieljenik Note Added: 73296
2022-12-22 22:38 gabrieljenik Note Added: 73297
2022-12-22 22:38 gabrieljenik Assigned To gabrieljenik =>
2022-12-22 22:38 gabrieljenik Status assigned => feedback
2023-01-02 08:32 Jmantysalo Note Added: 73323
2023-01-02 08:32 Jmantysalo Bug heat 2 => 4
2023-01-02 08:32 Jmantysalo Status feedback => new
2023-01-02 13:12 gabrieljenik Note Added: 73328
2023-01-03 15:29 gabrieljenik Note Edited: 73328
2023-01-03 15:43 gabrieljenik Note Edited: 73296
2023-01-03 15:44 gabrieljenik Assigned To => gabrieljenik
2023-01-03 15:44 gabrieljenik Status new => confirmed
2023-01-03 15:44 gabrieljenik Note Added: 73337
2023-01-03 15:44 gabrieljenik Status confirmed => assigned
2023-01-04 14:55 gabrieljenik Note Added: 73358
2023-01-04 14:55 gabrieljenik Status assigned => feedback
2023-02-23 17:57 c_schmitz Note Added: 73942
2023-02-23 17:57 c_schmitz Bug heat 4 => 6
2023-03-21 18:05 gabrieljenik Note Added: 74219
2023-03-23 20:38 gabrieljenik Assigned To gabrieljenik => DenisChenu
2023-03-23 20:38 gabrieljenik Status feedback => ready for code review
2023-03-23 20:38 gabrieljenik Note Added: 74256
2023-03-24 09:10 DenisChenu Note Added: 74272
2023-03-24 09:10 DenisChenu Bug heat 6 => 8
2023-03-24 09:12 DenisChenu Assigned To DenisChenu =>
2023-03-24 09:12 DenisChenu Status ready for code review => ready for testing
2023-04-19 23:25 gabrieljenik Note Added: 74553
2023-05-19 17:04 guest Bug heat 8 => 14
2023-08-10 13:53 Changeset attached => LimeSurvey master 841ebf99
2023-08-10 13:53 guest Note Added: 76530
2023-08-10 13:53 guest Bug heat 14 => 16
2023-08-10 13:53 tibor.pacalat Assigned To => tibor.pacalat
2023-08-10 13:53 tibor.pacalat Status ready for testing => resolved
2023-08-10 13:53 tibor.pacalat Resolution open => fixed
2023-08-10 13:53 tibor.pacalat Note Added: 76531
2023-08-10 13:53 tibor.pacalat Bug heat 16 => 18
2023-08-14 09:30 LimeBot Note Added: 76559
2023-08-14 09:30 LimeBot Status resolved => closed
2023-08-14 09:30 LimeBot Bug heat 18 => 20