From b48d1b9c2e66714b13b8fb150c7b08e922e481bb Mon Sep 17 00:00:00 2001 From: Carsten Schmitz Date: Wed, 7 Mar 2007 22:02:27 +0000 Subject: [PATCH] Fixed bug #656: Assessments don't work properly; HTML source code shows wrong calculation results At least i hope so ;). git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/phpsurveyor@2519 b72ed6b6-b9f8-46b5-92b4-906544132732 --- admin/assessments.php | 2 +- common.php | 18 +----------------- index.php | 12 ++++++------ 3 files changed, 8 insertions(+), 24 deletions(-) diff --git a/admin/assessments.php b/admin/assessments.php index 9eff220cab3..dd85ae1b60c 100644 --- a/admin/assessments.php +++ b/admin/assessments.php @@ -215,7 +215,7 @@ function getAssessments($surveyid) { function getGroups($surveyid) { global $dbprefix, $connect; - $baselang = GetBaseLanguageFromSurveyID($sid); + $baselang = GetBaseLanguageFromSurveyID($surveyid); $query = "SELECT gid, group_name FROM ".db_table_name('groups')." WHERE sid='$surveyid' and language='$baselang' diff --git a/common.php b/common.php index 742b41f8686..f94a9d7b26e 100644 --- a/common.php +++ b/common.php @@ -2031,25 +2031,9 @@ function GetAdditionalLanguagesFromSurveyID($surveyid) return $additional_languages; } -/* -function SetInterfaceLanguage($languagetoset) -{ - - if (function_exists('T_setlocale')) {@T_setlocale(LC_MESSAGES, $languagetoset); } - @setlocale(LC_ALL,'en_GB', 'en_US','en_UK','en_EN','en_GB.utf8','english','en_US.utf-8'); // one of these should be present.. its weird but works - @putenv("LANG=$languagetoset"); // these both suckers are needed to overwrite the path in the end - @putenv("LANGUAGE=$languagetoset"); - - bindtextdomain($languagetoset, dirname(__FILE__).'/locale'); - if (!function_exists('bind_textdomain_codeset')) echo "You need at least PHP 4.2.x to run PHPSurveyor." and die; - bind_textdomain_codeset($languagetoset,'UTF-8'); - textdomain($languagetoset); - return $languagetoset; -} -*/ -//NEW for multilanguage surveys +//For multilanguage surveys function SetSurveyLanguage($surveyid, $language)// SetSurveyLanguage($surveyid) { diff --git a/index.php b/index.php index 31e615356b7..8f3ef64ac3d 100644 --- a/index.php +++ b/index.php @@ -1490,13 +1490,13 @@ function doAssessment($surveyid) if (($field['fieldname'] != "datestamp") and ($field['fieldname'] != "ipaddr")) { - $fieldmap[$i]['answer']=$_SESSION[$field['fieldname']]; + if (isset($_SESSION[$field['fieldname']])) {$fieldmap[$i]['answer']=$_SESSION[$field['fieldname']];} + else {$fieldmap[$i]['answer']=0;} $groups[]=$field['gid']; - $total=$total+$_SESSION[$field['fieldname']]; + if (isset ($_SESSION[$field['fieldname']])) {$total=$total+$_SESSION[$field['fieldname']];} $i++; } } - $groups=array_unique($groups); foreach($groups as $group) @@ -1507,7 +1507,7 @@ function doAssessment($surveyid) if ($field['gid'] == $group && isset($field['answer'])) { //$grouptotal=$grouptotal+$field['answer']; - $grouptotal=$grouptotal+$_SESSION[$field['fieldname']]; + if (isset ($_SESSION[$field['fieldname']])) {$grouptotal=$grouptotal+$_SESSION[$field['fieldname']];} } } $subtotal[$group]=$grouptotal; @@ -1524,8 +1524,8 @@ function doAssessment($surveyid) { if ($val >= $assessed['min'] && $val <= $assessed['max']) { - $assessments .= "\t\t\t - ` + $assessments .= "\t\t\t +
".str_replace(array("{PERC}", "{TOTAL}"), array($val, $val), stripslashes($assessed['name']))."