Bug 8949: Trying to view help on a page without any help results in a nasty error

The problem was probably a side effect of bug 7038

I've checked that things are OK in translated languages.

Test plan:
 * open help on a page with help in english (mainpage.pl)
 * open help on a page with help in another language (mainpage.pl)
=> you'll see the online help, as usual
 * open help on a page without help in english (acqui/addorderiso2709.pl)
 * open help on a page without help in another language (acqui/addorderiso2709.pl)
=> you'll get the "oops, no help available, sorry", no more the Perl error

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Passed-QA-by: Jonathan Druart <jonathan.druart@biblibre.com>
Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This commit is contained in:
Paul Poulain 2012-11-02 11:19:23 +01:00 committed by Jared Camins-Esakov
parent b6b6329435
commit 039a1e96c1
1 changed files with 10 additions and 0 deletions

10
help.pl
View File

@ -43,6 +43,16 @@ my $query = new CGI;
our $refer = $query->param('url');
$refer = $query->referer() if !$refer || $refer eq 'undefined';
my $from = _help_template_file_of_url($refer);
my $htdocs = C4::Context->config('intrahtdocs');
#
# checking that the help file exist, otherwise, display nohelp.tt page
#
my ( $theme, $lang ) = C4::Templates::themelanguage( $htdocs, $from, "intranet", $query );
unless ( -e "$htdocs/$theme/$lang/modules/$from" ) {
$from = "help/nohelp.tt";
( $theme, $lang ) = C4::Templates::themelanguage( $htdocs, $from, "intranet", $query );
}
my $template = C4::Templates::gettemplate($from, 'intranet', $query);
$template->param( referer => $refer );