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

Continue to remove LIME references

This commit is contained in:
Adam Zammit
2017-02-07 15:16:27 +11:00
parent efaaee6d0a
commit 33a5178fe0
6 changed files with 102 additions and 78 deletions

View File

@@ -104,6 +104,9 @@ if (isset($_GET['questionnaire_id']) && isset($_GET['sample']) && isset($_GET['
if (isset($_GET['generatecases']))
{
include_once("../functions/functions.operator.php");
//TODO: check here if attributes available for assigning sample variables
//if not - fail
$db->StartTrans();
@@ -113,7 +116,8 @@ if (isset($_GET['questionnaire_id']) && isset($_GET['sample']) && isset($_GET['
//add limesurvey attribute for each sample var record
$sql = "SELECT var,type
FROM sample_import_var_restrict
WHERE sample_import_id = '$sid'";
WHERE sample_import_id = '$sid'
ORDER BY var_id ASC";
$rs = $db->GetAll($sql);
@@ -127,17 +131,8 @@ if (isset($_GET['questionnaire_id']) && isset($_GET['sample']) && isset($_GET['
$fieldcontents.='attribute_'.$i.'='.$r['var']."\n";
$i++;
}
$dict = NewDataDictionary($db);
$sqlarray = $dict->ChangeTableSQL(LIME_PREFIX ."tokens_$lime_sid", $fields);
$execresult=$dict->ExecuteSQLArray($sqlarray, false);
$sql = "UPDATE " . LIME_PREFIX . "surveys
SET attributedescriptions = " . $db->qstr($fieldcontents) . "
WHERE sid='$lime_sid'";
$db->Execute($sql);
//generate one case for each sample record and set outcome to 41
//generate one case for each sample record and set outcome to 41
$sql = "SELECT sample_id
FROM sample
WHERE import_id = '$sid'";
@@ -146,7 +141,8 @@ if (isset($_GET['questionnaire_id']) && isset($_GET['sample']) && isset($_GET['
foreach($rs as $r)
{
set_time_limit(30);
set_time_limit(30);
//TODO : update add_case function to include attributes based on var_id ASC
add_case($r['sample_id'],$questionnaire_id,"NULL",$testing,41, true);
}

View File

@@ -96,16 +96,6 @@ function vqi($client_id,$questionnaire_id,$lime_sid,$uid)
$db->Execute($sql);
$rs = $db->GetAll("SELECT * FROM " . LIME_PREFIX . "survey_permissions WHERE `sid` = '$lime_sid' AND `uid` = '$uid'");
/* Add client questionnaire permissions to view Lime results + statistics and quotas, //preserve superadmin permissions */
if ($uid != 1 && empty($rs))
{
$sql = "INSERT INTO " . LIME_PREFIX . "survey_permissions (`sid`,`uid`,`permission`,`create_p`,`read_p`,`update_p`,`delete_p`,`import_p`,`export_p`)
VALUES ($lime_sid,$uid,'survey',0,1,0,0,0,0),($lime_sid,$uid,'statistics',0,1,0,0,0,0),($lime_sid,$uid,'quotas',0,1,0,0,0,0)";
$db->Execute($sql);
}
$db->CompleteTrans();
}
@@ -118,18 +108,6 @@ if (isset($_POST['submit']))
$sql = "DELETE FROM client_questionnaire
WHERE questionnaire_id IN ( SELECT questionnaire_id FROM questionnaire WHERE enabled = 1)";
$db->Execute($sql);
/*Currently disabled -> need to decide how to manage permissions set earlier*/
/* $questionnaires = $db->GetAll("SELECT lime_sid FROM questionnaire WHERE enabled = 1");
$clients = $db->GetAll("SELECT uid FROM client, " . LIME_PREFIX . "users WHERE `users_name` = `username`");
foreach($questionnaires as $q){
foreach($clients as $v){
$sql = "DELETE FROM " . LIME_PREFIX . "survey_permissions WHERE `uid` = {$v['uid']} AND `sid`={$q['lime_sid']} AND `uid` != 1";
$db->Execute($sql);
}
} */
/* - end - */
foreach ($_POST as $g => $v)
{
@@ -154,18 +132,6 @@ if (isset($_GET['delete']) && isset($_GET['uid']) && isset($_GET['uname']))
$db->StartTrans();
$sql = "DELETE FROM " . LIME_PREFIX . "templates_rights WHERE `uid` = '$uid' AND `uid` != 1";
$db->Execute($sql);
$sql = "DELETE FROM " . LIME_PREFIX . "survey_permissions WHERE `uid` = '$uid' AND `uid` != 1";
$db->Execute($sql);
$sql = "DELETE FROM " . LIME_PREFIX . "user_in_groups WHERE `uid` = '$uid' AND `uid` != 1";
$db->Execute($sql);
$sql = "DELETE FROM " . LIME_PREFIX . "users WHERE `uid` = '$uid' AND `uid` != 1";
$db->Execute($sql);
$sql = "DELETE FROM `client_questionnaire` WHERE `client_id` = '$client_id' ";
$db->Execute($sql);
@@ -182,15 +148,16 @@ if (isset($_GET['delete']) && isset($_GET['uid']) && isset($_GET['uname']))
}
$sql = "SELECT questionnaire_id,description, lime_sid
FROM questionnaire
WHERE enabled = 1
$sql = "SELECT q.questionnaire_id,q.description, q.lime_sid, r.entry_url
FROM questionnaire as q, remote as r
WHERE enabled = 1
AND q.remote_id = r.id
ORDER by questionnaire_id ASC";
$questionnaires = $db->GetAll($sql);
$sql = "SELECT client_id, CONCAT(firstName,' ', lastName ) as description, username, uid
FROM client, " . LIME_PREFIX . "users
FROM client, users
WHERE `users_name` = `username`
ORDER by client_id ASC";
@@ -293,7 +260,7 @@ print "<form action=\"\" method=\"post\" class=''><table class='table-bordered t
print "<tr><th>&emsp;" . T_("Username") . "&emsp;</th><th>&emsp;" . T_("Client") . "&emsp;</th>";
foreach($questionnaires as $q)
{
print "<th><a href=\"".LIME_URL."admin/admin.php?sid={$q['lime_sid']}&amp;action=surveysecurity\" title=\"". T_("NOTICE! Please, check your user righs to edit client permissions or contact your superviser.") ."\"class=\"btn btn-default btn-sm btn-lime\" >" . T_("Questionnaire permissions") . "</a>
print "<th><a href=\"{$q['entry_url']}/admin/surveypermission/sa/view/surveyid/{$q['lime_sid']}\" title=\"". T_("NOTICE! Please, check your user righs to edit client permissions or contact your superviser.") ."\"class=\"btn btn-default btn-sm btn-lime\" >" . T_("Questionnaire permissions") . "</a>
</br>&emsp;<a href=\"javascript:checkQid({$q['questionnaire_id']})\">{$q['description']}</a>
</th>";
}

View File

@@ -206,14 +206,15 @@ display_questionnaire_chooser($questionnaire_id,false,"form-inline col-lg-4 pull
if ($questionnaire_id)
{
$sql = "SELECT lime_sid
FROM questionnaire
WHERE questionnaire_id = $questionnaire_id";
$sql = "SELECT q.lime_sid, r.entry_url
FROM questionnaire as q, remote as r
WHERE q.questionnaire_id = $questionnaire_id
AND r.id = q.remote_id";
$ls = $db->GetRow($sql);
$lsid = $ls['lime_sid'];
print "&emsp;<a href='" . LIME_URL . "admin/admin.php?action=exportresults&amp;sid=$lsid' class='btn btn-default fa btn-lime'>". T_("Download data for this questionnaire via Limesurvey") . "</a></div>";
print "&emsp;<a href='" . $ls['entry_url'] . "/admin/responses/sa/index/surveyid/$lsid' class='btn btn-default fa btn-lime'>". T_("Download data for this questionnaire via Limesurvey") . "</a></div>";
print "<div class='form-group clearfix'><h3 class='col-sm-4 text-right'>" . T_("Please select a sample") . ":&emsp;</h3>";
$sample_import_id = false;
@@ -222,7 +223,6 @@ if ($questionnaire_id)
if ($sample_import_id)
{
print "&emsp;<a href='" .LIME_URL . "admin/admin.php?action=exportresults&amp;sid=$lsid&amp;quexsfilterinc=$questionnaire_id:$sample_import_id' class='btn btn-default fa btn-lime'>" . T_("Download data for this sample via Limesurvey") . "</a></div>";
//get sample vars
$sql = "SELECT sivr.var_id as value, sivr.var as description
FROM `sample_import_var_restrict` as sivr

View File

@@ -149,15 +149,15 @@ if ($questionnaire_id != false)
$sgqa = false;
if (isset($_GET['sgqa'])) $sgqa = $_GET['sgqa'];
$sql = "SELECT CONCAT( q.sid, 'X', q.gid, 'X', q.qid) AS value,
CONCAT( q.sid, 'X', q.gid, 'X', q.qid, '&ensp;->&ensp;' , CASE WHEN qo.question IS NULL THEN q.question ELSE CONCAT(qo.question,' : ',q.question) END) as description,
CASE WHEN CONCAT(q.sid, 'X', q.gid, 'X', q.qid) = '$sgqa' THEN 'selected=\'selected\'' ELSE '' END AS selected
FROM `" . LIME_PREFIX . "questions` AS q
LEFT JOIN `" . LIME_PREFIX . "questions` as qo ON (qo.qid = q.parent_qid)
WHERE q.sid = '$lime_sid'
ORDER BY CASE WHEN qo.question_order IS NULL THEN q.question_order ELSE qo.question_order + (q.question_order / 1000) END ASC";
/**
* Display functions
*/
include_once("../functions/functions.limesurvey.php");
$rs = $db->GetAll($sql);
$rs = lime_list_questions($questionnaire_id);
//TODO: Test output of listing questions
var_dump($rs); die();
for ($i=0; $i<count($rs); $i++)
{

View File

@@ -191,17 +191,14 @@ if ($questionnaire_id != false)
$sgqa = false;
if (isset($_GET['sgqa'])) $sgqa = $_GET['sgqa'];
$sql = "SELECT CONCAT( lq.sid, 'X', lq.gid, 'X', CASE WHEN lq.parent_qid = 0 THEN lq.qid ELSE CONCAT(lq.parent_qid, lq.title) END) as value,
CONCAT( lq.sid, 'X', lq.gid, 'X', CASE WHEN lq.parent_qid = 0 THEN lq.qid ELSE CONCAT(lq.parent_qid, lq.title) END, '&ensp;->&ensp;' , CASE WHEN lq.parent_qid = 0 THEN lq.question ELSE CONCAT(lq2.question, ' : ', lq.question) END) as description,
CASE WHEN CONCAT( lq.sid, 'X', lq.gid, 'X', CASE WHEN lq.parent_qid = 0 THEN lq.qid ELSE CONCAT(lq.parent_qid, lq.title) END) = '$sgqa' THEN 'selected=\'selected\'' ELSE '' END AS selected
FROM `" . LIME_PREFIX . "questions` AS lq
LEFT JOIN `" . LIME_PREFIX . "questions` AS lq2 ON ( lq2.qid = lq.parent_qid )
JOIN `" . LIME_PREFIX . "groups` as g ON (g.gid = lq.gid)
WHERE lq.sid = '$lime_sid'
ORDER BY CASE WHEN lq2.question_order IS NULL THEN lq.question_order ELSE lq2.question_order + (lq.question_order / 1000) END ASC";
display_chooser($db->GetAll($sql),"sgqa","sgqa",true,"questionnaire_id=$questionnaire_id&amp;sample_import_id=$sample_import_id",true,true,false,true,"form-group");
include_once("../functions/functions.limesurvey.php");
$rs = lime_list_questions($questionnaire_id);
var_dump($rs); die(); //TODO: make sure query below works with this function
display_chooser($rs,"sgqa","sgqa",true,"questionnaire_id=$questionnaire_id&amp;sample_import_id=$sample_import_id",true,true,false,true,"form-group");
print "<div class='clearfix'></div>";
@@ -244,11 +241,11 @@ if ($questionnaire_id != false)
$qid = explode("X", $sgqa);
$qid = $qid[2];
$sql = "SELECT CONCAT('<b class=\'fa\'>&emsp;', l.code , '</b>')as code,l.answer as title
FROM `" . LIME_PREFIX . "answers` as l
WHERE l.qid = '$qid'";
$rs = $db->GetAll($sql);
$rs = lime_list_answeroptions($questionnaire_id,$sgqa);
//TODO: Check this result
var_dump($rs); die();
if (!isset($rs) || empty($rs))
print "<p class='well text-info'>" . T_("No labels defined for this question") ."</p>";

View File

@@ -92,6 +92,70 @@ function limerpc_init_qid($qid)
}
function lime_list_questions($qid)
{
global $limeKey;
global $limeRPC;
$ret = false;
$lime_id = limerpc_init_qid($qid);
if ($lime_id !== false) {
$q = $limeRPC->list_questions($limeKey,$lime_id);
if (!isset($q['status'])) {
$ret = $q;
}
}
return $ret;
}
function lime_list_answeroptions($qid,$qcode)
{
global $limeKey;
global $limeRPC;
$ret = false;
$q = lime_list_questions($qid);
if ($q !== false)
{
foreach($q as $qid => $val) {
if ($val['title'] == $qcode) {
$qp = $limeRPC->get_question_properties($limeKey,$qid,array('answeroptions'));
if (!isset($qp['status'])) {
$ret = $qp;
}
break;
}
}
}
return $ret;
}
/** Get completed responses as an array based on the case_id
*/
function lime_get_responses_by_case($case_id,$fields)
{
}
/** Get completd responses as an array based on the questionnaire
*/
function lime_get_responses_by_questionnaire($qid,$fields)
{
}
function lime_add_token($qid,$params)
{
global $limeKey;