@@ -314,8 +314,8 @@ discard block |
||
314 | 314 | $extend_link = ''; |
315 | 315 | if (!empty($inter_num)) { |
316 | 316 | $extend_link = Display::url( |
317 | - Display::return_icon('visible.gif', get_lang('HideAttemptView')), |
|
318 | - api_get_self() . '?action=stats&fold_id=' . $my_item_id . $url_suffix |
|
317 | + Display::return_icon('visible.gif', get_lang('HideAttemptView')), |
|
318 | + api_get_self() . '?action=stats&fold_id=' . $my_item_id . $url_suffix |
|
319 | 319 | ); |
320 | 320 | } |
321 | 321 | $title = $row['mytitle']; |
@@ -1366,7 +1366,7 @@ discard block |
||
1366 | 1366 | $newDate = new DateTime('-30 days', new DateTimeZone('UTC')); |
1367 | 1367 | $condition_time = " AND (login_date >= '{$newDate->format('Y-m-d H:i:s')}'"; |
1368 | 1368 | $condition_time .= "AND logout_date <= '{$today->format('Y-m-d H:i:s')}') "; |
1369 | - break; |
|
1369 | + break; |
|
1370 | 1370 | case 'custom': |
1371 | 1371 | if (!empty($start_date) && !empty($end_date)) { |
1372 | 1372 | $start_date = Database::escape_string($start_date); |
@@ -1376,10 +1376,10 @@ discard block |
||
1376 | 1376 | break; |
1377 | 1377 | } |
1378 | 1378 | |
1379 | - $sql = 'SELECT SUM(TIMESTAMPDIFF(SECOND, login_date, logout_date)) diff |
|
1379 | + $sql = 'SELECT SUM(TIMESTAMPDIFF(SECOND, login_date, logout_date)) diff |
|
1380 | 1380 | FROM '.$tbl_track_login.' |
1381 | 1381 | WHERE '.$userCondition.$condition_time; |
1382 | - $rs = Database::query($sql); |
|
1382 | + $rs = Database::query($sql); |
|
1383 | 1383 | $row = Database::fetch_array($rs, 'ASSOC'); |
1384 | 1384 | $diff = $row['diff']; |
1385 | 1385 | |
@@ -1401,18 +1401,18 @@ discard block |
||
1401 | 1401 | public static function get_time_spent_on_the_course($user_id, $courseId, $session_id = 0) |
1402 | 1402 | { |
1403 | 1403 | $courseId = intval($courseId); |
1404 | - $session_id = intval($session_id); |
|
1405 | - |
|
1406 | - $tbl_track_course = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
|
1407 | - if (is_array($user_id)) { |
|
1408 | - $user_id = array_map('intval', $user_id); |
|
1409 | - $condition_user = " AND user_id IN (".implode(',',$user_id).") "; |
|
1410 | - } else { |
|
1411 | - $user_id = intval($user_id); |
|
1412 | - $condition_user = " AND user_id = $user_id "; |
|
1413 | - } |
|
1414 | - |
|
1415 | - $sql = "SELECT |
|
1404 | + $session_id = intval($session_id); |
|
1405 | + |
|
1406 | + $tbl_track_course = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
|
1407 | + if (is_array($user_id)) { |
|
1408 | + $user_id = array_map('intval', $user_id); |
|
1409 | + $condition_user = " AND user_id IN (".implode(',',$user_id).") "; |
|
1410 | + } else { |
|
1411 | + $user_id = intval($user_id); |
|
1412 | + $condition_user = " AND user_id = $user_id "; |
|
1413 | + } |
|
1414 | + |
|
1415 | + $sql = "SELECT |
|
1416 | 1416 | SUM(UNIX_TIMESTAMP(logout_course_date) - UNIX_TIMESTAMP(login_course_date)) as nb_seconds |
1417 | 1417 | FROM $tbl_track_course |
1418 | 1418 | WHERE UNIX_TIMESTAMP(logout_course_date) > UNIX_TIMESTAMP(login_course_date) "; |
@@ -1427,9 +1427,9 @@ discard block |
||
1427 | 1427 | |
1428 | 1428 | $sql .= $condition_user; |
1429 | 1429 | $rs = Database::query($sql); |
1430 | - $row = Database::fetch_array($rs); |
|
1430 | + $row = Database::fetch_array($rs); |
|
1431 | 1431 | |
1432 | - return $row['nb_seconds']; |
|
1432 | + return $row['nb_seconds']; |
|
1433 | 1433 | } |
1434 | 1434 | |
1435 | 1435 | /** |
@@ -1440,25 +1440,25 @@ discard block |
||
1440 | 1440 | */ |
1441 | 1441 | public static function get_first_connection_date($student_id) |
1442 | 1442 | { |
1443 | - $tbl_track_login = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN); |
|
1444 | - $sql = 'SELECT login_date |
|
1443 | + $tbl_track_login = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN); |
|
1444 | + $sql = 'SELECT login_date |
|
1445 | 1445 | FROM ' . $tbl_track_login . ' |
1446 | 1446 | WHERE login_user_id = ' . intval($student_id) . ' |
1447 | 1447 | ORDER BY login_date ASC |
1448 | 1448 | LIMIT 0,1'; |
1449 | 1449 | |
1450 | - $rs = Database::query($sql); |
|
1451 | - if (Database::num_rows($rs)>0) { |
|
1452 | - if ($first_login_date = Database::result($rs, 0, 0)) { |
|
1450 | + $rs = Database::query($sql); |
|
1451 | + if (Database::num_rows($rs)>0) { |
|
1452 | + if ($first_login_date = Database::result($rs, 0, 0)) { |
|
1453 | 1453 | return api_convert_and_format_date( |
1454 | 1454 | $first_login_date, |
1455 | 1455 | DATE_FORMAT_SHORT, |
1456 | 1456 | date_default_timezone_get() |
1457 | 1457 | ); |
1458 | - } |
|
1459 | - } |
|
1458 | + } |
|
1459 | + } |
|
1460 | 1460 | |
1461 | - return false; |
|
1461 | + return false; |
|
1462 | 1462 | } |
1463 | 1463 | |
1464 | 1464 | /** |
@@ -1471,38 +1471,38 @@ discard block |
||
1471 | 1471 | */ |
1472 | 1472 | public static function get_last_connection_date($student_id, $warning_message = false, $return_timestamp = false) |
1473 | 1473 | { |
1474 | - $table = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN); |
|
1475 | - $sql = 'SELECT login_date |
|
1474 | + $table = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN); |
|
1475 | + $sql = 'SELECT login_date |
|
1476 | 1476 | FROM ' . $table . ' |
1477 | 1477 | WHERE login_user_id = ' . intval($student_id) . ' |
1478 | 1478 | ORDER BY login_date |
1479 | 1479 | DESC LIMIT 0,1'; |
1480 | 1480 | |
1481 | - $rs = Database::query($sql); |
|
1482 | - if (Database::num_rows($rs) > 0) { |
|
1483 | - if ($last_login_date = Database::result($rs, 0, 0)) { |
|
1484 | - $last_login_date = api_get_local_time($last_login_date); |
|
1485 | - if ($return_timestamp) { |
|
1486 | - return api_strtotime($last_login_date,'UTC'); |
|
1487 | - } else { |
|
1488 | - if (!$warning_message) { |
|
1489 | - return api_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1490 | - } else { |
|
1491 | - $timestamp = api_strtotime($last_login_date,'UTC'); |
|
1492 | - $currentTimestamp = time(); |
|
1493 | - |
|
1494 | - //If the last connection is > than 7 days, the text is red |
|
1495 | - //345600 = 7 days in seconds |
|
1496 | - if ($currentTimestamp - $timestamp > 604800) { |
|
1497 | - return '<span style="color: #F00;">' . api_format_date($last_login_date, DATE_FORMAT_SHORT) . '</span>'; |
|
1498 | - } else { |
|
1499 | - return api_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1500 | - } |
|
1501 | - } |
|
1502 | - } |
|
1503 | - } |
|
1504 | - } |
|
1505 | - return false; |
|
1481 | + $rs = Database::query($sql); |
|
1482 | + if (Database::num_rows($rs) > 0) { |
|
1483 | + if ($last_login_date = Database::result($rs, 0, 0)) { |
|
1484 | + $last_login_date = api_get_local_time($last_login_date); |
|
1485 | + if ($return_timestamp) { |
|
1486 | + return api_strtotime($last_login_date,'UTC'); |
|
1487 | + } else { |
|
1488 | + if (!$warning_message) { |
|
1489 | + return api_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1490 | + } else { |
|
1491 | + $timestamp = api_strtotime($last_login_date,'UTC'); |
|
1492 | + $currentTimestamp = time(); |
|
1493 | + |
|
1494 | + //If the last connection is > than 7 days, the text is red |
|
1495 | + //345600 = 7 days in seconds |
|
1496 | + if ($currentTimestamp - $timestamp > 604800) { |
|
1497 | + return '<span style="color: #F00;">' . api_format_date($last_login_date, DATE_FORMAT_SHORT) . '</span>'; |
|
1498 | + } else { |
|
1499 | + return api_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1500 | + } |
|
1501 | + } |
|
1502 | + } |
|
1503 | + } |
|
1504 | + } |
|
1505 | + return false; |
|
1506 | 1506 | } |
1507 | 1507 | |
1508 | 1508 | /** |
@@ -1556,30 +1556,30 @@ discard block |
||
1556 | 1556 | $session_id = 0, |
1557 | 1557 | $convert_date = true |
1558 | 1558 | ) { |
1559 | - $student_id = intval($student_id); |
|
1559 | + $student_id = intval($student_id); |
|
1560 | 1560 | $courseId = intval($courseId); |
1561 | - $session_id = intval($session_id); |
|
1561 | + $session_id = intval($session_id); |
|
1562 | 1562 | |
1563 | - $tbl_track_login = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
|
1564 | - $sql = 'SELECT login_course_date |
|
1563 | + $tbl_track_login = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
|
1564 | + $sql = 'SELECT login_course_date |
|
1565 | 1565 | FROM '.$tbl_track_login.' |
1566 | 1566 | WHERE |
1567 | 1567 | user_id = '.$student_id.' AND |
1568 | 1568 | c_id = '.$courseId.' AND |
1569 | 1569 | session_id = '.$session_id.' |
1570 | 1570 | ORDER BY login_course_date ASC LIMIT 0,1'; |
1571 | - $rs = Database::query($sql); |
|
1572 | - if (Database::num_rows($rs) > 0) { |
|
1573 | - if ($first_login_date = Database::result($rs, 0, 0)) { |
|
1574 | - if ($convert_date) { |
|
1575 | - return api_convert_and_format_date($first_login_date, DATE_FORMAT_SHORT); |
|
1576 | - } else { |
|
1577 | - return $first_login_date; |
|
1578 | - } |
|
1579 | - } |
|
1580 | - } |
|
1581 | - |
|
1582 | - return false; |
|
1571 | + $rs = Database::query($sql); |
|
1572 | + if (Database::num_rows($rs) > 0) { |
|
1573 | + if ($first_login_date = Database::result($rs, 0, 0)) { |
|
1574 | + if ($convert_date) { |
|
1575 | + return api_convert_and_format_date($first_login_date, DATE_FORMAT_SHORT); |
|
1576 | + } else { |
|
1577 | + return $first_login_date; |
|
1578 | + } |
|
1579 | + } |
|
1580 | + } |
|
1581 | + |
|
1582 | + return false; |
|
1583 | 1583 | } |
1584 | 1584 | |
1585 | 1585 | /** |
@@ -1595,13 +1595,13 @@ discard block |
||
1595 | 1595 | $session_id = 0, |
1596 | 1596 | $convert_date = true |
1597 | 1597 | ) { |
1598 | - // protect data |
|
1599 | - $student_id = intval($student_id); |
|
1598 | + // protect data |
|
1599 | + $student_id = intval($student_id); |
|
1600 | 1600 | $courseId = $courseInfo['real_id']; |
1601 | - $session_id = intval($session_id); |
|
1601 | + $session_id = intval($session_id); |
|
1602 | 1602 | |
1603 | - $tbl_track_e_access = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
1604 | - $sql = 'SELECT access_date |
|
1603 | + $tbl_track_e_access = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
1604 | + $sql = 'SELECT access_date |
|
1605 | 1605 | FROM '.$tbl_track_e_access.' |
1606 | 1606 | WHERE access_user_id = '.$student_id.' AND |
1607 | 1607 | c_id = "'.$courseId.'" AND |
@@ -1609,39 +1609,39 @@ discard block |
||
1609 | 1609 | ORDER BY access_date DESC |
1610 | 1610 | LIMIT 0,1'; |
1611 | 1611 | |
1612 | - $rs = Database::query($sql); |
|
1613 | - if (Database::num_rows($rs) > 0) { |
|
1614 | - if ($last_login_date = Database::result($rs, 0, 0)) { |
|
1612 | + $rs = Database::query($sql); |
|
1613 | + if (Database::num_rows($rs) > 0) { |
|
1614 | + if ($last_login_date = Database::result($rs, 0, 0)) { |
|
1615 | 1615 | if (empty($last_login_date) || $last_login_date == '0000-00-00 00:00:00') { |
1616 | 1616 | return false; |
1617 | 1617 | } |
1618 | 1618 | //see #5736 |
1619 | 1619 | $last_login_date_timestamp = api_strtotime($last_login_date); |
1620 | - $now = time(); |
|
1621 | - //If the last connection is > than 7 days, the text is red |
|
1622 | - //345600 = 7 days in seconds |
|
1623 | - if ($now - $last_login_date_timestamp > 604800) { |
|
1624 | - if ($convert_date) { |
|
1620 | + $now = time(); |
|
1621 | + //If the last connection is > than 7 days, the text is red |
|
1622 | + //345600 = 7 days in seconds |
|
1623 | + if ($now - $last_login_date_timestamp > 604800) { |
|
1624 | + if ($convert_date) { |
|
1625 | 1625 | $last_login_date = api_convert_and_format_date($last_login_date, DATE_FORMAT_SHORT); |
1626 | 1626 | $icon = api_is_allowed_to_edit() ? |
1627 | 1627 | '<a href="'.api_get_path(WEB_CODE_PATH).'announcements/announcements.php?action=add&remind_inactive='.$student_id.'&cidReq='.$courseInfo['code'].'" title="'.get_lang('RemindInactiveUser').'"> |
1628 | 1628 | '.Display::return_icon('messagebox_warning.gif').' |
1629 | 1629 | </a>' |
1630 | 1630 | : null; |
1631 | - return $icon. Display::label($last_login_date, 'warning'); |
|
1632 | - } else { |
|
1633 | - return $last_login_date; |
|
1634 | - } |
|
1635 | - } else { |
|
1636 | - if ($convert_date) { |
|
1637 | - return api_convert_and_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1638 | - } else { |
|
1639 | - return $last_login_date; |
|
1640 | - } |
|
1641 | - } |
|
1642 | - } |
|
1643 | - } |
|
1644 | - return false; |
|
1631 | + return $icon. Display::label($last_login_date, 'warning'); |
|
1632 | + } else { |
|
1633 | + return $last_login_date; |
|
1634 | + } |
|
1635 | + } else { |
|
1636 | + if ($convert_date) { |
|
1637 | + return api_convert_and_format_date($last_login_date, DATE_FORMAT_SHORT); |
|
1638 | + } else { |
|
1639 | + return $last_login_date; |
|
1640 | + } |
|
1641 | + } |
|
1642 | + } |
|
1643 | + } |
|
1644 | + return false; |
|
1645 | 1645 | } |
1646 | 1646 | |
1647 | 1647 | /** |
@@ -1655,11 +1655,11 @@ discard block |
||
1655 | 1655 | public static function get_course_connections_count($courseId, $session_id = 0, $start = 0, $stop = null) |
1656 | 1656 | { |
1657 | 1657 | if ($start < 0) { |
1658 | - $start = 0; |
|
1659 | - } |
|
1660 | - if (!isset($stop) or ($stop < 0)) { |
|
1661 | - $stop = api_get_utc_datetime(); |
|
1662 | - } |
|
1658 | + $start = 0; |
|
1659 | + } |
|
1660 | + if (!isset($stop) or ($stop < 0)) { |
|
1661 | + $stop = api_get_utc_datetime(); |
|
1662 | + } |
|
1663 | 1663 | |
1664 | 1664 | // Given we're storing in cache, round the start and end times |
1665 | 1665 | // to the lower minute |
@@ -1668,11 +1668,11 @@ discard block |
||
1668 | 1668 | $roundedStart = Database::escape_string($roundedStart); |
1669 | 1669 | $roundedStop = Database::escape_string($roundedStop); |
1670 | 1670 | |
1671 | - $month_filter = " AND login_course_date > '$roundedStart' AND login_course_date < '$roundedStop' "; |
|
1671 | + $month_filter = " AND login_course_date > '$roundedStart' AND login_course_date < '$roundedStop' "; |
|
1672 | 1672 | |
1673 | 1673 | $courseId = intval($courseId); |
1674 | - $session_id = intval($session_id); |
|
1675 | - $count = 0; |
|
1674 | + $session_id = intval($session_id); |
|
1675 | + $count = 0; |
|
1676 | 1676 | $tbl_track_e_course_access = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_COURSE_ACCESS); |
1677 | 1677 | $sql = "SELECT count(*) as count_connections |
1678 | 1678 | FROM $tbl_track_e_course_access |
@@ -1711,7 +1711,7 @@ discard block |
||
1711 | 1711 | } |
1712 | 1712 | } |
1713 | 1713 | |
1714 | - return $count; |
|
1714 | + return $count; |
|
1715 | 1715 | } |
1716 | 1716 | |
1717 | 1717 | /** |
@@ -1722,25 +1722,25 @@ discard block |
||
1722 | 1722 | */ |
1723 | 1723 | public static function count_course_per_student($user_id, $include_sessions = true) |
1724 | 1724 | { |
1725 | - $user_id = intval($user_id); |
|
1726 | - $tbl_course_rel_user = Database :: get_main_table(TABLE_MAIN_COURSE_USER); |
|
1727 | - $tbl_session_course_rel_user = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE_USER); |
|
1725 | + $user_id = intval($user_id); |
|
1726 | + $tbl_course_rel_user = Database :: get_main_table(TABLE_MAIN_COURSE_USER); |
|
1727 | + $tbl_session_course_rel_user = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE_USER); |
|
1728 | 1728 | |
1729 | - $sql = 'SELECT DISTINCT c_id |
|
1729 | + $sql = 'SELECT DISTINCT c_id |
|
1730 | 1730 | FROM ' . $tbl_course_rel_user . ' |
1731 | 1731 | WHERE user_id = ' . $user_id.' AND relation_type<>'.COURSE_RELATION_TYPE_RRHH; |
1732 | - $rs = Database::query($sql); |
|
1733 | - $nb_courses = Database::num_rows($rs); |
|
1732 | + $rs = Database::query($sql); |
|
1733 | + $nb_courses = Database::num_rows($rs); |
|
1734 | 1734 | |
1735 | - if ($include_sessions) { |
|
1736 | - $sql = 'SELECT DISTINCT c_id |
|
1735 | + if ($include_sessions) { |
|
1736 | + $sql = 'SELECT DISTINCT c_id |
|
1737 | 1737 | FROM ' . $tbl_session_course_rel_user . ' |
1738 | 1738 | WHERE user_id = ' . $user_id; |
1739 | - $rs = Database::query($sql); |
|
1740 | - $nb_courses += Database::num_rows($rs); |
|
1741 | - } |
|
1739 | + $rs = Database::query($sql); |
|
1740 | + $nb_courses += Database::num_rows($rs); |
|
1741 | + } |
|
1742 | 1742 | |
1743 | - return $nb_courses; |
|
1743 | + return $nb_courses; |
|
1744 | 1744 | } |
1745 | 1745 | |
1746 | 1746 | /** |
@@ -1771,25 +1771,25 @@ discard block |
||
1771 | 1771 | $into_lp = 0 |
1772 | 1772 | ) { |
1773 | 1773 | $course_code = Database::escape_string($course_code); |
1774 | - $course_info = api_get_course_info($course_code); |
|
1775 | - if (!empty($course_info)) { |
|
1776 | - // table definition |
|
1777 | - $tbl_course_quiz = Database::get_course_table(TABLE_QUIZ_TEST); |
|
1778 | - $tbl_stats_exercise = Database::get_main_table(TABLE_STATISTIC_TRACK_E_EXERCISES); |
|
1779 | - |
|
1780 | - // Compose a filter based on optional exercise given |
|
1781 | - $condition_quiz = ""; |
|
1782 | - if (!empty($exercise_id)) { |
|
1783 | - $exercise_id = intval($exercise_id); |
|
1784 | - $condition_quiz =" AND id = $exercise_id "; |
|
1785 | - } |
|
1786 | - |
|
1787 | - // Compose a filter based on optional session id given |
|
1788 | - $condition_session = ""; |
|
1789 | - if (isset($session_id)) { |
|
1790 | - $session_id = intval($session_id); |
|
1791 | - $condition_session = " AND session_id = $session_id "; |
|
1792 | - } |
|
1774 | + $course_info = api_get_course_info($course_code); |
|
1775 | + if (!empty($course_info)) { |
|
1776 | + // table definition |
|
1777 | + $tbl_course_quiz = Database::get_course_table(TABLE_QUIZ_TEST); |
|
1778 | + $tbl_stats_exercise = Database::get_main_table(TABLE_STATISTIC_TRACK_E_EXERCISES); |
|
1779 | + |
|
1780 | + // Compose a filter based on optional exercise given |
|
1781 | + $condition_quiz = ""; |
|
1782 | + if (!empty($exercise_id)) { |
|
1783 | + $exercise_id = intval($exercise_id); |
|
1784 | + $condition_quiz =" AND id = $exercise_id "; |
|
1785 | + } |
|
1786 | + |
|
1787 | + // Compose a filter based on optional session id given |
|
1788 | + $condition_session = ""; |
|
1789 | + if (isset($session_id)) { |
|
1790 | + $session_id = intval($session_id); |
|
1791 | + $condition_session = " AND session_id = $session_id "; |
|
1792 | + } |
|
1793 | 1793 | if ($active_filter == 1) { |
1794 | 1794 | $condition_active = 'AND active <> -1'; |
1795 | 1795 | } elseif ($active_filter == 0) { |
@@ -1805,25 +1805,25 @@ discard block |
||
1805 | 1805 | $select_lp_id = ', orig_lp_id as lp_id '; |
1806 | 1806 | } |
1807 | 1807 | |
1808 | - $sql = "SELECT count(id) FROM $tbl_course_quiz |
|
1808 | + $sql = "SELECT count(id) FROM $tbl_course_quiz |
|
1809 | 1809 | WHERE c_id = {$course_info['real_id']} $condition_active $condition_quiz "; |
1810 | - $count_quiz = Database::fetch_row(Database::query($sql)); |
|
1810 | + $count_quiz = Database::fetch_row(Database::query($sql)); |
|
1811 | 1811 | |
1812 | - if (!empty($count_quiz[0]) && !empty($student_id)) { |
|
1813 | - if (is_array($student_id)) { |
|
1812 | + if (!empty($count_quiz[0]) && !empty($student_id)) { |
|
1813 | + if (is_array($student_id)) { |
|
1814 | 1814 | $student_id = array_map('intval', $student_id); |
1815 | - $condition_user = " AND exe_user_id IN (".implode(',', $student_id).") "; |
|
1816 | - } else { |
|
1815 | + $condition_user = " AND exe_user_id IN (".implode(',', $student_id).") "; |
|
1816 | + } else { |
|
1817 | 1817 | $student_id = intval($student_id); |
1818 | - $condition_user = " AND exe_user_id = '$student_id' "; |
|
1819 | - } |
|
1818 | + $condition_user = " AND exe_user_id = '$student_id' "; |
|
1819 | + } |
|
1820 | 1820 | |
1821 | - if (empty($exercise_id)) { |
|
1822 | - $sql = "SELECT id FROM $tbl_course_quiz |
|
1821 | + if (empty($exercise_id)) { |
|
1822 | + $sql = "SELECT id FROM $tbl_course_quiz |
|
1823 | 1823 | WHERE c_id = {$course_info['real_id']} $condition_active $condition_quiz"; |
1824 | 1824 | $result = Database::query($sql); |
1825 | 1825 | $exercise_list = array(); |
1826 | - $exercise_id = null; |
|
1826 | + $exercise_id = null; |
|
1827 | 1827 | if (Database::num_rows($result)) { |
1828 | 1828 | while ($row = Database::fetch_array($result)) { |
1829 | 1829 | $exercise_list[] = $row['id']; |
@@ -1832,11 +1832,11 @@ discard block |
||
1832 | 1832 | if (!empty($exercise_list)) { |
1833 | 1833 | $exercise_id = implode("','",$exercise_list); |
1834 | 1834 | } |
1835 | - } |
|
1835 | + } |
|
1836 | 1836 | |
1837 | - $count_quiz = Database::fetch_row(Database::query($sql)); |
|
1837 | + $count_quiz = Database::fetch_row(Database::query($sql)); |
|
1838 | 1838 | |
1839 | - $sql = "SELECT |
|
1839 | + $sql = "SELECT |
|
1840 | 1840 | SUM(exe_result/exe_weighting*100) as avg_score, |
1841 | 1841 | COUNT(*) as num_attempts |
1842 | 1842 | $select_lp_id |
@@ -1850,20 +1850,20 @@ discard block |
||
1850 | 1850 | $condition_into_lp |
1851 | 1851 | ORDER BY exe_date DESC"; |
1852 | 1852 | |
1853 | - $res = Database::query($sql); |
|
1854 | - $row = Database::fetch_array($res); |
|
1855 | - $quiz_avg_score = null; |
|
1853 | + $res = Database::query($sql); |
|
1854 | + $row = Database::fetch_array($res); |
|
1855 | + $quiz_avg_score = null; |
|
1856 | 1856 | |
1857 | - if (!empty($row['avg_score'])) { |
|
1858 | - $quiz_avg_score = round($row['avg_score'],2); |
|
1859 | - } |
|
1857 | + if (!empty($row['avg_score'])) { |
|
1858 | + $quiz_avg_score = round($row['avg_score'],2); |
|
1859 | + } |
|
1860 | 1860 | |
1861 | - if(!empty($row['num_attempts'])) { |
|
1862 | - $quiz_avg_score = round($quiz_avg_score / $row['num_attempts'], 2); |
|
1863 | - } |
|
1864 | - if (is_array($student_id)) { |
|
1865 | - $quiz_avg_score = round($quiz_avg_score / count($student_id), 2); |
|
1866 | - } |
|
1861 | + if(!empty($row['num_attempts'])) { |
|
1862 | + $quiz_avg_score = round($quiz_avg_score / $row['num_attempts'], 2); |
|
1863 | + } |
|
1864 | + if (is_array($student_id)) { |
|
1865 | + $quiz_avg_score = round($quiz_avg_score / count($student_id), 2); |
|
1866 | + } |
|
1867 | 1867 | if ($into_lp == 0) { |
1868 | 1868 | return $quiz_avg_score; |
1869 | 1869 | } else { |
@@ -1886,9 +1886,9 @@ discard block |
||
1886 | 1886 | return array($quiz_avg_score, null); |
1887 | 1887 | } |
1888 | 1888 | } |
1889 | - } |
|
1890 | - } |
|
1891 | - return null; |
|
1889 | + } |
|
1890 | + } |
|
1891 | + return null; |
|
1892 | 1892 | } |
1893 | 1893 | |
1894 | 1894 | /** |
@@ -1921,15 +1921,15 @@ discard block |
||
1921 | 1921 | $find_all_lp = 0 |
1922 | 1922 | ) { |
1923 | 1923 | $courseId = intval($courseId); |
1924 | - $student_id = intval($student_id); |
|
1925 | - $exercise_id = intval($exercise_id); |
|
1926 | - $session_id = intval($session_id); |
|
1924 | + $student_id = intval($student_id); |
|
1925 | + $exercise_id = intval($exercise_id); |
|
1926 | + $session_id = intval($session_id); |
|
1927 | 1927 | |
1928 | - $lp_id = intval($lp_id); |
|
1928 | + $lp_id = intval($lp_id); |
|
1929 | 1929 | $lp_item_id = intval($lp_item_id); |
1930 | - $tbl_stats_exercises = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_EXERCISES); |
|
1930 | + $tbl_stats_exercises = Database :: get_main_table(TABLE_STATISTIC_TRACK_E_EXERCISES); |
|
1931 | 1931 | |
1932 | - $sql = "SELECT COUNT(ex.exe_id) as essais FROM $tbl_stats_exercises AS ex |
|
1932 | + $sql = "SELECT COUNT(ex.exe_id) as essais FROM $tbl_stats_exercises AS ex |
|
1933 | 1933 | WHERE ex.c_id = $courseId |
1934 | 1934 | AND ex.exe_exo_id = $exercise_id |
1935 | 1935 | AND status = '' |
@@ -1944,11 +1944,11 @@ discard block |
||
1944 | 1944 | AND orig_lp_item_id = $lp_item_id"; |
1945 | 1945 | } |
1946 | 1946 | |
1947 | - $rs = Database::query($sql); |
|
1948 | - $row = Database::fetch_row($rs); |
|
1949 | - $count_attempts = $row[0]; |
|
1947 | + $rs = Database::query($sql); |
|
1948 | + $row = Database::fetch_row($rs); |
|
1949 | + $count_attempts = $row[0]; |
|
1950 | 1950 | |
1951 | - return $count_attempts; |
|
1951 | + return $count_attempts; |
|
1952 | 1952 | } |
1953 | 1953 | |
1954 | 1954 | /** |
@@ -1958,7 +1958,7 @@ discard block |
||
1958 | 1958 | * @param int $user_id |
1959 | 1959 | * @param int $courseId |
1960 | 1960 | * @param int $session_id |
1961 | - */ |
|
1961 | + */ |
|
1962 | 1962 | public static function get_exercise_student_progress($exercise_list, $user_id, $courseId, $session_id) |
1963 | 1963 | { |
1964 | 1964 | $courseId = intval($courseId); |
@@ -3622,8 +3622,8 @@ discard block |
||
3622 | 3622 | |
3623 | 3623 | $condition_session = ''; |
3624 | 3624 | if (isset($session_id)) { |
3625 | - $session_id = intval($session_id); |
|
3626 | - $condition_session = ' AND f.session_id = '. $session_id; |
|
3625 | + $session_id = intval($session_id); |
|
3626 | + $condition_session = ' AND f.session_id = '. $session_id; |
|
3627 | 3627 | } |
3628 | 3628 | |
3629 | 3629 | $groupId = intval($groupId); |
@@ -5522,9 +5522,9 @@ discard block |
||
5522 | 5522 | } |
5523 | 5523 | |
5524 | 5524 | /** |
5525 | - * @param FormValidator $form |
|
5526 | - * @return mixed |
|
5527 | - */ |
|
5525 | + * @param FormValidator $form |
|
5526 | + * @return mixed |
|
5527 | + */ |
|
5528 | 5528 | public static function setUserSearchForm($form) |
5529 | 5529 | { |
5530 | 5530 | global $_configuration; |
@@ -5838,26 +5838,26 @@ discard block |
||
5838 | 5838 | $session_id = api_get_session_id(); |
5839 | 5839 | $course_id = api_get_course_int_id(); |
5840 | 5840 | |
5841 | - $table_item_property = Database :: get_course_table(TABLE_ITEM_PROPERTY); |
|
5842 | - $table_user = Database :: get_main_table(TABLE_MAIN_USER); |
|
5841 | + $table_item_property = Database :: get_course_table(TABLE_ITEM_PROPERTY); |
|
5842 | + $table_user = Database :: get_main_table(TABLE_MAIN_USER); |
|
5843 | 5843 | |
5844 | - $sql = "SELECT count(tool) AS total_number_of_items |
|
5844 | + $sql = "SELECT count(tool) AS total_number_of_items |
|
5845 | 5845 | FROM $table_item_property track_resource, $table_user user |
5846 | 5846 | WHERE |
5847 | 5847 | track_resource.c_id = $course_id AND |
5848 | 5848 | track_resource.insert_user_id = user.user_id AND |
5849 | 5849 | session_id " .(empty($session_id) ? ' IS NULL ' : " = $session_id "); |
5850 | 5850 | |
5851 | - if (isset($_GET['keyword'])) { |
|
5852 | - $keyword = Database::escape_string(trim($_GET['keyword'])); |
|
5853 | - $sql .= " AND ( |
|
5851 | + if (isset($_GET['keyword'])) { |
|
5852 | + $keyword = Database::escape_string(trim($_GET['keyword'])); |
|
5853 | + $sql .= " AND ( |
|
5854 | 5854 | user.username LIKE '%".$keyword."%' OR |
5855 | 5855 | lastedit_type LIKE '%".$keyword."%' OR |
5856 | 5856 | tool LIKE '%".$keyword."%' |
5857 | 5857 | )"; |
5858 | - } |
|
5858 | + } |
|
5859 | 5859 | |
5860 | - $sql .= " AND tool IN ( |
|
5860 | + $sql .= " AND tool IN ( |
|
5861 | 5861 | 'document', |
5862 | 5862 | 'learnpath', |
5863 | 5863 | 'quiz', |
@@ -5869,10 +5869,10 @@ discard block |
||
5869 | 5869 | 'thematic_advance', |
5870 | 5870 | 'thematic_plan' |
5871 | 5871 | )"; |
5872 | - $res = Database::query($sql); |
|
5873 | - $obj = Database::fetch_object($res); |
|
5872 | + $res = Database::query($sql); |
|
5873 | + $obj = Database::fetch_object($res); |
|
5874 | 5874 | |
5875 | - return $obj->total_number_of_items; |
|
5875 | + return $obj->total_number_of_items; |
|
5876 | 5876 | } |
5877 | 5877 | |
5878 | 5878 | /** |
@@ -5887,12 +5887,12 @@ discard block |
||
5887 | 5887 | $session_id = api_get_session_id(); |
5888 | 5888 | $course_id = api_get_course_int_id(); |
5889 | 5889 | |
5890 | - $table_item_property = Database :: get_course_table(TABLE_ITEM_PROPERTY); |
|
5891 | - $table_user = Database :: get_main_table(TABLE_MAIN_USER); |
|
5892 | - $table_session = Database :: get_main_table(TABLE_MAIN_SESSION); |
|
5893 | - $session_id = intval($session_id); |
|
5890 | + $table_item_property = Database :: get_course_table(TABLE_ITEM_PROPERTY); |
|
5891 | + $table_user = Database :: get_main_table(TABLE_MAIN_USER); |
|
5892 | + $table_session = Database :: get_main_table(TABLE_MAIN_SESSION); |
|
5893 | + $session_id = intval($session_id); |
|
5894 | 5894 | |
5895 | - $sql = "SELECT |
|
5895 | + $sql = "SELECT |
|
5896 | 5896 | tool as col0, |
5897 | 5897 | lastedit_type as col1, |
5898 | 5898 | ref as ref, |
@@ -5906,16 +5906,16 @@ discard block |
||
5906 | 5906 | track_resource.insert_user_id = user.user_id AND |
5907 | 5907 | session_id " .(empty($session_id) ? ' IS NULL ' : " = $session_id "); |
5908 | 5908 | |
5909 | - if (isset($_GET['keyword'])) { |
|
5910 | - $keyword = Database::escape_string(trim($_GET['keyword'])); |
|
5911 | - $sql .= " AND ( |
|
5909 | + if (isset($_GET['keyword'])) { |
|
5910 | + $keyword = Database::escape_string(trim($_GET['keyword'])); |
|
5911 | + $sql .= " AND ( |
|
5912 | 5912 | user.username LIKE '%".$keyword."%' OR |
5913 | 5913 | lastedit_type LIKE '%".$keyword."%' OR |
5914 | 5914 | tool LIKE '%".$keyword."%' |
5915 | 5915 | ) "; |
5916 | - } |
|
5916 | + } |
|
5917 | 5917 | |
5918 | - $sql .= " AND tool IN ( |
|
5918 | + $sql .= " AND tool IN ( |
|
5919 | 5919 | 'document', |
5920 | 5920 | 'learnpath', |
5921 | 5921 | 'quiz', |
@@ -5928,41 +5928,41 @@ discard block |
||
5928 | 5928 | 'thematic_plan' |
5929 | 5929 | )"; |
5930 | 5930 | |
5931 | - if ($column == 0) { |
|
5932 | - $column = '0'; |
|
5933 | - } |
|
5934 | - if ($column != '' && $direction != '') { |
|
5935 | - if ($column != 2 && $column != 4) { |
|
5936 | - $sql .= " ORDER BY col$column $direction"; |
|
5937 | - } |
|
5938 | - } else { |
|
5939 | - $sql .= " ORDER BY col5 DESC "; |
|
5940 | - } |
|
5931 | + if ($column == 0) { |
|
5932 | + $column = '0'; |
|
5933 | + } |
|
5934 | + if ($column != '' && $direction != '') { |
|
5935 | + if ($column != 2 && $column != 4) { |
|
5936 | + $sql .= " ORDER BY col$column $direction"; |
|
5937 | + } |
|
5938 | + } else { |
|
5939 | + $sql .= " ORDER BY col5 DESC "; |
|
5940 | + } |
|
5941 | 5941 | |
5942 | 5942 | $from = intval($from); |
5943 | 5943 | $number_of_items = intval($number_of_items); |
5944 | 5944 | |
5945 | - $sql .= " LIMIT $from, $number_of_items "; |
|
5946 | - |
|
5947 | - $res = Database::query($sql); |
|
5948 | - $resources = array(); |
|
5949 | - $thematic_tools = array('thematic', 'thematic_advance', 'thematic_plan'); |
|
5950 | - while ($row = Database::fetch_array($res)) { |
|
5951 | - $ref = $row['ref']; |
|
5952 | - $table_name = TrackingCourseLog::get_tool_name_table($row['col0']); |
|
5953 | - $table_tool = Database :: get_course_table($table_name['table_name']); |
|
5945 | + $sql .= " LIMIT $from, $number_of_items "; |
|
5954 | 5946 | |
5955 | - $id = $table_name['id_tool']; |
|
5956 | - $recorset = false; |
|
5957 | - |
|
5958 | - if (in_array($row['col0'], array('thematic_plan', 'thematic_advance'))) { |
|
5959 | - $tbl_thematic = Database :: get_course_table(TABLE_THEMATIC); |
|
5960 | - $sql = "SELECT thematic_id FROM $table_tool |
|
5947 | + $res = Database::query($sql); |
|
5948 | + $resources = array(); |
|
5949 | + $thematic_tools = array('thematic', 'thematic_advance', 'thematic_plan'); |
|
5950 | + while ($row = Database::fetch_array($res)) { |
|
5951 | + $ref = $row['ref']; |
|
5952 | + $table_name = TrackingCourseLog::get_tool_name_table($row['col0']); |
|
5953 | + $table_tool = Database :: get_course_table($table_name['table_name']); |
|
5954 | + |
|
5955 | + $id = $table_name['id_tool']; |
|
5956 | + $recorset = false; |
|
5957 | + |
|
5958 | + if (in_array($row['col0'], array('thematic_plan', 'thematic_advance'))) { |
|
5959 | + $tbl_thematic = Database :: get_course_table(TABLE_THEMATIC); |
|
5960 | + $sql = "SELECT thematic_id FROM $table_tool |
|
5961 | 5961 | WHERE c_id = $course_id AND id = $ref"; |
5962 | - $rs_thematic = Database::query($sql); |
|
5963 | - if (Database::num_rows($rs_thematic)) { |
|
5964 | - $row_thematic = Database::fetch_array($rs_thematic); |
|
5965 | - $thematic_id = $row_thematic['thematic_id']; |
|
5962 | + $rs_thematic = Database::query($sql); |
|
5963 | + if (Database::num_rows($rs_thematic)) { |
|
5964 | + $row_thematic = Database::fetch_array($rs_thematic); |
|
5965 | + $thematic_id = $row_thematic['thematic_id']; |
|
5966 | 5966 | |
5967 | 5967 | $sql = "SELECT session.id, session.name, user.username |
5968 | 5968 | FROM $tbl_thematic t, $table_session session, $table_user user |
@@ -5971,9 +5971,9 @@ discard block |
||
5971 | 5971 | t.session_id = session.id AND |
5972 | 5972 | session.id_coach = user.user_id AND |
5973 | 5973 | t.id = $thematic_id"; |
5974 | - $recorset = Database::query($sql); |
|
5975 | - } |
|
5976 | - } else { |
|
5974 | + $recorset = Database::query($sql); |
|
5975 | + } |
|
5976 | + } else { |
|
5977 | 5977 | $sql = "SELECT session.id, session.name, user.username |
5978 | 5978 | FROM $table_tool tool, $table_session session, $table_user user |
5979 | 5979 | WHERE |
@@ -5981,127 +5981,127 @@ discard block |
||
5981 | 5981 | tool.session_id = session.id AND |
5982 | 5982 | session.id_coach = user.user_id AND |
5983 | 5983 | tool.$id = $ref"; |
5984 | - $recorset = Database::query($sql); |
|
5985 | - } |
|
5986 | - |
|
5987 | - if (!empty($recorset)) { |
|
5988 | - $obj = Database::fetch_object($recorset); |
|
5989 | - |
|
5990 | - $name_session = ''; |
|
5991 | - $coach_name = ''; |
|
5992 | - if (!empty($obj)) { |
|
5993 | - $name_session = $obj->name; |
|
5994 | - $coach_name = $obj->username; |
|
5995 | - } |
|
5996 | - |
|
5997 | - $url_tool = api_get_path(WEB_CODE_PATH).$table_name['link_tool']; |
|
5998 | - $row[0] = ''; |
|
5999 | - if ($row['col6'] != 2) { |
|
6000 | - if (in_array($row['col0'], $thematic_tools)) { |
|
6001 | - |
|
6002 | - $exp_thematic_tool = explode('_', $row['col0']); |
|
6003 | - $thematic_tool_title = ''; |
|
6004 | - if (is_array($exp_thematic_tool)) { |
|
6005 | - foreach ($exp_thematic_tool as $exp) { |
|
6006 | - $thematic_tool_title .= api_ucfirst($exp); |
|
6007 | - } |
|
6008 | - } else { |
|
6009 | - $thematic_tool_title = api_ucfirst($row['col0']); |
|
6010 | - } |
|
6011 | - |
|
6012 | - $row[0] = '<a href="'.$url_tool.'?'.api_get_cidreq().'&action=thematic_details">'.get_lang($thematic_tool_title).'</a>'; |
|
6013 | - } else { |
|
6014 | - $row[0] = '<a href="'.$url_tool.'?'.api_get_cidreq().'">'.get_lang('Tool'.api_ucfirst($row['col0'])).'</a>'; |
|
6015 | - } |
|
6016 | - } else { |
|
6017 | - $row[0] = api_ucfirst($row['col0']); |
|
6018 | - } |
|
6019 | - $row[1] = get_lang($row[1]); |
|
6020 | - $row[6] = api_convert_and_format_date($row['col5'], null, date_default_timezone_get()); |
|
6021 | - $row[5] = ''; |
|
6022 | - //@todo Improve this code please |
|
6023 | - switch ($table_name['table_name']) { |
|
6024 | - case 'document' : |
|
6025 | - $sql = "SELECT tool.title as title FROM $table_tool tool |
|
5984 | + $recorset = Database::query($sql); |
|
5985 | + } |
|
5986 | + |
|
5987 | + if (!empty($recorset)) { |
|
5988 | + $obj = Database::fetch_object($recorset); |
|
5989 | + |
|
5990 | + $name_session = ''; |
|
5991 | + $coach_name = ''; |
|
5992 | + if (!empty($obj)) { |
|
5993 | + $name_session = $obj->name; |
|
5994 | + $coach_name = $obj->username; |
|
5995 | + } |
|
5996 | + |
|
5997 | + $url_tool = api_get_path(WEB_CODE_PATH).$table_name['link_tool']; |
|
5998 | + $row[0] = ''; |
|
5999 | + if ($row['col6'] != 2) { |
|
6000 | + if (in_array($row['col0'], $thematic_tools)) { |
|
6001 | + |
|
6002 | + $exp_thematic_tool = explode('_', $row['col0']); |
|
6003 | + $thematic_tool_title = ''; |
|
6004 | + if (is_array($exp_thematic_tool)) { |
|
6005 | + foreach ($exp_thematic_tool as $exp) { |
|
6006 | + $thematic_tool_title .= api_ucfirst($exp); |
|
6007 | + } |
|
6008 | + } else { |
|
6009 | + $thematic_tool_title = api_ucfirst($row['col0']); |
|
6010 | + } |
|
6011 | + |
|
6012 | + $row[0] = '<a href="'.$url_tool.'?'.api_get_cidreq().'&action=thematic_details">'.get_lang($thematic_tool_title).'</a>'; |
|
6013 | + } else { |
|
6014 | + $row[0] = '<a href="'.$url_tool.'?'.api_get_cidreq().'">'.get_lang('Tool'.api_ucfirst($row['col0'])).'</a>'; |
|
6015 | + } |
|
6016 | + } else { |
|
6017 | + $row[0] = api_ucfirst($row['col0']); |
|
6018 | + } |
|
6019 | + $row[1] = get_lang($row[1]); |
|
6020 | + $row[6] = api_convert_and_format_date($row['col5'], null, date_default_timezone_get()); |
|
6021 | + $row[5] = ''; |
|
6022 | + //@todo Improve this code please |
|
6023 | + switch ($table_name['table_name']) { |
|
6024 | + case 'document' : |
|
6025 | + $sql = "SELECT tool.title as title FROM $table_tool tool |
|
6026 | 6026 | WHERE c_id = $course_id AND id = $ref"; |
6027 | - $rs_document = Database::query($sql); |
|
6028 | - $obj_document = Database::fetch_object($rs_document); |
|
6029 | - $row[5] = $obj_document->title; |
|
6027 | + $rs_document = Database::query($sql); |
|
6028 | + $obj_document = Database::fetch_object($rs_document); |
|
6029 | + $row[5] = $obj_document->title; |
|
6030 | 6030 | |
6031 | - break; |
|
6032 | - case 'announcement': |
|
6031 | + break; |
|
6032 | + case 'announcement': |
|
6033 | 6033 | $sql = "SELECT title FROM $table_tool |
6034 | 6034 | WHERE c_id = $course_id AND id = $ref"; |
6035 | - $rs_document = Database::query($sql); |
|
6036 | - $obj_document = Database::fetch_object($rs_document); |
|
6035 | + $rs_document = Database::query($sql); |
|
6036 | + $obj_document = Database::fetch_object($rs_document); |
|
6037 | 6037 | if ($obj_document) { |
6038 | 6038 | $row[5] = $obj_document->title; |
6039 | 6039 | } |
6040 | - break; |
|
6041 | - case 'glossary': |
|
6040 | + break; |
|
6041 | + case 'glossary': |
|
6042 | 6042 | $sql = "SELECT name FROM $table_tool |
6043 | 6043 | WHERE c_id = $course_id AND glossary_id = $ref"; |
6044 | - $rs_document = Database::query($sql); |
|
6045 | - $obj_document = Database::fetch_object($rs_document); |
|
6044 | + $rs_document = Database::query($sql); |
|
6045 | + $obj_document = Database::fetch_object($rs_document); |
|
6046 | 6046 | if ($obj_document) { |
6047 | 6047 | $row[5] = $obj_document->name; |
6048 | 6048 | } |
6049 | - break; |
|
6050 | - case 'lp': |
|
6049 | + break; |
|
6050 | + case 'lp': |
|
6051 | 6051 | $sql = "SELECT name |
6052 | 6052 | FROM $table_tool WHERE c_id = $course_id AND id = $ref"; |
6053 | - $rs_document = Database::query($sql); |
|
6054 | - $obj_document = Database::fetch_object($rs_document); |
|
6055 | - $row[5] = $obj_document->name; |
|
6056 | - break; |
|
6057 | - case 'quiz': |
|
6053 | + $rs_document = Database::query($sql); |
|
6054 | + $obj_document = Database::fetch_object($rs_document); |
|
6055 | + $row[5] = $obj_document->name; |
|
6056 | + break; |
|
6057 | + case 'quiz': |
|
6058 | 6058 | $sql = "SELECT title FROM $table_tool |
6059 | 6059 | WHERE c_id = $course_id AND id = $ref"; |
6060 | - $rs_document = Database::query($sql); |
|
6061 | - $obj_document = Database::fetch_object($rs_document); |
|
6060 | + $rs_document = Database::query($sql); |
|
6061 | + $obj_document = Database::fetch_object($rs_document); |
|
6062 | 6062 | if ($obj_document) { |
6063 | 6063 | $row[5] = $obj_document->title; |
6064 | 6064 | } |
6065 | - break; |
|
6066 | - case 'course_description': |
|
6065 | + break; |
|
6066 | + case 'course_description': |
|
6067 | 6067 | $sql = "SELECT title FROM $table_tool |
6068 | 6068 | WHERE c_id = $course_id AND id = $ref"; |
6069 | - $rs_document = Database::query($sql); |
|
6070 | - $obj_document = Database::fetch_object($rs_document); |
|
6069 | + $rs_document = Database::query($sql); |
|
6070 | + $obj_document = Database::fetch_object($rs_document); |
|
6071 | 6071 | if ($obj_document) { |
6072 | 6072 | $row[5] = $obj_document->title; |
6073 | 6073 | } |
6074 | - break; |
|
6075 | - case 'thematic': |
|
6076 | - $rs = Database::query("SELECT title FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6077 | - if (Database::num_rows($rs) > 0) { |
|
6078 | - $obj = Database::fetch_object($rs); |
|
6079 | - $row[5] = $obj->title; |
|
6080 | - } |
|
6081 | - break; |
|
6082 | - case 'thematic_advance': |
|
6083 | - $rs = Database::query("SELECT content FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6084 | - if (Database::num_rows($rs) > 0) { |
|
6085 | - $obj = Database::fetch_object($rs); |
|
6086 | - $row[5] = $obj->content; |
|
6087 | - } |
|
6088 | - break; |
|
6089 | - case 'thematic_plan': |
|
6090 | - $rs = Database::query("SELECT title FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6091 | - if (Database::num_rows($rs) > 0) { |
|
6092 | - $obj = Database::fetch_object($rs); |
|
6093 | - $row[5] = $obj->title; |
|
6094 | - } |
|
6095 | - break; |
|
6096 | - default: |
|
6097 | - break; |
|
6098 | - } |
|
6099 | - |
|
6100 | - $row2 = $name_session; |
|
6101 | - if (!empty($coach_name)) { |
|
6102 | - $row2 .= '<br />'.get_lang('Coach').': '.$coach_name; |
|
6103 | - } |
|
6104 | - $row[2] = $row2; |
|
6074 | + break; |
|
6075 | + case 'thematic': |
|
6076 | + $rs = Database::query("SELECT title FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6077 | + if (Database::num_rows($rs) > 0) { |
|
6078 | + $obj = Database::fetch_object($rs); |
|
6079 | + $row[5] = $obj->title; |
|
6080 | + } |
|
6081 | + break; |
|
6082 | + case 'thematic_advance': |
|
6083 | + $rs = Database::query("SELECT content FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6084 | + if (Database::num_rows($rs) > 0) { |
|
6085 | + $obj = Database::fetch_object($rs); |
|
6086 | + $row[5] = $obj->content; |
|
6087 | + } |
|
6088 | + break; |
|
6089 | + case 'thematic_plan': |
|
6090 | + $rs = Database::query("SELECT title FROM $table_tool WHERE c_id = $course_id AND id = $ref"); |
|
6091 | + if (Database::num_rows($rs) > 0) { |
|
6092 | + $obj = Database::fetch_object($rs); |
|
6093 | + $row[5] = $obj->title; |
|
6094 | + } |
|
6095 | + break; |
|
6096 | + default: |
|
6097 | + break; |
|
6098 | + } |
|
6099 | + |
|
6100 | + $row2 = $name_session; |
|
6101 | + if (!empty($coach_name)) { |
|
6102 | + $row2 .= '<br />'.get_lang('Coach').': '.$coach_name; |
|
6103 | + } |
|
6104 | + $row[2] = $row2; |
|
6105 | 6105 | if (!empty($row['col3'])) { |
6106 | 6106 | $userInfo = api_get_user_info($row['user_id']); |
6107 | 6107 | |
@@ -6118,11 +6118,11 @@ discard block |
||
6118 | 6118 | $row[4] = $ip; |
6119 | 6119 | } |
6120 | 6120 | |
6121 | - $resources[] = $row; |
|
6122 | - } |
|
6123 | - } |
|
6121 | + $resources[] = $row; |
|
6122 | + } |
|
6123 | + } |
|
6124 | 6124 | |
6125 | - return $resources; |
|
6125 | + return $resources; |
|
6126 | 6126 | } |
6127 | 6127 | |
6128 | 6128 | /** |
@@ -6132,63 +6132,63 @@ discard block |
||
6132 | 6132 | */ |
6133 | 6133 | public static function get_tool_name_table($tool) |
6134 | 6134 | { |
6135 | - switch ($tool) { |
|
6136 | - case 'document': |
|
6137 | - $table_name = TABLE_DOCUMENT; |
|
6138 | - $link_tool = 'document/document.php'; |
|
6139 | - $id_tool = 'id'; |
|
6140 | - break; |
|
6141 | - case 'learnpath': |
|
6142 | - $table_name = TABLE_LP_MAIN; |
|
6143 | - $link_tool = 'newscorm/lp_controller.php'; |
|
6144 | - $id_tool = 'id'; |
|
6145 | - break; |
|
6146 | - case 'quiz': |
|
6147 | - $table_name = TABLE_QUIZ_TEST; |
|
6148 | - $link_tool = 'exercice/exercice.php'; |
|
6149 | - $id_tool = 'id'; |
|
6150 | - break; |
|
6151 | - case 'glossary': |
|
6152 | - $table_name = TABLE_GLOSSARY; |
|
6153 | - $link_tool = 'glossary/index.php'; |
|
6154 | - $id_tool = 'glossary_id'; |
|
6155 | - break; |
|
6156 | - case 'link': |
|
6157 | - $table_name = TABLE_LINK; |
|
6158 | - $link_tool = 'link/link.php'; |
|
6159 | - $id_tool = 'id'; |
|
6160 | - break; |
|
6161 | - case 'course_description': |
|
6162 | - $table_name = TABLE_COURSE_DESCRIPTION; |
|
6163 | - $link_tool = 'course_description/'; |
|
6164 | - $id_tool = 'id'; |
|
6165 | - break; |
|
6166 | - case 'announcement': |
|
6167 | - $table_name = TABLE_ANNOUNCEMENT; |
|
6168 | - $link_tool = 'announcements/announcements.php'; |
|
6169 | - $id_tool = 'id'; |
|
6170 | - break; |
|
6171 | - case 'thematic': |
|
6172 | - $table_name = TABLE_THEMATIC; |
|
6173 | - $link_tool = 'course_progress/index.php'; |
|
6174 | - $id_tool = 'id'; |
|
6175 | - break; |
|
6176 | - case 'thematic_advance': |
|
6177 | - $table_name = TABLE_THEMATIC_ADVANCE; |
|
6178 | - $link_tool = 'course_progress/index.php'; |
|
6179 | - $id_tool = 'id'; |
|
6180 | - break; |
|
6181 | - case 'thematic_plan': |
|
6182 | - $table_name = TABLE_THEMATIC_PLAN; |
|
6183 | - $link_tool = 'course_progress/index.php'; |
|
6184 | - $id_tool = 'id'; |
|
6185 | - break; |
|
6186 | - default: |
|
6187 | - $table_name = $tool; |
|
6188 | - break; |
|
6189 | - } |
|
6190 | - |
|
6191 | - return array( |
|
6135 | + switch ($tool) { |
|
6136 | + case 'document': |
|
6137 | + $table_name = TABLE_DOCUMENT; |
|
6138 | + $link_tool = 'document/document.php'; |
|
6139 | + $id_tool = 'id'; |
|
6140 | + break; |
|
6141 | + case 'learnpath': |
|
6142 | + $table_name = TABLE_LP_MAIN; |
|
6143 | + $link_tool = 'newscorm/lp_controller.php'; |
|
6144 | + $id_tool = 'id'; |
|
6145 | + break; |
|
6146 | + case 'quiz': |
|
6147 | + $table_name = TABLE_QUIZ_TEST; |
|
6148 | + $link_tool = 'exercice/exercice.php'; |
|
6149 | + $id_tool = 'id'; |
|
6150 | + break; |
|
6151 | + case 'glossary': |
|
6152 | + $table_name = TABLE_GLOSSARY; |
|
6153 | + $link_tool = 'glossary/index.php'; |
|
6154 | + $id_tool = 'glossary_id'; |
|
6155 | + break; |
|
6156 | + case 'link': |
|
6157 | + $table_name = TABLE_LINK; |
|
6158 | + $link_tool = 'link/link.php'; |
|
6159 | + $id_tool = 'id'; |
|
6160 | + break; |
|
6161 | + case 'course_description': |
|
6162 | + $table_name = TABLE_COURSE_DESCRIPTION; |
|
6163 | + $link_tool = 'course_description/'; |
|
6164 | + $id_tool = 'id'; |
|
6165 | + break; |
|
6166 | + case 'announcement': |
|
6167 | + $table_name = TABLE_ANNOUNCEMENT; |
|
6168 | + $link_tool = 'announcements/announcements.php'; |
|
6169 | + $id_tool = 'id'; |
|
6170 | + break; |
|
6171 | + case 'thematic': |
|
6172 | + $table_name = TABLE_THEMATIC; |
|
6173 | + $link_tool = 'course_progress/index.php'; |
|
6174 | + $id_tool = 'id'; |
|
6175 | + break; |
|
6176 | + case 'thematic_advance': |
|
6177 | + $table_name = TABLE_THEMATIC_ADVANCE; |
|
6178 | + $link_tool = 'course_progress/index.php'; |
|
6179 | + $id_tool = 'id'; |
|
6180 | + break; |
|
6181 | + case 'thematic_plan': |
|
6182 | + $table_name = TABLE_THEMATIC_PLAN; |
|
6183 | + $link_tool = 'course_progress/index.php'; |
|
6184 | + $id_tool = 'id'; |
|
6185 | + break; |
|
6186 | + default: |
|
6187 | + $table_name = $tool; |
|
6188 | + break; |
|
6189 | + } |
|
6190 | + |
|
6191 | + return array( |
|
6192 | 6192 | 'table_name' => $table_name, |
6193 | 6193 | 'link_tool' => $link_tool, |
6194 | 6194 | 'id_tool' => $id_tool |
@@ -6197,45 +6197,45 @@ discard block |
||
6197 | 6197 | |
6198 | 6198 | public static function display_additional_profile_fields() |
6199 | 6199 | { |
6200 | - // getting all the extra profile fields that are defined by the platform administrator |
|
6201 | - $extra_fields = UserManager :: get_extra_fields(0,50,5,'ASC'); |
|
6202 | - |
|
6203 | - // creating the form |
|
6204 | - $return = '<form action="courseLog.php" method="get" name="additional_profile_field_form" id="additional_profile_field_form">'; |
|
6205 | - |
|
6206 | - // the select field with the additional user profile fields (= this is where we select the field of which we want to see |
|
6207 | - // the information the users have entered or selected. |
|
6208 | - $return .= '<select name="additional_profile_field">'; |
|
6209 | - $return .= '<option value="-">'.get_lang('SelectFieldToAdd').'</option>'; |
|
6210 | - $extra_fields_to_show = 0; |
|
6211 | - foreach ($extra_fields as $key=>$field) { |
|
6212 | - // show only extra fields that are visible + and can be filtered, added by J.Montoya |
|
6213 | - if ($field[6]==1 && $field[8] == 1) { |
|
6214 | - if (isset($_GET['additional_profile_field']) && $field[0] == $_GET['additional_profile_field'] ) { |
|
6215 | - $selected = 'selected="selected"'; |
|
6216 | - } else { |
|
6217 | - $selected = ''; |
|
6218 | - } |
|
6219 | - $extra_fields_to_show++; |
|
6220 | - $return .= '<option value="'.$field[0].'" '.$selected.'>'.$field[3].'</option>'; |
|
6221 | - } |
|
6222 | - } |
|
6223 | - $return .= '</select>'; |
|
6224 | - |
|
6225 | - // the form elements for the $_GET parameters (because the form is passed through GET |
|
6226 | - foreach ($_GET as $key=>$value){ |
|
6227 | - if ($key <> 'additional_profile_field') { |
|
6228 | - $return .= '<input type="hidden" name="'.Security::remove_XSS($key).'" value="'.Security::remove_XSS($value).'" />'; |
|
6229 | - } |
|
6230 | - } |
|
6231 | - // the submit button |
|
6232 | - $return .= '<button class="save" type="submit">'.get_lang('AddAdditionalProfileField').'</button>'; |
|
6233 | - $return .= '</form>'; |
|
6234 | - if ($extra_fields_to_show > 0) { |
|
6235 | - return $return; |
|
6236 | - } else { |
|
6237 | - return ''; |
|
6238 | - } |
|
6200 | + // getting all the extra profile fields that are defined by the platform administrator |
|
6201 | + $extra_fields = UserManager :: get_extra_fields(0,50,5,'ASC'); |
|
6202 | + |
|
6203 | + // creating the form |
|
6204 | + $return = '<form action="courseLog.php" method="get" name="additional_profile_field_form" id="additional_profile_field_form">'; |
|
6205 | + |
|
6206 | + // the select field with the additional user profile fields (= this is where we select the field of which we want to see |
|
6207 | + // the information the users have entered or selected. |
|
6208 | + $return .= '<select name="additional_profile_field">'; |
|
6209 | + $return .= '<option value="-">'.get_lang('SelectFieldToAdd').'</option>'; |
|
6210 | + $extra_fields_to_show = 0; |
|
6211 | + foreach ($extra_fields as $key=>$field) { |
|
6212 | + // show only extra fields that are visible + and can be filtered, added by J.Montoya |
|
6213 | + if ($field[6]==1 && $field[8] == 1) { |
|
6214 | + if (isset($_GET['additional_profile_field']) && $field[0] == $_GET['additional_profile_field'] ) { |
|
6215 | + $selected = 'selected="selected"'; |
|
6216 | + } else { |
|
6217 | + $selected = ''; |
|
6218 | + } |
|
6219 | + $extra_fields_to_show++; |
|
6220 | + $return .= '<option value="'.$field[0].'" '.$selected.'>'.$field[3].'</option>'; |
|
6221 | + } |
|
6222 | + } |
|
6223 | + $return .= '</select>'; |
|
6224 | + |
|
6225 | + // the form elements for the $_GET parameters (because the form is passed through GET |
|
6226 | + foreach ($_GET as $key=>$value){ |
|
6227 | + if ($key <> 'additional_profile_field') { |
|
6228 | + $return .= '<input type="hidden" name="'.Security::remove_XSS($key).'" value="'.Security::remove_XSS($value).'" />'; |
|
6229 | + } |
|
6230 | + } |
|
6231 | + // the submit button |
|
6232 | + $return .= '<button class="save" type="submit">'.get_lang('AddAdditionalProfileField').'</button>'; |
|
6233 | + $return .= '</form>'; |
|
6234 | + if ($extra_fields_to_show > 0) { |
|
6235 | + return $return; |
|
6236 | + } else { |
|
6237 | + return ''; |
|
6238 | + } |
|
6239 | 6239 | } |
6240 | 6240 | |
6241 | 6241 | /** |
@@ -6254,31 +6254,31 @@ discard block |
||
6254 | 6254 | */ |
6255 | 6255 | public static function get_addtional_profile_information_of_field_by_user($field_id, $users) |
6256 | 6256 | { |
6257 | - // Database table definition |
|
6258 | - $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
6259 | - $table_user_field_values = Database::get_main_table(TABLE_EXTRA_FIELD_VALUES); |
|
6257 | + // Database table definition |
|
6258 | + $table_user = Database::get_main_table(TABLE_MAIN_USER); |
|
6259 | + $table_user_field_values = Database::get_main_table(TABLE_EXTRA_FIELD_VALUES); |
|
6260 | 6260 | $extraField = Database::get_main_table(TABLE_EXTRA_FIELD); |
6261 | - $result_extra_field = UserManager::get_extra_field_information($field_id); |
|
6262 | - |
|
6263 | - if (!empty($users)) { |
|
6264 | - if ($result_extra_field['field_type'] == UserManager::USER_FIELD_TYPE_TAG ) { |
|
6265 | - foreach($users as $user_id) { |
|
6266 | - $user_result = UserManager::get_user_tags($user_id, $field_id); |
|
6267 | - $tag_list = array(); |
|
6268 | - foreach($user_result as $item) { |
|
6269 | - $tag_list[] = $item['tag']; |
|
6270 | - } |
|
6271 | - $return[$user_id][] = implode(', ',$tag_list); |
|
6272 | - } |
|
6273 | - } else { |
|
6274 | - $new_user_array = array(); |
|
6275 | - foreach ($users as $user_id) { |
|
6276 | - $new_user_array[]= "'".$user_id."'"; |
|
6277 | - } |
|
6278 | - $users = implode(',',$new_user_array); |
|
6261 | + $result_extra_field = UserManager::get_extra_field_information($field_id); |
|
6262 | + |
|
6263 | + if (!empty($users)) { |
|
6264 | + if ($result_extra_field['field_type'] == UserManager::USER_FIELD_TYPE_TAG ) { |
|
6265 | + foreach($users as $user_id) { |
|
6266 | + $user_result = UserManager::get_user_tags($user_id, $field_id); |
|
6267 | + $tag_list = array(); |
|
6268 | + foreach($user_result as $item) { |
|
6269 | + $tag_list[] = $item['tag']; |
|
6270 | + } |
|
6271 | + $return[$user_id][] = implode(', ',$tag_list); |
|
6272 | + } |
|
6273 | + } else { |
|
6274 | + $new_user_array = array(); |
|
6275 | + foreach ($users as $user_id) { |
|
6276 | + $new_user_array[]= "'".$user_id."'"; |
|
6277 | + } |
|
6278 | + $users = implode(',',$new_user_array); |
|
6279 | 6279 | $extraFieldType = EntityExtraField::USER_FIELD_TYPE; |
6280 | - // Selecting only the necessary information NOT ALL the user list |
|
6281 | - $sql = "SELECT user.user_id, v.value |
|
6280 | + // Selecting only the necessary information NOT ALL the user list |
|
6281 | + $sql = "SELECT user.user_id, v.value |
|
6282 | 6282 | FROM $table_user user |
6283 | 6283 | INNER JOIN $table_user_field_values v |
6284 | 6284 | ON (user.user_id = v.item_id) |
@@ -6289,27 +6289,27 @@ discard block |
||
6289 | 6289 | v.field_id=".intval($field_id)." AND |
6290 | 6290 | user.user_id IN ($users)"; |
6291 | 6291 | |
6292 | - $result = Database::query($sql); |
|
6293 | - while($row = Database::fetch_array($result)) { |
|
6294 | - // get option value for field type double select by id |
|
6295 | - if (!empty($row['value'])) { |
|
6296 | - if ($result_extra_field['field_type'] == |
|
6292 | + $result = Database::query($sql); |
|
6293 | + while($row = Database::fetch_array($result)) { |
|
6294 | + // get option value for field type double select by id |
|
6295 | + if (!empty($row['value'])) { |
|
6296 | + if ($result_extra_field['field_type'] == |
|
6297 | 6297 | ExtraField::FIELD_TYPE_DOUBLE_SELECT |
6298 | 6298 | ) { |
6299 | - $id_double_select = explode(';', $row['value']); |
|
6300 | - if (is_array($id_double_select)) { |
|
6301 | - $value1 = $result_extra_field['options'][$id_double_select[0]]['option_value']; |
|
6302 | - $value2 = $result_extra_field['options'][$id_double_select[1]]['option_value']; |
|
6303 | - $row['value'] = ($value1.';'.$value2); |
|
6304 | - } |
|
6305 | - } |
|
6306 | - } |
|
6307 | - // get other value from extra field |
|
6308 | - $return[$row['user_id']][] = $row['value']; |
|
6309 | - } |
|
6310 | - } |
|
6311 | - } |
|
6312 | - return $return; |
|
6299 | + $id_double_select = explode(';', $row['value']); |
|
6300 | + if (is_array($id_double_select)) { |
|
6301 | + $value1 = $result_extra_field['options'][$id_double_select[0]]['option_value']; |
|
6302 | + $value2 = $result_extra_field['options'][$id_double_select[1]]['option_value']; |
|
6303 | + $row['value'] = ($value1.';'.$value2); |
|
6304 | + } |
|
6305 | + } |
|
6306 | + } |
|
6307 | + // get other value from extra field |
|
6308 | + $return[$row['user_id']][] = $row['value']; |
|
6309 | + } |
|
6310 | + } |
|
6311 | + } |
|
6312 | + return $return; |
|
6313 | 6313 | } |
6314 | 6314 | |
6315 | 6315 | /** |
@@ -6318,18 +6318,18 @@ discard block |
||
6318 | 6318 | */ |
6319 | 6319 | public function count_student_in_course() |
6320 | 6320 | { |
6321 | - global $nbStudents; |
|
6322 | - return $nbStudents; |
|
6321 | + global $nbStudents; |
|
6322 | + return $nbStudents; |
|
6323 | 6323 | } |
6324 | 6324 | |
6325 | 6325 | public function sort_users($a, $b) |
6326 | 6326 | { |
6327 | - return strcmp(trim(api_strtolower($a[$_SESSION['tracking_column']])), trim(api_strtolower($b[$_SESSION['tracking_column']]))); |
|
6327 | + return strcmp(trim(api_strtolower($a[$_SESSION['tracking_column']])), trim(api_strtolower($b[$_SESSION['tracking_column']]))); |
|
6328 | 6328 | } |
6329 | 6329 | |
6330 | 6330 | public function sort_users_desc($a, $b) |
6331 | 6331 | { |
6332 | - return strcmp( trim(api_strtolower($b[$_SESSION['tracking_column']])), trim(api_strtolower($a[$_SESSION['tracking_column']]))); |
|
6332 | + return strcmp( trim(api_strtolower($b[$_SESSION['tracking_column']])), trim(api_strtolower($a[$_SESSION['tracking_column']]))); |
|
6333 | 6333 | } |
6334 | 6334 | |
6335 | 6335 | /** |
@@ -6338,8 +6338,8 @@ discard block |
||
6338 | 6338 | */ |
6339 | 6339 | public static function get_number_of_users() |
6340 | 6340 | { |
6341 | - global $user_ids; |
|
6342 | - return count($user_ids); |
|
6341 | + global $user_ids; |
|
6342 | + return count($user_ids); |
|
6343 | 6343 | } |
6344 | 6344 | |
6345 | 6345 | /** |
@@ -6355,37 +6355,37 @@ discard block |
||
6355 | 6355 | { |
6356 | 6356 | global $user_ids, $course_code, $additional_user_profile_info, $export_csv, $is_western_name_order, $csv_content, $session_id; |
6357 | 6357 | |
6358 | - $course_code = Database::escape_string($course_code); |
|
6359 | - $tbl_user = Database::get_main_table(TABLE_MAIN_USER); |
|
6360 | - $tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); |
|
6358 | + $course_code = Database::escape_string($course_code); |
|
6359 | + $tbl_user = Database::get_main_table(TABLE_MAIN_USER); |
|
6360 | + $tbl_url_rel_user = Database::get_main_table(TABLE_MAIN_ACCESS_URL_REL_USER); |
|
6361 | 6361 | |
6362 | - $access_url_id = api_get_current_access_url_id(); |
|
6362 | + $access_url_id = api_get_current_access_url_id(); |
|
6363 | 6363 | |
6364 | - // get all users data from a course for sortable with limit |
|
6365 | - if (is_array($user_ids)) { |
|
6366 | - $user_ids = array_map('intval', $user_ids); |
|
6367 | - $condition_user = " WHERE user.user_id IN (".implode(',',$user_ids).") "; |
|
6368 | - } else { |
|
6369 | - $user_ids = intval($user_ids); |
|
6370 | - $condition_user = " WHERE user.user_id = $user_ids "; |
|
6371 | - } |
|
6364 | + // get all users data from a course for sortable with limit |
|
6365 | + if (is_array($user_ids)) { |
|
6366 | + $user_ids = array_map('intval', $user_ids); |
|
6367 | + $condition_user = " WHERE user.user_id IN (".implode(',',$user_ids).") "; |
|
6368 | + } else { |
|
6369 | + $user_ids = intval($user_ids); |
|
6370 | + $condition_user = " WHERE user.user_id = $user_ids "; |
|
6371 | + } |
|
6372 | 6372 | |
6373 | - if (!empty($_GET['user_keyword'])) { |
|
6374 | - $keyword = trim(Database::escape_string($_GET['user_keyword'])); |
|
6375 | - $condition_user .= " AND ( |
|
6373 | + if (!empty($_GET['user_keyword'])) { |
|
6374 | + $keyword = trim(Database::escape_string($_GET['user_keyword'])); |
|
6375 | + $condition_user .= " AND ( |
|
6376 | 6376 | user.firstname LIKE '%".$keyword."%' OR |
6377 | 6377 | user.lastname LIKE '%".$keyword."%' OR |
6378 | 6378 | user.username LIKE '%".$keyword."%' OR |
6379 | 6379 | user.email LIKE '%".$keyword."%' |
6380 | 6380 | ) "; |
6381 | - } |
|
6381 | + } |
|
6382 | 6382 | |
6383 | 6383 | $url_table = null; |
6384 | 6384 | $url_condition = null; |
6385 | - if (api_is_multiple_url_enabled()) { |
|
6386 | - $url_table = ", ".$tbl_url_rel_user." as url_users"; |
|
6387 | - $url_condition = " AND user.user_id = url_users.user_id AND access_url_id='$access_url_id'"; |
|
6388 | - } |
|
6385 | + if (api_is_multiple_url_enabled()) { |
|
6386 | + $url_table = ", ".$tbl_url_rel_user." as url_users"; |
|
6387 | + $url_condition = " AND user.user_id = url_users.user_id AND access_url_id='$access_url_id'"; |
|
6388 | + } |
|
6389 | 6389 | |
6390 | 6390 | $invitedUsersCondition = ''; |
6391 | 6391 | |
@@ -6393,7 +6393,7 @@ discard block |
||
6393 | 6393 | $invitedUsersCondition = " AND user.status != " . INVITEE; |
6394 | 6394 | } |
6395 | 6395 | |
6396 | - $sql = "SELECT user.user_id as user_id, |
|
6396 | + $sql = "SELECT user.user_id as user_id, |
|
6397 | 6397 | user.official_code as col0, |
6398 | 6398 | user.lastname as col1, |
6399 | 6399 | user.firstname as col2, |
@@ -6401,17 +6401,17 @@ discard block |
||
6401 | 6401 | FROM $tbl_user as user $url_table |
6402 | 6402 | $condition_user $url_condition $invitedUsersCondition"; |
6403 | 6403 | |
6404 | - if (!in_array($direction, array('ASC','DESC'))) { |
|
6405 | - $direction = 'ASC'; |
|
6406 | - } |
|
6404 | + if (!in_array($direction, array('ASC','DESC'))) { |
|
6405 | + $direction = 'ASC'; |
|
6406 | + } |
|
6407 | 6407 | |
6408 | - $column = intval($column); |
|
6408 | + $column = intval($column); |
|
6409 | 6409 | |
6410 | - $from = intval($from); |
|
6411 | - $number_of_items = intval($number_of_items); |
|
6410 | + $from = intval($from); |
|
6411 | + $number_of_items = intval($number_of_items); |
|
6412 | 6412 | |
6413 | - $sql .= " ORDER BY col$column $direction "; |
|
6414 | - $sql .= " LIMIT $from,$number_of_items"; |
|
6413 | + $sql .= " ORDER BY col$column $direction "; |
|
6414 | + $sql .= " LIMIT $from,$number_of_items"; |
|
6415 | 6415 | |
6416 | 6416 | $res = Database::query($sql); |
6417 | 6417 | $users = array(); |
@@ -6445,7 +6445,7 @@ discard block |
||
6445 | 6445 | } |
6446 | 6446 | } |
6447 | 6447 | |
6448 | - while ($user = Database::fetch_array($res, 'ASSOC')) { |
|
6448 | + while ($user = Database::fetch_array($res, 'ASSOC')) { |
|
6449 | 6449 | $courseInfo = api_get_course_info($course_code); |
6450 | 6450 | $courseId = $courseInfo['real_id']; |
6451 | 6451 | |
@@ -6476,10 +6476,10 @@ discard block |
||
6476 | 6476 | $session_id |
6477 | 6477 | ); |
6478 | 6478 | |
6479 | - if (empty($avg_student_progress)) { |
|
6479 | + if (empty($avg_student_progress)) { |
|
6480 | 6480 | $avg_student_progress = 0; |
6481 | - } |
|
6482 | - $user['average_progress'] = $avg_student_progress.'%'; |
|
6481 | + } |
|
6482 | + $user['average_progress'] = $avg_student_progress.'%'; |
|
6483 | 6483 | |
6484 | 6484 | $total_user_exercise = Tracking::get_exercise_student_progress( |
6485 | 6485 | $total_exercises, |
@@ -6499,11 +6499,11 @@ discard block |
||
6499 | 6499 | |
6500 | 6500 | $user['exercise_average_best_attempt'] = $total_user_exercise; |
6501 | 6501 | |
6502 | - if (is_numeric($avg_student_score)) { |
|
6503 | - $user['student_score'] = $avg_student_score.'%'; |
|
6504 | - } else { |
|
6505 | - $user['student_score'] = $avg_student_score; |
|
6506 | - } |
|
6502 | + if (is_numeric($avg_student_score)) { |
|
6503 | + $user['student_score'] = $avg_student_score.'%'; |
|
6504 | + } else { |
|
6505 | + $user['student_score'] = $avg_student_score; |
|
6506 | + } |
|
6507 | 6507 | |
6508 | 6508 | $user['count_assignments'] = Tracking::count_student_assignments( |
6509 | 6509 | $user['user_id'], |
@@ -6526,29 +6526,29 @@ discard block |
||
6526 | 6526 | $session_id |
6527 | 6527 | ); |
6528 | 6528 | |
6529 | - // we need to display an additional profile field |
|
6530 | - $user['additional'] = ''; |
|
6529 | + // we need to display an additional profile field |
|
6530 | + $user['additional'] = ''; |
|
6531 | 6531 | |
6532 | - if (isset($_GET['additional_profile_field']) && is_numeric($_GET['additional_profile_field'])) { |
|
6533 | - if (isset($additional_user_profile_info[$user['user_id']]) && |
|
6532 | + if (isset($_GET['additional_profile_field']) && is_numeric($_GET['additional_profile_field'])) { |
|
6533 | + if (isset($additional_user_profile_info[$user['user_id']]) && |
|
6534 | 6534 | is_array($additional_user_profile_info[$user['user_id']]) |
6535 | 6535 | ) { |
6536 | - $user['additional'] = implode(', ', $additional_user_profile_info[$user['user_id']]); |
|
6537 | - } |
|
6538 | - } |
|
6536 | + $user['additional'] = implode(', ', $additional_user_profile_info[$user['user_id']]); |
|
6537 | + } |
|
6538 | + } |
|
6539 | 6539 | |
6540 | 6540 | if (empty($session_id)) { |
6541 | 6541 | $user['survey'] = (isset($survey_user_list[$user['user_id']]) ? $survey_user_list[$user['user_id']] : 0) .' / '.$total_surveys; |
6542 | 6542 | } |
6543 | 6543 | |
6544 | - $user['link'] = '<center> |
|
6544 | + $user['link'] = '<center> |
|
6545 | 6545 | <a href="../mySpace/myStudents.php?student='.$user['user_id'].'&details=true&course='.$course_code.'&origin=tracking_course&id_session='.$session_id.'"> |
6546 | 6546 | '.Display::return_icon('2rightarrow.png').' |
6547 | 6547 | </a> |
6548 | 6548 | </center>'; |
6549 | 6549 | |
6550 | - // store columns in array $users |
|
6551 | - $is_western_name_order = api_is_western_name_order(); |
|
6550 | + // store columns in array $users |
|
6551 | + $is_western_name_order = api_is_western_name_order(); |
|
6552 | 6552 | $user_row = array(); |
6553 | 6553 | $user_row[]= $user['official_code']; //0 |
6554 | 6554 | if ($is_western_name_order) { |
@@ -6584,21 +6584,21 @@ discard block |
||
6584 | 6584 | |
6585 | 6585 | $users[] = $user_row; |
6586 | 6586 | |
6587 | - if ($export_csv) { |
|
6588 | - if (empty($session_id)) { |
|
6587 | + if ($export_csv) { |
|
6588 | + if (empty($session_id)) { |
|
6589 | 6589 | $user_row = array_map('strip_tags', $user_row); |
6590 | - unset($user_row[14]); |
|
6591 | - unset($user_row[15]); |
|
6590 | + unset($user_row[14]); |
|
6591 | + unset($user_row[15]); |
|
6592 | 6592 | } else { |
6593 | 6593 | $user_row = array_map('strip_tags', $user_row); |
6594 | 6594 | unset($user_row[13]); |
6595 | 6595 | unset($user_row[14]); |
6596 | 6596 | } |
6597 | 6597 | |
6598 | - $csv_content[] = $user_row; |
|
6599 | - } |
|
6600 | - } |
|
6601 | - return $users; |
|
6598 | + $csv_content[] = $user_row; |
|
6599 | + } |
|
6600 | + } |
|
6601 | + return $users; |
|
6602 | 6602 | } |
6603 | 6603 | } |
6604 | 6604 | |
@@ -6616,18 +6616,18 @@ discard block |
||
6616 | 6616 | */ |
6617 | 6617 | public function display_login_tracking_info($view, $user_id, $course_id, $session_id = 0) |
6618 | 6618 | { |
6619 | - $MonthsLong = $GLOBALS['MonthsLong']; |
|
6620 | - |
|
6621 | - // protected data |
|
6622 | - $user_id = intval($user_id); |
|
6623 | - $session_id = intval($session_id); |
|
6624 | - $course_id = Database::escape_string($course_id); |
|
6625 | - |
|
6626 | - $track_access_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
6627 | - $tempView = $view; |
|
6628 | - if(substr($view,0,1) == '1') { |
|
6629 | - $new_view = substr_replace($view,'0',0,1); |
|
6630 | - echo " |
|
6619 | + $MonthsLong = $GLOBALS['MonthsLong']; |
|
6620 | + |
|
6621 | + // protected data |
|
6622 | + $user_id = intval($user_id); |
|
6623 | + $session_id = intval($session_id); |
|
6624 | + $course_id = Database::escape_string($course_id); |
|
6625 | + |
|
6626 | + $track_access_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
6627 | + $tempView = $view; |
|
6628 | + if(substr($view,0,1) == '1') { |
|
6629 | + $new_view = substr_replace($view,'0',0,1); |
|
6630 | + echo " |
|
6631 | 6631 | <tr> |
6632 | 6632 | <td valign='top'> |
6633 | 6633 | <font color='#0000FF'>- </font>" . |
@@ -6635,9 +6635,9 @@ discard block |
||
6635 | 6635 | </td> |
6636 | 6636 | </tr> |
6637 | 6637 | "; |
6638 | - echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('LoginsDetails')."<br>"; |
|
6638 | + echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('LoginsDetails')."<br>"; |
|
6639 | 6639 | |
6640 | - $sql = "SELECT UNIX_TIMESTAMP(access_date), count(access_date) |
|
6640 | + $sql = "SELECT UNIX_TIMESTAMP(access_date), count(access_date) |
|
6641 | 6641 | FROM $track_access_table |
6642 | 6642 | WHERE access_user_id = $user_id |
6643 | 6643 | AND c_id = $course_id |
@@ -6645,11 +6645,11 @@ discard block |
||
6645 | 6645 | GROUP BY YEAR(access_date),MONTH(access_date) |
6646 | 6646 | ORDER BY YEAR(access_date),MONTH(access_date) ASC"; |
6647 | 6647 | |
6648 | - echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6649 | - $results = getManyResults3Col($sql); |
|
6648 | + echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6649 | + $results = getManyResults3Col($sql); |
|
6650 | 6650 | |
6651 | - echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6652 | - echo "<tr> |
|
6651 | + echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6652 | + echo "<tr> |
|
6653 | 6653 | <td class='secLine'> |
6654 | 6654 | ".get_lang('LoginsTitleMonthColumn')." |
6655 | 6655 | </td> |
@@ -6657,36 +6657,36 @@ discard block |
||
6657 | 6657 | ".get_lang('LoginsTitleCountColumn')." |
6658 | 6658 | </td> |
6659 | 6659 | </tr>"; |
6660 | - $total = 0; |
|
6661 | - if (is_array($results)) { |
|
6662 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
6663 | - echo "<tr>"; |
|
6664 | - echo "<td class='content'><a href='logins_details.php?uInfo=".$user_id."&reqdate=".$results[$j][0]."&view=".Security::remove_XSS($view)."'>".$MonthsLong[date('n', $results[$j][0])-1].' '.date('Y', $results[$j][0])."</a></td>"; |
|
6665 | - echo "<td valign='top' align='right' class='content'>".$results[$j][1]."</td>"; |
|
6666 | - echo"</tr>"; |
|
6667 | - $total = $total + $results[$j][1]; |
|
6668 | - } |
|
6669 | - echo "<tr>"; |
|
6670 | - echo "<td>".get_lang('Total')."</td>"; |
|
6671 | - echo "<td align='right' class='content'>".$total."</td>"; |
|
6672 | - echo"</tr>"; |
|
6673 | - } else { |
|
6674 | - echo "<tr>"; |
|
6675 | - echo "<td colspan='2'><center>".get_lang('NoResult')."</center></td>"; |
|
6676 | - echo"</tr>"; |
|
6677 | - } |
|
6678 | - echo "</table>"; |
|
6679 | - echo "</td></tr>"; |
|
6680 | - } else { |
|
6681 | - $new_view = substr_replace($view,'1',0,1); |
|
6682 | - echo " |
|
6660 | + $total = 0; |
|
6661 | + if (is_array($results)) { |
|
6662 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
6663 | + echo "<tr>"; |
|
6664 | + echo "<td class='content'><a href='logins_details.php?uInfo=".$user_id."&reqdate=".$results[$j][0]."&view=".Security::remove_XSS($view)."'>".$MonthsLong[date('n', $results[$j][0])-1].' '.date('Y', $results[$j][0])."</a></td>"; |
|
6665 | + echo "<td valign='top' align='right' class='content'>".$results[$j][1]."</td>"; |
|
6666 | + echo"</tr>"; |
|
6667 | + $total = $total + $results[$j][1]; |
|
6668 | + } |
|
6669 | + echo "<tr>"; |
|
6670 | + echo "<td>".get_lang('Total')."</td>"; |
|
6671 | + echo "<td align='right' class='content'>".$total."</td>"; |
|
6672 | + echo"</tr>"; |
|
6673 | + } else { |
|
6674 | + echo "<tr>"; |
|
6675 | + echo "<td colspan='2'><center>".get_lang('NoResult')."</center></td>"; |
|
6676 | + echo"</tr>"; |
|
6677 | + } |
|
6678 | + echo "</table>"; |
|
6679 | + echo "</td></tr>"; |
|
6680 | + } else { |
|
6681 | + $new_view = substr_replace($view,'1',0,1); |
|
6682 | + echo " |
|
6683 | 6683 | <tr> |
6684 | 6684 | <td valign='top'> |
6685 | 6685 | +<font color='#0000FF'> </font><a href='".api_get_self()."?uInfo=".$user_id."&view=".Security::remove_XSS($new_view)."' class='specialLink'>".get_lang('LoginsAndAccessTools')."</a> |
6686 | 6686 | </td> |
6687 | 6687 | </tr> |
6688 | 6688 | "; |
6689 | - } |
|
6689 | + } |
|
6690 | 6690 | } |
6691 | 6691 | |
6692 | 6692 | /** |
@@ -6699,38 +6699,38 @@ discard block |
||
6699 | 6699 | */ |
6700 | 6700 | public function display_exercise_tracking_info($view, $user_id, $courseCode) |
6701 | 6701 | { |
6702 | - global $TBL_TRACK_HOTPOTATOES, $TABLECOURSE_EXERCICES, $TABLETRACK_EXERCICES, $dateTimeFormatLong; |
|
6702 | + global $TBL_TRACK_HOTPOTATOES, $TABLECOURSE_EXERCICES, $TABLETRACK_EXERCICES, $dateTimeFormatLong; |
|
6703 | 6703 | $courseId = api_get_course_int_id($courseCode); |
6704 | - if(substr($view,1,1) == '1') { |
|
6705 | - $new_view = substr_replace($view,'0',1,1); |
|
6706 | - echo "<tr> |
|
6704 | + if(substr($view,1,1) == '1') { |
|
6705 | + $new_view = substr_replace($view,'0',1,1); |
|
6706 | + echo "<tr> |
|
6707 | 6707 | <td valign='top'> |
6708 | 6708 | <font color='#0000FF'>- </font><b>".get_lang('ExercicesResults')."</b> [<a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."'>".get_lang('Close')."</a>] [<a href='userLogCSV.php?".api_get_cidreq()."&uInfo=".Security::remove_XSS($_GET['uInfo'])."&view=01000'>".get_lang('ExportAsCSV')."</a>] |
6709 | 6709 | </td> |
6710 | 6710 | </tr>"; |
6711 | - echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('ExercicesDetails')."<br />"; |
|
6711 | + echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('ExercicesDetails')."<br />"; |
|
6712 | 6712 | |
6713 | - $sql = "SELECT ce.title, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
6713 | + $sql = "SELECT ce.title, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
6714 | 6714 | FROM $TABLECOURSE_EXERCICES AS ce , $TABLETRACK_EXERCICES AS te |
6715 | 6715 | WHERE te.c_id = $courseId |
6716 | 6716 | AND te.exe_user_id = ".intval($user_id)." |
6717 | 6717 | AND te.exe_exo_id = ce.id |
6718 | 6718 | ORDER BY ce.title ASC, te.exe_date ASC"; |
6719 | 6719 | |
6720 | - $hpsql = "SELECT te.exe_name, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
6720 | + $hpsql = "SELECT te.exe_name, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
6721 | 6721 | FROM $TBL_TRACK_HOTPOTATOES AS te |
6722 | 6722 | WHERE te.exe_user_id = '".intval($user_id)."' AND te.c_id = $courseId |
6723 | 6723 | ORDER BY te.c_id ASC, te.exe_date ASC"; |
6724 | 6724 | |
6725 | - $hpresults = StatsUtils::getManyResultsXCol($hpsql, 4); |
|
6725 | + $hpresults = StatsUtils::getManyResultsXCol($hpsql, 4); |
|
6726 | 6726 | |
6727 | - $NoTestRes = 0; |
|
6728 | - $NoHPTestRes = 0; |
|
6727 | + $NoTestRes = 0; |
|
6728 | + $NoHPTestRes = 0; |
|
6729 | 6729 | |
6730 | - echo "<tr>\n<td style='padding-left : 40px;padding-right : 40px;'>\n"; |
|
6731 | - $results = StatsUtils::getManyResultsXCol($sql, 4); |
|
6732 | - echo "<table cellpadding='2' cellspacing='1' border='0' align='center'>\n"; |
|
6733 | - echo " |
|
6730 | + echo "<tr>\n<td style='padding-left : 40px;padding-right : 40px;'>\n"; |
|
6731 | + $results = StatsUtils::getManyResultsXCol($sql, 4); |
|
6732 | + echo "<table cellpadding='2' cellspacing='1' border='0' align='center'>\n"; |
|
6733 | + echo " |
|
6734 | 6734 | <tr bgcolor='#E6E6E6'> |
6735 | 6735 | <td> |
6736 | 6736 | ".get_lang('ExercicesTitleExerciceColumn')." |
@@ -6743,28 +6743,28 @@ discard block |
||
6743 | 6743 | </td> |
6744 | 6744 | </tr>"; |
6745 | 6745 | |
6746 | - if (is_array($results)) { |
|
6747 | - for($i = 0; $i < sizeof($results); $i++) { |
|
6748 | - $display_date = api_convert_and_format_date($results[$i][3], null, date_default_timezone_get()); |
|
6749 | - echo "<tr>\n"; |
|
6750 | - echo "<td class='content'>".$results[$i][0]."</td>\n"; |
|
6751 | - echo "<td class='content'>".$display_date."</td>\n"; |
|
6752 | - echo "<td valign='top' align='right' class='content'>".$results[$i][1]." / ".$results[$i][2]."</td>\n"; |
|
6753 | - echo "</tr>\n"; |
|
6754 | - } |
|
6755 | - } else { |
|
6756 | - // istvan begin |
|
6757 | - $NoTestRes = 1; |
|
6758 | - } |
|
6759 | - |
|
6760 | - // The Result of Tests |
|
6761 | - if (is_array($hpresults)) { |
|
6762 | - for($i = 0; $i < sizeof($hpresults); $i++) { |
|
6763 | - $title = GetQuizName($hpresults[$i][0],''); |
|
6764 | - if ($title == '') |
|
6765 | - $title = basename($hpresults[$i][0]); |
|
6766 | - $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
|
6767 | - ?> |
|
6746 | + if (is_array($results)) { |
|
6747 | + for($i = 0; $i < sizeof($results); $i++) { |
|
6748 | + $display_date = api_convert_and_format_date($results[$i][3], null, date_default_timezone_get()); |
|
6749 | + echo "<tr>\n"; |
|
6750 | + echo "<td class='content'>".$results[$i][0]."</td>\n"; |
|
6751 | + echo "<td class='content'>".$display_date."</td>\n"; |
|
6752 | + echo "<td valign='top' align='right' class='content'>".$results[$i][1]." / ".$results[$i][2]."</td>\n"; |
|
6753 | + echo "</tr>\n"; |
|
6754 | + } |
|
6755 | + } else { |
|
6756 | + // istvan begin |
|
6757 | + $NoTestRes = 1; |
|
6758 | + } |
|
6759 | + |
|
6760 | + // The Result of Tests |
|
6761 | + if (is_array($hpresults)) { |
|
6762 | + for($i = 0; $i < sizeof($hpresults); $i++) { |
|
6763 | + $title = GetQuizName($hpresults[$i][0],''); |
|
6764 | + if ($title == '') |
|
6765 | + $title = basename($hpresults[$i][0]); |
|
6766 | + $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
|
6767 | + ?> |
|
6768 | 6768 | <tr> |
6769 | 6769 | <td class="content"><?php echo $title; ?></td> |
6770 | 6770 | <td class="content" align="center"><?php echo $display_date; ?></td> |
@@ -6774,26 +6774,26 @@ discard block |
||
6774 | 6774 | |
6775 | 6775 | <?php |
6776 | 6776 | } |
6777 | - } else { |
|
6778 | - $NoHPTestRes = 1; |
|
6779 | - } |
|
6780 | - |
|
6781 | - if ($NoTestRes == 1 && $NoHPTestRes == 1) { |
|
6782 | - echo "<tr>\n"; |
|
6783 | - echo "<td colspan='3'><center>".get_lang('NoResult')."</center></td>\n"; |
|
6784 | - echo "</tr>\n"; |
|
6785 | - } |
|
6786 | - echo "</table>"; |
|
6787 | - echo "</td>\n</tr>\n"; |
|
6788 | - } else { |
|
6789 | - $new_view = substr_replace($view,'1',1,1); |
|
6790 | - echo " |
|
6777 | + } else { |
|
6778 | + $NoHPTestRes = 1; |
|
6779 | + } |
|
6780 | + |
|
6781 | + if ($NoTestRes == 1 && $NoHPTestRes == 1) { |
|
6782 | + echo "<tr>\n"; |
|
6783 | + echo "<td colspan='3'><center>".get_lang('NoResult')."</center></td>\n"; |
|
6784 | + echo "</tr>\n"; |
|
6785 | + } |
|
6786 | + echo "</table>"; |
|
6787 | + echo "</td>\n</tr>\n"; |
|
6788 | + } else { |
|
6789 | + $new_view = substr_replace($view,'1',1,1); |
|
6790 | + echo " |
|
6791 | 6791 | <tr> |
6792 | 6792 | <td valign='top'> |
6793 | 6793 | +<font color='#0000FF'> </font><a href='".api_get_self()."?uInfo=$user_id&view=".$new_view."' class='specialLink'>".get_lang('ExercicesResults')."</a> |
6794 | 6794 | </td> |
6795 | 6795 | </tr>"; |
6796 | - } |
|
6796 | + } |
|
6797 | 6797 | } |
6798 | 6798 | |
6799 | 6799 | /** |
@@ -6802,27 +6802,27 @@ discard block |
||
6802 | 6802 | */ |
6803 | 6803 | public function display_student_publications_tracking_info($view, $user_id, $course_id) |
6804 | 6804 | { |
6805 | - global $TABLETRACK_UPLOADS, $TABLECOURSE_WORK; |
|
6805 | + global $TABLETRACK_UPLOADS, $TABLECOURSE_WORK; |
|
6806 | 6806 | $_course = api_get_course_info_by_id($course_id); |
6807 | 6807 | |
6808 | - if (substr($view,2,1) == '1') { |
|
6809 | - $new_view = substr_replace($view,'0',2,1); |
|
6810 | - echo "<tr> |
|
6808 | + if (substr($view,2,1) == '1') { |
|
6809 | + $new_view = substr_replace($view,'0',2,1); |
|
6810 | + echo "<tr> |
|
6811 | 6811 | <td valign='top'> |
6812 | 6812 | <font color='#0000FF'>- </font><b>".get_lang('WorkUploads')."</b> [<a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."'>".get_lang('Close')."</a>] [<a href='userLogCSV.php?".api_get_cidreq()."&uInfo=".Security::remove_XSS($_GET['uInfo'])."&view=00100'>".get_lang('ExportAsCSV')."</a>] |
6813 | 6813 | </td> |
6814 | 6814 | </tr>"; |
6815 | - echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('WorksDetails')."<br>"; |
|
6816 | - $sql = "SELECT u.upload_date, w.title, w.author,w.url |
|
6815 | + echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('WorksDetails')."<br>"; |
|
6816 | + $sql = "SELECT u.upload_date, w.title, w.author,w.url |
|
6817 | 6817 | FROM $TABLETRACK_UPLOADS u , $TABLECOURSE_WORK w |
6818 | 6818 | WHERE u.upload_work_id = w.id |
6819 | 6819 | AND u.upload_user_id = '".intval($user_id)."' |
6820 | 6820 | AND u.c_id = '".intval($course_id)."' |
6821 | 6821 | ORDER BY u.upload_date DESC"; |
6822 | - echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6823 | - $results = StatsUtils::getManyResultsXCol($sql,4); |
|
6824 | - echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6825 | - echo "<tr> |
|
6822 | + echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6823 | + $results = StatsUtils::getManyResultsXCol($sql,4); |
|
6824 | + echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6825 | + echo "<tr> |
|
6826 | 6826 | <td class='secLine' width='40%'> |
6827 | 6827 | ".get_lang('WorkTitle')." |
6828 | 6828 | </td> |
@@ -6833,35 +6833,35 @@ discard block |
||
6833 | 6833 | ".get_lang('Date')." |
6834 | 6834 | </td> |
6835 | 6835 | </tr>"; |
6836 | - if (is_array($results)) { |
|
6837 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
6838 | - $pathToFile = api_get_path(WEB_COURSE_PATH).$_course['path']."/".$results[$j][3]; |
|
6839 | - $beautifulDate = api_convert_and_format_date($results[$j][0], null, date_default_timezone_get()); |
|
6840 | - echo "<tr>"; |
|
6841 | - echo "<td class='content'>" |
|
6842 | - ."<a href ='".$pathToFile."'>".$results[$j][1]."</a>" |
|
6843 | - ."</td>"; |
|
6844 | - echo "<td class='content'>".$results[$j][2]."</td>"; |
|
6845 | - echo "<td class='content'>".$beautifulDate."</td>"; |
|
6846 | - echo"</tr>"; |
|
6847 | - } |
|
6848 | - } else { |
|
6849 | - echo "<tr>"; |
|
6850 | - echo "<td colspan='3'><center>".get_lang('NoResult')."</center></td>"; |
|
6851 | - echo"</tr>"; |
|
6852 | - } |
|
6853 | - echo "</table>"; |
|
6854 | - echo "</td></tr>"; |
|
6855 | - } else { |
|
6856 | - $new_view = substr_replace($view,'1',2,1); |
|
6857 | - echo " |
|
6836 | + if (is_array($results)) { |
|
6837 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
6838 | + $pathToFile = api_get_path(WEB_COURSE_PATH).$_course['path']."/".$results[$j][3]; |
|
6839 | + $beautifulDate = api_convert_and_format_date($results[$j][0], null, date_default_timezone_get()); |
|
6840 | + echo "<tr>"; |
|
6841 | + echo "<td class='content'>" |
|
6842 | + ."<a href ='".$pathToFile."'>".$results[$j][1]."</a>" |
|
6843 | + ."</td>"; |
|
6844 | + echo "<td class='content'>".$results[$j][2]."</td>"; |
|
6845 | + echo "<td class='content'>".$beautifulDate."</td>"; |
|
6846 | + echo"</tr>"; |
|
6847 | + } |
|
6848 | + } else { |
|
6849 | + echo "<tr>"; |
|
6850 | + echo "<td colspan='3'><center>".get_lang('NoResult')."</center></td>"; |
|
6851 | + echo"</tr>"; |
|
6852 | + } |
|
6853 | + echo "</table>"; |
|
6854 | + echo "</td></tr>"; |
|
6855 | + } else { |
|
6856 | + $new_view = substr_replace($view,'1',2,1); |
|
6857 | + echo " |
|
6858 | 6858 | <tr> |
6859 | 6859 | <td valign='top'> |
6860 | 6860 | +<font color='#0000FF'> </font><a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."' class='specialLink'>".get_lang('WorkUploads')."</a> |
6861 | 6861 | </td> |
6862 | 6862 | </tr> |
6863 | 6863 | "; |
6864 | - } |
|
6864 | + } |
|
6865 | 6865 | } |
6866 | 6866 | |
6867 | 6867 | /** |
@@ -6870,55 +6870,55 @@ discard block |
||
6870 | 6870 | */ |
6871 | 6871 | public function display_links_tracking_info($view, $user_id, $courseCode) |
6872 | 6872 | { |
6873 | - global $TABLETRACK_LINKS, $TABLECOURSE_LINKS; |
|
6873 | + global $TABLETRACK_LINKS, $TABLECOURSE_LINKS; |
|
6874 | 6874 | $courseId = api_get_course_int_id($courseCode); |
6875 | - if (substr($view,3,1) == '1') { |
|
6876 | - $new_view = substr_replace($view,'0',3,1); |
|
6877 | - echo " |
|
6875 | + if (substr($view,3,1) == '1') { |
|
6876 | + $new_view = substr_replace($view,'0',3,1); |
|
6877 | + echo " |
|
6878 | 6878 | <tr> |
6879 | 6879 | <td valign='top'> |
6880 | 6880 | <font color='#0000FF'>- </font><b>".get_lang('LinksAccess')."</b> [<a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."'>".get_lang('Close')."</a>] [<a href='userLogCSV.php?".api_get_cidreq()."&uInfo=".Security::remove_XSS($_GET['uInfo'])."&view=00010'>".get_lang('ExportAsCSV')."</a>] |
6881 | 6881 | </td> |
6882 | 6882 | </tr> |
6883 | 6883 | "; |
6884 | - echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('LinksDetails')."<br>"; |
|
6885 | - $sql = "SELECT cl.title, cl.url |
|
6884 | + echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('LinksDetails')."<br>"; |
|
6885 | + $sql = "SELECT cl.title, cl.url |
|
6886 | 6886 | FROM $TABLETRACK_LINKS AS sl, $TABLECOURSE_LINKS AS cl |
6887 | 6887 | WHERE sl.links_link_id = cl.id |
6888 | 6888 | AND sl.c_id = $courseId |
6889 | 6889 | AND sl.links_user_id = ".intval($user_id)." |
6890 | 6890 | GROUP BY cl.title, cl.url"; |
6891 | - echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6892 | - $results = StatsUtils::getManyResults2Col($sql); |
|
6893 | - echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6894 | - echo "<tr> |
|
6891 | + echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6892 | + $results = StatsUtils::getManyResults2Col($sql); |
|
6893 | + echo "<table cellpadding='2' cellspacing='1' border='0' align=center>"; |
|
6894 | + echo "<tr> |
|
6895 | 6895 | <td class='secLine'> |
6896 | 6896 | ".get_lang('LinksTitleLinkColumn')." |
6897 | 6897 | </td> |
6898 | 6898 | </tr>"; |
6899 | - if (is_array($results)) { |
|
6900 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
6901 | - echo "<tr>"; |
|
6902 | - echo "<td class='content'><a href='".$results[$j][1]."'>".$results[$j][0]."</a></td>"; |
|
6903 | - echo"</tr>"; |
|
6904 | - } |
|
6905 | - } else { |
|
6906 | - echo "<tr>"; |
|
6907 | - echo "<td ><center>".get_lang('NoResult')."</center></td>"; |
|
6908 | - echo"</tr>"; |
|
6909 | - } |
|
6910 | - echo "</table>"; |
|
6911 | - echo "</td></tr>"; |
|
6912 | - } else { |
|
6913 | - $new_view = substr_replace($view,'1',3,1); |
|
6914 | - echo " |
|
6899 | + if (is_array($results)) { |
|
6900 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
6901 | + echo "<tr>"; |
|
6902 | + echo "<td class='content'><a href='".$results[$j][1]."'>".$results[$j][0]."</a></td>"; |
|
6903 | + echo"</tr>"; |
|
6904 | + } |
|
6905 | + } else { |
|
6906 | + echo "<tr>"; |
|
6907 | + echo "<td ><center>".get_lang('NoResult')."</center></td>"; |
|
6908 | + echo"</tr>"; |
|
6909 | + } |
|
6910 | + echo "</table>"; |
|
6911 | + echo "</td></tr>"; |
|
6912 | + } else { |
|
6913 | + $new_view = substr_replace($view,'1',3,1); |
|
6914 | + echo " |
|
6915 | 6915 | <tr> |
6916 | 6916 | <td valign='top'> |
6917 | 6917 | +<font color='#0000FF'> </font><a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."' class='specialLink'>".get_lang('LinksAccess')."</a> |
6918 | 6918 | </td> |
6919 | 6919 | </tr> |
6920 | 6920 | "; |
6921 | - } |
|
6921 | + } |
|
6922 | 6922 | } |
6923 | 6923 | |
6924 | 6924 | /** |
@@ -6931,61 +6931,61 @@ discard block |
||
6931 | 6931 | */ |
6932 | 6932 | public static function display_document_tracking_info($view, $user_id, $course_code, $session_id = 0) |
6933 | 6933 | { |
6934 | - // protect data |
|
6934 | + // protect data |
|
6935 | 6935 | $user_id = intval($user_id); |
6936 | 6936 | $courseId = api_get_course_int_id($course_code); |
6937 | - $session_id = intval($session_id); |
|
6937 | + $session_id = intval($session_id); |
|
6938 | 6938 | |
6939 | - $downloads_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_DOWNLOADS); |
|
6940 | - if(substr($view,4,1) == '1') { |
|
6941 | - $new_view = substr_replace($view,'0',4,1); |
|
6942 | - echo " |
|
6939 | + $downloads_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_DOWNLOADS); |
|
6940 | + if(substr($view,4,1) == '1') { |
|
6941 | + $new_view = substr_replace($view,'0',4,1); |
|
6942 | + echo " |
|
6943 | 6943 | <tr> |
6944 | 6944 | <td valign='top'> |
6945 | 6945 | <font color='#0000FF'>- </font><b>".get_lang('DocumentsAccess')."</b> [<a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."'>".get_lang('Close')."</a>] [<a href='userLogCSV.php?".api_get_cidreq()."&uInfo=".Security::remove_XSS($_GET['uInfo'])."&view=00001'>".get_lang('ExportAsCSV')."</a>] |
6946 | 6946 | </td> |
6947 | 6947 | </tr> |
6948 | 6948 | "; |
6949 | - echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('DocumentsDetails')."<br>"; |
|
6949 | + echo "<tr><td style='padding-left : 40px;' valign='top'>".get_lang('DocumentsDetails')."<br>"; |
|
6950 | 6950 | |
6951 | - $sql = "SELECT down_doc_path |
|
6951 | + $sql = "SELECT down_doc_path |
|
6952 | 6952 | FROM $downloads_table |
6953 | 6953 | WHERE c_id = $courseId |
6954 | 6954 | AND down_user_id = $user_id |
6955 | 6955 | AND down_session_id = $session_id |
6956 | 6956 | GROUP BY down_doc_path"; |
6957 | 6957 | |
6958 | - echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6959 | - $results = StatsUtils::getManyResults1Col($sql); |
|
6960 | - echo "<table cellpadding='2' cellspacing='1' border='0' align='center'>"; |
|
6961 | - echo "<tr> |
|
6958 | + echo "<tr><td style='padding-left : 40px;padding-right : 40px;'>"; |
|
6959 | + $results = StatsUtils::getManyResults1Col($sql); |
|
6960 | + echo "<table cellpadding='2' cellspacing='1' border='0' align='center'>"; |
|
6961 | + echo "<tr> |
|
6962 | 6962 | <td class='secLine'> |
6963 | 6963 | ".get_lang('DocumentsTitleDocumentColumn')." |
6964 | 6964 | </td> |
6965 | 6965 | </tr>"; |
6966 | - if (is_array($results)) { |
|
6967 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
6968 | - echo "<tr>"; |
|
6969 | - echo "<td class='content'>".$results[$j]."</td>"; |
|
6970 | - echo"</tr>"; |
|
6971 | - } |
|
6972 | - } else { |
|
6973 | - echo "<tr>"; |
|
6974 | - echo "<td><center>".get_lang('NoResult')."</center></td>"; |
|
6975 | - echo"</tr>"; |
|
6976 | - } |
|
6977 | - echo "</table>"; |
|
6978 | - echo "</td></tr>"; |
|
6979 | - } else { |
|
6980 | - $new_view = substr_replace($view,'1',4,1); |
|
6981 | - echo " |
|
6966 | + if (is_array($results)) { |
|
6967 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
6968 | + echo "<tr>"; |
|
6969 | + echo "<td class='content'>".$results[$j]."</td>"; |
|
6970 | + echo"</tr>"; |
|
6971 | + } |
|
6972 | + } else { |
|
6973 | + echo "<tr>"; |
|
6974 | + echo "<td><center>".get_lang('NoResult')."</center></td>"; |
|
6975 | + echo"</tr>"; |
|
6976 | + } |
|
6977 | + echo "</table>"; |
|
6978 | + echo "</td></tr>"; |
|
6979 | + } else { |
|
6980 | + $new_view = substr_replace($view,'1',4,1); |
|
6981 | + echo " |
|
6982 | 6982 | <tr> |
6983 | 6983 | <td valign='top'> |
6984 | 6984 | +<font color='#0000FF'> </font><a href='".api_get_self()."?uInfo=".Security::remove_XSS($user_id)."&view=".Security::remove_XSS($new_view)."' class='specialLink'>".get_lang('DocumentsAccess')."</a> |
6985 | 6985 | </td> |
6986 | 6986 | </tr> |
6987 | 6987 | "; |
6988 | - } |
|
6988 | + } |
|
6989 | 6989 | } |
6990 | 6990 | |
6991 | 6991 | /** |
@@ -7042,43 +7042,43 @@ discard block |
||
7042 | 7042 | */ |
7043 | 7043 | public function display_login_tracking_info($view, $user_id, $course_id, $session_id = 0) |
7044 | 7044 | { |
7045 | - $MonthsLong = $GLOBALS['MonthsLong']; |
|
7046 | - $track_access_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
7047 | - |
|
7048 | - // protected data |
|
7049 | - $user_id = intval($user_id); |
|
7050 | - $session_id = intval($session_id); |
|
7051 | - $course_id = intval($course_id); |
|
7052 | - |
|
7053 | - $tempView = $view; |
|
7054 | - if (substr($view,0,1) == '1') { |
|
7055 | - $new_view = substr_replace($view,'0',0,1); |
|
7056 | - $title[1]= get_lang('LoginsAndAccessTools').get_lang('LoginsDetails'); |
|
7057 | - $sql = "SELECT UNIX_TIMESTAMP(access_date), count(access_date) |
|
7045 | + $MonthsLong = $GLOBALS['MonthsLong']; |
|
7046 | + $track_access_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_ACCESS); |
|
7047 | + |
|
7048 | + // protected data |
|
7049 | + $user_id = intval($user_id); |
|
7050 | + $session_id = intval($session_id); |
|
7051 | + $course_id = intval($course_id); |
|
7052 | + |
|
7053 | + $tempView = $view; |
|
7054 | + if (substr($view,0,1) == '1') { |
|
7055 | + $new_view = substr_replace($view,'0',0,1); |
|
7056 | + $title[1]= get_lang('LoginsAndAccessTools').get_lang('LoginsDetails'); |
|
7057 | + $sql = "SELECT UNIX_TIMESTAMP(access_date), count(access_date) |
|
7058 | 7058 | FROM $track_access_table |
7059 | 7059 | WHERE access_user_id = $user_id |
7060 | 7060 | AND c_id = $course_id |
7061 | 7061 | AND access_session_id = $session_id |
7062 | 7062 | GROUP BY YEAR(access_date),MONTH(access_date) |
7063 | 7063 | ORDER BY YEAR(access_date),MONTH(access_date) ASC"; |
7064 | - //$results = getManyResults2Col($sql); |
|
7065 | - $results = getManyResults3Col($sql); |
|
7066 | - $title_line= get_lang('LoginsTitleMonthColumn').';'.get_lang('LoginsTitleCountColumn')."\n"; |
|
7067 | - $line=''; |
|
7068 | - $total = 0; |
|
7069 | - if (is_array($results)) { |
|
7070 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
7071 | - $line .= $results[$j][0].';'.$results[$j][1]."\n"; |
|
7072 | - $total = $total + $results[$j][1]; |
|
7073 | - } |
|
7074 | - $line .= get_lang('Total').";".$total."\n"; |
|
7075 | - } else { |
|
7076 | - $line= get_lang('NoResult')."</center></td>"; |
|
7077 | - } |
|
7078 | - } else { |
|
7079 | - $new_view = substr_replace($view,'1',0,1); |
|
7080 | - } |
|
7081 | - return array($title_line, $line); |
|
7064 | + //$results = getManyResults2Col($sql); |
|
7065 | + $results = getManyResults3Col($sql); |
|
7066 | + $title_line= get_lang('LoginsTitleMonthColumn').';'.get_lang('LoginsTitleCountColumn')."\n"; |
|
7067 | + $line=''; |
|
7068 | + $total = 0; |
|
7069 | + if (is_array($results)) { |
|
7070 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
7071 | + $line .= $results[$j][0].';'.$results[$j][1]."\n"; |
|
7072 | + $total = $total + $results[$j][1]; |
|
7073 | + } |
|
7074 | + $line .= get_lang('Total').";".$total."\n"; |
|
7075 | + } else { |
|
7076 | + $line= get_lang('NoResult')."</center></td>"; |
|
7077 | + } |
|
7078 | + } else { |
|
7079 | + $new_view = substr_replace($view,'1',0,1); |
|
7080 | + } |
|
7081 | + return array($title_line, $line); |
|
7082 | 7082 | } |
7083 | 7083 | |
7084 | 7084 | /** |
@@ -7091,67 +7091,67 @@ discard block |
||
7091 | 7091 | */ |
7092 | 7092 | public function display_exercise_tracking_info($view, $userId, $courseCode) |
7093 | 7093 | { |
7094 | - global $TABLECOURSE_EXERCICES, $TABLETRACK_EXERCICES, $TABLETRACK_HOTPOTATOES, $dateTimeFormatLong; |
|
7094 | + global $TABLECOURSE_EXERCICES, $TABLETRACK_EXERCICES, $TABLETRACK_HOTPOTATOES, $dateTimeFormatLong; |
|
7095 | 7095 | $courseId = api_get_course_int_id($courseCode); |
7096 | 7096 | $userId = intval($userId); |
7097 | - if (substr($view,1,1) == '1') { |
|
7098 | - $new_view = substr_replace($view,'0',1,1); |
|
7099 | - $title[1] = get_lang('ExercicesDetails'); |
|
7100 | - $line = ''; |
|
7101 | - $sql = "SELECT ce.title, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
7097 | + if (substr($view,1,1) == '1') { |
|
7098 | + $new_view = substr_replace($view,'0',1,1); |
|
7099 | + $title[1] = get_lang('ExercicesDetails'); |
|
7100 | + $line = ''; |
|
7101 | + $sql = "SELECT ce.title, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
7102 | 7102 | FROM $TABLECOURSE_EXERCICES AS ce , $TABLETRACK_EXERCICES AS te |
7103 | 7103 | WHERE te.c_id = $courseId |
7104 | 7104 | AND te.exe_user_id = $userId |
7105 | 7105 | AND te.exe_exo_id = ce.id |
7106 | 7106 | ORDER BY ce.title ASC, te.exe_date ASC"; |
7107 | 7107 | |
7108 | - $hpsql = "SELECT te.exe_name, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
7108 | + $hpsql = "SELECT te.exe_name, te.exe_result , te.exe_weighting, UNIX_TIMESTAMP(te.exe_date) |
|
7109 | 7109 | FROM $TABLETRACK_HOTPOTATOES AS te |
7110 | 7110 | WHERE te.exe_user_id = '$userId' AND te.c_id = $courseId |
7111 | 7111 | ORDER BY te.c_id ASC, te.exe_date ASC"; |
7112 | 7112 | |
7113 | - $hpresults = StatsUtils::getManyResultsXCol($hpsql, 4); |
|
7113 | + $hpresults = StatsUtils::getManyResultsXCol($hpsql, 4); |
|
7114 | 7114 | |
7115 | - $NoTestRes = 0; |
|
7116 | - $NoHPTestRes = 0; |
|
7115 | + $NoTestRes = 0; |
|
7116 | + $NoHPTestRes = 0; |
|
7117 | 7117 | |
7118 | - $results = StatsUtils::getManyResultsXCol($sql, 4); |
|
7119 | - $title_line = get_lang('ExercicesTitleExerciceColumn').";".get_lang('Date').';'.get_lang('ExercicesTitleScoreColumn')."\n"; |
|
7118 | + $results = StatsUtils::getManyResultsXCol($sql, 4); |
|
7119 | + $title_line = get_lang('ExercicesTitleExerciceColumn').";".get_lang('Date').';'.get_lang('ExercicesTitleScoreColumn')."\n"; |
|
7120 | 7120 | |
7121 | - if (is_array($results)) { |
|
7122 | - for($i = 0; $i < sizeof($results); $i++) |
|
7123 | - { |
|
7124 | - $display_date = api_convert_and_format_date($results[$i][3], null, date_default_timezone_get()); |
|
7125 | - $line .= $results[$i][0].";".$display_date.";".$results[$i][1]." / ".$results[$i][2]."\n"; |
|
7126 | - } |
|
7127 | - } else { |
|
7121 | + if (is_array($results)) { |
|
7122 | + for($i = 0; $i < sizeof($results); $i++) |
|
7123 | + { |
|
7124 | + $display_date = api_convert_and_format_date($results[$i][3], null, date_default_timezone_get()); |
|
7125 | + $line .= $results[$i][0].";".$display_date.";".$results[$i][1]." / ".$results[$i][2]."\n"; |
|
7126 | + } |
|
7127 | + } else { |
|
7128 | 7128 | // istvan begin |
7129 | - $NoTestRes = 1; |
|
7130 | - } |
|
7131 | - |
|
7132 | - // The Result of Tests |
|
7133 | - if (is_array($hpresults)) { |
|
7134 | - for($i = 0; $i < sizeof($hpresults); $i++) { |
|
7135 | - $title = GetQuizName($hpresults[$i][0],''); |
|
7136 | - |
|
7137 | - if ($title == '') |
|
7138 | - $title = basename($hpresults[$i][0]); |
|
7139 | - |
|
7140 | - $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
|
7141 | - |
|
7142 | - $line .= $title.';'.$display_date.';'.$hpresults[$i][1].'/'.$hpresults[$i][2]."\n"; |
|
7143 | - } |
|
7144 | - } else { |
|
7145 | - $NoHPTestRes = 1; |
|
7146 | - } |
|
7147 | - |
|
7148 | - if ($NoTestRes == 1 && $NoHPTestRes == 1) { |
|
7149 | - $line=get_lang('NoResult'); |
|
7150 | - } |
|
7151 | - } else { |
|
7152 | - $new_view = substr_replace($view,'1',1,1); |
|
7153 | - } |
|
7154 | - return array($title_line, $line); |
|
7129 | + $NoTestRes = 1; |
|
7130 | + } |
|
7131 | + |
|
7132 | + // The Result of Tests |
|
7133 | + if (is_array($hpresults)) { |
|
7134 | + for($i = 0; $i < sizeof($hpresults); $i++) { |
|
7135 | + $title = GetQuizName($hpresults[$i][0],''); |
|
7136 | + |
|
7137 | + if ($title == '') |
|
7138 | + $title = basename($hpresults[$i][0]); |
|
7139 | + |
|
7140 | + $display_date = api_convert_and_format_date($hpresults[$i][3], null, date_default_timezone_get()); |
|
7141 | + |
|
7142 | + $line .= $title.';'.$display_date.';'.$hpresults[$i][1].'/'.$hpresults[$i][2]."\n"; |
|
7143 | + } |
|
7144 | + } else { |
|
7145 | + $NoHPTestRes = 1; |
|
7146 | + } |
|
7147 | + |
|
7148 | + if ($NoTestRes == 1 && $NoHPTestRes == 1) { |
|
7149 | + $line=get_lang('NoResult'); |
|
7150 | + } |
|
7151 | + } else { |
|
7152 | + $new_view = substr_replace($view,'1',1,1); |
|
7153 | + } |
|
7154 | + return array($title_line, $line); |
|
7155 | 7155 | } |
7156 | 7156 | |
7157 | 7157 | /** |
@@ -7160,37 +7160,37 @@ discard block |
||
7160 | 7160 | */ |
7161 | 7161 | public function display_student_publications_tracking_info($view, $user_id, $course_id) |
7162 | 7162 | { |
7163 | - global $TABLETRACK_UPLOADS, $TABLECOURSE_WORK; |
|
7163 | + global $TABLETRACK_UPLOADS, $TABLECOURSE_WORK; |
|
7164 | 7164 | $_course = api_get_course_info(); |
7165 | 7165 | $user_id = intval($user_id); |
7166 | 7166 | $course_id = intval($course_id); |
7167 | 7167 | |
7168 | - if (substr($view,2,1) == '1') { |
|
7169 | - $sql = "SELECT u.upload_date, w.title, w.author, w.url |
|
7168 | + if (substr($view,2,1) == '1') { |
|
7169 | + $sql = "SELECT u.upload_date, w.title, w.author, w.url |
|
7170 | 7170 | FROM $TABLETRACK_UPLOADS u , $TABLECOURSE_WORK w |
7171 | 7171 | WHERE |
7172 | 7172 | u.upload_work_id = w.id AND |
7173 | 7173 | u.upload_user_id = '$user_id' AND |
7174 | 7174 | u.c_id = '$course_id' |
7175 | 7175 | ORDER BY u.upload_date DESC"; |
7176 | - $results = StatsUtils::getManyResultsXCol($sql,4); |
|
7177 | - |
|
7178 | - $title[1]=get_lang('WorksDetails'); |
|
7179 | - $line=''; |
|
7180 | - $title_line=get_lang('WorkTitle').";".get_lang('WorkAuthors').";".get_lang('Date')."\n"; |
|
7181 | - |
|
7182 | - if (is_array($results)) { |
|
7183 | - for($j = 0 ; $j < count($results) ; $j++) { |
|
7184 | - $pathToFile = api_get_path(WEB_COURSE_PATH).$_course['path']."/".$results[$j][3]; |
|
7185 | - $beautifulDate = api_convert_and_format_date($results[$j][0], null, date_default_timezone_get()); |
|
7186 | - $line .= $results[$j][1].";".$results[$j][2].";".$beautifulDate."\n"; |
|
7187 | - } |
|
7188 | - |
|
7189 | - } else { |
|
7190 | - $line= get_lang('NoResult'); |
|
7191 | - } |
|
7192 | - } |
|
7193 | - return array($title_line, $line); |
|
7176 | + $results = StatsUtils::getManyResultsXCol($sql,4); |
|
7177 | + |
|
7178 | + $title[1]=get_lang('WorksDetails'); |
|
7179 | + $line=''; |
|
7180 | + $title_line=get_lang('WorkTitle').";".get_lang('WorkAuthors').";".get_lang('Date')."\n"; |
|
7181 | + |
|
7182 | + if (is_array($results)) { |
|
7183 | + for($j = 0 ; $j < count($results) ; $j++) { |
|
7184 | + $pathToFile = api_get_path(WEB_COURSE_PATH).$_course['path']."/".$results[$j][3]; |
|
7185 | + $beautifulDate = api_convert_and_format_date($results[$j][0], null, date_default_timezone_get()); |
|
7186 | + $line .= $results[$j][1].";".$results[$j][2].";".$beautifulDate."\n"; |
|
7187 | + } |
|
7188 | + |
|
7189 | + } else { |
|
7190 | + $line= get_lang('NoResult'); |
|
7191 | + } |
|
7192 | + } |
|
7193 | + return array($title_line, $line); |
|
7194 | 7194 | } |
7195 | 7195 | |
7196 | 7196 | /** |
@@ -7199,32 +7199,32 @@ discard block |
||
7199 | 7199 | */ |
7200 | 7200 | public function display_links_tracking_info($view, $userId, $courseCode) |
7201 | 7201 | { |
7202 | - global $TABLETRACK_LINKS, $TABLECOURSE_LINKS; |
|
7202 | + global $TABLETRACK_LINKS, $TABLECOURSE_LINKS; |
|
7203 | 7203 | $courseId = api_get_course_int_id($courseCode); |
7204 | 7204 | $userId = intval($userId); |
7205 | 7205 | $line = null; |
7206 | - if (substr($view,3,1) == '1') { |
|
7207 | - $new_view = substr_replace($view,'0',3,1); |
|
7208 | - $title[1]=get_lang('LinksDetails'); |
|
7209 | - $sql = "SELECT cl.title, cl.url |
|
7206 | + if (substr($view,3,1) == '1') { |
|
7207 | + $new_view = substr_replace($view,'0',3,1); |
|
7208 | + $title[1]=get_lang('LinksDetails'); |
|
7209 | + $sql = "SELECT cl.title, cl.url |
|
7210 | 7210 | FROM $TABLETRACK_LINKS AS sl, $TABLECOURSE_LINKS AS cl |
7211 | 7211 | WHERE sl.links_link_id = cl.id |
7212 | 7212 | AND sl.c_id = $courseId |
7213 | 7213 | AND sl.links_user_id = $userId |
7214 | 7214 | GROUP BY cl.title, cl.url"; |
7215 | - $results = StatsUtils::getManyResults2Col($sql); |
|
7216 | - $title_line= get_lang('LinksTitleLinkColumn')."\n"; |
|
7217 | - if (is_array($results)) { |
|
7218 | - for ($j = 0 ; $j < count($results) ; $j++) { |
|
7219 | - $line .= $results[$j][0]."\n"; |
|
7220 | - } |
|
7221 | - } else { |
|
7222 | - $line=get_lang('NoResult'); |
|
7223 | - } |
|
7224 | - } else { |
|
7225 | - $new_view = substr_replace($view,'1',3,1); |
|
7226 | - } |
|
7227 | - return array($title_line, $line); |
|
7215 | + $results = StatsUtils::getManyResults2Col($sql); |
|
7216 | + $title_line= get_lang('LinksTitleLinkColumn')."\n"; |
|
7217 | + if (is_array($results)) { |
|
7218 | + for ($j = 0 ; $j < count($results) ; $j++) { |
|
7219 | + $line .= $results[$j][0]."\n"; |
|
7220 | + } |
|
7221 | + } else { |
|
7222 | + $line=get_lang('NoResult'); |
|
7223 | + } |
|
7224 | + } else { |
|
7225 | + $new_view = substr_replace($view,'1',3,1); |
|
7226 | + } |
|
7227 | + return array($title_line, $line); |
|
7228 | 7228 | } |
7229 | 7229 | |
7230 | 7230 | /** |
@@ -7237,38 +7237,38 @@ discard block |
||
7237 | 7237 | */ |
7238 | 7238 | public function display_document_tracking_info($view, $user_id, $courseCode, $session_id = 0) |
7239 | 7239 | { |
7240 | - // protect data |
|
7241 | - $user_id = intval($user_id); |
|
7240 | + // protect data |
|
7241 | + $user_id = intval($user_id); |
|
7242 | 7242 | $courseId = api_get_course_int_id($courseCode); |
7243 | - $session_id = intval($session_id); |
|
7243 | + $session_id = intval($session_id); |
|
7244 | 7244 | |
7245 | - $downloads_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_DOWNLOADS); |
|
7245 | + $downloads_table = Database::get_main_table(TABLE_STATISTIC_TRACK_E_DOWNLOADS); |
|
7246 | 7246 | |
7247 | - if (substr($view,4,1) == '1') { |
|
7248 | - $new_view = substr_replace($view,'0',4,1); |
|
7249 | - $title[1]= get_lang('DocumentsDetails'); |
|
7247 | + if (substr($view,4,1) == '1') { |
|
7248 | + $new_view = substr_replace($view,'0',4,1); |
|
7249 | + $title[1]= get_lang('DocumentsDetails'); |
|
7250 | 7250 | |
7251 | - $sql = "SELECT down_doc_path |
|
7251 | + $sql = "SELECT down_doc_path |
|
7252 | 7252 | FROM $downloads_table |
7253 | 7253 | WHERE c_id = $courseId |
7254 | 7254 | AND down_user_id = $user_id |
7255 | 7255 | AND down_session_id = $session_id |
7256 | 7256 | GROUP BY down_doc_path"; |
7257 | 7257 | |
7258 | - $results = StatsUtils::getManyResults1Col($sql); |
|
7259 | - $title_line = get_lang('DocumentsTitleDocumentColumn')."\n"; |
|
7258 | + $results = StatsUtils::getManyResults1Col($sql); |
|
7259 | + $title_line = get_lang('DocumentsTitleDocumentColumn')."\n"; |
|
7260 | 7260 | $line = null; |
7261 | - if (is_array($results)) { |
|
7262 | - for ($j = 0 ; $j < count($results) ; $j++) { |
|
7263 | - $line .= $results[$j]."\n"; |
|
7264 | - } |
|
7265 | - } else { |
|
7266 | - $line = get_lang('NoResult'); |
|
7267 | - } |
|
7268 | - } else { |
|
7269 | - $new_view = substr_replace($view,'1',4,1); |
|
7270 | - } |
|
7271 | - return array($title_line, $line); |
|
7261 | + if (is_array($results)) { |
|
7262 | + for ($j = 0 ; $j < count($results) ; $j++) { |
|
7263 | + $line .= $results[$j]."\n"; |
|
7264 | + } |
|
7265 | + } else { |
|
7266 | + $line = get_lang('NoResult'); |
|
7267 | + } |
|
7268 | + } else { |
|
7269 | + $new_view = substr_replace($view,'1',4,1); |
|
7270 | + } |
|
7271 | + return array($title_line, $line); |
|
7272 | 7272 | } |
7273 | 7273 | |
7274 | 7274 | /** |