TemplateDir — specify common template/fallback "pages" directories
Specify directories containing default pages that are to be looked up if pages
are not found in the usual PageDir. This effectively allows
keeping pages common for all catalogs in common directories,
or — in case
of a catalog directive — extending page
search outside the catalog's PageDir.
Example: Setting TemplateDir to multiple directories
TemplateDir /usr/local/interchange/default_pages /common/pages
Interchange 5.9.0:
Source: lib/Vend/Config.pm
Line 3934 (context shows lines 3934-3950)
sub parse_root_dir_array {
my($var, $value) = @_;
return [] unless $value;
no strict 'refs';
my $c = ${"Global::$var"} || [];
my @dirs = grep /\S/, Text::ParseWords::shellwords($value);
foreach my $dir (@dirs) {
$dir = "$Global::VendRoot/$dir"
unless file_name_is_absolute($dir);
$dir =~ s./+$..;
push @$c, $dir;
}
return $c;
}
Source: lib/Vend/Config.pm
Line 3952 (context shows lines 3952-3973)
sub parse_dir_array {
my($var, $value) = @_;
return [] unless $value;
$C->{$var} = [] unless $C->{$var};
my $c = $C->{$var} || [];
my @dirs = grep /\S/, Text::ParseWords::shellwords($value);
foreach my $dir (@dirs) {
unless (allowed_file($dir)) {
config_error('Path %s not allowed in %s directive',
$dir, $var);
}
$dir = "$C->{VendRoot}/$dir"
unless file_name_is_absolute($dir);
$dir =~ s./+$..;
push @$c, $dir;
}
return $c;
}