239 |
$cond->set_max( $page * $max ); |
$cond->set_max( $page * $max ); |
240 |
|
|
241 |
my $result = $self->{est_node}->search($cond, $args->{depth}); |
my $result = $self->{est_node}->search($cond, $args->{depth}); |
242 |
|
if (! $result) { |
243 |
|
$self->{log}->fatal("search didn't return result"); |
244 |
|
return; |
245 |
|
} |
246 |
my $hits = $result->doc_num; |
my $hits = $result->doc_num; |
247 |
|
|
248 |
$times->{est} += time() - $t; |
$times->{est} += time() - $t; |
250 |
$log->debug( sprintf("search took %.6fs and returned $hits hits.", $times->{est}) ); |
$log->debug( sprintf("search took %.6fs and returned $hits hits.", $times->{est}) ); |
251 |
|
|
252 |
$self->{hints} = $result->{hints}; |
$self->{hints} = $result->{hints}; |
253 |
$log->dumper($self->{hints}, 'hints' ); |
#$log->dumper($self->{hints}, 'original hints' ); |
254 |
|
|
255 |
# |
# |
256 |
# fetch results |
# fetch results |
355 |
|
|
356 |
while (my ($key,$val) = each %{ $self->{hints} }) { |
while (my ($key,$val) = each %{ $self->{hints} }) { |
357 |
|
|
358 |
|
#$self->{log}->debug("current hint $key = $val"); |
359 |
|
|
360 |
if ($key =~ m/^(?:HITS*|TIME|DOCNUM|WORDNUM)$/) { |
if ($key =~ m/^(?:HITS*|TIME|DOCNUM|WORDNUM)$/) { |
361 |
$hints->{ lc($key) } = $val; |
$hints->{ lc($key) } = $val; |
362 |
} elsif ($key =~ m/^HINT#/) { |
} elsif ($key =~ m/^HINT#/) { |
366 |
my ($url,undef,undef,undef,undef,undef,$results) = split(/\t/,$val,7); |
my ($url,undef,undef,undef,undef,undef,$results) = split(/\t/,$val,7); |
367 |
if ($url =~ m#/node/(.+)$#) { |
if ($url =~ m#/node/(.+)$#) { |
368 |
$hints->{node}->{$1} = $results; |
$hints->{node}->{$1} = $results; |
369 |
|
} else { |
370 |
|
$self->{log}->debug("url $url doesn't have /node/ in it!"); |
371 |
} |
} |
372 |
|
} else { |
373 |
|
$self->{log}->debug("unknown hint $key = $val"); |
374 |
} |
} |
375 |
|
|
376 |
} |
} |
377 |
|
|
378 |
|
$self->{log}->dumper($hints, 'model hints' ); |
379 |
|
|
380 |
return $hints; |
return $hints; |
381 |
} |
} |
382 |
|
|
473 |
my $node = $1; |
my $node = $1; |
474 |
$self->setup_site( $node ); |
$self->setup_site( $node ); |
475 |
$self->{est_node}->_set_info; |
$self->{est_node}->_set_info; |
476 |
|
$label = decode('UTF-8', $label); |
477 |
push @nodes, { |
push @nodes, { |
478 |
name => $node, |
name => $node, |
479 |
label => $label, |
label => $label, |
492 |
return @nodes; |
return @nodes; |
493 |
} |
} |
494 |
|
|
|
=cut |
|
|
|
|
|
|
|
495 |
=head2 save_html |
=head2 save_html |
496 |
|
|
497 |
$m->save_html( '/full/path/to/file', $content ); |
$m->save_html( '/full/path/to/file', $content ); |