Fix some logic bugs in the bulk gene download, down to a single failing test
[sgn.git] / mason / image / display_image.mas
blobc55a5425b3f187ff1ebcb860db2856e2894f4c8c
3 <%doc>
5 =head1 NAME
7 /image/display_image.mas - a mason component to display an image, initially written for the image detail page
9 =head1 DESCRIPTION
11 parameters:
13 =over 5
15 =item $image
17 a CXGN::Image object for the image to be displayed.
19 =item $person_id
21 the user who is currently logged in.
23 =item $size
25 The size of the image to display initially
27 =back
29 =head1 AUTHOR
31 Lukas Mueller <lam87@cornell.edu>
33 =cut
35 </%doc>
39 <%args>
40 $image => undef
41 $person_id => undef
42 $size => 'large'
43 </%args>
45 <& /util/import_javascript.mas, classes => [ 'CXGN.Image', 'Prototype' ] &>
48 <div id="image_size_toolbar">
49 </div>
50 <br />
51 <div id="image_div">
52 </div>
54 <script language="javascript">
57   function renderContent(image_id, size) { 
58      showTabsMenu(image_id, size);
59   //alert('Im there');
60      getImage(image_id, size);
61   
62   }
64   function getImage(image_id, size) { 
66      var image = new CXGN.Image;
67   
68      image.set_image_id(image_id);
69      image.image_html('image_div', size);
70   }
72   function showTabsMenu(image_id, size) { 
73 //          alert('size = '+size);
74     var html = "<center>";
75     var mydiv = document.getElementById('image_size_toolbar');
76     var tabList = new Array('thumbnail', 'small', 'medium', 'large', 'original');
77           
78     var item = '';
80     for (var i=0; i<tabList.length; i++ ) { 
81                                  item=tabList[i];
82   //alert('I = '+i);
83       if (size == item) { 
85         html = html + item + " ";
86       }
87       else { 
88         html = html + '<a href=\"javascript:renderContent('+image_id+', \''+item+'\'); ">'+item+'</a>'+ ' ';
89       }
90     }
91     html = html + "</center>";
92     mydiv.innerHTML = html;
94   }
95   
96     
98   
99 </script>
101 <%perl>
103 #use JSON;
104 use SGN::Image;
105 use CXGN::Phenome::Individual;
106 use CXGN::Page::FormattingHelpers qw | modesel |;
108 my $image_full_size_url = $image->get_image_url("large");
109 my $object_id = $image->get_image_id();
111 if ($size!~/thumbnail|small|medium|large|original/ ) { $size="medium"; }
113 </%perl>
115 <br />
117 <script language="javascript">
118 //  alert('im here');
119   renderContent(<% $object_id %>, '<% $size %>' ); 
120 </script>
122 <!-- <br /><a href="<% $image_full_size_url %>"> -->
123 <!-- <center><% $image->get_img_src_tag($size) %></center> -->
124 <!-- </a><br /><br /> -->
126 <center><table><tr><td class="boxbgcolor5"><b>Note:</b> The above image may be subject to copyright. Please contact the submitter about permissions to use the image.</td></tr></table></center><br />
128 % my $tag_count = scalar($image->get_tags());
129 <br><b>Associated tags</b> [<a href="/tag/index.pl?image_id=<% $object_id %>&amp;action=new">add/remove</a>]: <% $tag_count %>
131 % foreach my $tag ($image->get_tags()) { 
132 %    print $tag->get_name()."  ";
133 % }
135 <br /><br /><b>Associated objects</b>: <br />
137 % print $image->get_associated_object_links();