access_url_edit_users_to_url_functions.lib.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. <?php
  2. /* For licensing terms, see /chamilo_license.txt */
  3. /**
  4. * Access_url_edit_users_to_url class
  5. * Contains several functions dealing with displaying,
  6. * editing,... of a Access_url_edit_users_to_url_functions
  7. *
  8. * @version 1.0
  9. * @author Toon Keppens <toon@vi-host.net>
  10. * @author Julio Montoya - Cleaning code
  11. * @author Ricardo Rodriguez - Separated the function and code
  12. * @package chamilo.library
  13. */
  14. /**
  15. * Code
  16. */
  17. require_once ('xajax/xajax.inc.php');
  18. /**
  19. * Class
  20. * @package chamilo.library
  21. */
  22. class Accessurledituserstourl{
  23. function search_users($needle, $id)
  24. {
  25. global $tbl_user, $tbl_access_url_rel_user;
  26. $xajax_response = new XajaxResponse();
  27. $return = '';
  28. if(!empty($needle)) {
  29. // xajax send utf8 datas... datas in db can be non-utf8 datas
  30. $charset = api_get_system_encoding();
  31. $needle = api_convert_encoding($needle, $charset, 'utf-8');
  32. $needle = Database::escape_string($needle);
  33. // search users where username or firstname or lastname begins likes $needle
  34. $order_clause = api_sort_by_first_name() ? ' ORDER BY firstname, lastname, username' : ' ORDER BY lastname, firstname, username';
  35. $sql = 'SELECT u.user_id, username, lastname, firstname FROM '.$tbl_user.' u
  36. WHERE (username LIKE "'.$needle.'%"
  37. OR firstname LIKE "'.$needle.'%"
  38. OR lastname LIKE "'.$needle.'%")'.
  39. $order_clause.
  40. ' LIMIT 11';
  41. $rs = Database::query($sql);
  42. $i=0;
  43. while ($user = Database :: fetch_array($rs)) {
  44. $i++;
  45. if ($i<=10) {
  46. $return .= '<a href="javascript: void(0);" onclick="javascript: add_user_to_url(\''.addslashes($user['user_id']).'\',\''.api_get_person_name(addslashes($user['firstname']), addslashes($user['lastname'])).' ('.addslashes($user['username']).')'.'\')">'.api_get_person_name($user['firstname'], $user['lastname']).' ('.$user['username'].')</a><br />';
  47. } else {
  48. $return .= '...<br />';
  49. }
  50. }
  51. }
  52. $xajax_response -> addAssign('ajax_list_users','innerHTML',api_utf8_encode($return));
  53. return $xajax_response;
  54. }
  55. }
  56. ?>