glossary_ajax_request.php 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. /* For licensing terms, see /dokeos_license.txt */
  3. // including the global dokeos file
  4. require_once '../inc/global.inc.php';
  5. require_once(api_get_path(LIBRARY_PATH).'glossary.lib.php');
  6. /*
  7. * search a term and return description from a glossary
  8. */
  9. global $charset;
  10. //replace image path
  11. $path_image=api_get_path(WEB_COURSE_PATH).api_get_course_path();
  12. $path_image_search='../../courses/'.api_get_course_path();
  13. if (isset($_POST['glossary_id']) && $_POST['glossary_id']==strval(intval($_POST['glossary_id']))) {
  14. $glossary_id=Security::remove_XSS($_POST['glossary_id']);
  15. $glossary_description_by_id=GlossaryManager::get_glossary_term_by_glossary_id($glossary_id);
  16. $glossary_description_by_id=str_replace($path_image_search,$path_image,$glossary_description_by_id);
  17. echo api_xml_http_response_encode($glossary_description_by_id);
  18. } elseif (isset($_POST['glossary_data']) && $_POST['glossary_data']=='true') {
  19. //get_glossary_terms
  20. $glossary_data=GlossaryManager::get_glossary_terms();
  21. $glossary_all_data=array();
  22. if (count($glossary_data)>0) {
  23. foreach ($glossary_data as $glossary_index=>$glossary_value) {
  24. $glossary_all_data[]=$glossary_value['id'].'__|__|'.$glossary_value['name'];
  25. }
  26. $glossary_all_data=implode('[|.|_|.|-|.|]',$glossary_all_data);
  27. echo api_xml_http_response_encode($glossary_all_data);
  28. }
  29. } elseif(isset($_POST['glossary_name'])) {
  30. $my_glossary_name=Security::remove_XSS($_POST['glossary_name']);
  31. $my_glossary_name=api_convert_encoding($my_glossary_name,$charset,'UTF-8');
  32. $my_glossary_name=trim($my_glossary_name);
  33. $glossary_description=GlossaryManager::get_glossary_term_by_glossary_name($my_glossary_name);
  34. $glossary_description=str_replace($path_image_search,$path_image,$glossary_description);
  35. if (is_null($glossary_description) || strlen(trim($glossary_description))==0) {
  36. echo api_xml_http_response_encode(get_lang('NoResults'));
  37. } else {
  38. echo api_xml_http_response_encode($glossary_description);
  39. }
  40. } else {
  41. echo api_xml_http_response_encode(get_lang('NoResults'));
  42. }