--- Webpacus/lib/Webpacus/Model/WebPAC.pm 2005/12/17 03:19:58 271 +++ Webpacus/lib/Webpacus/Model/WebPAC.pm 2005/12/25 23:31:59 322 @@ -8,7 +8,7 @@ /; use Data::Dumper; use WebPAC::Store 0.08; -use WebPAC::Output::TT 0.04; +use WebPAC::Output::TT 0.06; use WebPAC::Search::Estraier 0.05; use File::Slurp; use Time::HiRes; @@ -40,6 +40,7 @@ user: 'admin' passwd: 'admin' hits_on_page: 100 + hits_for_pager: 1000 webpac: db_path: '/data/webpac2/db' @@ -113,6 +114,7 @@ "'" ); + $self->{databases} = $c->config->{databases} || $log->error("can't find databases in config"); return $self; @@ -156,10 +158,10 @@ my $template_filename = $args->{template} || $self->{template}; - $args->{max} ||= $self->{'hits_on_page'}; + $args->{max} ||= $self->{'hits_for_pager'}; if (! $args->{max}) { - $args->{max} = 10; - $log->warn("max not set when calling model. Using default of 10"); + $args->{max} = 100; + $log->warn("max not set when calling model. Using default of $args->{max}"); } my $times; # store some times for benchmarking @@ -193,10 +195,10 @@ for my $i ( 0 .. $#results ) { my ($database, $prefix, $id); - if ( $results[$i]->{'@uri'} =~ m!/([^/]+)/([^/]+)#(\d+)$!) { + if ( $results[$i]->{'@uri'} =~ m!/([^/]+)/([^/]+)/(\d+)$!) { ($database, $prefix,$id) = ($1,$2,$3); } else { - $log->warn("can't decode prefix#id from " . $results[$i]->{'@uri'}); + $log->warn("can't decode database/prefix/id from " . $results[$i]->{'@uri'}); next; } @@ -206,7 +208,7 @@ my $ds = $self->{db}->load_ds( database => $database, prefix => $prefix, id => $id ); if (! $ds) { - $log->error("can't load_ds( ${database}/${prefix}#${id} )"); + $log->error("can't load_ds( ${database}/${prefix}/${id} )"); next; } @@ -220,6 +222,7 @@ template => $template_filename, data => $ds, record_uri => "${database}/${prefix}/${id}", + config => $self->{databases}->{$database}, ); $times->{out} += time() - $t; @@ -286,6 +289,7 @@ template => $args->{template}, data => $ds, record_uri => $args->{record_uri}, + config => $self->{databases}->{$database}, ); $html = $self->{iconv}->convert( $html ) || $log->error("can't convert: $html"); @@ -293,6 +297,7 @@ return $html; } + =head2 save_html $m->save_html( '/full/path/to/file', $content ); @@ -315,6 +320,7 @@ $content =~ s/%u([a-fA-F0-9]{4})/_conv_js($1)/gex; $content =~ s/^[\n\r]+//s; $content =~ s/[\n\r]+$/\n/s; + $content =~ s/\n\r/\n/gs; my ($from, $to) = ( $self->{out_encoding},