sub get_template_root { $ENV{MAYPOLE_TEMPLATES} || "." }
+sub warn {
+ my ($self,@args) = @_;
+ my ($package, $line) = (caller)[0,2];
+ warn "[$package line $line] ", @args ;
+ return;
+}
+
sub parse_location {
my $self = shift;
my $url = URI->new( shift @ARGV );
- my $root = URI->new( $self->config->uri_base )->path;
+
+ $self->preprocess_location();
+
+ (my $uri_base = $self->config->uri_base) =~ s:/$::;
+ my $root = URI->new( $uri_base )->path;
$self->{path} = $url->path;
- $self->{path} =~ s/^$root//i if $root;
+ $self->{path} =~ s:^$root/?::i if $root;
$self->parse_path;
$self->parse_args($url);
}
sub call_url {
my $self = shift;
- @ARGV = @_;
+ local @ARGV = @_;
$package->handler() == OK and return $buffer;
}
=item send_output
+=item warn
+
=back
=cut