[Bio] / FigWebServices / subsystem_server_sapling.cgi Repository:
ViewVC logotype

Diff of /FigWebServices/subsystem_server_sapling.cgi

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.6, Wed Jul 15 20:52:28 2009 UTC revision 1.7, Thu Jul 23 18:17:37 2009 UTC
# Line 142  Line 142 
142          #map {push(@{$big{$_}}, 1)} @id_roles;          #map {push(@{$big{$_}}, 1)} @id_roles;
143          #map {push(@{$big{$_->[0]}}, 1)} @id_roles;          #map {push(@{$big{$_->[0]}}, 1)} @id_roles;
144          map {push(@{$big{$_->[0]}}, $_->[1])} @id_roles;          map {push(@{$big{$_->[0]}}, $_->[1])} @id_roles;
145          my @resultRows = $sapling->GetFlat("Subsystem", '', [], 'Subsystem(id)');          #my @resultRows = $sapling->GetFlat("Subsystem", '', [], 'Subsystem(id)');
146          foreach my $sub (@resultRows) {  
147    
148    
149    
150            my @resultRows = $sapling->GetAll("Subsystem Includes Role",
151                                    'ORDER BY Subsystem(id), Includes(sequence)', [],
152                                    [qw(Subsystem(id) Role(id) Includes(abbreviation))]);
153    
154                  my %ss_roles;                  my %ss_roles;
155                  my $ss = SaplingSubsys->new($sub, $sapling);          foreach my $row (@resultRows) {
156                  if ($ss) {                  my ($sub, $role, $abbr) = @$row;
157                          foreach my $role ($ss->get_roles) {                  $ss_roles{$sub}->{$role} = $abbr;
                                 $ss_roles{$role} = $ss->get_abbr_for_role($role);  
158                          }                          }
159                  } else {  
160                          die "bad subsys\n";          foreach my $sub (keys %ss_roles) {
161                  }                  my $roles = $ss_roles{$sub};
162                  my @abbr = map{$ss_roles{$_}} grep { $big{$_}} keys %ss_roles;  
163                    my @abbr = map{$roles->{$_}} grep { $big{$_}} keys %$roles;
164                  my $set =  join(" ",  @abbr);                  my $set =  join(" ",  @abbr);
165                  if (@abbr > 0) {                  if (@abbr > 0) {
166                          my ($variant, $size) = get_max_subset($sub, $set);                          my ($variant, $size) = get_max_subset($sub, $set);
167                          if ($variant) {                          if ($variant) {
168                                  foreach my $role ($ss->get_roles()) {                                  foreach my $role (keys %$roles) {
169                                          if ($id_display) {                                          if ($id_display) {
170                                                  foreach my $id (@{$big{$role}}) {                                                  foreach my $id (@{$big{$role}}) {
171                                                          push (@$result, [$variant, $role, $id]);                                                          push (@$result, [$variant, $role, $id]);

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3