session_course_user_list.php 3.9 KB

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