View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
04429 | Bug reports | Survey editing | public | 2010-06-17 12:37 | 2010-07-06 11:22 |
Reporter | Denniz | Assigned To | mdekker | ||
Priority | high | Severity | partial_block | ||
Status | closed | Resolution | fixed | ||
Product Version | 1.90RC1 | ||||
Fixed in Version | 1.90RC2 | ||||
Summary | 04429: Replacement Field Properties loading non-stop | ||||
Description | Replacement Field Properties keep loading and doesn't show the content. | ||||
Steps To Reproduce | click on replacement field properties icon on the FCKeditor | ||||
Tags | No tags attached. | ||||
Attached Files | replacementfields.diff (5,040 bytes)
### Eclipse Workspace Patch 1.0 #P limesurvey Index: admin/fck_LimeReplacementFields.php =================================================================== --- admin/fck_LimeReplacementFields.php (revision 8856) +++ admin/fck_LimeReplacementFields.php (working copy) @@ -215,6 +215,7 @@ //TO AVOID NATURAL SORT ORDER ISSUES, //FIRST GET ALL QUESTIONS IN NATURAL SORT ORDER //, AND FIND OUT WHICH NUMBER IN THAT ORDER THIS QUESTION IS + /* $qquery = "SELECT * " ."FROM {$dbprefix}questions, " ."{$dbprefix}groups " @@ -227,17 +228,19 @@ $qrows = $qresult->GetRows(); // Perform a case insensitive natural sort on group name then question title (known as "code" in the form) of a multidimensional array usort($qrows, 'GroupOrderThenQuestionOrder'); + */ + $fieldmap = createFieldMap($surveyid, 'full'); - $surveyInfo = getSurveyInfo($surveyid); $surveyformat = $surveyInfo['format'];// S, G, A $prevquestion=null; $previouspagequestion = true; //Go through each question until we reach the current one //error_log(print_r($qrows,true)); - foreach ($qrows as $qrow) + foreach ($fieldmap as $field) { + if (empty($field['qid'])) continue; $AddQuestion=True; switch ($action) { @@ -248,7 +251,7 @@ case 'editgroup': if (empty($gid)) {die("No GID provided.");} - if ($qrow['gid'] == $gid) + if ($field['gid'] == $gid) { $AddQuestion=False; } @@ -259,7 +262,7 @@ if ( !is_null($prevquestion) && $prevquestion['gid'] == $gid && - $qrow['gid'] != $gid) + $field['gid'] != $gid) { $AddQuestion=False; } @@ -271,8 +274,8 @@ if (empty($gid)) {die("No GID provided.");} if (empty($qid)) {die("No QID provided.");} - if ($qrow['gid'] == $gid && - $qrow['qid'] == $qid) + if ($field['gid'] == $gid && + $field['qid'] == $qid) { $AddQuestion=False; } @@ -285,8 +288,7 @@ die("No Action provided."); break; } - - if ( $AddQuestion===True) + if ( $AddQuestion===True ) { if ($surveyformat == "S") { @@ -296,7 +298,7 @@ { if ($previouspagequestion === true) { // Last question was on a previous page - if ($qrow["gid"] == $gid) + if ($field["gid"] == $gid) { // This question is on same page $previouspagequestion = false; } @@ -311,8 +313,8 @@ $previouspagequestion = true; } - $questionlist[]=Array( "qid" => $qrow["qid"], "previouspage" => $previouspagequestion); - $prevquestion=$qrow; + $questionlist[]=array_merge($field,Array( "previouspage" => $previouspagequestion)); + $prevquestion=$field; } else { @@ -329,7 +331,8 @@ // } $theserows=array(); - + $theserows = $questionlist; + /* if (isset($questionlist) && is_array($questionlist)) { foreach ($questionlist as $ql) @@ -368,8 +371,8 @@ } } } + */ - $questionscount=count($theserows); if ($questionscount > 0) @@ -381,9 +384,15 @@ foreach($theserows as $rows) { - $shortquestion=$rows['title'].": ".FlattenText($rows['question']); + $question = $rows['question']; + + if (isset($rows['subquestion'])) $question = "[{$rows['subquestion']}] " . $question; + if (isset($rows['subquestion1'])) $question = "[{$rows['subquestion1']}] " . $question; + if (isset($rows['subquestion2'])) $question = "[{$rows['subquestion2']}] " . $question; + + $shortquestion=$rows['title'].": ".FlattenText($question); - if ($rows['type'] == "A" || + /*if ($rows['type'] == "A" || $rows['type'] == "B" || $rows['type'] == "C" || $rows['type'] == "E" || @@ -508,9 +517,9 @@ } //Answer multi scale else - { - $cquestions[]=array($shortquestion, $rows['qid'], $rows['type'], $rows['sid'].$X.$rows['gid'].$X.$rows['qid'],$rows['previouspage']); - } //else + {*/ + $cquestions[]=array($shortquestion, $rows['qid'], $rows['type'], $rows['fieldname'],$rows['previouspage']); + //} //else } //foreach theserows } //if questionscount > 0 | ||||
Bug heat | 2 | ||||
Complete LimeSurvey version number (& build) | 8819 | ||||
I will donate to the project if issue is resolved | |||||
Browser | |||||
Database type & version | MySQL 5.0.0 | ||||
Server OS (if known) | Linux | ||||
Webserver software & version (if known) | Apache 2.2.15 | ||||
PHP Version | 5.2.13 | ||||
Confirmed, admin\fck_LimeReplacementFields.php still uses lid/lid1 instead of the new subquestion structure resulting in an error: |
|
Added a quick patch, commenting out code i think we don't need anymore. Since I am not familiar with the old behaviour please review. When ok i will remove the commented out code and commit the patch |
|
Tested a little more and seems to be working ok. I will just commit the fix, please test. Fixed in svn 8858 |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2010-06-17 12:37 | Denniz | New Issue | |
2010-06-17 12:37 | Denniz | Status | new => assigned |
2010-06-17 12:37 | Denniz | Assigned To | => user372 |
2010-06-17 16:52 | c_schmitz | Assigned To | user372 => lemeur |
2010-06-18 09:06 | mdekker | Note Added: 12257 | |
2010-06-18 09:46 | mdekker | File Added: replacementfields.diff | |
2010-06-18 09:46 | mdekker | Assigned To | lemeur => c_schmitz |
2010-06-18 09:47 | mdekker | Note Added: 12258 | |
2010-06-18 11:50 | mdekker | Assigned To | c_schmitz => mdekker |
2010-06-18 11:53 | mdekker | Note Added: 12260 | |
2010-06-18 11:53 | mdekker | Status | assigned => resolved |
2010-06-18 11:53 | mdekker | Fixed in Version | => 1.90RC2 |
2010-06-18 11:53 | mdekker | Resolution | open => fixed |
2010-07-06 11:22 | c_schmitz | Status | resolved => closed |
2010-10-25 00:17 | c_schmitz | Category | Survey Design => Survey design |
2019-11-01 17:25 | c_schmitz | Category | Survey design => Survey editing |