mirror of
https://github.com/ACSPRI/queXS
synced 2024-04-02 12:12:16 +00:00
Fixes for fixed width data output from limesurvey (item width)
This commit is contained in:
@@ -509,6 +509,30 @@ function limesurvey_get_width($qid,$default)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Return the greatest width of answers
|
||||||
|
*
|
||||||
|
* @param mixed $qid Limesurvey question id
|
||||||
|
*
|
||||||
|
* @return int width of longest answer
|
||||||
|
* @author Adam Zammit <adam.zammit@acspri.org.au>
|
||||||
|
* @since 2010-11-03
|
||||||
|
*/
|
||||||
|
function limesurvey_answer_width($qid)
|
||||||
|
{
|
||||||
|
global $db;
|
||||||
|
|
||||||
|
$sql = "SELECT MAX(LENGTH(code)) as c FROM ".LIME_PREFIX."answers WHERE qid = $qid";
|
||||||
|
$r = $db->GetRow($sql);
|
||||||
|
|
||||||
|
$val = 1;
|
||||||
|
|
||||||
|
if (!empty($r))
|
||||||
|
$val = $r['c'];
|
||||||
|
|
||||||
|
return $val;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
function limesurvey_fixed_width($lid)
|
function limesurvey_fixed_width($lid)
|
||||||
{
|
{
|
||||||
@@ -658,15 +682,15 @@ function limesurvey_export_fixed_width($questionnaire_id,$sample_import_id = fal
|
|||||||
$vartype[$varName] = 1;
|
$vartype[$varName] = 1;
|
||||||
break;
|
break;
|
||||||
case "L": //LIST drop-down/radio-button list
|
case "L": //LIST drop-down/radio-button list
|
||||||
$varwidth[$varName]=limesurvey_fixed_width($lid);
|
$varwidth[$varName]=limesurvey_answer_width($qid);
|
||||||
$vartype[$varName] = 1;
|
$vartype[$varName] = 1;
|
||||||
break;
|
break;
|
||||||
case "W": //List - dropdown
|
case "W": //List - dropdown
|
||||||
$varwidth[$varName]=limesurvey_fixed_width($lid);
|
$varwidth[$varName]=limesurvey_answer_width($qid);
|
||||||
$vartype[$varName] = 1;
|
$vartype[$varName] = 1;
|
||||||
break;
|
break;
|
||||||
case "!": //List - dropdown
|
case "!": //List - dropdown
|
||||||
$varwidth[$varName]=limesurvey_fixed_width($lid);
|
$varwidth[$varName]=limesurvey_answer_width($qid);
|
||||||
$vartype[$varName] = 1;
|
$vartype[$varName] = 1;
|
||||||
break;
|
break;
|
||||||
case "O": //LIST WITH COMMENT drop-down/radio-button list + textarea
|
case "O": //LIST WITH COMMENT drop-down/radio-button list + textarea
|
||||||
@@ -753,7 +777,8 @@ function limesurvey_export_fixed_width($questionnaire_id,$sample_import_id = fal
|
|||||||
|
|
||||||
$sql3 = "SELECT c.case_id as case_id
|
$sql3 = "SELECT c.case_id as case_id
|
||||||
FROM `case` as c
|
FROM `case` as c
|
||||||
WHERE c.questionnaire_id = '$questionnaire_id'";
|
WHERE c.questionnaire_id = '$questionnaire_id'
|
||||||
|
AND c.current_outcome_id = 10";
|
||||||
|
|
||||||
$r = $db->GetAll($sql3);
|
$r = $db->GetAll($sql3);
|
||||||
|
|
||||||
@@ -761,12 +786,12 @@ function limesurvey_export_fixed_width($questionnaire_id,$sample_import_id = fal
|
|||||||
{
|
{
|
||||||
$sql = "SELECT *
|
$sql = "SELECT *
|
||||||
FROM ".LIME_PREFIX."survey_$surveyid
|
FROM ".LIME_PREFIX."survey_$surveyid
|
||||||
WHERE submitdate IS NOT NULL";
|
WHERE ";
|
||||||
|
|
||||||
|
|
||||||
if ($sample_import_id == false)
|
if ($sample_import_id == false)
|
||||||
{
|
{
|
||||||
$sql .= " AND (";
|
$sql .= " (";
|
||||||
$ccount = count($r);
|
$ccount = count($r);
|
||||||
$ccounter = 0;
|
$ccounter = 0;
|
||||||
foreach($r as $row)
|
foreach($r as $row)
|
||||||
@@ -791,7 +816,7 @@ function limesurvey_export_fixed_width($questionnaire_id,$sample_import_id = fal
|
|||||||
|
|
||||||
if (!empty($r))
|
if (!empty($r))
|
||||||
{
|
{
|
||||||
$sql .= " AND (";
|
$sql .= " (";
|
||||||
$ccount = count($r);
|
$ccount = count($r);
|
||||||
$ccounter = 0;
|
$ccounter = 0;
|
||||||
foreach($r as $row)
|
foreach($r as $row)
|
||||||
|
|||||||
Reference in New Issue
Block a user