X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=help.pl;h=ff02bd92b6e6311da97574dc4090cd734b8f863d;hb=af9b39164a7debeaef308e96c2caeb1c2660c0b4;hp=ec909ce244cfbcc7d80bafe7c90385d82e751b8e;hpb=f55e808ec02cc43bf24f99080bb7b63b74d77df1;p=koha.git diff --git a/help.pl b/help.pl index ec909ce244..ff02bd92b6 100755 --- a/help.pl +++ b/help.pl @@ -1,9 +1,9 @@ #!/usr/bin/perl -use HTML::Template; + use strict; -require Exporter; -use C4::Output; # contains gettemplate -use C4::Interface::CGI::Output; +use HTML::Template::Pro; + +use C4::Output; # contains gettemplate # use C4::Auth; use C4::Context; use CGI; @@ -11,35 +11,51 @@ use CGI; my $query = new CGI; # find the script that called the online help using the CGI referer() +our $refer = $query->referer(); + +# workaround for popup not functioning correctly in IE +my $referurl = $query->param('url'); +if ($referurl) { + $refer = $query->param('url'); +} -my $refer = $query->referer(); $refer =~ /.*koha\/(.*)\.pl.*/; -my $from = "help/$1.tmpl"; +my $from = "modules/help/$1.tmpl"; + +my $template = gethelptemplate( $from, "intranet" ); -my $template = gethelptemplate($from,"intranet"); # my $template output_html_with_http_headers $query, "", $template->output; - sub gethelptemplate { - my ($tmplbase) = @_; - - my $htdocs; - $htdocs = C4::Context->config('intrahtdocs'); - my ($theme, $lang) = themelanguage($htdocs, $tmplbase, "intranet"); - unless (-e "$htdocs/$theme/$lang/$tmplbase") { - $tmplbase="help/nohelp.tmpl"; - ($theme, $lang) = themelanguage($htdocs, $tmplbase, "intranet"); - } - my $template = HTML::Template->new(filename => "$htdocs/$theme/$lang/$tmplbase", - die_on_bad_params => 0, - global_vars => 1, - path => ["$htdocs/$theme/$lang/includes"]); - - # XXX temporary patch for Bug 182 for themelang - $template->param(themelang => '/intranet-tmpl' . "/$theme/$lang", - interface => '/intranet-tmpl', - theme => $theme, - lang => $lang); - return $template; + my ($tmplbase) = @_; + + my $htdocs; + $htdocs = C4::Context->config('intrahtdocs'); + my ( $theme, $lang ) = themelanguage( $htdocs, $tmplbase, "intranet", $query ); + unless ( -e "$htdocs/$theme/$lang/$tmplbase" ) { + $tmplbase = "modules/help/nohelp.tmpl"; + ( $theme, $lang ) = themelanguage( $htdocs, $tmplbase, "intranet", $query ); + } + my $template = HTML::Template::Pro->new( + filename => "$htdocs/$theme/$lang/$tmplbase", + die_on_bad_params => 0, + global_vars => 1, + path => ["$htdocs/$theme/$lang/includes"] + ); + + # XXX temporary patch for Bug 182 for themelang + $template->param( + themelang => '/intranet-tmpl' . "/$theme/$lang", + interface => '/intranet-tmpl', + theme => $theme, + lang => $lang, + intranetcolorstylesheet => + C4::Context->preference("intranetcolorstylesheet"), + intranetstylesheet => C4::Context->preference("intranetstylesheet"), + IntranetNav => C4::Context->preference("IntranetNav"), + yuipath => (C4::Context->preference("yuipath") eq "local"?"/intranet-tmpl/$theme/$lang/lib/yui":C4::Context->preference("yuipath")), + referer => $refer, + ); + return $template; }