forked from moodle/moodle
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathhelp.php
119 lines (98 loc) · 3.97 KB
/
help.php
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
<?php
/**
* help.php - Displays help page.
*
* Prints a very simple page and includes
* page content or a string from elsewhere.
* Usually this will appear in a popup
* See {@link helpbutton()} in {@link lib/moodlelib.php}
*
* @author Martin Dougiamas
* @version $Id$
* @package moodlecore
*/
require_once('config.php');
optional_variable($file, '');
optional_variable($text, 'No text to display');
optional_variable($module, 'moodle');
print_header();
if (detect_munged_arguments($module .'/'. $file)) {
error('Filenames contain illegal characters!');
}
print_simple_box_start('center', '96%');
$helpfound = false;
$langs = array(current_language(), get_string('parentlanguage'), 'en'); // Fallback
if (!empty($file)) {
foreach ($langs as $lang) {
if (empty($lang)) {
continue;
}
if ($module == 'moodle') {
$filepath = $CFG->dirroot .'/lang/'. $lang .'/help/'. $file;
} else {
$filepath = $CFG->dirroot .'/lang/'. $lang .'/help/'. $module .'/'. $file;
}
if (file_exists($filepath)) {
$helpfound = true;
include($filepath); // The actual helpfile
if ($module == 'moodle' and ($file == 'index.html' or $file == 'mods.html')) {
// include file for each module
if (!$modules = get_records('modules', 'visible', 1)) {
error('No modules found!!'); // Should never happen
}
foreach ($modules as $mod) {
$strmodulename = get_string('modulename', $mod->name);
$modulebyname[$strmodulename] = $mod;
}
ksort($modulebyname);
foreach ($modulebyname as $mod) {
foreach ($langs as $lang) {
if (empty($lang)) {
continue;
}
$filepath = $CFG->dirroot .'/lang/'. $lang .'/help/'. $mod->name .'/'. $file;
if (file_exists($filepath)) {
echo '<hr size="1" />';
include($filepath); // The actual helpfile
break;
}
}
}
}
if ($module == 'moodle' and ($file == 'resource/types.html')) { // RESOURCES
require_once($CFG->dirroot .'/mod/resource/lib.php');
$typelist = resource_get_resource_types();
$typelist['label'] = get_string('resourcetypelabel', 'resource');
foreach ($typelist as $type => $name) {
foreach ($langs as $lang) {
if (empty($lang)) {
continue;
}
$filepath = $CFG->dirroot .'/lang/'. $lang .'/help/resource/type/'. $type .'.html';
if (file_exists($filepath)) {
echo '<hr size="1" />';
include($filepath); // The actual helpfile
break;
}
}
}
}
break;
}
}
} else {
echo '<p>';
echo clean_text($text);
echo '</p>';
$helpfound = true;
}
print_simple_box_end();
if (!$helpfound) {
$file = clean_text($file); // Keep it clean!
notify('Help file "'. $file .'" could not be found!');
}
close_window_button();
echo '<center><p><a href="help.php?file=index.html">'. get_string('helpindex') .'</a><p></center>';
?>
</body>
</html>