From 9c03efd51b3c2818c36532e3f10e69bc8f35357d Mon Sep 17 00:00:00 2001 From: azammitdcarf Date: Tue, 30 Mar 2010 04:35:40 +0000 Subject: [PATCH] Can output entire key file (this should be placed in a function instead of this file) --- admin/dataoutput.php | 72 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 72 insertions(+) diff --git a/admin/dataoutput.php b/admin/dataoutput.php index 829ee40e..29a51b29 100644 --- a/admin/dataoutput.php +++ b/admin/dataoutput.php @@ -74,6 +74,75 @@ include ("../functions/functions.xhtml.php"); */ include("../functions/functions.display.php"); +if (isset($_GET['key'])) +{ + $questionnaire_id = bigintval($_GET['questionnaire_id']); + $sample_import_id = bigintval($_GET['sample_import_id']); + + $sql = "SELECT sv.var as value + FROM `sample_var` as sv + WHERE sv.sample_id = (SELECT sample_id FROM sample WHERE import_id = '$sample_import_id' LIMIT 1)"; + + $svars = $db->GetAll($sql); + + $fn = "key_all_$questionnaire_id" . "_" . $sample_import_id .".csv"; + + header("Content-Type: text/csv"); + header("Content-Disposition: attachment; filename=$fn"); + header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past + header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); + Header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); + header("Pragma: no-cache"); // HTTP/1.0 + + echo("caseid"); + foreach($svars as $s) + { + echo("," . $s['value']); + } + echo("\n"); + + $sql = "SELECT c.case_id "; + + $i = 0; + foreach ($svars as $s) + { + $sql .= ", sv$i.val as v$i"; + $i++; + } + + $sql .= " FROM sample + JOIN `case` as c ON (c.questionnaire_id = '$questionnaire_id') "; + + $i = 0; + foreach ($svars as $s) + { + $sql .= " LEFT JOIN sample_var AS sv$i ON (sv$i.sample_id = sample.sample_id AND sv$i.var = '{$s['value']}') "; + $i++; + } + + $sql .= " WHERE sample.import_id = '$sample_import_id' + AND c.sample_id = sample.sample_id"; + + $list = $db->GetAll($sql); + + + if (!empty($list)) + { + foreach($list as $l) + { + echo $l['case_id']; + $i = 0; + foreach ($svars as $s) + { + echo "," . str_replace(","," ",$l["v$i"]); + $i++; + } + echo "\n"; + } + } + + exit; +} if (isset($_GET['sample_var'])) { @@ -142,6 +211,9 @@ if ($questionnaire_id) print "

" . T_("Download key file: select sample var") . "

"; display_chooser($db->GetAll($sql),"sample_var","sample_var",true,"questionnaire_id=$questionnaire_id&sample_import_id=$sample_import_id"); + //download complete key file + print "

" . T_("Download complete key file") . "

"; + } }