session_course_list.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. <?php
  2. $langFile='admin';
  3. $cidReset=true;
  4. include('../inc/global.inc.php');
  5. api_protect_admin_script();
  6. $tbl_course=Database::get_main_table(MAIN_COURSE_TABLE);
  7. $tbl_session=Database::get_main_table(MAIN_SESSION_TABLE);
  8. $tbl_session_rel_course=Database::get_main_table(MAIN_SESSION_COURSE_TABLE);
  9. $tbl_session_rel_course_rel_user=Database::get_main_table(MAIN_SESSION_COURSE_USER_TABLE);
  10. $id_session=intval($_GET['id_session']);
  11. $page=intval($_GET['page']);
  12. $action=$_REQUEST['action'];
  13. $sort=in_array($_GET['sort'],array('title','nbr_users'))?$_GET['sort']:'title';
  14. $result=api_sql_query("SELECT name FROM $tbl_session WHERE id='$id_session'",__FILE__,__LINE__);
  15. if(!list($session_name)=mysql_fetch_row($result))
  16. {
  17. header('Location: session_list.php');
  18. exit();
  19. }
  20. if($action == 'delete')
  21. {
  22. $idChecked = $_POST['idChecked'];
  23. if(is_array($idChecked))
  24. {
  25. $idChecked="'".implode("','",$idChecked)."'";
  26. api_sql_query("DELETE FROM $tbl_session_rel_course WHERE id_session='$id_session' AND course_code IN($idChecked)",__FILE__,__LINE__);
  27. $nbr_affected_rows=mysql_affected_rows();
  28. api_sql_query("DELETE FROM $tbl_session_rel_course_rel_user WHERE id_session='$id_session' AND course_code IN($idChecked)",__FILE__,__LINE__);
  29. api_sql_query("UPDATE $tbl_session SET nbr_courses=nbr_courses-$nbr_affected_rows WHERE id='$id_session'",__FILE__,__LINE__);
  30. }
  31. header('Location: '.$PHP_SELF.'?id_session='.$id_session.'&sort='.$sort);
  32. exit();
  33. }
  34. $limit=20;
  35. $from=$page * $limit;
  36. $result=api_sql_query("SELECT code,title,nbr_users FROM $tbl_session_rel_course,$tbl_course WHERE course_code=code AND id_session='$id_session' ORDER BY $sort LIMIT $from,".($limit+1),__FILE__,__LINE__);
  37. $Courses=api_store_result($result);
  38. $nbr_results=sizeof($Sessions);
  39. $tool_name = htmlentities($session_name).' : '.get_lang('CourseListInSession');
  40. $interbreadcrumb[]=array("url" => "index.php","name" => get_lang('AdministrationTools'));
  41. $interbreadcrumb[]=array("url" => "session_list.php","name" => get_lang('SessionList'));
  42. Display::display_header($tool_name);
  43. api_display_tool_title($tool_name);
  44. ?>
  45. <div id="main">
  46. <form method="post" action="<?php echo $PHP_SELF; ?>?id_session=<?php echo $id_session; ?>&sort=<?php echo $sort; ?>" onsubmit="javascript:if(!confirm('Veuillez confirmer votre choix.')) return false;">
  47. <br>
  48. <?php
  49. $tableHeader = array();
  50. $tableHeader[] = array(' ');
  51. $tableHeader[] = array(get_lang('CourseTitle'));
  52. $tableHeader[] = array(get_lang('NbUsers'));
  53. $tableHeader[] = array(get_lang('Actions'));
  54. $tableCourses = array();
  55. foreach($Courses as $key=>$enreg)
  56. {
  57. $course = array();
  58. $course[] = '<input type="checkbox" name="idChecked[]" value="'.$enreg['code'].'">';
  59. $course[] = htmlentities($enreg['title']);
  60. $course[] = '<a href="session_course_user_list.php?id_session='.$id_session.'&course_code='.$enreg['code'].'">'.$enreg['nbr_users'].' '.get_lang('Users').'</a>';
  61. $course[] = '<a href="session_course_edit.php?id_session='.$id_session.'&page=session_course_list.php&course_code='.$enreg['code'].'"><img src="../img/edit.gif" border="0" align="absmiddle" title="'.get_lang('Edit').'"></a>
  62. <a href="'.$PHP_SELF.'?id_session='.$id_session.'&sort='.$sort.'&action=delete&idChecked[]='.$enreg['code'].'" onclick="javascript:if(!confirm(\''.addslashes(htmlentities(get_lang("ConfirmYourChoice"))).'\')) return false;"><img src="../img/delete.gif" border="0" align="absmiddle" title="'.get_lang('Delete').'"></a>';
  63. $tableCourses[] = $course;
  64. }
  65. echo '<form method="post" action="'.$PHP_SELF.'">';
  66. Display :: display_sortable_table($tableHeader, $tableCourses, array (), array ());
  67. echo '
  68. <select name="action">
  69. <option value="delete">'.get_lang('UnsubscribeCoursesFromSession').'</option>
  70. </select>
  71. <input type="submit" value="'.get_lang('Ok').'">
  72. </form>';
  73. ?>
  74. <?php
  75. Display::display_footer();
  76. ?>