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}\" >" . "{$icontext}" . "
  • \n"; @@ -290,12 +290,12 @@ $action!='vvimport' && $action!='vvexport' && $action!='exportresults') . "title='{$icontext2}' accesskey='d'>" . "{$icontext}" . ""; } 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 = '