fixed up nav links to be consistent, sfx status now on results page attached to appro...
authorartunit <artunit@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Sun, 19 Sep 2010 17:03:02 +0000 (17:03 +0000)
committerartunit <artunit@6d9bc8c9-1ec2-4278-b937-99fde70a366f>
Sun, 19 Sep 2010 17:03:02 +0000 (17:03 +0000)
git-svn-id: svn://svn.open-ils.org/ILS-Contrib/conifer/branches/rel_1_6_1@999 6d9bc8c9-1ec2-4278-b937-99fde70a366f

web/opac/skin/uwin/css/layout.css
web/opac/skin/uwin/js/result_common.js
web/opac/skin/uwin/js/tips.js
web/opac/skin/uwin/xml/footer.xml
web/opac/skin/uwin/xml/rdetail/rdetail_summary.xml
web/opac/skin/uwin/xml/result/result_info.xml
web/opac/skin/uwin/xml/result/result_table.xml

index 5523aa7..99a39d2 100644 (file)
@@ -6,6 +6,7 @@ body { background-color: white; }
 .vert_space            { padding-top: 82px; width: 100%;}
 .right                 { position:absolute; right: 0px; }
 .hide_me                       { display:none; visibility: hidden; }
+.recid                 { position:relative; left: 0px; color: #EBEBEB; }
 
 table { border-collapse: collapse; }
 
@@ -109,11 +110,15 @@ table { border-collapse: collapse; }
 
 .result_table_row { text-align: left; width: 100%; }
 .result_table_subtable { width: 100%; border-collapse: collapse; vertical-align: top;}
+/* .result_table_subtable { width: 100%; border-width: 0px; vertical-align: top;} */
 .result_table_subtbody { height: 100%; width: 100%; }
 /* make title slightly larger */
 .result_table_title_cell { font-weight: bold; text-align: left; }
-.result_table_sfx_cell {  background: #EBEBEB;  font-weight: bold; text-align: left; }
+.result_table_sfx_cell {  background: #EBEBEB; color: #000000; font-weight: bold; text-align: left; }
 .result_table_format_cell { font-size: medium; text-align: left;} 
+.sfx_image {background: #EBEBEB; padding-right: 10px;}
+.sfx_display {background: #EBEBEB;}
+.sfx_right {width: 25%;}
 
 /* style dan's supercool live status stuff */
 /* windsor's colours are #005595 #B2BB1E */
@@ -135,12 +140,14 @@ table { border-collapse: collapse; }
 #rdetail_details_table { padding-top: 10px; width: 100%; padding: 30px; border-collapse: collapse;}
 .rdetail_header { padding: 3px; padding-left: 10px;}
 .rdetail_desc { padding: 2px; padding-left: 2px; padding-right: 2px;}
-.rdetail_item { width: 75%; padding-left: 10px; }
+.rdetail_item { padding-left: 10px; }
 #rdetail_image { padding-right: 10px; }
 #rdetail_copy_info_table { padding: 4px; width: 100%; border-collapse: collapse; }
 .rdetail_copy_info_header_cell { padding: 2px; }
 .rdetail_copy_count_cell { text-align: center; }
 
+.resolver_item { background: #EBEBEB; }
+
 
 .tor_pic { width: 17px; height: 17px; border: none;}
 
index 083a8c9..3cc5a09 100644 (file)
@@ -36,6 +36,7 @@ function cleanISBN(isbn) {
    return isbn;
 }
 
+
 /* an array of the extra services to which we want to direct people, in order of priority:
 Properties:
   url: will be proxied via localProxyPrefix
@@ -582,13 +583,6 @@ function resultDisplayRecord(rec, pos, is_mr) {
        var title_link = $n(r, config.names.result.item_title);
        var author_link = $n(r, config.names.result.item_author);
 
-       if (currentISSN.length > 0) {
-               var issn_link = $n(r, "result_table_issn_cell");
-               issn_link.appendChild(text(currentISSN));
-       }//if
-
-       //alert(issn_link + " - " + cleanISBN(rec.isbn()));
-
        if( is_mr )  {
                var onlyrec = onlyrecord[ getOffset() + pos ];
                if(onlyrec) {
@@ -672,6 +666,7 @@ function resultDisplayRecord(rec, pos, is_mr) {
 
        if(! is_mr ) {
        
+               $n(r, "result_table_recid_span").appendChild( text( rec.doc_id()) );
                if(!isNull(rec.edition()))      {
                        unHideMe( $n(r, "result_table_extra_span"));
                        $n(r, "result_table_edition_span").appendChild( text( rec.edition()) );
@@ -693,7 +688,6 @@ function resultDisplayRecord(rec, pos, is_mr) {
                        //$n(r, "result_table_phys_span").appendChild( text(t.replace(/:.*/g,'')));
                        $n(r, "result_table_phys_span").appendChild( text(t));
                }
-
        }
 
        resultBuildFormatIcons( r, rec, is_mr );
index b24985b..ddfdf79 100644 (file)
@@ -8,6 +8,7 @@ var user_tips = [
 */
 
 function insertTip () {
+       try {
        var tip_div = document.getElementById('tips');
        if (tip_div) {
                var tips = tip_div.getElementsByTagName('div')[0].getElementsByTagName('span');
@@ -15,5 +16,6 @@ function insertTip () {
                tip_div.appendChild( tips[index] );
                removeCSSClass(tip_div, 'hide_me');
        }
+       } catch (er) {}
 }
 
index 598f6d8..12de58e 100644 (file)
@@ -34,6 +34,8 @@
             <span>&footer.copyright;</span>\r
         </div>\r
         <div id='footer_logo'>&footer.logo;\r
-            <a href='http://open-ils.org'><img style='border:none;' src='../../../../images/eg_tiny_logo.jpg'/></a>\r
+            <a href='http://open-ils.org'><img style='border:none; vertical-align:middle;' \r
+               src='../../../../images/eg_tiny_logo.jpg'/></a>/A service of\r
+            <a href='http://projectconifer.ca'><img style='border:none; vertical-align:middle;' src='../local/images/conifer_tiny_logo.jpg'/></a>\r
         </div>\r
 </div>\r
index 397b97e..462f852 100644 (file)
                        </td>
                </tr>
                 <tr id='rdetail_sfx_row' class="hide_me">
-                               <td nowrap='nowrap' class='rdetail_desc'>SFX</td>
+                               <td nowrap='nowrap' class='rdetail_desc'>
+                               <div class='sfx_image'>
+                                <img align='left' src='../local/images/sfxinfo.gif' alt=''/>
+                                </div>
+                               SFX E-Journals</td>
                         <!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
                              *** summary screen with complex information, such as location-specific URIs (856$9). -->
-                        <td class='rdetail_item result_table_sfx_cell' id='rdetail_sfx'>
+                        <td class='rdetail_item result_table_sfx_cell resolver_item' id='rdetail_sfx'>
                         </td>
                 </tr>
                <tr class='hide_me' id='rdetail_online_row'>
index c65480e..9f102f2 100644 (file)
@@ -7,14 +7,20 @@
 
                                <span class='hide_me' id='result_info_div' style='font-size: 9pt;'>
                                        <span> &common.results; </span> 
-                                       <span id='offset_start'> </span>
-                                       <span> - </span>
-                                       <span id='offset_end'> </span>
-                                       <span> &common.ofAtLeast; </span>
+                                       <span id='offset_start'></span>
+                                       <!-- IE runs everything together so we force a character -->
+                                       <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                                       <span>-</span>
+                                       <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                                       <span id='offset_end'></span>
+                                       <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                                       <span>&common.ofAtLeast;</span>
                                        <span id='result_count'> </span>
                                        <span style='padding-left: 6px;'> (page </span>
-                                       <span id='current_page'> </span>
-                                       <span> &common.of; </span>
+                                       <span id='current_page'></span>
+                                       <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                                       <span>&common.of;</span>
+                                       <span style='font-size: 2pt; visibility: hidden;'>-</span>
                                        <span id='num_pages'> </span>
                                </span>
 
index 8d31f29..5f2336d 100644 (file)
 
                                <td class='result_table_row' align='left'>
                                        <table class='result_table_subtable'>
-                                               <tbody class='result_table_subtbody'>
+                                               <tbody align='left' class='result_table_subtbody'>
 
                                                        <tr style='height: 1em' name='counts_row'>
 
-                                                               <td  rowspan='5' class='result_table_pic_header'>
+                                                               <td  rowspan='6' class='result_table_pic_header'>
                                                                        <a><img name='item_jacket' class='result_table_pic'/></a>
                                                                </td>
 
-                                                               <td class='result_table_title_cell' name='result_table_title_cell'>
+                                                               <td align='left' class='result_table_title_cell' name='result_table_title_cell'>
                                                                        <!-- Title goes here -->
                                                                        <a title="&result.table.keyword;" name='item_title' class='search_link'> 
                                                                                <!-- Title goes here -->
                                                                </td>
                                                        </tr>
 
+                                                       <!--
+                                                               there is probably a more elegant way to achieve this but what
+                                                               happens here is that the record id is used to place resolver
+                                                               info in the correct place in the results list - the id is
+                                                               placed here from the js layer
+                                                       -->
+                                                       <tr id='result_table_recid' class='hide_me'>
+                                                               <td class='sfx_display'> 
+                                                                       <span class='sfx_image'>
+                                                                       <img src='../local/images/sfxinfo.gif' alt=''/>
+                                                                       <i>SFX E-Journals</i>
+                                                                       </span>
+                                                                       <span id='result_table_recid_span' name='result_table_recid_span' class='recid'>
+                                                                       </span>
+                                                               </td>
+                                                               <td class='sfx_right'></td>
+                                                       </tr>
 
-                <tr id='rdetail_online_row' class="result_table_sfx_cell hide_me">
-                        <!-- *** Example of how to use the openils.BibTemplate infrastructure to augment the stock
-                             *** summary screen with complex information, such as location-specific URIs (856$9). -->
-                        <td class='rdetail_item' id='rdetail_online'> 
-                        </td>
-                </tr>
-
-               <tr name="local_callnumber_list" class="result_table_title_cell hide_me">
-                       <td colspan="1">&result.localCallNumbers;
-                               <span 
-                                       type='opac/slot-data' query='datafield[tag=022]' class='hide_me'>
-                                       <!--
-                                       type='opac/slot-data' query='datafield[tag=022]' class='hide_me'>
-                                       type='opac/slot-data' query='datafield[tag=022] subfield[code=a]'>
-                                       -->
-                                       <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
-                                               var output = dojo.create('span'); 
-                                               var list = dojo.query( 'subfield:[code=a]', item );
-                                               var text = '';
-                                               for (var i =0; i < list.length; i++) {
-                                                       //text += dojox.data.dom.textContent(list[i]) + ' ';
-                                                       var issn = dojox.data.dom.textContent(list[i]) + '';
-                                                       issn = issn.replace(/^(\s|.)*?(\d{4}).(\d{3,4}[xX]?)(\s|.)*/, "$2-$3");
-                                                       /*
-                                                       */
-                                                       if (issn.length> 0) {
-                                                       var ses = new OpenSRF.ClientSession('open-ils.resolver');
-                                                       var req = ses.request('open-ils.resolver.resolve_holdings.raw', 'issn', issn, 'http://sfx.scholarsportal.info/windsor');
-                                                       req.oncomplete = function(r) {
-
-                                                       dojo.forEach(r.recv().content(), function(entry) {
-                                                               var resolverInfo = entry.public_name + "_" + entry.target_coverage;
-                                                               if (url_list.indexOf(resolverInfo) == -1) {
-                                                                       url_list += resolverInfo;
-                                                               try {
-                                                               /*
-                                                                dojo.place('<div style="width: 100%">'
-                                                                        + ' <a class="search_link" href="' + entry.target_url
-                                                                        + '">' + entry.public_name + '</a> - '
-                                                                        + entry.target_coverage
-                                                                        + (entry.target_embargo ? (' / ' + entry.target_embargo) : '')
-                                                                        + '</div>', 'rdetail_online');
-                                                               */
-                                                               /*
-                                                               dojo.create('div',{ innerHTML: ' <a class=\"search_link\" href=\"' + entry.target_url
-                                                                        + '\">' + entry.public_name + '</a> - '
-                                                                        + entry.target_coverage
-                                                                        + (entry.target_embargo ? (' / ' + entry.target_embargo) : '')
-                                                                       },'rdetail_online',"replace");
-                                                               */
-                                                               var output = dojo.create('div',null,'rdetail_online',"first");
-                                                               var link = dojo.create('a', {"class":"search_link", "href":  entry.target_url});
-                                                               var link_text = dojo.doc.createTextNode(entry.public_name);
-                                                               link.appendChild(link_text);
-                                                               output.appendChild(link);
-                                                               var coverage_text = dojo.doc.createTextNode(' - ' + entry.target_coverage
-                                                                       + (entry.target_embargo ? (' / ' + entry.target_embargo) : ''));
-                                                               output.appendChild(coverage_text);
-
-                                                               
-                                                               /*
-                                                                       },'rdetail_online',"first");
-                                                                dojo.query('#rdetail_online_row').removeClass('hide_me');
-                                                               */
-                                                                dojo.query('#rdetail_online_row').removeClass('hide_me');
-                                                               } catch (e) {
-                                                                       alert("-> " + e);
-                                                               }
-
-                                                               }
-                                                       });
-                                                       }
-                                                       req.send();
-                                                       }
-                                               }
-                                               return '<span> ' + issn + '</span><br/>';
-                                       ]]></span>
-                               </span>
-                               <!-- Prevent records with dozens of items attached from filling the screen -->
-                               <span type='opac/slot-data+marcxml-full' query='volumes'>
-                                       <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
-                                               var output = dojo.create('span'); 
-
-                                               var item_cnt = 0;
-                                               var max_items = 4;
-
-
-                                               /*
-                                               */
-
-                                               /*
-                                               */
-                                               dojo.query('volume', item).forEach(function(vol) {
-                                                       if (item_cnt >= max_items) {
-                                                               return output.innerHTML;
-                                                       }
-                                                       dojo.query('copy', vol).forEach(function (cp) {
-                                                               if (cp.getAttribute('deleted') == 't') {
-                                                                       return;
-                                                               }
-                                                               var loc_id;
-                                                               var vol_appended = false;
-                                                               dojo.query('location', cp).forEach(function (location) {
-                                                                       loc_id = parseInt(location.getAttribute('ident'));
-                                                                       if (loc_id != 8 && loc_id != 20) {
-                                                                               if (!vol_appended) {
-                                                                                       dojo.create('span',{ className: 'live_location_cell',
-                                                                                               innerHTML: vol.getAttribute('label')},
-                                                                                               output);
-                                                                                       vol_appended = true;
+                                                       <tr name="local_callnumber_list" class="result_table_title_cell">
+                                                               <td>&result.localCallNumbers;
+                                                               <!--
+                                                                       we snag the record id from the 901 field, and then use it
+                                                                       for lining up the resolver content
+                                                               -->
+                                                               <span 
+                                                                       type='opac/slot-data' query='datafield[tag=901] subfield[code=a]' class='hide_me'>
+                                                               <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
+                                                                       curr_title_id = dojo.trim(dojox.data.dom.textContent(item));
+                                                               ]]></span>
+                                                               </span>
+                                                               <!--
+                                                                       this is very close to the layout in rdetail, we need to find the
+                                                                       record id in order to place the resolver info in the right spot
+                                                               -->
+                                                               <span 
+                                                                       type='opac/slot-data' query='datafield[tag=022]' class='hide_me'>
+                                                               <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
+                                                                               var this_title_id = curr_title_id;
+                                                                       var list = dojo.query( 'subfield:[code=a]', item );
+                                                                       var issn = '';
+                                                                       for (var i =0; i < list.length; i++) {
+                                                                               issn = dojox.data.dom.textContent(list[i]) + '';
+                                                                               issn = issn.replace(/^(\s|.)*?(\d{4}).(\d{3,4}[xX]?)(\s|.)*/, "$2-$3");
+                                                                               if (issn.length > 0) {
+                                                                               try {
+                                                                                       var ses = new OpenSRF.ClientSession('open-ils.resolver');
+                                                                                       var req = ses.request('open-ils.resolver.resolve_holdings.raw',
+                                                                                               'issn', issn, 'http://sfx.scholarsportal.info/windsor');
+                                                                                       req.oncomplete = function(r) {
+                                                                                               var resolverInfo = "";
+                                                                                               dojo.forEach(r.recv().content(), function(entry) {
+                                                                                               resolverInfo = entry.public_name + "_" + entry.target_coverage;
+                                                                                               if (url_list.indexOf(resolverInfo) == -1) {
+                                                                                                       var resolverNode = null;
+                                                                                                       dojo.query('.recid').forEach(function(recinfo) {
+                                                                                                               if (parseFloat(dojo.trim(dojox.data.dom.textContent(recinfo))) == 
+                                                                                                                       parseFloat(this_title_id)) 
+                                                                                                               {
+                                                                                                                       resolverNode = recinfo;
+                                                                                                               }
+                                                                                                       });
+                                                                                                       url_list += resolverInfo;
+                                                                                                       var output = null;
+                                                                                                       if (resolverNode != null) {
+                                                                                                               var parent = resolverNode.parentNode;
+                                                                                                               if (parent)
+                                                                                                                       parent = parent.parentNode;
+                                                                                                               if (parent)
+                                                                                                                       dojo.removeClass(parent,'hide_me');
+                                                                                                               output = dojo.create('span',null,resolverNode,"last");
+                                                                                                               dojo.addClass(output,"result_table_sfx_cell");
+                                                                                                               dojo.create('br', null, output);
+                                                                                                               var title_text = dojo.doc.createTextNode("&nbsp; &nbsp;");
+                                                                                                               output.appendChild(title_text);
+                                                                                                               title_list += this_title_id;
+                                                                                                               var link = dojo.create('a', {"class":"search_link", "href":  entry.target_url});
+                                                                                                               var link_text = dojo.doc.createTextNode( entry.public_name);
+                                                                                                               link.appendChild(link_text);
+                                                                                                               output.appendChild(link);
+                                                                                                               var coverage_text = dojo.doc.createTextNode(' - ' + entry.target_coverage
+                                                                                                                       + (entry.target_embargo ? (' / ' + entry.target_embargo) : ''));
+                                                                                                               output.appendChild(coverage_text);
+                                                                                                       }
+                                                                                               }
+                                                                                               });
+                                                                                       };
+                                                                                       req.send();
+                                                                               } catch (err) {}
                                                                                }
-                                                                               dojo.create('span', { className: 'live_separator_cell',
-                                                                                               "innerHTML": ' - '}, 
-                                                                                       output);
-                                                                               dojo.create('span', { className: 'live_location_cell',
-                                                                                               "innerHTML": dojox.xml.parser.textContent(location)}, 
-                                                                                       output);
                                                                        }
+                                                                       return '<span> ' + issn + '</span><br/>';
+                                                               ]]></span>
+                                                               </span>
+                                                               <!-- Prevent records with dozens of items attached from filling the screen -->
+                                                               <span type='opac/slot-data+marcxml-full' query='volumes'>
+                                                               <span class='hide_me' debug='true' type='opac/slot-format'><![CDATA[
+                                                                       var output = dojo.create('span'); 
+
+                                                                       var item_cnt = 0;
+                                                                       var max_items = 4;
+
+
+                                                                       dojo.query('volume', item).forEach(function(vol) {
+                                                                               if (item_cnt >= max_items) {
+                                                                                       return output.innerHTML;
+                                                                               }
+                                                                               dojo.query('copy', vol).forEach(function (cp) {
+                                                                                       if (cp.getAttribute('deleted') == 't') {
+                                                                                               return;
+                                                                                       }
+                                                                                       var loc_id;
+                                                                                       var vol_appended = false;
+                                                                                       dojo.query('location', cp).forEach(function (location) {
+                                                                                       loc_id = parseInt(location.getAttribute('ident'));
+                                                                                       if (loc_id != 8 && loc_id != 20) {
+                                                                                               if (!vol_appended) {
+                                                                                                       dojo.create('span',{ className: 'live_location_cell',
+                                                                                                               innerHTML: vol.getAttribute('label')},
+                                                                                                               output);
+                                                                                                       vol_appended = true;
+                                                                                               }
+                                                                                               dojo.create('span', { className: 'live_separator_cell',
+                                                                                                       "innerHTML": ' - '}, 
+                                                                                                       output);
+                                                                                               dojo.create('span', { className: 'live_location_cell',
+                                                                                                       "innerHTML": dojox.xml.parser.textContent(location)}, 
+                                                                                                       output);
+                                                                                       }
+                                                                               });
+                                                                               if (loc_id == 8 || loc_id == 20) {
+                                                                                       return;
+                                                                               }
+                                                                               dojo.query('status', cp).forEach(function (status) {
+                                                                                       var pfx = dojo.doc.createTextNode(' (');
+                                                                                       output.appendChild(pfx);
+                                                                                       dojo.create('span', { className: 'live_status_cell',
+                                                                                               "innerHTML": dojox.xml.parser.textContent(status) }, output);
+                                                                                       var sfx = dojo.doc.createTextNode(')');
+                                                                                       output.appendChild(sfx);
+                                                                               });
+                                                                               dojo.create('br', null, output);
+
+                                                                               item_cnt++;
+                                                                               if (item_cnt >= max_items) {
+                                                                                       output.appendChild(dojo.doc.createTextNode('... more print items listed in full record'));
+                                                                                       dojo.create('br', null, output);
+                                                                               }
+                                                                       });
                                                                });
-                                                               if (loc_id == 8 || loc_id == 20) {
-                                                                       return;
-                                                               }
-                                                               dojo.query('status', cp).forEach(function (status) {
-                                                                       var pfx = dojo.doc.createTextNode(' (');
-                                                                       output.appendChild(pfx);
-                                                                       dojo.create('span', { className: 'live_status_cell',
-                                                                               "innerHTML": dojox.xml.parser.textContent(status) }, output);
-                                                                       var sfx = dojo.doc.createTextNode(')');
-                                                                       output.appendChild(sfx);
-                                                               });
-                                                               dojo.create('br', null, output);
-
-                                                               item_cnt++;
-                                                               if (item_cnt >= max_items) {
-                                                                       output.appendChild(dojo.doc.createTextNode('... more items in full record'));
-                                                               }
-                                                       });
-                                               });
-
-                                               //if (issn.length == 0)
-                                                       return output.innerHTML;
-                                       ]]></span>
-                               </span>
-
-                               <!-- Be lenient in what we accept -->
-                       <span type='opac/slot-data+marcxml-full' query='volumes volume uris uri'>
-                               <span class='hide_me' type='opac/slot-format'><![CDATA[
-                                       var output = dojo.create('span'); 
-                                       var uri = new Object;
-                                       uri.href = item.getAttribute('href');
-                                       uri.label = item.getAttribute('label');
-                                       uri.use = item.getAttribute('use_restriction');
-                                       if (uri.href == uri.label) {
-                                               if (uri.use && uri.use != uri.label) {
-                                                       uri.label = uri.use;
-                                                       uri.use = null;
-                                               }
-                                       }
-                                       var link = dojo.create('a', {"class":"search_link", "href": uri.href});
-                                       var link_text = dojo.doc.createTextNode(uri.label);
-                                       link.appendChild(link_text);
-                                       output.appendChild(link);
-
-                                       if (uri.use) {
-                                               var use_text = dojo.doc.createTextNode(' (' + uri.use + ')');
-                                               output.appendChild(use_text);
-                                       }
-                                       dojo.create('br', null, output);
-                                       return output.innerHTML;
-                               ]]></span>
-                       </span>
-
-                       </td>
-               </tr>
 
+                                                               return output.innerHTML;
+                                                               ]]></span>
+                                                               </span>
+
+                                                               <!-- Be lenient in what we accept -->
+                                                               <span type='opac/slot-data+marcxml-full' query='volumes volume uris uri'>
+                                                               <span class='hide_me' type='opac/slot-format'><![CDATA[
+                                                                       var output = dojo.create('span'); 
+                                                                       var uri = new Object;
+                                                                       uri.href = item.getAttribute('href');
+                                                                       uri.label = item.getAttribute('label');
+                                                                       uri.use = item.getAttribute('use_restriction');
+                                                                       if (uri.href == uri.label) {
+                                                                               if (uri.use && uri.use != uri.label) {
+                                                                                       uri.label = uri.use;
+                                                                                       uri.use = null;
+                                                                               }
+                                                                       }
+                                                                       var link = dojo.create('a', {"class":"search_link", "href": uri.href});
+                                                                       var link_text = dojo.doc.createTextNode(uri.label);
+                                                                       link.appendChild(link_text);
+                                                                       output.appendChild(link);
+                                       
+                                                                       if (uri.use) {
+                                                                               var use_text = dojo.doc.createTextNode(' (' + uri.use + ')');
+                                                                               output.appendChild(use_text);
+                                                                       }
+                                                                       dojo.create('br', null, output);
+                                                                       return output.innerHTML;
+                                                               ]]></span>
+                                                               </span>
+
+                                                               </td>
+                                                       </tr>
+
+                                                       
                                                        <tr style='height:1em;' >
                                                                <td name='result_table_format_cell' class='result_table_format_cell'>
 
-                                                                       <a name='text_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/text.jpg' class='dim tor_pic' />
-                                                                       </a>
-
-                                                                       <a name='sound recording-nonmusical_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/sound recording-nonmusical.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='text_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/text.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='moving image_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/moving image.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='sound recording-nonmusical_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/sound recording-nonmusical.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='software, multimedia_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/software, multimedia.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='moving image_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/moving image.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='sound recording-musical_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/sound recording-musical.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='software, multimedia_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/software, multimedia.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='cartographic_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/cartographic.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='sound recording-musical_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/sound recording-musical.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='mixed material_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/mixed material.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='cartographic_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/cartographic.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='notated music_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/notated music.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='mixed material_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/mixed material.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='sound recording_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/sound recording.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='notated music_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/notated music.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='still image_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/still images.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='sound recording_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/sound recording.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <a name='three dimensional object_link' class='search_link'> 
-                                                                               <img src='../../../../images/tor/three dimensional object.jpg' class='dim tor_pic' />
-                                                                       </a>
+                                                               <a name='still image_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/still images.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <span class='hide_me' 
-                                                                               style='color: #9999FF; padding-left: 10px; font-size: 7pt; font-weight: 300;'> 
-                                                                               <span>&common.relevancy; </span><span name='relevancy_span'> </span>
-                                                                       </span>
+                                                               <a name='three dimensional object_link' class='search_link'> 
+                                                                       <img src='../../../../images/tor/three dimensional object.jpg' class='dim tor_pic' />
+                                                               </a>
 
-                                                                       <span class='hide_me' name='place_hold_span'>
-                                                                               <a style='padding-left: 8px;' href='javascript:void(0);' 
-                                                                                       class='classic_link' name='place_hold_link'>&opac.holds.placeHold;</a>
-                                                                       </span>
+                                                               <span class='hide_me' 
+                                                                       style='color: #9999FF; padding-left: 10px; font-size: 7pt; font-weight: 300;'> 
+                                                                               
+                                                                       <span>&common.relevancy; </span><span name='relevancy_span'> </span>
+                                                               </span>
 
-                                                                       <!-- Empty span used for creating unAPI links -->
-                                                                       <abbr style='padding-left: 8px;' name="unapi" class="unapi-id">
-                                                                               <!-- unAPI URI goes here -->
-                                                                       </abbr>
+                                                               <span class='hide_me' name='place_hold_span'>
+                                                                       <a style='padding-left: 8px;' href='javascript:void(0);' 
+                                                                               class='classic_link' name='place_hold_link'>&opac.holds.placeHold;</a>
+                                                               </span>
 
-                                                                       <!-- Empty span used for creating Google Book Search-->
-                                                                       <span name="googleBooksLink" class="hide_me">
-                                                                               <a style='padding-left: 8px;' class='classic_link' name="googleBooks-link">&result.googleBooks.browse;</a>
-                                                                       </span>
+                                                               <!-- Empty span used for creating unAPI links -->
+                                                               <abbr style='padding-left: 8px;' name="unapi" class="unapi-id">
+                                                                       <!-- unAPI URI goes here -->
+                                                               </abbr>
 
+                                                               <!-- Empty span used for creating Google Book Search-->
+                                                               <span name="googleBooksLink" class="hide_me">
+                                                                       <a style='padding-left: 8px;' class='classic_link' name="googleBooks-link">&result.googleBooks.browse;</a>
+                                                               </span>
 
                                                                </td>
                                                        </tr>
-
                                                </tbody>
                                        </table>
                                </td>
                </tbody>
        </table>
 
-
-   <!-- ====================== -->
-   <table style='width: 100%; margin-top: 12px;' id='result_info_2' class='hide_me'>
-      <tbody>
-               
-             <tr class='color_4' style='height: 1em;'>
-                     
-                <td style='vertical-align: top;'  id='next_prev_links2'>
-                        
-                   <span class='hide_me' id='result_info_div2' style='font-size: 9pt;'>
-                      <span> &common.results; </span> 
-                      <b id='offset_start2'> </b>
-                      <span> - </span>
-                      <b id='offset_end2'> </b>
-                      <span> &common.ofAtLeast; </span>
-                      <b id='result_count2'> </b>
-                      <span style='padding-left: 6px;'> (page </span>
-                      <span id='current_page2'> </span>
-                      <span> &common.of; </span>
-                      <span id='num_pages2'> </span>
-                   </span>
-                           
-                   <span id='start_end_links_span2' class='hide_me' 
-                      style='padding-left: 40px;' >
-                   <a class='search_page_nav_link' id='search_home_link2' 
-                      title="&rdetail.page.results;">&rdetail.start;</a><a class='search_page_nav_link' 
-                      id='prev_link2' title='&rdetail.page.previous;'>&common.cn.previous;</a>
+       <!-- ====================== -->
+       <table style='width: 100%; margin-top: 12px;' id='result_info_2' class='hide_me'>
+               <tbody>
+                       <tr class='color_4' style='height: 1em;'>
+                               <td style='vertical-align: top;'  id='next_prev_links2'>
+                               <span class='hide_me' id='result_info_div2' style='font-size: 9pt;'>
+                               <span> &common.results; </span> 
+                               <b id='offset_start2'> </b>
+                               <!-- IE runs everything together so we force a character -->
+                               <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                               <span> - </span>
+                               <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                               <b id='offset_end2'> </b>
+                               <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                               <span> &common.ofAtLeast; </span>
+                               <b id='result_count2'> </b>
+                               <span style='padding-left: 6px;'> (page </span>
+                               <span id='current_page2'> </span>
+                               <span style='font-size: 2pt; visibility: hidden;'>-</span>      
+                               <span> &common.of; </span>
+                               <span style='font-size: 2pt; visibility: hidden;'>-</span>
+                               <span id='num_pages2'> </span>
+                               </span>
+                               <span id='start_end_links_span2' class='hide_me' 
+                                       style='padding-left: 40px;' >
+                                       <a class='search_link' id='search_home_link2' 
+                                               title="&rdetail.page.results;" style='padding-left: 1em;'>&rdetail.start;</a><a class='search_link' 
+                                               id='prev_link2' title='&rdetail.page.previous;' style='padding-left: 1em;'>&common.cn.previous;</a>
             
-                   <span class='search_page_nav_link' id='page_numbers2'> </span>
-                      <a  class='search_page_nav_link' id='next_link2' 
-                         title='&rdetail.page.next;'>&common.cn.next;</a>
-                      <!--
-                      <a class='search_page_nav_link' 
-                         id='end_link2' title="&rdetail.page.last;">&rdetail.end;</a>
-                      -->
-                   </span>
-                        
-                </td>
+                                       <span class='search_link' id='page_numbers2'> </span>
+                                               <a  class='search_link' id='next_link2' 
+                                                       title='&rdetail.page.next;' style='padding-left: 1em;'>&common.cn.next;</a>
+                                               <!--
+                                                       <a class='search_page_nav_link' 
+                                                               id='end_link2' title="&rdetail.page.last;">&rdetail.end;</a>
+                                               -->
+                                       </span>
+                               </td>
                         
-                <td  colspan='5' 
-                   style='padding-bottom: 4px; text-align:center; vertical-align: top; border-bottom: 1px solid #E0E0E0;'>
-               <!--
-                   <span id='search_info_table2' style='font-size: 8pt;'>
-                   <b>Available copies / Total copies </b>
-                   </span>
-               -->
-                </td>
-             </tr>
-      </tbody>
-   </table>
-   <!-- ====================== -->
-
+                               <td  colspan='5' 
+                                       style='padding-bottom: 4px; text-align:center; vertical-align: top; border-bottom: 1px solid #E0E0E0;'>
+                                       <!--
+                                       <span id='search_info_table2' style='font-size: 8pt;'>
+                                       <b>Available copies / Total copies </b>
+                                       </span>
+                                       -->
+                               </td>
+                       </tr>
+               </tbody>
+       </table>
+   
+       <!-- ====================== -->
 
        <script language='javascript' type='text/javascript'>
                config.names.result.format_cell = 'result_table_format_cell';
                config.names.result.format_link = 'resource_link'
                config.names.result.format_pic = 'format_pic'
                var url_list = "";
+               var title_list = "";
+               var curr_title_id = "";
 
        </script>
 
 </div>
-
-