Author: spadkins
Date: Fri Nov 17 20:29:43 2006
New Revision: 8082
Modified:
p5ee/trunk/App-Widget/lib/App/Widget.pm
Log:
format() handles undef values better
Modified: p5ee/trunk/App-Widget/lib/App/Widget.pm
==============================================================================
--- p5ee/trunk/App-Widget/lib/App/Widget.pm (original)
+++ p5ee/trunk/App-Widget/lib/App/Widget.pm Fri Nov 17 20:29:43 2006
@@ -520,28 +520,33 @@
my $formatted_value = $value;
- if ($format_options->{scale_factor}) {
- $formatted_value *= $format_options->{scale_factor};
+ if (! defined $formatted_value) {
+ $formatted_value = " ";
}
- if ($format_options->{format}) {
- $formatted_value = sprintf($format_options->{format},
$formatted_value);
- }
- elsif ($format_options->{date_format}) {
- if (defined $format_options->{date_suffix}) {
- $formatted_value .= $format_options->{date_suffix};
+ else {
+ if ($format_options->{scale_factor}) {
+ $formatted_value *= $format_options->{scale_factor};
+ }
+ if ($format_options->{format}) {
+ $formatted_value = sprintf($format_options->{format},
$formatted_value);
+ }
+ elsif ($format_options->{date_format}) {
+ if (defined $format_options->{date_suffix}) {
+ $formatted_value .= $format_options->{date_suffix};
+ }
+ $formatted_value = time2str($format_options->{date_format},
str2time($formatted_value));
+ }
+ elsif ($format_options->{labels}) {
+ $formatted_value = $format_options->{labels}{$value};
+ $formatted_value = $value if (!defined $formatted_value);
+ }
+ elsif ($format_options->{domain}) {
+ my $context = App->context();
+ my $value_domain =
$context->value_domain($format_options->{domain});
+ my $labels = $value_domain->labels();
+ $formatted_value = $labels->{$value};
+ $formatted_value = $value if (!defined $formatted_value);
}
- $formatted_value = time2str($format_options->{date_format},
str2time($formatted_value));
- }
- elsif ($format_options->{labels}) {
- $formatted_value = $format_options->{labels}{$value};
- $formatted_value = $value if (!defined $formatted_value);
- }
- elsif ($format_options->{domain}) {
- my $context = App->context();
- my $value_domain = $context->value_domain($format_options->{domain});
- my $labels = $value_domain->labels();
- $formatted_value = $labels->{$value};
- $formatted_value = $value if (!defined $formatted_value);
}
&App::sub_exit($formatted_value) if ($App::trace);