webservice MDL-20803 little hack in order to not trigger environment.php in the header when $USER is set but the user is not logged

This commit is contained in:
jerome mouneyrac 2009-12-13 14:06:09 +00:00
parent d4c6ef705c
commit b5e4c8d4c1

View file

@ -226,15 +226,21 @@ class webservice_documentation_generator {
* Generate and display the documentation * Generate and display the documentation
*/ */
protected function display_documentation_html() { protected function display_documentation_html() {
global $PAGE, $OUTPUT, $SITE; global $PAGE, $OUTPUT, $SITE, $USER;
$PAGE->set_url('/webservice/wsdoc'); $PAGE->set_url('/webservice/wsdoc');
$PAGE->set_docs_path(''); $PAGE->set_docs_path('');
$PAGE->set_title($SITE->fullname." ".get_string('wsdocumentation', 'webservice')); $PAGE->set_title($SITE->fullname." ".get_string('wsdocumentation', 'webservice'));
$PAGE->set_heading($SITE->fullname." ".get_string('wsdocumentation', 'webservice')); $PAGE->set_heading($SITE->fullname." ".get_string('wsdocumentation', 'webservice'));
$PAGE->set_generaltype('popup'); $PAGE->set_generaltype('popup');
//unlog temporarly the user in order to not trigger environment.php called by Moodle header.
//environment.php checkes the sessionkey that we don't have here.
//emvrionment.php is just used to detect the flash player. We don't need
//to check the flash player version.
$userid = $USER->id;
$USER->id = null;
echo $OUTPUT->header(); echo $OUTPUT->header();
$USER->id = $userid;
$renderer = $PAGE->theme->get_renderer('core_wsdoc',$OUTPUT); $renderer = $PAGE->theme->get_renderer('core_wsdoc',$OUTPUT);
echo $renderer->documentation_html($this->functions, $this->username); echo $renderer->documentation_html($this->functions, $this->username);
echo $OUTPUT->footer(); echo $OUTPUT->footer();