thematic.ajax.php 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. /* For licensing terms, see /chamilo_license.txt */
  3. /**
  4. * Responses to AJAX calls for thematic
  5. */
  6. require_once '../global.inc.php';
  7. require_once api_get_path(LIBRARY_PATH).'attendance.lib.php';
  8. require_once api_get_path(LIBRARY_PATH).'thematic.lib.php';
  9. api_protect_course_script(true);
  10. $action = $_GET['a'];
  11. switch ($action) {
  12. case 'get_datetime_by_attendance':
  13. $attendance_id = intval($_POST['attendance_id']);
  14. $thematic_advance_id = intval($_POST['thematic_advance_id']);
  15. $label = '';
  16. $input_select = '';
  17. if (!empty($attendance_id)) {
  18. $attendance = new Attendance();
  19. $thematic = new Thematic();
  20. $thematic_list = $thematic->get_thematic_list();
  21. $my_list = $thematic_list_temp = array();
  22. foreach($thematic_list as $item) {
  23. $my_list = $thematic->get_thematic_advance_by_thematic_id($item['id']);
  24. $thematic_list_temp = array_merge($my_list, $thematic_list_temp);
  25. }
  26. $new_thematic_list = array();
  27. foreach($thematic_list_temp as $item) {
  28. if (!empty($item['attendance_id']) ) {
  29. $new_thematic_list[$item['id']] = array('attendance_id' =>$item['attendance_id'], 'start_date'=>$item['start_date']);
  30. }
  31. }
  32. $attendance_calendar = $attendance->get_attendance_calendar($attendance_id);
  33. $calendar_select = array();
  34. $label = get_lang('StartDate');
  35. if (!empty($attendance_calendar)) {
  36. $input_select .= '<select name="start_date_by_attendance" UNIQUE size="5">';
  37. foreach ($attendance_calendar as $calendar) {
  38. $insert = true;
  39. //checking if was already taken
  40. foreach($new_thematic_list as $thematic_item) {
  41. //if ($calendar['db_date_time'] == $thematic_item['start_date'] && $calendar['attendance_id'] == $thematic_item['attendance_id'] ) {
  42. if ($calendar['db_date_time'] == $thematic_item['start_date'] ) {
  43. $insert = false;
  44. break;
  45. }
  46. }
  47. if ($insert == true) {
  48. $input_select .= '<option value="'.$calendar['date_time'].'">'.$calendar['date_time'].'</option>';
  49. }
  50. }
  51. $input_select .= '</select>';
  52. } else {
  53. $input_select .= '<em>'.get_lang('ThereAreNoRegisteredDatetimeYet').'</em>';
  54. }
  55. }
  56. ?>
  57. <div class="row">
  58. <div class="label"><?php echo $label ?></div>
  59. <div class="formw"><?php echo $input_select ?></div>
  60. </div>
  61. <?php
  62. break;
  63. case 'update_done_thematic_advance':
  64. $thematic_advance_id = intval($_GET['thematic_advance_id']);
  65. $total_avererage = 0;
  66. if (!empty($thematic_advance_id)) {
  67. $thematic = new Thematic();
  68. $affected_rows = $thematic->update_done_thematic_advances($thematic_advance_id);
  69. $total_avererage = $thematic->get_total_average_of_thematic_advances(api_get_course_id(), api_get_session_id());
  70. }
  71. echo $total_avererage;
  72. break;
  73. default:
  74. echo '';
  75. }
  76. exit;