[interchange-cvs] interchange - jon modified
code/SystemTag/error.coretag
interchange-cvs at icdevgroup.org
interchange-cvs at icdevgroup.org
Thu Apr 8 22:46:53 EDT 2004
User: jon
Date: 2004-04-09 02:46:53 GMT
Modified: code/SystemTag error.coretag
Log:
Add "filter" option to error tag. Especially useful is the "entities"
filter when outputting admin errors.
Revision Changes Path
1.3 +6 -1 interchange/code/SystemTag/error.coretag
rev 1.3, prev_rev 1.2
Index: error.coretag
===================================================================
RCS file: /var/cvs/interchange/code/SystemTag/error.coretag,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -u -r1.2 -r1.3
--- error.coretag 23 Sep 2003 14:30:22 -0000 1.2
+++ error.coretag 9 Apr 2004 02:46:53 -0000 1.3
@@ -3,7 +3,7 @@
UserTag error Order name
UserTag error addAttr
UserTag error PosNumber 1
-UserTag error Version $Revision: 1.2 $
+UserTag error Version $Revision: 1.3 $
UserTag error Routine <<EOR
sub set_error {
my ($error, $var, $opt) = @_;
@@ -94,6 +94,8 @@
$text = pull_else($text, $found_error);
return '' unless @errors;
+ @errors = map { filter_value($opt->{filter}, $_) } @errors
+ if $opt->{filter};
my $etext = sprintf $text, join($opt->{joiner}, @errors);
return join "", $opt->{header}, $etext, $opt->{footer};
}
@@ -103,11 +105,14 @@
#::logDebug("error found=$found_error contents='$err'");
return !(not $found_error)
unless $opt->{std_label} || $text || $opt->{show_error};
+ $err = filter_value($opt->{filter}, $err)
+ if $opt->{filter};
if($opt->{std_label}) {
# store the error label in user's session for later
# possible use in [error show_label=1] calls
$Vend::Session->{errorlabels}{$var} = $opt->{std_label};
if($text) {
+ # do nothing
}
elsif(defined $::Variable->{MV_ERROR_STD_LABEL}) {
$text = $::Variable->{MV_ERROR_STD_LABEL};
More information about the interchange-cvs
mailing list