Member — override catalog variables for logged-in users
The directive overrides values of catalog variables for logged-in users (usually members of the site).
The override functionality is available when the catalog variable is
accessed using the [var] tag.
Example: Overriding a variable
Put the following in catalog.cfg:
Variable GREETING Hello, Guest! Member GREETING Hello, Member!
Put the following on an Interchange page:
[var GREETING]
The above will return Hello, Guest! or
Hello, Member!, depending on whether
the user is logged in or not.
Interchange 5.9.0:
Source: lib/Vend/Config.pm
Line 5295 (context shows lines 5295-5317)
sub parse_variable {
my ($var, $value) = @_;
my ($c, $name, $param);
# Allow certain catalogs global subs
unless (defined $value and $value) {
$c = { 'save' => {} };
return $c;
}
if(defined $C) {
$c = $C->{$var};
}
else {
no strict 'refs';
$c = ${"Global::$var"};
}
($name, $param) = split /\s+/, $value, 2;
chomp $param;
$c->{$name} = $param;
return $c;
}