Author: spadkins
Date: Fri Feb 20 14:21:56 2009
New Revision: 12526
Modified:
p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm
Log:
A few more changes
Modified: p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm
==============================================================================
--- p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm (original)
+++ p5ee/trunk/App-Widget/lib/App/Widget/Graph.pm Fri Feb 20 14:21:56 2009
@@ -290,25 +290,32 @@
}
foreach my $graph_key (@$keys) {
- my $domain = $column_defs->{$graph_key}{domain};
- if ($domain =~ /^dow$/) {
+ if ($graph_key =~ /^dow$/) {
my @x_new;
- my $value_domain = $context->value_domain($domain);
+ my $value_domain =
$context->value_domain($column_defs->{$graph_key}{domain});
my $labels = $value_domain->labels();
foreach my $x_val (@x) {
push(@x_new, $labels->{$x_val});
}
@x = @x_new;
}
- if ($domain =~ /days_left_type\d_abbr/) {
- my ($val_sort, $vals_sort_idx, $sign, @x_new, @yn_new);
-
- my %numeric = ( "integer" => 1, "float" => 1 );
- my $value_domain = $context->value_domain($domain);
- my $domain_vals = $value_domain->values();
+ else {
+ my ($val_sort, $vals_sort_idx, $sign, @x_new, @yn_new,
$graph_key_vals);
+ my %numeric = ( "integer" => 1, "float" => 1 );
- for (my $i = 0; $i <= $#$domain_vals; $i++) {
- $val_sort->{$graph_key}{$domain_vals->[$i]} = $i;
+ if ($spec->{params}{$graph_key}) {
+ $graph_key_vals = [ split(/,/,
$spec->{params}{$graph_key}) ];
+ for (my $i = 0; $i <= $#$graph_key_vals; $i++) {
+ $val_sort->{$graph_key}{$graph_key_vals->[$i]} = $i;
+ }
+ }
+ else {
+ next if (!$column_defs->{$graph_key}{domain});
+ my $value_domain =
$context->value_domain($column_defs->{$graph_key}{domain});
+ my $domain_vals = $value_domain->values();
+ for (my $i = 0; $i <= $#$domain_vals; $i++) {
+ $val_sort->{$graph_key}{$domain_vals->[$i]} = $i;
+ }
}
@$vals_sort_idx = sort {
@@ -398,42 +405,43 @@
}
foreach my $graph_key (@$keys) {
- if ($graph_key =~ /mkt_seg_abbr/) {
- my ($graph_key_vals, $val_sort, $vals_sort_idx, $sign,
@yn_new, @y_new);
- my %numeric = ( "integer" => 1, "float" => 1 );
+ my ($graph_key_vals, $val_sort, $vals_sort_idx, $sign, @yn_new,
@y_new);
+ my %numeric = ( "integer" => 1, "float" => 1 );
- if ($spec->{params}{$graph_key}) {
- $graph_key_vals = [ split(/,/,
$spec->{params}{$graph_key}) ];
- }
+ if ($spec->{params}{$graph_key}) {
+ $graph_key_vals = [ split(/,/, $spec->{params}{$graph_key}) ];
+ }
+ else {
+ next;
+ }
- for (my $i = 0; $i <= $#$graph_key_vals; $i++) {
- $val_sort->{$graph_key}{$graph_key_vals->[$i]} = $i;
- }
+ for (my $i = 0; $i <= $#$graph_key_vals; $i++) {
+ $val_sort->{$graph_key}{$graph_key_vals->[$i]} = $i;
+ }
- @$vals_sort_idx = sort {
- $sign = 0;
- for (my $i = 0; $i <= $#y; $i++) {
- my $val_a = $y[$a];
- my $val_b = $y[$b];
- $sign = (defined $val_sort->{$graph_key}) ?
- ($val_sort->{$graph_key}{$val_a} <=>
$val_sort->{$graph_key}{$val_b}) :
- ($numeric{$column_defs->{$graph_key}{type}} ?
($val_a <=> $val_b) : ($val_a cmp $val_b));
- last if ($sign);
- }
- $sign;
- } (0 .. $#y);
+ @$vals_sort_idx = sort {
+ $sign = 0;
+ for (my $i = 0; $i <= $#y; $i++) {
+ my $val_a = $y[$a];
+ my $val_b = $y[$b];
+ $sign = (defined $val_sort->{$graph_key}) ?
+ ($val_sort->{$graph_key}{$val_a} <=>
$val_sort->{$graph_key}{$val_b}) :
+ ($numeric{$column_defs->{$graph_key}{type}} ? ($val_a
<=> $val_b) : ($val_a cmp $val_b));
+ last if ($sign);
+ }
+ $sign;
+ } (0 .. $#y);
- if ($#$vals_sort_idx != -1) {
- for (my $i = 0; $i <= $#$vals_sort_idx; $i++) {
- push(@yn_new, $yn[$vals_sort_idx->[$i]]);
- }
- for (my $i = 0; $i <= $#$vals_sort_idx; $i++) {
- $y_new[$i] = $y[$vals_sort_idx->[$i]]
- }
-
- @y = @y_new;
- @yn = @yn_new;
+ if ($#$vals_sort_idx != -1) {
+ for (my $i = 0; $i <= $#$vals_sort_idx; $i++) {
+ push(@yn_new, $yn[$vals_sort_idx->[$i]]);
}
+ for (my $i = 0; $i <= $#$vals_sort_idx; $i++) {
+ $y_new[$i] = $y[$vals_sort_idx->[$i]]
+ }
+
+ @y = @y_new;
+ @yn = @yn_new;
}
}