A module must provide help using exactly one of the two methods described.
A module can provide HTML help generated from Author database.
The HTML help files must be placed in module/<module_name>/locales/<locale_name>/help under /htdocs. The en-US locale is mandatory, others are optional. If the help directory for requested locale does not exist, en-US is used instead.
Also, the module must provide module/<module_name>/help_topics.php file under /plib. This file must declare the $topics array in the global scope, containing mappings from context keys to HTML file names under the help directories (such as 'fileserver_hosts_list' => '6172.htm'). The array must contain an entry for the '__default' key, which is used when help for the module is called from the modules list.
Finally, the help_topics.php file must resolve the current locale and make the localized $lmsg_arr entries for the module available, so that it contains a key for "module_{$module}_guide". The text from that key will be used for the title bar of the help window, and it should say something like "Module Guide".
A module can provide its own help. If the module does not have help_topics.php, then, in a new window, htdocs/<modules>/help.php is displayed. The help.php script receives the following GET request parameters:
`locale': The locale for which to display help. The script should implement reasonable fallback without any error messages in case when help for the requested locale is unavailable.
`context': The help context. This parameter will be omitted when help is called from the modules list. In this case, some default help page must be shown. The script may display an error message in case when the requested context does not exist, but after showing this message, the default help page must be displayed.
The help.php script may provide means to navigate to different help pages.