Bio-Genex

 view release on metacpan or  search on metacpan

samples/query-intro.pl.in  view on Meta::CPAN

$array_ref = $dbh->selectall_arrayref($tech_types_sql) || die $DBI::errstr;
if (defined $array_ref) {
  foreach (@{$array_ref}) {
    push(@tech_types,$_);
  }
} else {
  die "Couldn't get Technology Types";
}

my $species_names_sql = create_select_sql($dbh,COLUMNS=>['spc_pk','common_names'], 
					  FROM=>['Species']);
my @species_names;
if ($array_ref = $dbh->selectall_arrayref($species_names_sql)) {
  foreach (@{$array_ref}) {
    push(@species_names,$_);
  }
} else {
  die "Couldn't get Species names";
}

my $data_provider_names_sql = create_select_sql($dbh,
		      COLUMNS=>['us_pk','contact_person'], 
		      FROM=>['Contact','UserSec'], 
		      WHERE=>q[type='data provider' AND con_fk=con_pk]);

# my $data_provider_names_sql = create_select_sql($dbh,
# 					COLUMNS=>['con_pk','contact_person'], 
# 					FROM=>['Contact'], 
# 					WHERE=>q[type='data provider']);
my @data_provider_names;
if ($array_ref = $dbh->selectall_arrayref($data_provider_names_sql)) {
  foreach (@{$array_ref}) {
    push(@data_provider_names,$_);
  }
} else {
  die "Couldn't get Contact names";
}

my (%labels,@values);

my $STYLE =<<END;
H1 {
	font-size: 50pt;
	alignment: center;
	color: blue;
}

H2 {
	font-size: 30pt;
	font-style: italic;
}

P {
	font-size: 12;
	font-family: serif;
	alignment: left;
	indent: 20pt;
}
P.Alert {
	font-size: 18;
	font-style: bold;
	font-family: serif;
	alignment: left;
	indent: 20pt;
}
END

print header,
  start_html(-title => 'GeneX Database Query Form',
#	     -style => {-code => $STYLE},
	    ),
  h1({-align=>'CENTER'},'GeneX Database Query Form');

print start_multipart_form(-action=>"$cgi_bin/fetch_es.pl", -method=>'POST');

print b('Data Set Filters'), ' for the ', b('GeneX'), ' Database', br();

if (param) {
  print hidden(-name=>'ONLY_ONE_ES',-value=>1) if defined param('ONLY_ONE_ES');
  print hidden(-name=>'DEBUG',-value=>1) if param('DEBUG');
}

print p('Use these selections to filter the data you are requesting'), br();


$labels{'All_Experiments'} = 'All Experiments';
foreach (@exp_set_names) {
  $labels{"$_->[0]"} = $_->[1];
}

@values = sort by_label keys %labels;
print scrolling_list(-name =>'Experiments',
		     -multiple=>1, 
		     -size=>7,
		     -default=>['All_Experiments'],
		     -labels=>\%labels,
		     -value=>\@values,
		    );

undef %labels;
$labels{'All_Species'} = 'All Species';
foreach (@species_names) {
  $labels{"$_->[0]"} = $_->[1];
}

@values = sort by_label keys %labels;
print scrolling_list(-name =>'Species',
		     -multiple=>1, 
		     -size=>7,
		     -default=>['All_Species'],
		     -labels=>\%labels,
		     -value=>\@values,
		    );

undef %labels;
$labels{'All_Providers'} = 'All Data Providers';
foreach (@data_provider_names) {
  $labels{"$_->[0]"} = $_->[1];
}

@values = sort by_label keys %labels;



( run in 0.613 second using v1.01-cache-2.11-cpan-cdf2f3d4e48 )