Umlaut partial html API javascript helper

Revision as of 17:16, 28 October 2008 by 200.76.250.44 (Talk) (Overview)

Revision as of 17:16, 28 October 2008 by 200.76.250.44 (Talk) (Overview)

If you want to include Umlaut-generated HTML directly on a third party page via javascript, there is a javascript helper script to make that very easy. This helper uses the Umlaut partial html API, but does everything for you. The helper will update your divs, and keep polling Umlaut for new results, continuing to re-update your divs until Umlaut is finished. How often it polls is configured by application config 'poll_wait_seconds', which defaults to 4 seconds.

http://www.mlive.com/forums/profile.ssf?nickname=mommygotbo5 mommy got boobs http://www.mlive.com/forums/profile.ssf?nickname=bouncingbo0 bouncing boobs http://www.mlive.com/forums/profile.ssf?nickname=perfectboo5 perfect boobs http://www.mlive.com/forums/profile.ssf?nickname=lanasbigbo5 lanas big boobs http://www.mlive.com/forums/profile.ssf?nickname=niceboobs nice boobs http://www.mlive.com/forums/profile.ssf?nickname=bigboobsal4 big boobs alert http://www.mlive.com/forums/profile.ssf?nickname=bigblackbo5 big black boobs http://www.mlive.com/forums/profile.ssf?nickname=smallboobs small boobs http://www.mlive.com/forums/profile.ssf?nickname=perfectboo2 perfect boobs http://www.mlive.com/forums/profile.ssf?nickname=nakedboobs naked boobs http://www.mlive.com/forums/profile.ssf?nickname=lanasbigbo3 lanas big boobs http://www.mlive.com/forums/profile.ssf?nickname=teenboobs teen boobs http://www.mlive.com/forums/profile.ssf?nickname=epicboobs epic boobs

Example


  <H1>Here is an article page. </h1>

  <p>We're looking up Cytoplasmic Control of nuclear behavior by Masui. Of course normally this
     would be dynamically generated, not in static html like this.<p>

  <!-- umlaut full text will be loaded here. You might want to include some initial content
       here for browsers without javascript. For browsers with javascript, this will be overwritten.-->
  <div id="my_fulltext">
     <a href="http://umlaut.university.edu/resolve?url_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft_id=info:doi/10.1002/jez.1401770202&rfr_id=info:sid/university.edu:myapplication&rft.genre=article&rft.jtitle=J.%20Exp.%20Zool&rft.date=1971&rft.atitle=Cytoplasmic%20control%20of%20nuclear%20behavior&rft.aulast=Masui">
        Link to umlaut
      </a>
  </div>

  <!-- we hide this div to start out with, our js callback later 
       will show it there is full text. But we avoid a "spinner" showing up
       here before everything is fully loaded.  -->
  <div id="my_search_inside" style="display:none;"></div>

  <div id="my_cover"></div>

  <div id="my_see_also"</div>

  <div id="my_excerpts"></div>

  
  <!-- now the javascript to actually load content in those divs -->

  <script type="text/javascript">
    // You have to generate an OpenURL context object somehow, and set it in a js global var. 
    // Normally this would be generated dynamically, not static HTML like this, of course.
    // You may want to include a rfr_id to identify your application as a source, demo below. 

    umlaut_openurl_kev_co = 'url_ver=Z39.88-2004&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft_id=info:doi/10.1002/jez.1401770202&rfr_id=info:sid/university.edu:myapplication&rft.genre=article&rft.jtitle=J.%20Exp.%20Zool&rft.date=1971&rft.atitle=Cytoplasmic%20control%20of%20nuclear%20behavior&rft.aulast=Masui';

    // set global js var to tell script where to find umlaut
    umlaut_base = 'http://umlaut.university.edu';

    // Map of umlaut section id to: div id we want to put it on the page
    // Note the js call back for search_inside_wrapper, to only show the
    // div on our page if there are elements. Js callback function gets one
    // argument, which will be number of Umlaut responses in the section. 
    // Note also that we can use Prototype in the callback. 

    umlaut_section_map = {
      'fulltext_wrapper': 'my_fulltext',
      'highlighted_links': 'my_see_also',
      'excerpts_wrapper': 'my_excerpts',
      'cover_image': 'my_cover',
      'search_inside_wrapper': {'host_div_id': 'my_search_inside', 
                                'after_update':
                                  function(count) {
                                    if ( count > 0) {
                                        $('my_search_inside').show();
                                    }
                                  }
                              }
      };
    </script>

    <!-- now actually load the umlaut js helper, which will do the magic for you -->
    <script type="text/javascript" src="http://umlaut.university.edu/javascripts/embed/umlaut-embed.js"></script>