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

Limesurvey to get template, mode and endurl from queXS when running in self complete mode

This commit is contained in:
Adam Zammit
2013-02-20 16:00:28 +11:00
parent bc56e10311
commit 8749df9a0c
3 changed files with 68 additions and 3 deletions

View File

@@ -15,6 +15,7 @@
if (!isset($homedir) || isset($_REQUEST['$homedir'])) {die("Cannot run this script directly");} if (!isset($homedir) || isset($_REQUEST['$homedir'])) {die("Cannot run this script directly");}
require_once("save.php"); // for supporting functions only require_once("save.php"); // for supporting functions only
include_once("quexs.php"); //queXS funcitons
// $LEMdebugLevel - customizable debugging for Lime Expression Manager // $LEMdebugLevel - customizable debugging for Lime Expression Manager
$LEMdebugLevel=0; // LEM_DEBUG_TIMING; // (LEM_DEBUG_TIMING + LEM_DEBUG_VALIDATION_SUMMARY + LEM_DEBUG_VALIDATION_DETAIL); $LEMdebugLevel=0; // LEM_DEBUG_TIMING; // (LEM_DEBUG_TIMING + LEM_DEBUG_VALIDATION_SUMMARY + LEM_DEBUG_VALIDATION_DETAIL);
@@ -37,7 +38,7 @@ if ($interviewer)
} }
} }
else else
$surveyMode='survey'; $surveyMode=quexs_get_survey_mode($clienttoken);
$radix=getRadixPointData($thissurvey['surveyls_numberformat']); $radix=getRadixPointData($thissurvey['surveyls_numberformat']);
$radix = $radix['seperator']; $radix = $radix['seperator'];

View File

@@ -21,6 +21,8 @@ require_once(dirname(__FILE__).'/classes/core/startup.php');
require_once(dirname(__FILE__).'/config-defaults.php'); require_once(dirname(__FILE__).'/config-defaults.php');
require_once(dirname(__FILE__).'/common.php'); require_once(dirname(__FILE__).'/common.php');
require_once(dirname(__FILE__).'/classes/core/language.php'); require_once(dirname(__FILE__).'/classes/core/language.php');
include_once("quexs.php");
@ini_set('session.gc_maxlifetime', $sessionlifetime); @ini_set('session.gc_maxlifetime', $sessionlifetime);
$loadname=returnglobal('loadname'); $loadname=returnglobal('loadname');
@@ -541,7 +543,9 @@ if ($interviewer)
} }
} }
else else
$thistpl=sGetTemplatePath('sherpa'); {
$thistpl=quexs_get_template($clienttoken);
}

View File

@@ -36,6 +36,55 @@
require_once(dirname(__FILE__).'/../../config.inc.php'); require_once(dirname(__FILE__).'/../../config.inc.php');
/**
* Template for the self completion user
*
* @param string $clienttoken The token
*
* @return string The limesurvey template name
* @author Adam Zammit <adam.zammit@acspri.org.au>
* @since 2013-02-20
*/
function quexs_get_template($clienttoken)
{
if (empty($clienttoken)) return 'default';
$db = newADOConnection(DB_TYPE);
$db->Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$db->SetFetchMode(ADODB_FETCH_ASSOC);
$sql = "SELECT q.lime_template
FROM questionnaire as q, `case` as c
WHERE q.questionnaire_id = c.questionnaire_id
AND c.token = '$clienttoken'";
return $db->GetOne($sql);
}
/**
* Mode of survey completion
*
* @param string $clienttoken The token
*
* @return The limesurvey mode
* @author Adam Zammit <adam.zammit@acspri.org.au>
* @since 2013-02-20
*/
function quexs_get_survey_mode($clienttoken)
{
$db = newADOConnection(DB_TYPE);
$db->Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$db->SetFetchMode(ADODB_FETCH_ASSOC);
$sql = "SELECT q.lime_mode
FROM questionnaire as q, `case` as c
WHERE q.questionnaire_id = c.questionnaire_id
AND c.token = '$clienttoken'";
return $db->GetOne($sql);
}
/** /**
* Set the case as completed by respondent * Set the case as completed by respondent
* *
@@ -759,7 +808,18 @@ function get_end_interview_url($token = "")
if ($token == "") if ($token == "")
return QUEXS_URL . "rs_project_end.php"; return QUEXS_URL . "rs_project_end.php";
else else
return "http://www.google.com.au"; {
$db = newADOConnection(DB_TYPE);
$db->Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$db->SetFetchMode(ADODB_FETCH_ASSOC);
$sql = "SELECT q.lime_endurl
FROM questionnaire as q, `case` as c
WHERE c.token = '$token'
AND c.questionnaire_id = q.questionnaire_id";
return $db->GetOne($sql);
}
} }
/** /**