blob: 9296a345adc9be9dacd68b38b4384710fe361d28 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
<?php
/**
* extern.php - Controller to provide content to external pages.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of
* the License, or (at your option) any later version.
*
* @author Peter Thienel <thienel@data-quest.de>
* @license http://www.gnu.org/licenses/gpl-2.0.html GPL version 2
* @category Stud.IP
* @since 5.4
*/
class ExternController extends StudipController
{
protected $with_session = true;
/**
* Action shows rendered external page.
*
* @param string $config_id The id of the configuration of the external page to show.
* @throws Trails\Exceptions\DoubleRenderError
*/
public function index_action(string $config_id)
{
$config = ExternPageConfig::find($config_id);
if (!$config) {
$this->render_text(
Config::get()->EXTERN_PAGES_ERROR_MESSAGE
);
return;
}
try {
$page = ExternPage::get($config);
$page->setRequestParams();
} catch (Exception $e) {
$this->render_text(
Config::get()->EXTERN_PAGES_ERROR_MESSAGE . '<br>' . $e->getMessage()
);
return;
}
$this->render_text($page->toString());
}
}
|