use C4::Budgets qw(GetCurrency);
use C4::Templates;
-#use HTML::Template::Pro;
use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS);
BEGIN {
# set the version for version checking
$VERSION = 3.03;
require Exporter;
- @ISA = qw(Exporter);
- @EXPORT_OK = qw(&is_ajax ajax_fail); # More stuff should go here instead
- %EXPORT_TAGS = ( all =>[qw(&pagination_bar
- &output_with_http_headers &output_html_with_http_headers)],
- ajax =>[qw(&output_with_http_headers is_ajax)],
- html =>[qw(&output_with_http_headers &output_html_with_http_headers)]
- );
+
+ @ISA = qw(Exporter);
+ @EXPORT_OK = qw(&is_ajax ajax_fail); # More stuff should go here instead
+ %EXPORT_TAGS = ( all =>[qw(&themelanguage &gettemplate setlanguagecookie pagination_bar
+ &output_with_http_headers &output_ajax_with_http_headers &output_html_with_http_headers)],
+ ajax =>[qw(&output_with_http_headers &output_ajax_with_http_headers is_ajax)],
+ html =>[qw(&output_with_http_headers &output_html_with_http_headers)]
+ );
push @EXPORT, qw(
- &output_html_with_http_headers &output_with_http_headers FormatData FormatNumber pagination_bar
+ &themelanguage &gettemplate setlanguagecookie getlanguagecookie pagination_bar
+ );
+ push @EXPORT, qw(
+ &output_html_with_http_headers &output_ajax_with_http_headers &output_with_http_headers FormatData FormatNumber
);
-}
+}
=head1 NAME
$options->{'Content-Style-Type' } = 'text/css';
$options->{'Content-Script-Type'} = 'text/javascript';
}
- # remove SUDOC specific NSB NSE
- $data =~ s/\x{C2}\x{98}|\x{C2}\x{9C}/ /g;
- $data =~ s/\x{C2}\x{88}|\x{C2}\x{89}/ /g;
-
+
# We can't encode here, that will double encode our templates, and xslt
# We need to fix the encoding as it comes out of the database, or when we pass the variables to templates
# utf8::encode($data) if utf8::is_utf8($data);
+ $data =~ s/\&\;amp\; /\&\; /g;
print $query->header($options), $data;
}
sub output_html_with_http_headers ($$$;$) {
my ( $query, $cookie, $data, $status ) = @_;
- $data =~ s/\&\;amp\; /\&\; /g;
output_with_http_headers( $query, $cookie, $data, 'html', $status );
}
-sub is_ajax () {
+
+sub output_ajax_with_http_headers {
+ my ( $query, $js ) = @_;
+ print $query->header(
+ -type => 'text/javascript',
+ -charset => 'UTF-8',
+ -Pragma => 'no-cache',
+ -'Cache-Control' => 'no-cache',
+ -expires => '-1d',
+ ), $js;
+}
+
+sub is_ajax {
my $x_req = $ENV{HTTP_X_REQUESTED_WITH};
return ( $x_req and $x_req =~ /XMLHttpRequest/i ) ? 1 : 0;
}