From 78415c3a9b960996f80f69be4a53560ab91b28e4 Mon Sep 17 00:00:00 2001 From: Paul Poulain Date: Fri, 2 Nov 2012 11:19:23 +0100 Subject: [PATCH] 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 --- help.pl | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/help.pl b/help.pl index 78f225b..f641fe6 100755 --- a/help.pl +++ b/help.pl @@ -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 ); -- 1.7.9.5