X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=edithelp.pl;h=362f678e86045c61b70bd813f17444a07c361152;hb=830620ea1b50e207e5e585a5456a6b9beabf2c22;hp=0d20d7d7d0de0bfe557425bde5babd32b910307a;hpb=154a01077a471bddcebf2b4557c10a8010f4d5f6;p=koha.git diff --git a/edithelp.pl b/edithelp.pl index 0d20d7d7d0..362f678e86 100755 --- a/edithelp.pl +++ b/edithelp.pl @@ -22,12 +22,20 @@ use C4::Output; use C4::Auth; use CGI; -my $input = new CGI; +use vars qw($debug); + +BEGIN { + $debug = $ENV{DEBUG} || 0; +} + +our $input = new CGI; my $type = $input->param('type'); my $referer = $input->param('referer'); my $oldreferer = $referer; my $help = $input->param('help'); +# strip any DOS-newlines that TinyMCE may have sneaked in +$help =~ s/\r//g; my $error; my ( $template, $loggedinuser, $cookie ) = get_template_and_user( @@ -52,77 +60,56 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( } ); +sub _get_filepath ($;$) { + my $referer = shift; + $referer =~ /.*koha\/(.+)\.pl.*/; + my $from = "help/$1.tmpl"; + my $htdocs = C4::Context->config('intrahtdocs'); + my ($theme, $lang) = themelanguage( $htdocs, $from, "intranet", $input ); + $debug and print STDERR "help filepath: $htdocs/$theme/$lang/modules/$from"; + return "$htdocs/$theme/$lang/modules/$from"; +} + if ( $type eq 'addnew' ) { $type = 'create'; } elsif ( $type eq 'create' || $type eq 'save' ) { - $referer =~ /.*koha\/(.*)\.pl.*/; - my $from = "help/$1.tmpl"; - my $htdocs = C4::Context->config('intrahtdocs'); -# my ( $theme, $lang ) = themelanguage( $htdocs, $from, "intranet" ); - my $theme = C4::Context->preference('template'); - my $lang = C4::Context->preference('language') || 'en'; - - # if (! -e "$htdocs/$theme/$lang/$from") { - # doesnt exist - eval { - open( OUTFILE, ">$htdocs/$theme/$lang/modules/$from" ) || die "Can't open file"; - }; - if ($@) { - $error = "Cant open file $htdocs/$theme/$lang/modules/$from"; - } - else { - + my $file = _get_filepath($referer); + unless (open (OUTFILE, ">$file")) {$error = "Cannot write file: '$file'";} else { + #open (OUTFILE, ">$file") or die "Cannot write file: '$file'"; # unlikely death, since we just checked # file is open write to it - print OUTFILE "\n"; - if ($type eq 'create'){ - print OUTFILE "