add POD to SGN::Exception
[sgn.git] / mason / feature / search.mas
blob0985dc5315d5d9a5fea56e0ca1c174a6aff25088
1 <%args>
2   $results => undef
3   $form
4   $pagination_link_maker
5 </%args>
6 <%once>
7   use Number::Format;
8   use CXGN::Page::FormattingHelpers qw/ columnar_table_html /;
9   use SGN::View::Feature qw/feature_link/;
10 </%once>
11 <& /page/page_title.mas, title => 'Feature Search' &>
12 <& /util/import_javascript.mas,
13     classes => [qw(jquery CXGN.Effects)]
16 <!-- This CSS should probably go somewhere better -->
17 <style>
18 #feature_search_form .select span span {
19   white-space: nowrap;
20   float: left;
21   width: 10em;
23 #feature_search_form div label, #feature_search_form legend {
24   font-weight: bold;
26 #feature_search_form div.text label {
27   float: left;
28   width: 10em;
31 div.paginate_nav {
32   margin: 0 auto;
33   width: 80%;
34   white-space: nowrap;
35   text-align: center;
37 </style>
39 % if( $results ) {
40 %   my $pager = $results->pager;
42   <&| /page/info_section.mas, title    => 'Search Results',
43                               subtitle => 'results '
44                                           .$pager->first
45                                           .'-'.$pager->last
46                                           .' of '.Number::Format->new->format_number($pager->total_entries)
47    &>
48 %   if( $results->count ) {
49      <% columnar_table_html(
50             headings => ['Feature Name','Feature Type'],
51             data     => [ map [feature_link($_),$_->type->name], $results->all ],
52         )
53       %>
54 %   } else {
55      <h3 style="text-align: center">no matching results found</h3>
56 %   }
57   </&>
59   <& /page/pagination_control.mas, pager => $pager, link_maker => $pagination_link_maker &>
60 % } else {
61 <&| /page/info_section.mas, title => 'Search' &>
62   <% $form->render %>
63 </&>
64 % }