Merge pull request #5162 from solgenomics/topic/enable_brapi_photo_trait
[sgn.git] / mason / gem / platform / template_composition.mas
blob165ea502b9280488542c29ee79e49b8f328adb7e
1 <%doc>
3 =head1 NAME 
4  
5  basic_platform_info.mas
6  Mason component to show a list of templates for platform web page.
8 =cut
10 =head1 VERSION 
12 0.1
14 =cut 
16 =head1 DESCRIPTION
18  Mason component to show a list of templates for platform web page.
20  - Mason root page = platform_detail.mas
21  - Perl controller = platform.pl
24 =cut
26 =head 1 AUTHOR
28  Aureliano Bombarely (ab782@cornell.edu)
30 =cut 
32 </%doc>
35 <%args>
36 $schema
37 $template_list
38 </%args>
39 <%once>
40 use strict;
41 use warnings;
43 use CXGN::GEM::Schema;
44 use CXGN::Metadata::Dbiref;
45 use CXGN::Metadata::Dbipath;
46 use CXGN::Page::FormattingHelpers  qw/ info_section_html info_table_html columnar_table_html page_title_html html_break_string /;
47 </%once>
49 <%perl>
52 my $template_comp_content;
54 my $default_message = '<span class="ghosted">data not available</span>';
56 ## If there aren't any experiment that comes from experimental design it will do nothing. 
57 ## The error message will returned by basic information
59 my @data;
60 my $template_composition_html;
62 my @template_row_list = @{ $template_list };
64 my %dbipath;
66 if (scalar(@template_row_list) > 0) {
68     foreach my $template_row (@template_row_list) {
69         my %template_data = $template_row->get_columns();
70         my $template_id = $template_data{'template_id'};
71         my $template_name = $template_data{'template_name'};
72         my $template_link = '/gem/template.pl?id='.$template_id;
73         my $template_html = "<a href=$template_link>$template_name</a>";
74                 
75         push @data, [$template_html];               
76     }
78     ## Use columnar table to give the html format. If don't exists any data, print message.
80     $template_composition_html = columnar_table_html(  headings => [ 'Template'],
81                                                        data     => \@data,
82                                                        __alt_freq => 2,
83                                                        __align  => ['c'],
84                                                     );
85     my $templ_n = scalar(@data);
86     $template_comp_content = info_section_html( title        => "Templates (".$templ_n.")", 
87                                                 contents     => $template_composition_html,
88                                                 collapsible  => 1,
89                                                 collapsed    => 1, );
94 </%perl>
96 <% $template_comp_content %>
99 <& 
100    /util/import_javascript.mas, 
101    classes => 'CXGN.Effects'