#!/usr/bin/perl -w
use strict;
use Cwd qw/abs_path/;
use CGI::Carp qw(fatalsToBrowser);
use CGI::Simple;
use File::Slurp;
use Data::Dumper;
use Text::Iconv;
use lib '../lib';
use WebPAC::DB;
use WebPAC::Output::TT;
my $abs_path = abs_path($0);
$abs_path =~ s#/[^/]*$#/../#;
my $db_path = $abs_path . '/db/';
my $template_file = 'html_ffzg.tt';
my $css_file = 'user.css';
my $iconv_utf8 = new Text::Iconv('ISO-8859-2', 'UTF-8');
my $iconv_loc = new Text::Iconv('UTF-8', 'ISO-8859-2');
my $db = new WebPAC::DB(
path => $db_path,
read_only => 1,
debug => 1,
);
my $out = new WebPAC::Output::TT(
include_path => "$abs_path/conf/output/tt",
filters => { foo => sub { shift } },
);
my $q = new CGI::Simple;
my $self = $q->url( '-path_info'=>1, '-query'=>0, '-full'=>0 );
my $rec = $q->param('rec') || 1;
print $q->header( -charset => 'utf-8' );
##---- some handy subs
sub update_file($$) {
my ($path, $content) = @_;
$content = $iconv_loc->convert( $content ) || die "no content?";
sub _conv_js {
my $t = shift || return;
return $iconv_loc->convert(chr(hex($t)));
}
$content =~ s/%u([a-fA-F0-9]{4})/_conv_js($1)/gex;
$content =~ s/^[\n\r]+//s;
$content =~ s/[\n\r]+$//s;
write_file($path . '.new', $content) || die "can't save ${path}.new $!";
rename $path . '.new', $path || die "can't rename to $path: $!";
}
sub get_file_in_html($) {
my ($path) = @_;
die "no path?" unless ($path);
my $content = read_file($path) || die "can't read $path: $!";
$content = $q->escapeHTML($iconv_utf8->convert($content));
return $content;
}
##----
if ($q->path_info =~ m#xml#) {
my @ds = $db->load_ds($rec);
if (@ds && $#ds > 0) {
print qq{