Skip to content

Commit

Permalink
Fixed issue #5739: Wrong percentage in graphs with List with Comments…
Browse files Browse the repository at this point in the history
… question types

Fixed issue #5734: Problem upgrading from 1.72 to 1.91+

git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey_dev@12369 b72ed6b6-b9f8-46b5-92b4-906544132732
  • Loading branch information
c_schmitz committed Feb 6, 2012
1 parent 0de4c1e commit 3bcad5d
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 21 deletions.
5 changes: 3 additions & 2 deletions admin/statistics_function.php
Expand Up @@ -31,7 +31,7 @@
* L - List (Radio)
* M - Multiple choice
* N - Numerical Input
* O - List With Comment
* O - List with comment
* P - Multiple choice with comments
* Q - Multiple Short Text
* R - Ranking
Expand Down Expand Up @@ -3208,10 +3208,11 @@ function generate_statistics($surveyid, $allfields, $q2show='all', $usegraph=0,
else
{
// this block is to remove the items with value == 0
// and an unelegant way to remove comments from List with Comments questions
$i = 0;
while (isset ($gdata[$i]))
{
if ($gdata[$i] == 0)
if ($gdata[$i] == 0 || ($qtype == "O" && substr($lbl[$i],0,strlen($statlang->gT("Comments")))==$statlang->gT("Comments")))
{
array_splice ($gdata, $i, 1);
array_splice ($lbl, $i, 1);
Expand Down
10 changes: 4 additions & 6 deletions admin/update/upgrade-mssql.php
Expand Up @@ -251,8 +251,9 @@ function db_upgrade($oldversion) {
// drop the old link field
modify_database("","ALTER TABLE [prefix_assessments] DROP COLUMN [link]"); echo $modifyoutput; flush();ob_flush();
// change the primary index to include language
// and fix missing translations for assessments
upgrade_survey_tables133a();
mssql_drop_primary_index('assessments');
// add the new primary key
modify_database("","ALTER TABLE [prefix_assessments] ADD CONSTRAINT pk_assessments_id_lang PRIMARY KEY ([id],[language])"); echo $modifyoutput; flush();ob_flush();

// Add new fields to survey language settings
modify_database("","ALTER TABLE [prefix_surveys_languagesettings] ADD [surveyls_url] varchar(255)"); echo $modifyoutput; flush();ob_flush();
Expand Down Expand Up @@ -654,12 +655,9 @@ function upgrade_token_tables128()
}


function upgrade_survey_tables133a()
function fixLanguageConsistencyAllSurveys()
{
global $dbprefix, $connect, $modifyoutput;
mssql_drop_primary_index('assessments');
// add the new primary key
modify_database("","ALTER TABLE [prefix_assessments] ADD CONSTRAINT pk_assessments_id_lang PRIMARY KEY ([id],[language])"); echo $modifyoutput; flush();ob_flush();
$surveyidquery = "SELECT sid,additional_languages FROM ".db_table_name('surveys');
$surveyidresult = db_execute_num($surveyidquery);
while ( $sv = $surveyidresult->FetchRow() )
Expand Down
11 changes: 5 additions & 6 deletions admin/update/upgrade-mssqlnative.php
Expand Up @@ -251,8 +251,9 @@ function db_upgrade($oldversion) {
// drop the old link field
modify_database("","ALTER TABLE [prefix_assessments] DROP COLUMN [link]"); echo $modifyoutput; flush();ob_flush();
// change the primary index to include language
// and fix missing translations for assessments
upgrade_survey_tables133a();
mssql_drop_primary_index('assessments');
// add the new primary key
modify_database("","ALTER TABLE [prefix_assessments] ADD CONSTRAINT pk_assessments_id_lang PRIMARY KEY ([id],[language])"); echo $modifyoutput; flush();ob_flush();

// Add new fields to survey language settings
modify_database("","ALTER TABLE [prefix_surveys_languagesettings] ADD [surveyls_url] varchar(255)"); echo $modifyoutput; flush();ob_flush();
Expand Down Expand Up @@ -535,6 +536,7 @@ function db_upgrade($oldversion) {
); ");echo $modifyoutput; flush();ob_flush();
modify_database("", "ALTER TABLE [prefix_users] ADD [participant_panel] int NOT NULL default '0'"); echo $modifyoutput; flush();ob_flush();

fixLanguageConsistencyAllSurveys();
// Add language field to question_attributes table
modify_database("","ALTER TABLE [prefix_question_attributes] ADD [language] varchar(20)"); echo $modifyoutput; flush();ob_flush();
upgrade_question_attributes148();
Expand Down Expand Up @@ -654,12 +656,9 @@ function upgrade_token_tables128()
}


function upgrade_survey_tables133a()
function fixLanguageConsistencyAllSurveys()
{
global $dbprefix, $connect, $modifyoutput;
mssql_drop_primary_index('assessments');
// add the new primary key
modify_database("","ALTER TABLE [prefix_assessments] ADD CONSTRAINT pk_assessments_id_lang PRIMARY KEY ([id],[language])"); echo $modifyoutput; flush();ob_flush();
$surveyidquery = "SELECT sid,additional_languages FROM ".db_table_name('surveys');
$surveyidresult = db_execute_num($surveyidquery);
while ( $sv = $surveyidresult->FetchRow() )
Expand Down
7 changes: 3 additions & 4 deletions admin/update/upgrade-mysql.php
Expand Up @@ -260,8 +260,6 @@ function db_upgrade($oldversion) {
modify_database("","ALTER TABLE `prefix_assessments` DROP COLUMN `link`"); echo $modifyoutput; flush();@ob_flush();
// change the primary index to include language
modify_database("","ALTER TABLE `prefix_assessments` DROP PRIMARY KEY, ADD PRIMARY KEY USING BTREE(`id`, `language`)"); echo $modifyoutput; flush();@ob_flush();
//finally fix missing translations for assessments
upgrade_survey_tables133();
// Add new fields to survey language settings
modify_database("","ALTER TABLE `prefix_surveys_languagesettings` ADD `surveyls_url` varchar(255)"); echo $modifyoutput; flush();@ob_flush();
modify_database("","ALTER TABLE `prefix_surveys_languagesettings` ADD `surveyls_endtext` text"); echo $modifyoutput; flush();@ob_flush();
Expand Down Expand Up @@ -711,6 +709,7 @@ function db_upgrade($oldversion) {

modify_database("", "UPDATE `prefix_settings_global` SET stg_value='155' WHERE stg_name='DBVersion'"); echo $modifyoutput; flush();ob_flush();
}
fixLanguageConsistencyAllSurveys();
echo '<br /><br />'.sprintf($clang->gT('Database update finished (%s)'),date('Y-m-d H:i:s')).'<br />';
return true;
}
Expand Down Expand Up @@ -781,13 +780,13 @@ function upgrade_token_tables128()



function upgrade_survey_tables133()
function fixLanguageConsistencyAllSurveys()
{
$surveyidquery = "SELECT sid,additional_languages FROM ".db_table_name('surveys');
$surveyidresult = db_execute_num($surveyidquery);
while ( $sv = $surveyidresult->FetchRow() )
{
FixLanguageConsistency($sv[0],$sv[1]);
FixLanguageConsistency($sv[0]);
}
}

Expand Down
5 changes: 2 additions & 3 deletions admin/update/upgrade-postgres.php
Expand Up @@ -92,8 +92,6 @@ function db_upgrade($oldversion) {
// change the primary index to include language
modify_database("","ALTER TABLE prefix_assessments DROP CONSTRAINT prefix_assessments_pkey"); echo $modifyoutput; flush();ob_flush();
modify_database("","ALTER TABLE prefix_assessments ADD CONSTRAINT prefix_assessments_pkey PRIMARY KEY (id,language)"); echo $modifyoutput; flush();ob_flush();
// and fix missing translations for assessments
upgrade_survey_tables133();

// Add new fields to survey language settings
modify_database("","ALTER TABLE prefix_surveys_languagesettings ADD surveyls_url character varying(255)"); echo $modifyoutput; flush();ob_flush();
Expand Down Expand Up @@ -435,6 +433,7 @@ function db_upgrade($oldversion) {
modify_database("", "UPDATE prefix_settings_global SET stg_value='155' WHERE stg_name='DBVersion'"); echo $modifyoutput; flush();ob_flush();
}

fixLanguageConsistencyAllSurveys();
echo '<br /><br />'.sprintf($clang->gT('Database update finished (%s)'),date('Y-m-d H:i:s')).'<br />';
return true;
}
Expand All @@ -455,7 +454,7 @@ function upgrade_token_tables128()
}
}

function upgrade_survey_tables133()
function fixLanguageConsistencyAllSurveys()
{
global $modifyoutput;

Expand Down

0 comments on commit 3bcad5d

Please sign in to comment.