GRPL-style more/less info button in rdetail
authorJeff Godin <jgodin@tadl.org>
Fri, 13 Apr 2012 21:20:29 +0000 (17:20 -0400)
committerJeff Godin <jgodin@tadl.org>
Fri, 13 Apr 2012 21:20:29 +0000 (17:20 -0400)
Add GRPL-style more/less info button in rdetail view.

Signed-off-by: Jeff Godin <jgodin@tadl.org>
Open-ILS/web/opac/skin/tadlv3/css/tadl_layout.css
Open-ILS/web/opac/skin/tadlv3/xml/rdetail/rdetail_summary.xml

index b06bb6f..3c6fa95 100644 (file)
@@ -33,3 +33,8 @@ a[name="item_title"] { font-size: 1.5em; }
     text-decoration: none;
     display: inline-block;
 }
+
+/* support for GRPL style more/less info button */
+.less { visibility: hidden; display:none; }
+.more { visibility: visible; }
+.more_info { border: solid 1px black; }
index 90dd95e..91f1bf1 100644 (file)
                                </td>
                        </tr>
 
-                       <tr>
+                       <tr class='less'>
                                <td nowrap='nowrap' class='rdetail_desc'>&common.isbn;</td>                     
                                <td class='rdetail_item' id='rdetail_isbn'> </td>
                        </tr>
 
-                       <tr>
+                       <tr class='less'>
                                <td nowrap='nowrap' class='rdetail_desc'>&common.edition;</td>          
                                <td class='rdetail_item' id='rdetail_edition'> </td>
                        </tr>
                                <td class='rdetail_item' id='rdetail_pubdate'> </td>
                        </tr>
 
-                       <tr>
+                       <tr class='less'>
                                <td nowrap='nowrap' class='rdetail_desc'>&common.publisher;</td>                
                                <td class='rdetail_item' id='rdetail_publisher'> </td>
                        </tr>
 
-                       <tr id='series_row' class='hide_me'>
+                       <tr id='series_row' class='hide_me less'>
                                <td nowrap='nowrap' class='rdetail_desc'>Series</td>
                                <td class='rdetail_item' id='rdetail_series'> </td>
                        </tr>
 
-                       <tr>
+                       <tr class='less'>
                                <td nowrap='nowrap' class='rdetail_desc'>&common.physical;</td>         
                                <td class='rdetail_item' id='rdetail_physical_desc'> </td>
                        </tr>
@@ -91,7 +91,7 @@
 
             <!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
                  *** summary screen with complex information, such as new search links on subjects. -->
-            <tr>
+            <tr class='less'>
                 <td nowrap='nowrap' class='rdetail_desc'>&rdetail.summary.subjects;</td>
                 <td type='opac/slot-data' query='datafield[tag^="6"]' class='rdetail_item'>
                     <script type='opac/slot-format'><![CDATA[
                                        ]]></script>
                                </td>
                        </tr>
+
+                       <tr id='more_info_button'>
+                               <td><span><input type='button' value='More Info' class='more_info'
+                                       onClick="dojo.query('.less').addClass('more'); dojo.query('.less').removeClass('less');
+                                                dojo.query('#more_info_button').addClass('hide_me');
+                                                dojo.query('#less_info_button').removeClass('hide_me');
+                                                dojo.cookie('moreORless','more');"/>
+                                   </span>
+                               </td>
+                               <td><span></span></td>
+                       </tr>
+
+                       <tr id='less_info_button' class='hide_me'>
+                               <td><span><input type='button' value='Less Info' class='more_info'
+                                       onClick="dojo.query('.more').addClass('less');dojo.query('.more').removeClass('more');
+                                                dojo.query('#more_info_button').removeClass('hide_me');
+                                                dojo.query('#less_info_button').addClass('hide_me');
+                                                dojo.cookie('moreORless','less');"/>
+                                   </span>
+                               </td>
+                               <td><span></span></td>
+                       </tr>
+
                        <tr name="serial_holdings_label"
                                class="result_table_title_cell hide_me">
                 <td class="rdetail_desc">&rdetail.summary.issues_held;</td>
                     while (getDepth() < findOrgDepth(here))
                         here = findOrgUnit( here.parent_ou() );
                 }
-    
+
+                dojo.require('dojo.cookie');
+                if (dojo.cookie('moreORless') == 'more') {
+                dojo.query('.less').addClass('more'); dojo.query('.less').removeClass('less');
+                        dojo.query('#more_info_button').addClass('hide_me');
+                        dojo.query('#less_info_button').removeClass('hide_me');
+                }
+
                 dojo.require('openils.BibTemplate');
                 new openils.BibTemplate({ record : new CGI().param('r'), org_unit : here.shortname() }).render();
             }, 0);