| @@ 707-726 (lines=20) @@ | ||
| 704 | * @param int $limit |
|
| 705 | * @return array |
|
| 706 | */ |
|
| 707 | public function searchByField($tag, $field_id, $limit = 10) |
|
| 708 | { |
|
| 709 | $field_id = intval($field_id); |
|
| 710 | $limit = intval($limit); |
|
| 711 | $tag = Database::escape_string($tag); |
|
| 712 | $sql = "SELECT DISTINCT id, option_display_text |
|
| 713 | FROM {$this->table} |
|
| 714 | WHERE |
|
| 715 | field_id = '".$field_id."' AND |
|
| 716 | option_value LIKE '%$tag%' |
|
| 717 | ORDER BY option_value |
|
| 718 | LIMIT 0, $limit |
|
| 719 | "; |
|
| 720 | $result = Database::query($sql); |
|
| 721 | $values = array(); |
|
| 722 | if (Database::num_rows($result)) { |
|
| 723 | $values = Database::store_result($result, 'ASSOC'); |
|
| 724 | } |
|
| 725 | ||
| 726 | return $values; |
|
| 727 | } |
|
| 728 | ||
| 729 | ||
| @@ 647-661 (lines=15) @@ | ||
| 644 | * @param string $course_code The course (default = current course) |
|
| 645 | * @return array |
|
| 646 | */ |
|
| 647 | public static function get_categories($course_code = null) |
|
| 648 | { |
|
| 649 | $course_info = api_get_course_info($course_code); |
|
| 650 | $course_id = $course_info['real_id']; |
|
| 651 | $table_group_cat = Database :: get_course_table(TABLE_GROUP_CATEGORY); |
|
| 652 | $sql = "SELECT * FROM $table_group_cat |
|
| 653 | WHERE c_id = $course_id |
|
| 654 | ORDER BY display_order"; |
|
| 655 | $res = Database::query($sql); |
|
| 656 | $cats = array (); |
|
| 657 | while ($cat = Database::fetch_array($res)) { |
|
| 658 | $cats[] = $cat; |
|
| 659 | } |
|
| 660 | return $cats; |
|
| 661 | } |
|
| 662 | ||
| 663 | /** |
|
| 664 | * Get a group category |
|
| @@ 4106-4122 (lines=17) @@ | ||
| 4103 | * @author Patrick Cool <[email protected]>, Ghent University |
|
| 4104 | * @version September 2007 |
|
| 4105 | */ |
|
| 4106 | public static function get_invitations($survey_code) |
|
| 4107 | { |
|
| 4108 | $course_id = api_get_course_int_id(); |
|
| 4109 | // Database table definition |
|
| 4110 | $table_survey_invitation = Database :: get_course_table(TABLE_SURVEY_INVITATION); |
|
| 4111 | ||
| 4112 | $sql = "SELECT * FROM $table_survey_invitation |
|
| 4113 | WHERE |
|
| 4114 | c_id = $course_id AND |
|
| 4115 | survey_code = '".Database::escape_string($survey_code)."'"; |
|
| 4116 | $result = Database::query($sql); |
|
| 4117 | $return = array(); |
|
| 4118 | while ($row = Database::fetch_array($result)) { |
|
| 4119 | $return[$row['user']] = $row; |
|
| 4120 | } |
|
| 4121 | return $return; |
|
| 4122 | } |
|
| 4123 | ||
| 4124 | /** |
|
| 4125 | * This function displays the form for searching a survey |
|
| @@ 1670-1686 (lines=17) @@ | ||
| 1667 | * |
|
| 1668 | * @return array |
|
| 1669 | */ |
|
| 1670 | public static function getAllExerciseEventByExeId($exe_id) |
|
| 1671 | { |
|
| 1672 | $table_track_attempt = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ATTEMPT); |
|
| 1673 | $exe_id = intval($exe_id); |
|
| 1674 | $list = array(); |
|
| 1675 | ||
| 1676 | $sql = "SELECT * FROM $table_track_attempt |
|
| 1677 | WHERE exe_id = $exe_id |
|
| 1678 | ORDER BY position"; |
|
| 1679 | $res_question = Database::query($sql); |
|
| 1680 | if (Database::num_rows($res_question)) { |
|
| 1681 | while ($row = Database::fetch_array($res_question, 'ASSOC')) { |
|
| 1682 | $list[$row['question_id']][] = $row; |
|
| 1683 | } |
|
| 1684 | } |
|
| 1685 | return $list; |
|
| 1686 | } |
|
| 1687 | ||
| 1688 | /** |
|
| 1689 | * |
|
| @@ 1621-1640 (lines=20) @@ | ||
| 1618 | * |
|
| 1619 | * @return array |
|
| 1620 | */ |
|
| 1621 | public static function get_all_exercises_from_lp($lp_id, $course_id) |
|
| 1622 | { |
|
| 1623 | $lp_item_table = Database :: get_course_table(TABLE_LP_ITEM); |
|
| 1624 | $course_id = intval($course_id); |
|
| 1625 | $lp_id = intval($lp_id); |
|
| 1626 | $sql = "SELECT * FROM $lp_item_table |
|
| 1627 | WHERE |
|
| 1628 | c_id = $course_id AND |
|
| 1629 | lp_id = '".$lp_id."' AND |
|
| 1630 | item_type = 'quiz' |
|
| 1631 | ORDER BY parent_item_id, display_order"; |
|
| 1632 | $res = Database::query($sql); |
|
| 1633 | ||
| 1634 | $my_exercise_list = array(); |
|
| 1635 | while ($row = Database::fetch_array($res, 'ASSOC')) { |
|
| 1636 | $my_exercise_list[] = $row; |
|
| 1637 | } |
|
| 1638 | ||
| 1639 | return $my_exercise_list; |
|
| 1640 | } |
|
| 1641 | ||
| 1642 | /** |
|
| 1643 | * This function gets the comments of an exercise |
|
| @@ 5633-5649 (lines=17) @@ | ||
| 5630 | * @author Julio Montoya <[email protected]> |
|
| 5631 | * @return int user id |
|
| 5632 | */ |
|
| 5633 | function api_get_access_url_from_user($user_id) { |
|
| 5634 | $user_id = intval($user_id); |
|
| 5635 | $table_url_rel_user = Database :: get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); |
|
| 5636 | $table_url = Database :: get_main_table(TABLE_MAIN_ACCESS_URL); |
|
| 5637 | $sql = "SELECT access_url_id |
|
| 5638 | FROM $table_url_rel_user url_rel_user |
|
| 5639 | INNER JOIN $table_url u |
|
| 5640 | ON (url_rel_user.access_url_id = u.id) |
|
| 5641 | WHERE user_id = ".intval($user_id); |
|
| 5642 | $result = Database::query($sql); |
|
| 5643 | $url_list = array(); |
|
| 5644 | while ($row = Database::fetch_array($result, 'ASSOC')) { |
|
| 5645 | $url_list[] = $row['access_url_id']; |
|
| 5646 | } |
|
| 5647 | return $url_list; |
|
| 5648 | } |
|
| 5649 | ||
| 5650 | /** |
|
| 5651 | * Gets the status of a user in a course |
|
| 5652 | * @param int $user_id |
|
| @@ 7788-7811 (lines=24) @@ | ||
| 7785 | * |
|
| 7786 | * @return array |
|
| 7787 | */ |
|
| 7788 | public static function getCoursesInSession($sessionId) |
|
| 7789 | { |
|
| 7790 | if (empty($sessionId)) { |
|
| 7791 | return []; |
|
| 7792 | } |
|
| 7793 | ||
| 7794 | $tblSessionRelCourse = Database::get_main_table(TABLE_MAIN_SESSION_COURSE); |
|
| 7795 | $tblCourse = Database::get_main_table(TABLE_MAIN_COURSE); |
|
| 7796 | ||
| 7797 | // list of course in this session |
|
| 7798 | $sql = "SELECT session_id, c.id |
|
| 7799 | FROM $tblSessionRelCourse src |
|
| 7800 | LEFT JOIN $tblCourse c |
|
| 7801 | ON c.id = src.c_id |
|
| 7802 | WHERE session_id = ".intval($sessionId); |
|
| 7803 | $res = Database::query($sql); |
|
| 7804 | ||
| 7805 | $listResultsCourseId = array(); |
|
| 7806 | while ($data = Database::fetch_assoc($res)) { |
|
| 7807 | $listResultsCourseId[] = $data['id']; |
|
| 7808 | } |
|
| 7809 | ||
| 7810 | return $listResultsCourseId; |
|
| 7811 | } |
|
| 7812 | ||
| 7813 | /** |
|
| 7814 | * Return an array of courses in session for user |
|
| @@ 6140-6160 (lines=21) @@ | ||
| 6137 | * |
|
| 6138 | * @return array |
|
| 6139 | */ |
|
| 6140 | public static function getDeletedDocuments($courseInfo, $sessionId = 0) |
|
| 6141 | { |
|
| 6142 | $table = Database::get_course_table(TABLE_DOCUMENT); |
|
| 6143 | $courseId = $courseInfo['real_id']; |
|
| 6144 | $sessionCondition = api_get_session_condition($sessionId); |
|
| 6145 | $sql = "SELECT * FROM $table |
|
| 6146 | WHERE |
|
| 6147 | path LIKE '%DELETED%' AND |
|
| 6148 | c_id = $courseId |
|
| 6149 | $sessionCondition |
|
| 6150 | ORDER BY path |
|
| 6151 | "; |
|
| 6152 | ||
| 6153 | $result = Database::query($sql); |
|
| 6154 | $files = array(); |
|
| 6155 | while ($document = Database::fetch_array($result, 'ASSOC')) { |
|
| 6156 | $files[] = $document; |
|
| 6157 | } |
|
| 6158 | ||
| 6159 | return $files; |
|
| 6160 | } |
|
| 6161 | ||
| 6162 | /** |
|
| 6163 | * @param int $id |
|