diff --git a/functions/functions.operator.php b/functions/functions.operator.php
index 05fc2652..181dcb57 100644
--- a/functions/functions.operator.php
+++ b/functions/functions.operator.php
@@ -1337,7 +1337,7 @@ function get_respondentselection_url($operator_id,$escape = true,$interface2 = f
$sid = get_limesurvey_id($operator_id,true); //true for RS
if ($sid != false && !empty($sid) && $sid != 'NULL')
{
- $url = LIME_URL . "index.php?interviewer=interviewer" . $amp . "loadall=reload" . $amp . "sid=$sid" . $amp . "token=$call_id" . $amp . "lang=" . DEFAULT_LOCALE;
+ $url = LIME_URL . "index.php?interviewer=$operator_id" . $amp . "loadall=reload" . $amp . "sid=$sid" . $amp . "token=$call_id" . $amp . "lang=" . DEFAULT_LOCALE;
}
else
{
@@ -1387,7 +1387,7 @@ function get_limesurvey_url($operator_id)
$token = $db->GetOne($sql);
$sid = get_limesurvey_id($operator_id);
- $url = LIME_URL . "index.php?interviewer=interviewer&loadall=reload&sid=$sid&token=$token&lang=" . DEFAULT_LOCALE;
+ $url = LIME_URL . "index.php?interviewer=$operator_id&loadall=reload&sid=$sid&token=$token&lang=" . DEFAULT_LOCALE;
$questionnaire_id = get_questionnaire_id($operator_id);
//get prefills
diff --git a/include/limesurvey/admin/admin.php b/include/limesurvey/admin/admin.php
index 103eea80..2143feb0 100644
--- a/include/limesurvey/admin/admin.php
+++ b/include/limesurvey/admin/admin.php
@@ -254,9 +254,17 @@ if(isset($_SESSION['loginID']))
}
elseif ($action == 'previewgroup')
{
- $_SESSION['interviewer'] = true;
- require_once('../index.php');
- exit;
+ $interviewer=returnglobal('interviewer');
+ if (empty($interviewer))
+ {
+ $interviewer = false;
+ }
+ if (!isset($_SESSION['interviewer'])) {
+ $_SESSION['interviewer'] = $interviewer;
+ }
+
+ require_once('../index.php');
+ exit;
}
elseif ($action == 'showlogicfile')
diff --git a/include/limesurvey/admin/html.php b/include/limesurvey/admin/html.php
index cfee563e..ec069712 100644
--- a/include/limesurvey/admin/html.php
+++ b/include/limesurvey/admin/html.php
@@ -281,7 +281,7 @@ $action!='vvimport' && $action!='vvexport' && $action!='exportresults')
if (count($tmp_survlangs) == 1)
{
$surveysummary .= "
"
+ . $publicurl."/index.php?sid={$surveyid}&interviewer=" . $_SESSION['interviewer'] . "&newtest=Y&lang={$baselang}', '_blank')\" title=\"{$icontext2}\" >"
. "
"
. "\n";
@@ -290,12 +290,12 @@ $action!='vvimport' && $action!='vvexport' && $action!='exportresults')
. "title='{$icontext2}' accesskey='d'>"
. "
"
. "\n";
- $surveysummary .= "- "
+ $surveysummary .= "
- "
. "
$icontext "
diff --git a/include/limesurvey/admin/translate_functions.php b/include/limesurvey/admin/translate_functions.php
index 683d5446..69f676ba 100644
--- a/include/limesurvey/admin/translate_functions.php
+++ b/include/limesurvey/admin/translate_functions.php
@@ -102,7 +102,7 @@ function menuSeparator()
}
if (count(GetAdditionalLanguagesFromSurveyID($surveyid)) == 0)
{
- $adminmenu .= menuItem($menutext, $menutext2, "do.png", "$publicurl/index.php?sid=$surveyid&interviewer=interviewer&newtest=Y&lang=$baselang");
+ $adminmenu .= menuItem($menutext, $menutext2, "do.png", "$publicurl/index.php?sid=$surveyid&interviewer=" . $_SESSION['interviewer'] . "&newtest=Y&lang=$baselang");
}
else
{
@@ -123,7 +123,7 @@ function menuSeparator()
{
$adminmenu .= "- ".getLanguageNameFromCode($tmp_lang,false)."
";
+ ."interviewer=" . $_SESSION['interviewer'] . "&newtest=Y&lang={$tmp_lang}'>".getLanguageNameFromCode($tmp_lang,false)." ";
}
$adminmenu .= "
";
}
diff --git a/include/limesurvey/common_functions.php b/include/limesurvey/common_functions.php
index f00f1432..72e6ce8a 100644
--- a/include/limesurvey/common_functions.php
+++ b/include/limesurvey/common_functions.php
@@ -4227,18 +4227,15 @@ function getHeader($meta = false)
$js_header_includes = array_unique($js_header_includes);
$css_header_includes = array_unique($css_header_includes);
- $interviewer=returnglobal('interviewer');
- if (!empty($interviewer) || (isset($_SESSION['interviewer']) && $_SESSION['interviewer'] == true))
- {
- $interviewer = true;
- $_SESSION['interviewer'] = true;
- }
- else
- {
- $interviewer = false;
- }
-
- if ($interviewer)
+ $interviewer=returnglobal('interviewer');
+ if (empty($interviewer))
+ {
+ $interviewer = false;
+ }
+ if (!isset($_SESSION['interviewer'])) {
+ $_SESSION['interviewer'] = $interviewer;
+ }
+ if ($SESSION['interviewer'])
{
$js_header_includes[] = '/../../js/popup.js'; //queXS Addition
include_once("quexs.php");
diff --git a/include/limesurvey/group.php b/include/limesurvey/group.php
index 16cdf578..af2cba9b 100644
--- a/include/limesurvey/group.php
+++ b/include/limesurvey/group.php
@@ -23,7 +23,7 @@ $LEMskipReprocessing=false; // true if used GetLastMoveResult to avoid generatio
$surveyMode=quexs_get_survey_mode($clienttoken);
-if ($interviewer || $surveyMode === false)
+if ($_SESSION['interviewer'] || $surveyMode === false)
{
switch ($thissurvey['format'])
{
@@ -467,7 +467,7 @@ else
//queXS Addition
include_once("quexs.php");
- if ($interviewer)
+ if ($_SESSION['interviewer'])
{
$quexs_url = get_start_interview_url();
$url = str_replace("{STARTINTERVIEWURL}", $quexs_url, $url);
diff --git a/include/limesurvey/index.php b/include/limesurvey/index.php
index 1365b185..c17f6be6 100644
--- a/include/limesurvey/index.php
+++ b/include/limesurvey/index.php
@@ -130,16 +130,17 @@ if ( $embedded && $embedded_inc != '' )
//queXS Addition
//see who is doing this survey - an interviewer or the respondent directly
-$interviewer=returnglobal('interviewer');
-if (!empty($interviewer) || (isset($_SESSION['interviewer']) && $_SESSION['interviewer'] == true))
-{
- $interviewer = true;
- $_SESSION['interviewer'] = true;
-}
-else
-{
- $interviewer = false;
-}
+//
+
+ $interviewer=returnglobal('interviewer');
+ if (empty($interviewer))
+ {
+ $interviewer = false;
+ }
+ if (!isset($_SESSION['interviewer'])) {
+ $_SESSION['interviewer'] = $interviewer;
+ }
+
@@ -507,7 +508,7 @@ else
$qtmp = quexs_get_template($clienttoken);
-if ($interviewer || $qtmp === false)
+if ($_SESSION['interviewer'] || $qtmp === false)
{
//SET THE TEMPLATE DIRECTORY
if (!$thissurvey['templatedir'])
@@ -2656,6 +2657,8 @@ function check_quota($checkaction,$surveyid)
WHERE ".implode(' AND ',$querycond)." "."
AND s.submitdate IS NOT NULL";
+ error_log($querysel);
+
$result = db_execute_assoc($querysel) or safe_die($connect->ErrorMsg()); //Checked
$quota_check = $result->FetchRow();
diff --git a/include/limesurvey/qanda.php b/include/limesurvey/qanda.php
index 6493af1a..40a6b109 100644
--- a/include/limesurvey/qanda.php
+++ b/include/limesurvey/qanda.php
@@ -64,17 +64,16 @@ function quexs_submit_on_click($do = true)
$r = "; $('.submit').css('display', ''); ";
- $interviewer=returnglobal('interviewer');
- if (!empty($interviewer) || (isset($_SESSION['interviewer']) && $_SESSION['interviewer'] == true))
- {
- $interviewer = true;
- }
- else
- {
- $interviewer = false;
- }
-
- if (LIME_AUTO_ADVANCE && $do && $interviewer)
+ $interviewer=returnglobal('interviewer');
+ if (empty($interviewer))
+ {
+ $interviewer = false;
+ }
+ if (!isset($_SESSION['interviewer'])) {
+ $_SESSION['interviewer'] = $interviewer;
+ }
+
+ if (LIME_AUTO_ADVANCE && $do && $_SESSION['interviewer'])
{
$r .= " document.limesurvey.move.value = '";
if (isset($_SESSION['step']) && $_SESSION['step'] && ($_SESSION['step'] == $_SESSION['totalsteps']))
diff --git a/include/limesurvey/quexs.php b/include/limesurvey/quexs.php
index b1db8821..599b1d7e 100644
--- a/include/limesurvey/quexs.php
+++ b/include/limesurvey/quexs.php
@@ -586,7 +586,7 @@ function get_respondent_variable($variable,$respondent_id)
*/
function get_operator_id()
{
- if (!isset($_SERVER['PHP_AUTH_USER'])) return false;
+ if (!isset($_SESSION['interviewer'])) return false;
$db = newADOConnection(DB_TYPE);
$db->Connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);
@@ -595,7 +595,7 @@ function get_operator_id()
$sql = "SELECT operator_id
FROM operator
- WHERE username = '{$_SERVER['PHP_AUTH_USER']}'
+ WHERE operator_id = '{$_SESSION['interviewer']}'
AND enabled = 1";
$o = $db->GetRow($sql);
@@ -859,7 +859,7 @@ function get_respondent_selection_url()
{
$sid = get_limesurvey_id($operator_id,true); //true for RS
if ($sid != false && !empty($sid) && $sid != 'NULL')
- $url = LIME_URL . "index.php?interviewer=interviewer&loadall=reload&sid=$sid&token=$call_id&lang=" . DEFAULT_LOCALE;
+ $url = LIME_URL . "index.php?interviewer=" . $_SESSION['interviewer'] . "&loadall=reload&sid=$sid&token=$call_id&lang=" . DEFAULT_LOCALE;
else
$url = 'rs_intro.php';
}
@@ -919,7 +919,7 @@ function get_start_interview_url()
$token = $db->GetOne($sql);
$sid = get_limesurvey_id($operator_id);
- $url = LIME_URL . "index.php?interviewer=interviewer&loadall=reload&sid=$sid&token=$token&lang=" . DEFAULT_LOCALE;
+ $url = LIME_URL . "index.php?interviewer=" . $_SESSION['interviewer'] . "&loadall=reload&sid=$sid&token=$token&lang=" . DEFAULT_LOCALE;
$questionnaire_id = get_questionnaire_id($operator_id);
//get prefills
diff --git a/include/limesurvey/replacements.php b/include/limesurvey/replacements.php
index aecd4ca8..15403c3f 100644
--- a/include/limesurvey/replacements.php
+++ b/include/limesurvey/replacements.php
@@ -50,23 +50,20 @@ function templatereplace($line, $replacements=array(), $anonymized=false, $quest
$_templateurl = sGetTemplateURL($_templatename) . '/';
$templatedir = sgetTemplatePath($_templatename);
- $interviewer=returnglobal('interviewer');
- if (!empty($interviewer) || (isset($_SESSION['interviewer']) && $_SESSION['interviewer'] == true))
- {
- $interviewer = true;
- $_SESSION['interviewer'] = true;
- }
- else
- {
- $interviewer = false;
- }
-
- if (stripos($line, ""))
+ $interviewer=returnglobal('interviewer');
+ if (empty($interviewer))
+ {
+ $interviewer = false;
+ }
+ if (!isset($_SESSION['interviewer'])) {
+ $_SESSION['interviewer'] = $interviewer;
+ }
+ if (stripos($line, ""))
{
//queXS Addition
$textfocus = "";
- if ($interviewer)
+ if ($_SESSION['interviewer'])
{
$textfocus =
'