Skip to content

Commit

Permalink
Fixed "attributecaptions columns don't have a default value" error an…
Browse files Browse the repository at this point in the history
…d issue#05520: can't preview group

git-svn-id: file:///Users/Shitiz/Downloads/lssvn/source/limesurvey_yii@12221 b72ed6b6-b9f8-46b5-92b4-906544132732
  • Loading branch information
sachdeva-shubham committed Jan 26, 2012
1 parent 3d02765 commit 59ec785
Show file tree
Hide file tree
Showing 8 changed files with 71 additions and 19 deletions.
9 changes: 5 additions & 4 deletions application/helpers/admin/activate_helper.php
Expand Up @@ -255,6 +255,7 @@ function checkQuestions($postsid, $surveyid, $qtypes)
else
return false;
}

/**
* Function to activate a survey
* @param int $surveyid The Survey ID
Expand Down Expand Up @@ -284,10 +285,10 @@ function activateSurvey($surveyid, $simulate = false)
{
$savetimings="TRUE";
}

//Get list of questions for the base language
$fieldmap = createFieldMap($surveyid,'short',false,false,getBaseLanguageFromSurveyID($surveyid));

$fieldmap = createFieldMap($surveyid,'full',false,false,getBaseLanguageFromSurveyID($surveyid));
$createsurvey = array();
foreach ($fieldmap as $j=>$arow) //With each question, create the appropriate field(s)
{
Expand Down Expand Up @@ -404,7 +405,7 @@ function activateSurvey($surveyid, $simulate = false)
//$createsurvey = rtrim($createsurvey, ",\n")."\n"; // Does nothing if not ending with a comma

$tabname = "{{survey_{$surveyid}}}";

$command = new CDbCommand(Yii::app()->db);
try
{
Expand Down
2 changes: 2 additions & 0 deletions application/helpers/common_helper.php
Expand Up @@ -2199,6 +2199,7 @@ function createFieldMap($surveyid, $style='short', $force_refresh=false, $questi

//Check for any additional fields for this survey and create necessary fields (token and datestamp and ipaddr)
$prow = Survey::model()->findByPk($surveyid)->getAttributes(); //Checked

if ($prow['anonymized'] == "N")
{
$fieldmap["token"]=array("fieldname"=>"token", 'sid'=>$surveyid, 'type'=>"token", "gid"=>"", "qid"=>"", "aid"=>"");
Expand Down Expand Up @@ -2682,6 +2683,7 @@ function createFieldMap($surveyid, $style='short', $force_refresh=false, $questi
$fieldmap[$fieldname]['other']=$arow['other'];
$fieldmap[$fieldname]['help']=$arow['help'];
}

if (isset($fieldmap)) {
$globalfieldmap[$surveyid][$style][$sLanguage] = $fieldmap;
Yii::app()->session['fieldmap-' . $surveyid . $sLanguage]=$fieldmap;
Expand Down
33 changes: 27 additions & 6 deletions application/helpers/expressions/em_manager_helper.php
Expand Up @@ -3092,14 +3092,35 @@ private function _UpdateValuesInDatabase($updatedValues, $finished=false)
// Create initial insert row for this record
$today = dateShift(date("Y-m-d H:i:s"), "Y-m-d H:i:s", $this->surveyOptions['timeadjust']);
$sdata = array(
"datestamp"=>$today,
"ipaddr"=>(($this->surveyOptions['ipaddr'] && isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : ''),
//"datestamp"=>$today,
//"ipaddr"=>(($this->surveyOptions['ipaddr'] && isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : ''),
"startlanguage"=>$this->surveyOptions['startlanguage'],
"token"=>($this->surveyOptions['token']),
"datestamp"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : NULL),
"refurl"=>(($this->surveyOptions['refurl']) ? getenv("HTTP_REFERER") : NULL),
"startdate"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : date("Y-m-d H:i:s",0)),
//"token"=>($this->surveyOptions['token']),
//"datestamp"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : NULL),
//"refurl"=>(($this->surveyOptions['refurl']) ? getenv("HTTP_REFERER") : NULL),
//"startdate"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : date("Y-m-d H:i:s",0)),
);
if ($this->surveyOptions['anonymized'] == "N")
{
$sdata = array_combine($sdata,array("token"=>($this->surveyOptions['token'])));
}
if ($this->surveyOptions['datestamp'] == "Y")
{
$sdata = array_combine($sdata, array(
"datestamp"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : NULL),
"startdate"=>($this->surveyOptions['datestamp'] ? $_SESSION['datestamp'] : date("Y-m-d H:i:s",0))
));

}
if ($this->surveyOptions['ipaddr'] == "Y")
{
$sdata = array_combine($sdata,array("ipaddr"=>(($this->surveyOptions['ipaddr'] && isset($_SERVER['REMOTE_ADDR'])) ? $_SERVER['REMOTE_ADDR'] : '')));
}
if ($this->surveyOptions['refurl'] == "Y")
{
$sdata = array_combine($sdata,array("refurl"=>(($this->surveyOptions['refurl']) ? getenv("HTTP_REFERER") : NULL)));
}

$sdata = array_filter($sdata);
if (Yii::app()->db->createCommand()->insert($this->surveyOptions['tablename'], $sdata)) // Checked
{
Expand Down
38 changes: 33 additions & 5 deletions application/helpers/frontend_helper.php
Expand Up @@ -2002,17 +2002,45 @@ function buildsurveysession($surveyid,$previewGroup=false)
// [8]=usedinconditions
// [9]=used in group.php for question count
// [10]=new group id for question in randomization group (GroupbyGroup Mode)

if (!isset($_SESSION['survey_'.$surveyid]['fieldarray'][$field['sid'].'X'.$field['gid'].'X'.$field['qid']]))
{
//JUST IN CASE : PRECAUTION!
//following variables are set only if $style=="full" in createFieldMap() in common_helper.
//so, if $style = "short", set some default values here!
if (isset($field['title']))
$title = $field['title'];
else
$title = "";

if (isset($field['question']))
$question = $field['question'];
else
$question = "";

if (isset($field['mandatory']))
$mandatory = $field['mandatory'];
else
$mandatory = 'N';

if (isset($field['hasconditions']))
$hasconditions = $field['hasconditions'];
else
$hasconditions = 'N';

if (isset($field['usedinconditions']))
$usedinconditions = $field['usedinconditions'];
else
$usedinconditions = 'N';
$_SESSION['survey_'.$surveyid]['fieldarray'][$field['sid'].'X'.$field['gid'].'X'.$field['qid']]=array($field['qid'],
$field['sid'].'X'.$field['gid'].'X'.$field['qid'],
$field['title'],
$field['question'],
$title,
$question,
$field['type'],
$field['gid'],
$field['mandatory'],
$field['hasconditions'],
$field['usedinconditions']);
$mandatory,
$hasconditions,
$usedinconditions);
}
if (isset($field['random_gid']))
{
Expand Down
2 changes: 1 addition & 1 deletion installer/sql/create-mssql.sql
Expand Up @@ -341,7 +341,7 @@ CREATE TABLE [prefix_surveys_languagesettings] (
[surveyls_email_confirm_subj] VARCHAR(255) NULL,
[surveyls_email_confirm] TEXT NULL,
[surveyls_dateformat] INT NOT NULL DEFAULT 1,
[surveyls_attributecaptions] VARCHAR(255) NOT NULL,
[surveyls_attributecaptions] VARCHAR(255) NULL,
[email_admin_notification_subj] VARCHAR(255) NULL,
[email_admin_notification] TEXT NULL,
[email_admin_responses_subj] VARCHAR(255) NULL,
Expand Down
2 changes: 1 addition & 1 deletion installer/sql/create-mssqlnative.sql
Expand Up @@ -349,7 +349,7 @@ CREATE TABLE [prefix_surveys_languagesettings] (
[surveyls_email_confirm_subj] VARCHAR(255) NULL,
[surveyls_email_confirm] varchar(max) NULL,
[surveyls_dateformat] INT NOT NULL DEFAULT 1,
[surveyls_attributecaptions] varchar(max) NOT NULL,
[surveyls_attributecaptions] varchar(max) NULL,
[email_admin_notification_subj] VARCHAR(255) NULL,
[email_admin_notification] varchar(max) NULL,
[email_admin_responses_subj] VARCHAR(255) NULL,
Expand Down
2 changes: 1 addition & 1 deletion installer/sql/create-mysql.sql
Expand Up @@ -326,7 +326,7 @@ CREATE TABLE `prefix_surveys_languagesettings` (
`surveyls_email_confirm_subj` varchar(255) NULL,
`surveyls_email_confirm` TEXT NULL,
`surveyls_dateformat` INT UNSIGNED NOT NULL DEFAULT 1,
`surveyls_attributecaptions` TEXT NOT NULL,
`surveyls_attributecaptions` TEXT NULL,
`email_admin_notification_subj` varchar(255) NULL,
`email_admin_notification` TEXT NULL,
`email_admin_responses_subj` varchar(255) NULL,
Expand Down
2 changes: 1 addition & 1 deletion installer/sql/create-pgsql.sql
Expand Up @@ -336,7 +336,7 @@ CREATE TABLE prefix_surveys_languagesettings (
surveyls_email_confirm_subj character varying(255),
surveyls_email_confirm text,
surveyls_dateformat integer DEFAULT 1 NOT NULL,
surveyls_attributecaptions character varying(255) NOT NULL,
surveyls_attributecaptions character varying(255) NULL,
email_admin_notification_subj character varying(255),
email_admin_notification text,
email_admin_responses_subj character varying(255),
Expand Down

0 comments on commit 59ec785

Please sign in to comment.