gradebook_add_eval.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <?php
  2. /* For licensing terms, see /license.txt */
  3. /**
  4. * Script
  5. * @package chamilo.gradebook
  6. */
  7. /**
  8. * Init
  9. */
  10. $language_file = 'gradebook';
  11. require_once '../inc/global.inc.php';
  12. require_once 'lib/be.inc.php';
  13. require_once 'lib/gradebook_functions.inc.php';
  14. require_once 'lib/fe/evalform.class.php';
  15. api_block_anonymous_users();
  16. block_students();
  17. $select_cat=isset($_GET['selectcat']) ? Security::remove_XSS($_GET['selectcat']) : '';
  18. $is_allowedToEdit = $is_courseAdmin;
  19. $evaladd = new Evaluation();
  20. $evaladd->set_user_id($_user['user_id']);
  21. if (isset ($_GET['selectcat']) && (!empty ($_GET['selectcat']))) {
  22. $evaladd->set_category_id($_GET['selectcat']);
  23. $cat = Category :: load($_GET['selectcat']);
  24. $evaladd->set_course_code($cat[0]->get_course_code());
  25. } else {
  26. $evaladd->set_category_id(0);
  27. }
  28. $form = new EvalForm(EvalForm :: TYPE_ADD, $evaladd, null, 'add_eval_form',null,api_get_self() . '?selectcat=' .$select_cat);
  29. if ($form->validate()) {
  30. $values = $form->exportValues();
  31. $eval = new Evaluation();
  32. $eval->set_name($values['name']);
  33. $eval->set_description($values['description']);
  34. $eval->set_user_id($values['hid_user_id']);
  35. if (!empty ($values['hid_course_code'])) {
  36. $eval->set_course_code($values['hid_course_code']);
  37. }
  38. $eval->set_category_id($values['hid_category_id']);
  39. $eval->set_weight($values['weight']);
  40. $eval->set_max($values['max']);
  41. if (empty ($values['visible'])) {
  42. $visible = 0;
  43. } else {
  44. $visible = 1;
  45. }
  46. $eval->set_visible($visible);
  47. $eval->add();
  48. if ($eval->get_course_code() == null) {
  49. if ($values['adduser'] == 1) {
  50. //Disabling code when course code is null see issue #2705
  51. //header('Location: gradebook_add_user.php?selecteval=' . $eval->get_id());
  52. exit;
  53. } else {
  54. header('Location: '.Security::remove_XSS($_SESSION['gradebook_dest']).'?selectcat=' . $eval->get_category_id());
  55. exit;
  56. }
  57. } else {
  58. $val_addresult=isset($values['addresult'])?$values['addresult']:null;
  59. if ($val_addresult == 1) {
  60. header('Location: gradebook_add_result.php?selecteval=' . $eval->get_id());
  61. exit;
  62. } else {
  63. header('Location: '.Security::remove_XSS($_SESSION['gradebook_dest']).'?selectcat=' . $eval->get_category_id());
  64. exit;
  65. }
  66. }
  67. }
  68. $interbreadcrumb[] = array (
  69. 'url' => Security::remove_XSS($_SESSION['gradebook_dest']).'?selectcat='.$select_cat,
  70. 'name' => get_lang('Gradebook'
  71. ));
  72. $this_section = SECTION_COURSES;
  73. Display :: display_header(get_lang('NewEvaluation'));
  74. if ($evaladd->get_course_code() == null) {
  75. Display :: display_normal_message(get_lang('CourseIndependentEvaluation'),false);
  76. }
  77. $form->display();
  78. Display :: display_footer();