Survey Report: hide user info when survey is anonimous

1.9.x
César Perales 12 years ago
parent c9556c4cbe
commit ed61cafbc0
  1. 3
      main/inc/ajax/course.ajax.php
  2. 16
      main/inc/lib/sessionmanager.lib.php
  3. 5
      main/mySpace/index.php

@ -184,7 +184,7 @@ switch ($action) {
{
$survey = Database :: get_course_table(TABLE_SURVEY);
$sql = "SELECT survey_id as id, title
$sql = "SELECT survey_id as id, title, anonymous
FROM $survey
WHERE c_id = %d
AND session_id = %d
@ -194,6 +194,7 @@ switch ($action) {
$result = Database::query($sql_query);
while ($survey = Database::fetch_assoc($result))
{
$survey['title'] .= ($survey['anonymous'] == 1) ? ' (' . get_lang('Anonymous') . ')': '';
$data[] = array('id' => $survey['id'], 'text' => strip_tags(html_entity_decode($survey['title'])));
}
if (!empty($data))

@ -661,21 +661,25 @@ class SessionManager
//Get survey questions
$questions = survey_manager::get_questions($surveyId, $courseId);
//Survey is anonymous?
$result = Database::query(sprintf("SELECT anonymous FROM $c_survey WHERE survey_id = %d", $surveyId));
$row = Database::fetch_array($result);
$anonymous = ($row['anonymous'] == 1) ? true : false;
$table = array();
foreach ($users as $user)
{
$data = array(
'lastname' => $user[1],
'firstname' => $user[2],
'username' => $user[3],
'lastname' => ($anonymous ? '***' : $user[1]),
'firstname' => ($anonymous ? '***' : $user[2]),
'username' => ($anonymous ? '***' : $user[3]),
);
//Get questions by user
$sql = "SELECT sa.question_id, sa.option_id, sqo.option_text, sq.type
FROM $c_survey_answer sa
INNER JOIN $c_survey_question sq ON sq.question_id = sa.question_id "
//." INNER JOIN $c_survey s ON sq.survey_id = s.survey_id "
."
INNER JOIN $c_survey_question sq ON sq.question_id = sa.question_id
LEFT JOIN $c_survey_question_option sqo ON sqo.c_id = sa.c_id
AND sqo.question_id = sq.question_id
AND sqo.question_option_id = sa.option_id

@ -687,8 +687,9 @@ if ($is_platform_admin && in_array($view, array('admin')) && $display != 'yourst
if (!empty($surveyId)) {
$course = api_get_course_info_by_id($courseId);
$surveyList = array();
$exerciseInfo = survey_manager::get_survey($surveyId, 0, $course['code']);
$surveyList[] = array('id' => $exerciseInfo['survey_id'], 'text' => strip_tags(html_entity_decode($exerciseInfo['title'])));
$surveyInfo = survey_manager::get_survey($surveyId, 0, $course['code']);
$surveyInfo['title'] .= ($surveyInfo['anonymous'] == 1) ? ' (' . get_lang('Anonymous') . ')': '';
$surveyList[] = array('id' => $surveyInfo['survey_id'], 'text' => strip_tags(html_entity_decode($surveyInfo['title'])));
}
$sessionFilter->addElement('select_ajax', 'survey_name', get_lang('SearchSurvey'), null, array('url' => $url, 'defaults' => $surveyList, 'width' => '400px'));

Loading…
Cancel
Save