Execute($sql); if(!empty($_POST['select']) ){ foreach($_POST['select'] as $n => $val) { $sel[] = $val; } $sel=implode($sel,","); $sql = "UPDATE `outcome` as o SET `default` = 1 WHERE o.permanent != 1 AND o.outcome_id IN ($sel)"; $db->Execute($sql); } if(!empty($_POST['delay']) && $_SESSION['user'] === "admin" ){ foreach($_POST['delay'] as $n => $val) { $sql = "UPDATE `outcome`SET default_delay_minutes = $val WHERE outcome_id = $n"; $db->Execute($sql); } } $_GET['default'] = $_POST['default']; unset($_POST['default']); unset($_POST['save']); } if (isset($_POST['qid']) && isset($_POST['save'])){ //get id's for 'permanent' outcomes $sql = "SELECT o.outcome_id FROM `outcome` as o WHERE o.permanent = 1 AND o.default = 1;"; $def = $db->GetAll($sql); for ($i=0; $i < count($def); $i++){ foreach($def[$i] as $key => $val){ $sel[] = $val; } } if(!empty($_POST['select']) ){ //add selected outcomes foreach($_POST['select'] as $n => $val){ $sel[] = $val; } } $sel=implode($sel,","); $qid = intval($_POST['qid']); $sql = "UPDATE questionnaire SET outcomes = '$sel' WHERE questionnaire_id = $qid"; $db->Execute($sql); $_GET['qid'] = $_POST['qid']; unset($_POST['qid']); unset($_POST['save']); } /*select outcomes list*/ if (isset($_GET['default'])) { $title = T_("Set default outcomes"); } else if (isset($_GET['qid'])){ $title = T_("Set questionnaire outcomes"); $qid = intval($_GET['qid']); } else die(); xhtml_head($title,true,$css,$js_head); /* for questionnire outcomes */ if (isset($_GET['qid'])) { if($qid == 0) $qid = false; print "

" . T_("Questionnaire") . ": 

"; $sql = "SELECT questionnaire_id as value,description, CASE WHEN questionnaire_id = '$qid' THEN 'selected=\'selected\'' ELSE '' END AS selected FROM questionnaire WHERE enabled = 1"; display_chooser($db->GetAll($sql),"questionnaire","qid", true,false,true,true,false,true,"form-inline pull-left "); if ($qid != false) { $qd = $db->GetRow("SELECT outcomes, self_complete, referral FROM `questionnaire` WHERE questionnaire_id = $qid"); $qoutc = $qd['outcomes']; $sc = $qd['self_complete']; $ref = $qd['referral']; if (empty($qoutc)) { // update q.outcomes with default list $sql = "SELECT o.outcome_id FROM `outcome` as o WHERE o.default = 1;"; $def = $db->GetAll($sql); for ($i=0; $i < count($def); $i++){ foreach($def[$i] as $key => $val){ $do[] = $val; } } $qoutc = implode($do,","); $sql = "UPDATE questionnaire SET outcomes = '$qoutc' WHERE questionnaire_id = $qid"; $db->Execute($sql); } $sql = "SELECT o.*, ot.description as type, CONCAT('') as `select` from `outcome` as o, `outcome_type` as ot WHERE o.outcome_type_id = ot.outcome_type_id ORDER BY `o`.`outcome_id` ASC"; $rs = $db->GetAll($sql); $row = array("outcome_id","description","type","select"); $hdr = array(T_("Outcome ID"),T_("Description"),T_("Outcome type"),T_("Select")); $hid = "qid"; $value = "$qid"; } } /* for default outcomes */ if (isset($_GET['default'])) { $sql = "SELECT o.*, ot.description as type, CONCAT('') as `delay`, CONCAT('

" . T_("Yes") . "' ELSE 'default\">" . T_("No") . "' END , '

') as tryanother, CONCAT('

" . T_("Yes") . "' ELSE 'default\">" . T_("No") . "' END , '

') as tryagain, CONCAT('

" . T_("Yes") . "' ELSE 'default\">" . T_("No") . "' END , '

') as contacted, CONCAT('

" . T_("Yes") . "' ELSE 'default\">" . T_("No") . "' END , '

') as eligible, CONCAT('

" . T_("Yes") . "' ELSE 'default\">" . T_("No") . "' END , '

') as require_note, CONCAT('') as `select` from `outcome` as o, `outcome_type` as ot WHERE o.outcome_type_id = ot.outcome_type_id ORDER BY `o`.`outcome_id` ASC"; $rs = $db->GetAll($sql); $row = array("outcome_id","description","select","type","delay","contacted","tryanother","tryagain","eligible","require_note"); $hdr = array(T_("Outcome ID"),T_("Description"),T_("Default"),T_("Outcome type"),T_("Delay, min"),T_("Contacted"),T_("Try another"),T_("Try again"),T_("Eligible"),T_("Require note")); /* allow delay edit only to superadmins (currenlty admin) */ if ( $_SESSION['user'] != "admin"){ unset($row[4]); unset($hdr[4]); } $hid = "default"; $value = ""; } if (isset($rs) && !empty($rs)){ translate_array($rs, array("description","type")); for ($i = 0; $i < count($rs); $i++){ foreach ($rs[$i] as $key => $val){ if ($key == "type"){ $rs[$i]['type'] = preg_replace("#\s*\(.+#m", '', $val); // cut description in bracets for 'outcome_type' } } } ?>