2
0
mirror of https://github.com/ACSPRI/queXS synced 2024-04-02 12:12:16 +00:00

Fixed Bug lp:1411703 Asign cases even with sample disabled and sample unassigned from questionnaire

This commit is contained in:
Adam Zammit
2015-01-28 14:44:32 +11:00
parent fd89d3917e
commit a90b59bd68
2 changed files with 11 additions and 4 deletions

View File

@@ -96,7 +96,8 @@ function case_status_report($questionnaire_id = false, $sample_id = false, $outc
JOIN questionnaire as q ON (q.questionnaire_id = c.questionnaire_id and q.enabled = 1)
JOIN outcome as o ON (o.outcome_id = c.current_outcome_id AND o.outcome_type_id = 1)
JOIN sample as s ON (s.sample_id = c.sample_id $s)
JOIN sample_import as si ON (s.import_id = si.sample_import_id)
JOIN sample_import as si ON (s.import_id = si.sample_import_id AND si.enabled = 1)
JOIN questionnaire_sample as qs ON (qs.questionnaire_id = q.questionnaire_id AND qs.sample_import_id = s.import_id)
LEFT JOIN `call` as ca ON (ca.call_id = c.last_call_id)
LEFT JOIN outcome as co ON (co.outcome_id = ca.outcome_id)
LEFT JOIN case_queue as cq ON (cq.case_id = c.case_id)
@@ -207,7 +208,7 @@ $outcome_id = false;
print "<label for='questionnaire'>" . T_("Questionnaire") . ":</label>";
display_questionnaire_chooser($questionnaire_id);
print "<label for='sample'>" . T_("Sample") . ":</label>";
display_sample_chooser($questionnaire_id,$sample_import_id);
display_sample_chooser($questionnaire_id,$sample_import_id,false);
if ($questionnaire_id)
case_status_report($questionnaire_id,$sample_import_id,$outcome_id);

View File

@@ -119,15 +119,21 @@ function display_shift_chooser($questionnaire_id, $shift_id = false)
*
* @param int $questionnaire_id The questionnaire id
* @param int|bool $sample_import_id The sample import id or false if none selected
* @param bool $disabled Display disabled samples? (default is true)
*/
function display_sample_chooser($questionnaire_id, $sample_import_id = false)
function display_sample_chooser($questionnaire_id, $sample_import_id = false, $disabled = true)
{
global $db;
$s = "";
if (!$disabled)
$s = " AND si.enabled = 1 ";
$sql = "SELECT s.sample_import_id,si.description,CASE WHEN s.sample_import_id = '$sample_import_id' THEN 'selected=\'selected\'' ELSE '' END AS selected
FROM questionnaire_sample as s, sample_import as si
WHERE s.questionnaire_id = '$questionnaire_id'
AND s.sample_import_id = si.sample_import_id";
AND s.sample_import_id = si.sample_import_id $s";
$rs = $db->GetAll($sql);