checksession.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <?php
  2. /* See license terms in /dokeos_license.txt */
  3. /**
  4. * This script gives information to the videoconference scripts (in OpenLaszlo)
  5. * to use the right URL and ports for the videoconference.
  6. */
  7. require_once('../newscorm/learnpath.class.php');
  8. if($debug>0) error_log('New LP - Included learnpath',0);
  9. require_once('../newscorm/learnpathItem.class.php');
  10. if($debug>0) error_log('New LP - Included learnpathItem',0);
  11. require_once('../newscorm/scorm.class.php');
  12. if($debug>0) error_log('New LP - Included scorm',0);
  13. require_once('../newscorm/scormItem.class.php');
  14. if($debug>0) error_log('New LP - Included scormItem',0);
  15. require_once('../newscorm/aicc.class.php');
  16. if($debug>0) error_log('New LP - Included aicc',0);
  17. require_once('../newscorm/aiccItem.class.php');
  18. if($debug>0) error_log('New LP - Included aiccItem',0);
  19. require("../../main/inc/global.inc.php");
  20. require_once('get_translation.lib.php');
  21. api_block_anonymous_users();
  22. //$confkey = "0123456789abcdef0123456789abcdef";
  23. $confkey = api_get_setting('service_visio','visio_pass');
  24. $challenge = api_generate_password(32); //generate a 32 characters-long challenge key
  25. require_once (api_get_path(LIBRARY_PATH)."course.lib.php");
  26. printf ('<?xml version="1.0" encoding="UTF-8" ?>');
  27. printf('<dokeosobject>');
  28. printf('<courseobject>');
  29. foreach ($_SESSION['_course'] as $key => $val)
  30. printf('<%s>%s</%s>',$key,utf8_encode($val),$key);
  31. printf('</courseobject>');
  32. printf('<userobject>');
  33. foreach ($_SESSION['_user'] as $key => $val) if ($key != "auth_source") printf('<%s>%s</%s>',$key,utf8_encode($val),$key);
  34. printf('<sid>%s</sid>', session_id());
  35. $isadmin =((CourseManager::get_user_in_course_status($_SESSION['_user']['user_id'], $_SESSION['_course']['sysCode']) == COURSEMANAGER)||api_is_platform_admin() ? "true" : "false");
  36. printf('<key>%s</key>', md5($confkey.$challenge));
  37. printf('<challenge>%s</challenge>', $challenge);
  38. printf('<isUploadAllowed>%s</isUploadAllowed>', $isadmin);
  39. printf('<canStartModerator>%s</canStartModerator>',($isadmin=='true' || $_SESSION["roomType"] == "conference")?'true':'false');
  40. printf('<mustStartModerator>%s</mustStartModerator>',($isadmin=='true' || $_SESSION["roomType"] == "conference")?'true':'false');
  41. printf('</userobject>');
  42. printf('<config>');
  43. printf('<host>'.api_get_setting('service_visio','visio_host').'</host>');
  44. printf('<port>'.api_get_setting('service_visio','visio_port').'</port>');
  45. printf('</config>');
  46. $path = preg_replace('/^([^:]*:\/\/)/','',api_get_path(WEB_PATH));
  47. $path = str_replace('/','_',$path);
  48. printf('<roomConfig>');
  49. printf('<portal>%s</portal>', $path);
  50. printf('<roomType>%s</roomType>', $_SESSION['roomType']); // fixme remove +
  51. printf('</roomConfig>');
  52. printf('<recorderparams>');
  53. if(isset($_SESSION['oLP']))
  54. {
  55. switch ($_SESSION['whereami'])
  56. {
  57. case 'lp/build' :
  58. $student_view = 'false';
  59. break;
  60. default :
  61. $student_view = 'true';
  62. break;
  63. }
  64. $document_id = $_SESSION['oLP']->current;
  65. }
  66. printf('<studentview>%s</studentview>',$student_view);
  67. printf('<documentid>%s</documentid>',$document_id);
  68. printf('</recorderparams>');
  69. printf('<languageobject>');
  70. printf(get_language_file_as_xml($language_interface));
  71. printf('</languageobject>');
  72. printf('</dokeosobject>');
  73. ?>