View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
04206 | Bug reports | Data Entry (non public) | public | 2010-03-17 13:58 | 2010-03-24 06:17 |
Reporter | harsha | Assigned To | harsha | ||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Product Version | 1.87+ | ||||
Target Version | 1.87+ | Fixed in Version | 1.87+ | ||
Summary | 04206: Array (Multi Flexible) (Numbers) - Not work correctly | ||||
Description | While defining Array (Multi Flexible)(Numbers) type questions if user specify a value greater than 10 as the min value and no value for max value , the (Multi Flexible)(Numbers) drop down is not shown. It works only for min values less than 10 if max value is not provided. If it is given both min and max values provided min < max all are working fine. Hence we need to carefully handle these scenarios. When user specify only one value for min or max we better provide +10 or -10 respectively as the range. | ||||
Steps To Reproduce | -create a question of type Array(Multi Flexible)(Numbers) | ||||
Tags | No tags attached. | ||||
Attached Files | ArrayMultiFlexNumber.patch (5,716 bytes)
Index: qanda.php =================================================================== --- qanda.php (revision 8503) +++ qanda.php (working copy) @@ -5965,22 +5965,24 @@ $lquery = "SELECT * FROM {$dbprefix}labels WHERE lid=$lid AND language='".$_SESSION['s_lang']."' ORDER BY sortorder, code"; $qidattributes=getQuestionAttributes($ia[0]); - if (trim($qidattributes['multiflexible_max'])!='') - { - $maxvalue=$qidattributes['multiflexible_max']; - } - else - { - $maxvalue=10; - } - if (trim($qidattributes['multiflexible_min'])!='') - { - $minvalue=$qidattributes['multiflexible_min']; - } - else - { - if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} - } + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) ==''){ + $maxvalue=$qidattributes['multiflexible_max']; + if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} + } + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) ==''){ + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_min'] + 10; + } + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) ==''){ + if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} + $maxvalue=10; + } + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !=''){ + if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_max']; + } + } if (trim($qidattributes['multiflexible_step'])!='') { Index: admin/dataentry.php =================================================================== --- admin/dataentry.php (revision 8503) +++ admin/dataentry.php (working copy) @@ -1465,19 +1465,19 @@ break; case ":": //ARRAY (Multi Flexi) (Numbers) $qidattributes=getQuestionAttributes($fnames[$i][7]); - if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min'] =='')) { + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) ==''){ $maxvalue=$qidattributes['multiflexible_max']; $minvalue=1; } - if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) ==''){ $minvalue=$qidattributes['multiflexible_min']; - $maxvalue=10 ; + $maxvalue=$qidattributes['multiflexible_min'] + 10; } - if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) ==''){ $minvalue=1; $maxvalue=10; } - if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max'] !='' )) { + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !=''){ if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ $minvalue=$qidattributes['multiflexible_min']; $maxvalue=$qidattributes['multiflexible_max']; @@ -2754,19 +2754,19 @@ break; case ":": //ARRAY (Multi Flexi) $qidattributes=getQuestionAttributes($deqrow['qid']); - if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min'] =='')) { + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) =='') { $maxvalue=$qidattributes['multiflexible_max']; $minvalue=1; } - if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) =='') { $minvalue=$qidattributes['multiflexible_min']; - $maxvalue=10; + $maxvalue=$qidattributes['multiflexible_min'] + 10; } - if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) =='') { $minvalue=1; $maxvalue=10; } - if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max'] !='' )) { + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !='') { if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ $minvalue=$qidattributes['multiflexible_min']; $maxvalue=$qidattributes['multiflexible_max']; limesurvey_group_6.csv (3,164 bytes)
# LimeSurvey Group Dump # DBVersion 142 # This is a dumped group from the LimeSurvey Script # http://www.limesurvey.org/ # Do not change this header! # # GROUPS TABLE # "gid","sid","group_name","group_order","description","language" "6","51718","default","0","","en" # # QUESTIONS TABLE # "qid","sid","gid","type","title","question","preg","help","other","mandatory","lid","lid1","question_order","language" "29","51718","6",":","3","No Min and Max values specified<br />","","","N","N","8","0","2","en" "27","51718","6",":","1","Only Max value is set (value = 15)<br />","","","N","N","8","0","0","en" "28","51718","6",":","2","Only Min value is set (value = 4)<br />","","","N","N","8","0","1","en" "30","51718","6",":","4","Both min and max values are specified (min = 5 , max = 20)<br />","","","N","N","8","0","3","en" # # ANSWERS TABLE # "qid","code","answer","default_value","assessment_value","sortorder","language" "29","1","test","N","0","1","en" "27","1","test","N","0","0","en" "27","2","test2","N","0","1","en" "28","1","test","N","0","1","en" "30","1","test","N","0","1","en" # # CONDITIONS TABLE # # # LABELSETS TABLE # "lid","label_name","languages" "8","simple","en" # # LABELS TABLE # "lid","code","title","sortorder","assessment_value","language" "8","11111","option1","0","0","en" "8","11112","option2","1","4","en" "8","11111","option1","0","0","en" "8","11112","option2","1","4","en" "8","11111","option1","0","0","en" "8","11112","option2","1","4","en" "8","11111","option1","0","0","en" "8","11112","option2","1","4","en" # # QUESTION_ATTRIBUTES TABLE # "qaid","qid","attribute","value" "303","29","hidden","0" "302","29","array_filter_exclude","" "301","29","array_filter","" "300","29","answer_width","" "304","29","multiflexible_max","" "305","29","multiflexible_min","" "306","29","multiflexible_step","" "307","29","multiflexible_checkbox","0" "308","29","page_break","0" "309","29","public_statistics","0" "310","29","random_order","0" "311","29","scale_export","0" "285","27","public_statistics","0" "284","27","page_break","0" "283","27","multiflexible_checkbox","0" "282","27","multiflexible_step","" "281","27","multiflexible_min","" "280","27","multiflexible_max","15" "279","27","hidden","0" "278","27","array_filter_exclude","" "277","27","array_filter","" "276","27","answer_width","" "287","27","scale_export","0" "286","27","random_order","0" "299","28","scale_export","0" "298","28","random_order","0" "297","28","public_statistics","0" "296","28","page_break","0" "295","28","multiflexible_checkbox","0" "294","28","multiflexible_step","" "293","28","multiflexible_min","4" "292","28","multiflexible_max","" "291","28","hidden","0" "290","28","array_filter_exclude","" "289","28","array_filter","" "288","28","answer_width","" "312","30","answer_width","" "313","30","array_filter","" "314","30","array_filter_exclude","" "315","30","hidden","0" "316","30","multiflexible_max","20" "317","30","multiflexible_min","5" "318","30","multiflexible_step","" "319","30","multiflexible_checkbox","0" "320","30","page_break","0" "321","30","public_statistics","0" "322","30","random_order","0" "323","30","scale_export","0" ArrayMultiFlexNumbers.patch (7,715 bytes)
Index: qanda.php =================================================================== --- qanda.php (revision 8503) +++ qanda.php (working copy) @@ -5965,22 +5965,24 @@ $lquery = "SELECT * FROM {$dbprefix}labels WHERE lid=$lid AND language='".$_SESSION['s_lang']."' ORDER BY sortorder, code"; $qidattributes=getQuestionAttributes($ia[0]); - if (trim($qidattributes['multiflexible_max'])!='') - { - $maxvalue=$qidattributes['multiflexible_max']; - } - else - { - $maxvalue=10; - } - if (trim($qidattributes['multiflexible_min'])!='') - { - $minvalue=$qidattributes['multiflexible_min']; - } - else - { - if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} - } + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) ==''){ + $maxvalue=$qidattributes['multiflexible_max']; + if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} + } + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) ==''){ + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_min'] + 10; + } + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) ==''){ + if(isset($minvalue['value']) && $minvalue['value'] == 0) {$minvalue = 0;} else {$minvalue=1;} + $maxvalue=10; + } + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !=''){ + if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_max']; + } + } if (trim($qidattributes['multiflexible_step'])!='') { Index: admin/dataentry.php =================================================================== --- admin/dataentry.php (revision 8503) +++ admin/dataentry.php (working copy) @@ -1465,19 +1465,19 @@ break; case ":": //ARRAY (Multi Flexi) (Numbers) $qidattributes=getQuestionAttributes($fnames[$i][7]); - if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min'] =='')) { + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) ==''){ $maxvalue=$qidattributes['multiflexible_max']; $minvalue=1; } - if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) ==''){ $minvalue=$qidattributes['multiflexible_min']; - $maxvalue=10 ; + $maxvalue=$qidattributes['multiflexible_min'] + 10; } - if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) ==''){ $minvalue=1; $maxvalue=10; } - if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max'] !='' )) { + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !=''){ if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ $minvalue=$qidattributes['multiflexible_min']; $maxvalue=$qidattributes['multiflexible_max']; @@ -2754,19 +2754,19 @@ break; case ":": //ARRAY (Multi Flexi) $qidattributes=getQuestionAttributes($deqrow['qid']); - if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min'] =='')) { + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) =='') { $maxvalue=$qidattributes['multiflexible_max']; $minvalue=1; } - if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) =='') { $minvalue=$qidattributes['multiflexible_min']; - $maxvalue=10; + $maxvalue=$qidattributes['multiflexible_min'] + 10; } - if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max'] =='' )) { + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) =='') { $minvalue=1; $maxvalue=10; } - if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max'] !='' )) { + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !='') { if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ $minvalue=$qidattributes['multiflexible_min']; $maxvalue=$qidattributes['multiflexible_max']; Index: admin/printablesurvey.php =================================================================== --- admin/printablesurvey.php (revision 8503) +++ admin/printablesurvey.php (working copy) @@ -1368,18 +1368,25 @@ // ================================================================== case ":": //ARRAY (Multi Flexible) (Numbers) $headstyle="style='padding-left: 20px; padding-right: 7px'"; - if (trim($qidattributes['multiflexible_max'])!='') { - $maxvalue=$qidattributes['multiflexible_max']; - } - else - { - $maxvalue=10; - } - if (trim($qidattributes['multiflexible_min'])!='') { - $minvalue=$qidattributes['multiflexible_min']; - } else { - $minvalue=1; - } + if (trim($qidattributes['multiflexible_max'])!='' && trim($qidattributes['multiflexible_min']) =='') { + $maxvalue=$qidattributes['multiflexible_max']; + $minvalue=1; + } + if (trim($qidattributes['multiflexible_min'])!='' && trim($qidattributes['multiflexible_max']) =='') { + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_min'] + 10; + } + if (trim($qidattributes['multiflexible_min'])=='' && trim($qidattributes['multiflexible_max']) =='') { + $minvalue=1; + $maxvalue=10; + } + if (trim($qidattributes['multiflexible_min']) !='' && trim($qidattributes['multiflexible_max']) !='') { + if($qidattributes['multiflexible_min'] < $qidattributes['multiflexible_max']){ + $minvalue=$qidattributes['multiflexible_min']; + $maxvalue=$qidattributes['multiflexible_max']; + } + } + if (trim($qidattributes['multiflexible_step'])!='') { $stepvalue=$qidattributes['multiflexible_step']; } | ||||
Bug heat | 4 | ||||
Complete LimeSurvey version number (& build) | 8492 | ||||
I will donate to the project if issue is resolved | |||||
Browser | Firefox | ||||
Database type & version | MySQL 5.1.33 | ||||
Server OS (if known) | Apache / 2.2.11 Windows) | ||||
Webserver software & version (if known) | Apache / 2.2.11 (Windows) | ||||
PHP Version | PHP Version 5.2.12 | ||||
Carsten , please have a look on this issue. After applying the patch just import attached question group to see quickly what i have done. I welcome feedbacks from you. Thanks |
|
Please revert the changes on the case 'only maximum value'. |
|
Harsha, your commit breaks the number input on data entry and does not fulfill the changes I suggested to you. Please check your changes again. |
|
Carsten, Scenarios i added are as follows
Shall i add my previous logic for this then , when only min Value specifies max value would be (min + 10) . Is it ok ?
|
|
Carsten, i have added a new patch and sample question group to check those scenarios. Can you please check this and verify. |
|
Hello Harsha, looks much better. |
|
Sorted , if need any modification or whatever suggestion please tell me. |
|
Fixed the issue. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2010-03-17 13:58 | harsha | New Issue | |
2010-03-17 13:58 | harsha | Status | new => assigned |
2010-03-17 13:58 | harsha | Assigned To | => harsha |
2010-03-17 17:58 | harsha | File Added: DataEntry-MultiFlexibleNumbers.patch | |
2010-03-17 17:58 | harsha | File Added: limesurvey_group_4.csv | |
2010-03-17 18:01 | harsha | Relationship added | related to 04188 |
2010-03-17 18:08 | harsha | Note Added: 11406 | |
2010-03-17 18:08 | harsha | Assigned To | harsha => c_schmitz |
2010-03-17 18:08 | harsha | Status | assigned => feedback |
2010-03-18 20:44 | c_schmitz | Status | feedback => assigned |
2010-03-18 20:44 | c_schmitz | Assigned To | c_schmitz => harsha |
2010-03-18 20:44 | c_schmitz | Note Added: 11418 | |
2010-03-18 20:53 | c_schmitz | Note Edited: 11418 | |
2010-03-18 20:54 | c_schmitz | Note Edited: 11418 | |
2010-03-19 23:19 | c_schmitz | Note Added: 11428 | |
2010-03-20 03:50 | harsha | Note Added: 11432 | |
2010-03-20 20:12 | harsha | File Added: ArrayMultiFlexNumber.patch | |
2010-03-20 20:13 | harsha | File Added: limesurvey_group_6.csv | |
2010-03-20 20:28 | harsha | Note Added: 11434 | |
2010-03-20 20:30 | harsha | Assigned To | harsha => c_schmitz |
2010-03-20 20:30 | harsha | Status | assigned => feedback |
2010-03-20 21:25 | c_schmitz | Note Added: 11437 | |
2010-03-20 21:27 | c_schmitz | File Deleted: DataEntry-MultiFlexibleNumbers.patch | |
2010-03-20 21:27 | c_schmitz | File Deleted: limesurvey_group_4.csv | |
2010-03-20 22:35 | harsha | File Added: ArrayMultiFlexNumbers.patch | |
2010-03-21 19:04 | harsha | Note Added: 11457 | |
2010-03-21 19:04 | harsha | Status | feedback => assigned |
2010-03-23 21:09 | c_schmitz | Status | assigned => resolved |
2010-03-23 21:09 | c_schmitz | Resolution | open => fixed |
2010-03-23 21:09 | c_schmitz | Assigned To | c_schmitz => harsha |
2010-03-24 06:17 | harsha | Note Added: 11494 | |
2010-03-24 06:17 | harsha | Status | resolved => closed |
2010-03-24 06:17 | harsha | Fixed in Version | => 1.87+ |