Minor - adding api_get_cidreq + avoiding PHP notices see BT#5559

skala
Julio Montoya 13 years ago
parent 5d1af03439
commit 7c543328c3
  1. 28
      main/survey/survey.lib.php
  2. 6
      main/survey/survey_invite.php

@ -3816,7 +3816,8 @@ class SurveyUtil {
} }
$new_user = false; // User not already invited $new_user = false; // User not already invited
// Store the invitation if user_id not in $already_invited['course_users'] OR email is not in $already_invited['additional_users'] // Store the invitation if user_id not in $already_invited['course_users'] OR email is not in $already_invited['additional_users']
$addit_users_array = explode(';', $already_invited['additional_users']); $addit_users_array = isset($already_invited['additional_users']) && !empty($already_invited['additional_users']) ? explode(';', $already_invited['additional_users']) : array();
$my_alredy_invited = ($already_invited['course_users'] == null) ? array() : $already_invited['course_users']; $my_alredy_invited = ($already_invited['course_users'] == null) ? array() : $already_invited['course_users'];
if ((is_numeric($value) && !in_array($value, $my_alredy_invited)) || (!is_numeric($value) && !in_array($value, $addit_users_array))) { if ((is_numeric($value) && !in_array($value, $my_alredy_invited)) || (!is_numeric($value) && !in_array($value, $addit_users_array))) {
$new_user = true; $new_user = true;
@ -3943,7 +3944,7 @@ class SurveyUtil {
* @author Julio Montoya, adding c_id fixes - Dec 2012 * @author Julio Montoya, adding c_id fixes - Dec 2012
* @version January 2007 * @version January 2007
*/ */
static function get_invited_users($survey_code, $course_code = '') { static function get_invited_users($survey_code, $course_code = '', $session_id = 0) {
if (!empty($course_code)) { if (!empty($course_code)) {
$course_info = api_get_course_info($course_code); $course_info = api_get_course_info($course_code);
$course_id = $course_info['real_id']; $course_id = $course_info['real_id'];
@ -3951,6 +3952,10 @@ class SurveyUtil {
$course_id = api_get_course_int_id(); $course_id = api_get_course_int_id();
} }
if (empty($session_id)) {
$session_id = api_get_session_id();
}
$table_survey_invitation = Database :: get_course_table(TABLE_SURVEY_INVITATION); $table_survey_invitation = Database :: get_course_table(TABLE_SURVEY_INVITATION);
$table_user = Database :: get_main_table(TABLE_MAIN_USER); $table_user = Database :: get_main_table(TABLE_MAIN_USER);
@ -3958,20 +3963,23 @@ class SurveyUtil {
$order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname' : ' ORDER BY lastname, firstname'; $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname' : ' ORDER BY lastname, firstname';
$sql = "SELECT user $sql = "SELECT user
FROM $table_survey_invitation as table_invitation FROM $table_survey_invitation as table_invitation
WHERE table_invitation.c_id = $course_id AND survey_code='".Database::escape_string($survey_code)."'"; WHERE table_invitation.c_id = $course_id AND
survey_code='".Database::escape_string($survey_code)."' AND
session_id = $session_id
";
$defaults = array(); $defaults = array();
$defaults['course_users'] = array(); $defaults['course_users'] = array();
$defaults['additional_users'] = ''; $defaults['additional_users'] = array();
$result = Database::query($sql); $result = Database::query($sql);
while ($row = Database::fetch_array($result)) { while ($row = Database::fetch_array($result)) {
if (is_numeric($row['user'])) { if (is_numeric($row['user'])) {
$defaults['course_users'][] = $row['user']; $defaults['course_users'][] = $row['user'];
} else { } else {
if (empty($defaults['additional_users'])) { if (!empty($row['user'])) {
$defaults['additional_users'] = $row['user']; $defaults['additional_users'][] = $row['user'];
} else {
$defaults['additional_users'] .= ';'.$row['user'];
} }
} }
} }
@ -3987,6 +3995,10 @@ class SurveyUtil {
$defaults['course_users'] = $fixed_users; $defaults['course_users'] = $fixed_users;
} }
if (!empty($defaults['additional_users'])) {
$defaults['additional_users'] = implode(';', $defaults['additional_users']);
}
error_log(print_r($defaults, 1));
return $defaults; return $defaults;
} }

@ -94,14 +94,14 @@ if ($survey_data['invited'] > 0 && !isset($_POST['submit'])) {
} }
// Building the form for publishing the survey // Building the form for publishing the survey
$form = new FormValidator('publish_form', 'post', api_get_self().'?survey_id='.$survey_id); $form = new FormValidator('publish_form', 'post', api_get_self().'?survey_id='.$survey_id.'&'.api_get_cidReq());
$form->addElement('header', '', $tool_name); $form->addElement('header', '', $tool_name);
// Course users // Course users
$complete_user_list = CourseManager :: get_user_list_from_course_code($_course['id'], $_SESSION['id_session'], '', api_sort_by_first_name() ? 'ORDER BY firstname' : 'ORDER BY lastname'); $complete_user_list = CourseManager::get_user_list_from_course_code(api_get_course_id(), api_get_session_id(), '', api_sort_by_first_name() ? 'ORDER BY firstname' : 'ORDER BY lastname');
$possible_users = array(); $possible_users = array();
foreach ($complete_user_list as $index => & $user) { foreach ($complete_user_list as & $user) {
$possible_users[$user['user_id']] = api_get_person_name($user['firstname'], $user['lastname']); $possible_users[$user['user_id']] = api_get_person_name($user['firstname'], $user['lastname']);
} }
$users = $form->addElement('advmultiselect', 'course_users', get_lang('CourseUsers'), $possible_users, 'style="width: 250px; height: 200px;"'); $users = $form->addElement('advmultiselect', 'course_users', get_lang('CourseUsers'), $possible_users, 'style="width: 250px; height: 200px;"');

Loading…
Cancel
Save