Fix inclusion functions
parent
10d1588e88
commit
73dcdfc67d
|
@ -1190,22 +1190,25 @@ sub function_map
|
||||||
|
|
||||||
## Template inclusion
|
## Template inclusion
|
||||||
|
|
||||||
# Include another template: parse('file.tpl'[, args])
|
# Include another template: parse('file.tpl'[, <args>])
|
||||||
|
# In all inclusion functions <args> may be a hash ref of a list of key+value pairs
|
||||||
|
# All modifications to <args> (or to current global "template vars") done
|
||||||
|
# by the included template are preserved after processing it!
|
||||||
sub function_parse
|
sub function_parse
|
||||||
{
|
{
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $file = shift;
|
my $file = shift;
|
||||||
my $args = @_ > 1 ? { @_ } : $_[0];
|
my $args = @_ > 1 ? "{ ".join(", ", @_)." }" : (@_ ? $_[0] : '');
|
||||||
return "\$self->{template}->parse_discard($file, undef, 'main', $args)";
|
return "\$self->{template}->parse_real($file, undef, 'main', $args)";
|
||||||
}
|
}
|
||||||
|
|
||||||
# Run block from current template: exec('block'[, args])
|
# Run block from current template: exec('block'[, <args>])
|
||||||
sub function_exec
|
sub function_exec
|
||||||
{
|
{
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $block = shift;
|
my $block = shift;
|
||||||
my $args = @_ > 1 ? { @_ } : $_[0];
|
my $args = @_ > 1 ? "{ ".join(", ", @_)." }" : (@_ ? $_[0] : '');
|
||||||
return "\$self->{template}->parse_discard(\$FILENAME, undef, $block, $args)";
|
return "\$self->{template}->parse_real(\$FILENAME, undef, $block, $args)";
|
||||||
}
|
}
|
||||||
|
|
||||||
# Run block from another template: exec_from('file.tpl', 'block'[, args])
|
# Run block from another template: exec_from('file.tpl', 'block'[, args])
|
||||||
|
@ -1214,29 +1217,29 @@ sub function_exec_from
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $file = shift;
|
my $file = shift;
|
||||||
my $block = shift;
|
my $block = shift;
|
||||||
my $args = @_ > 1 ? { @_ } : $_[0];
|
my $args = @_ > 1 ? "{ ".join(", ", @_)." }" : (@_ ? $_[0] : '');
|
||||||
return "\$self->{template}->parse_discard($file, undef, $block, $args)";
|
return "\$self->{template}->parse_real($file, undef, $block, $args)";
|
||||||
}
|
}
|
||||||
|
|
||||||
# (Not recommended, but possible)
|
# (Not recommended, but possible)
|
||||||
# Parse string as a template: parse('code'[, args])
|
# Parse string as a template: parse('code'[, args])
|
||||||
sub function_parse
|
sub function_parse_inline
|
||||||
{
|
{
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $code = shift;
|
my $code = shift;
|
||||||
my $args = @_ > 1 ? { @_ } : $_[0];
|
my $args = @_ > 1 ? "{ ".join(", ", @_)." }" : (@_ ? $_[0] : '');
|
||||||
return "\$self->{template}->parse_discard(undef, $code, 'main', $args)";
|
return "\$self->{template}->parse_real(undef, $code, 'main', $args)";
|
||||||
}
|
}
|
||||||
|
|
||||||
# (Highly not recommended, but still possible)
|
# (Highly not recommended, but still possible)
|
||||||
# Parse string as a template and run a named block from it: parse('code', 'block'[, args])
|
# Parse string as a template and run a named block from it: parse('code', 'block'[, args])
|
||||||
sub function_parse
|
sub function_exec_from_inline
|
||||||
{
|
{
|
||||||
my $self = shift;
|
my $self = shift;
|
||||||
my $code = shift;
|
my $code = shift;
|
||||||
my $block = shift;
|
my $block = shift;
|
||||||
my $args = @_ > 1 ? { @_ } : $_[0];
|
my $args = @_ > 1 ? "{ ".join(", ", @_)." }" : (@_ ? $_[0] : '');
|
||||||
return "\$self->{template}->parse_discard(undef, $code, $block, $args)";
|
return "\$self->{template}->parse_real(undef, $code, $block, $args)";
|
||||||
}
|
}
|
||||||
|
|
||||||
1;
|
1;
|
||||||
|
|
Loading…
Reference in New Issue