admin.php 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. <?php
  2. /* For licensing terms, see /license.txt */
  3. /**
  4. * Special reporting page for admins
  5. * @package chamilo.reporting
  6. */
  7. /**
  8. * Code
  9. */
  10. ob_start();
  11. // name of the language file that needs to be included
  12. $language_file = array('trad4all', 'tracking');
  13. $cidReset = true;
  14. require_once '../inc/global.inc.php';
  15. $this_section = SECTION_TRACKING;
  16. $nameTools = get_lang('Administrators');
  17. api_block_anonymous_users();
  18. $interbreadcrumb[] = array("url" => "index.php", "name" => get_lang('MySpace'));
  19. Display :: display_header($nameTools);
  20. api_display_tool_title($nameTools);
  21. // Database Table Definitions
  22. $tbl_course = Database :: get_main_table(TABLE_MAIN_COURSE);
  23. $tbl_user = Database :: get_main_table(TABLE_MAIN_USER);
  24. $tbl_session = Database :: get_main_table(TABLE_MAIN_SESSION);
  25. $tbl_session_course = Database :: get_main_table(TABLE_MAIN_SESSION_COURSE);
  26. $tbl_session_rel_user = Database :: get_main_table(TABLE_MAIN_SESSION_USER);
  27. $tbl_admin = Database :: get_main_table(TABLE_MAIN_ADMIN);
  28. /**
  29. * MAIN PART
  30. */
  31. /*
  32. * liste nominative avec coordonnies et lien vers les cours et les stagiaires dont il est le responsable.
  33. */
  34. if (isset($_POST['export'])) {
  35. $order_clause = api_is_western_name_order(PERSON_NAME_DATA_EXPORT) ? ' ORDER BY firstname, lastname' : ' ORDER BY lastname, firstname';
  36. } else {
  37. $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname' : ' ORDER BY lastname, firstname';
  38. }
  39. $sql_admins = "SELECT user.user_id,lastname,firstname,email
  40. FROM $tbl_user as user, $tbl_admin as admin
  41. WHERE admin.user_id=user.user_id" . $order_clause;
  42. $result_admins = Database::query($sql_admins);
  43. if (api_is_western_name_order()) {
  44. echo '<table class="data_table"><tr><th>' . get_lang('FirstName') . '</th><th>' . get_lang('LastName') . '</th><th>' . get_lang('Email') . '</th></tr>';
  45. } else {
  46. echo '<table class="data_table"><tr><th>' . get_lang('LastName') . '</th><th>' . get_lang('FirstName') . '</th><th>' . get_lang('Email') . '</th></tr>';
  47. }
  48. if (api_is_western_name_order(PERSON_NAME_DATA_EXPORT)) {
  49. $header[] = get_lang('FirstName', '');
  50. $header[] = get_lang('LastName', '');
  51. } else {
  52. $header[] = get_lang('LastName', '');
  53. $header[] = get_lang('FirstName', '');
  54. }
  55. $header[] = get_lang('Email', '');
  56. if (Database::num_rows($result_admins) > 0) {
  57. while ($admins = Database::fetch_array($result_admins)) {
  58. $user_id = $admins["user_id"];
  59. $lastname = $admins["lastname"];
  60. $firstname = $admins["firstname"];
  61. $email = $admins["email"];
  62. if ($i % 2 == 0) {
  63. $css_class = "row_odd";
  64. if ($i % 20 == 0 && $i != 0) {
  65. if (api_is_western_name_order()) {
  66. echo '<tr><th>' . get_lang('FirstName') . '</th><th>' . get_lang('LastName') . '</th><th>' . get_lang('Email') . '</th></tr>';
  67. } else {
  68. echo '<tr><th>' . get_lang('LastName') . '</th><th>' . get_lang('FirstName') . '</th><th>' . get_lang('Email') . '</th></tr>';
  69. }
  70. }
  71. } else {
  72. $css_class = "row_even";
  73. }
  74. $i++;
  75. if (api_is_western_name_order()) {
  76. echo "<tr class=" . $css_class . "><td>$firstname</td><td>$lastname</td><td><a href='mailto:" . $email . "'>$email</a></td></tr>";
  77. } else {
  78. echo "<tr class=" . $css_class . "><td>$lastname</td><td>$firstname</td><td><a href='mailto:" . $email . "'>$email</a></td></tr>";
  79. }
  80. if (api_is_western_name_order(PERSON_NAME_DATA_EXPORT)) {
  81. $data[$user_id]["firstname"] = $firstname;
  82. $data[$user_id]["lastname"] = $lastname;
  83. } else {
  84. $data[$user_id]["lastname"] = $lastname;
  85. $data[$user_id]["firstname"] = $firstname;
  86. }
  87. $data[$user_id]["email"] = $email;
  88. }
  89. } else {
  90. // No results
  91. echo '<tr><td colspan="3">' . get_lang('NoResults') . '</td></tr>';
  92. }
  93. echo '</table>';
  94. if (isset($_POST['export'])) {
  95. export_csv($header, $data, 'administrators.csv');
  96. }
  97. echo "<br /><br />";
  98. echo "<form method='post' action='admin.php'><button type='submit' class='save' name='export' value='" . get_lang('exportExcel') . "'>" . get_lang('exportExcel') . "</button><form>";
  99. Display::display_footer();