// Generates content dynamically (all the HTML and structure is contained here

if(!this.PBS) this.PBS = new Object();
PBS.whatson_multi = { feedStart: 0,
                      tabStart: 0,
                      tabs: [ "now", "tonight" ],
                      style: {
                      '#pbs-whatson ul' : '{ margin:0; padding:0; list-style: none; }',
                      '#pbs-whatson li' : '{ margin:0; padding:0; }',
                      '#pbs-whatson ul.yui-accordionview div.yui-accordion-content': '{ overflow: hidden; margin: 0; padding: 0; }',  
                      '#pbs-whatson ul.yui-accordionview div.yui-accordion-content.hidden': '{ visibility: hidden; position: absolute; }', 
                      '#pbs-whatson ul.yui-accordionview div.yui-accordion-content.almosthidden': '{ position: absolute; left: -9999px; z-index: -10; }',
                      '#pbs-whatson ul.yui-accordionview li.yui-accordion-panel': '{ display: inline; }',
                      '#pbs-whatson ul.yui-accordionview li.yui-accordion-panel a.yui-accordion-toggle': '{ display: block; position: relative; }',
                      '#pbs-whatson ul.submenu li a': '{ display: block; }'
                      },
                      YAHOO: undefined,
                      whatsonTabs: false,
                      html: '<div class="yui-navset" id="pbs-whatson-internal">     <ul class="tab-menu yui-nav">         <li> <a href="#now">now</a> </li><li> <a href="#tonight">tonight</a> </li>     </ul>       <div style="clear: left;" class="yui-content">         <div id="pbswhatson-now">     <ul id="yui-accordionview-block-now">         <li class="pbswhatson-feed">         <b>WHYY >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-now-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd">11:30pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=247&amp;amp;station=WHYY&amp;amp;title_id=JAHJ&amp;amp;display_date=2009-11-21&amp;amp;display_time=23:30:00&quot;);"><span class="pbswhatson-title">Jammin\' at Hippie Jack\'s</span></a> <br />                 <span class="pbswhatson-subtitle">David Olney With Sergio Webb</span>                 </dd>                                                                                         <div class="displaydate">Sunday, November 22</div>                                                     <dt class="pbswhatson-even">12:00am</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=247&amp;amp;station=WHYY&amp;amp;title_id=SSWM&amp;amp;display_date=2009-11-22&amp;amp;display_time=00:00:00&quot;);"><span class="pbswhatson-title">Summer Sun, Winter Moon</span></a> <br />                                  </dd>                                                                  </dl>         </div>         </li><li class="pbswhatson-feed">         <b>Y Arts >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-now-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd">11:00pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=15985&amp;amp;station=WHYY&amp;amp;title_id=GLTK&amp;amp;display_date=2009-11-21&amp;amp;display_time=23:00:00&quot;);"><span class="pbswhatson-title">Globe Trekker</span></a> <br />                 <span class="pbswhatson-subtitle">Los Angeles City Guide</span>                 </dd>                                                                                         <div class="displaydate">Sunday, November 22</div>                                                     <dt class="pbswhatson-even">12:00am</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=15985&amp;amp;station=WHYY&amp;amp;title_id=66122&amp;amp;display_date=2009-11-22&amp;amp;display_time=00:00:00&quot;);"><span class="pbswhatson-title">Freeway Philharmonic</span></a> <br />                                  </dd>                                                                  </dl>         </div>         </li><li class="pbswhatson-feed">         <b>Y Info >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-now-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd">11:00pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=17699=&amp;amp;station=WHYY&amp;amp;title_id=GEAR&amp;amp;display_date=2009-11-21&amp;amp;display_time=23:00:00&quot;);"><span class="pbswhatson-title">Gearing Up</span></a> <br />                                  </dd>                                                                                         <div class="displaydate">Sunday, November 22</div>                                                     <dt class="pbswhatson-even">12:00am</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=17699=&amp;amp;station=WHYY&amp;amp;title_id=SESL&amp;amp;display_date=2009-11-22&amp;amp;display_time=00:00:00&quot;);"><span class="pbswhatson-title">Secrets of Shangri-La</span></a> <br />                                  </dd>                                                                  </dl>         </div>         </li>     </ul>       </div><div id="pbswhatson-tonight">     <ul id="yui-accordionview-block-tonight">         <li class="pbswhatson-feed">         <b>WHYY >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-tonight-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd"> 8:00pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=247&amp;amp;station=WHYY&amp;amp;title_id=ANRO&amp;amp;display_date=2009-11-21&amp;amp;display_time=20:00:00&quot;);"><span class="pbswhatson-title">Antiques Roadshow</span></a> <br />                 <span class="pbswhatson-subtitle">Louisville, Kentucky</span>                 </dd>                                                                                                                                              <dt class="pbswhatson-even"> 9:00pm</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=247&amp;amp;station=WHYY&amp;amp;title_id=NCOF&amp;amp;display_date=2009-11-21&amp;amp;display_time=21:00:00&quot;);"><span class="pbswhatson-title">An Affair to Remember</span></a> <br />                                  </dd>                                                                  </dl>         </div>         </li><li class="pbswhatson-feed">         <b>Y Arts >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-tonight-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd"> 8:00pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=15985&amp;amp;station=WHYY&amp;amp;title_id=GPER&amp;amp;display_date=2009-11-21&amp;amp;display_time=20:00:00&quot;);"><span class="pbswhatson-title">Great Performances</span></a> <br />                 <span class="pbswhatson-subtitle">Beverly Sills: Made in America</span>                 </dd>                                                                                                                                              <dt class="pbswhatson-even"> 9:30pm</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=15985&amp;amp;station=WHYY&amp;amp;title_id=THEA&amp;amp;display_date=2009-11-21&amp;amp;display_time=21:30:00&quot;);"><span class="pbswhatson-title">Theater Talk</span></a> <br />                 <span class="pbswhatson-subtitle">Look to the Rainbow: The Legacy of Yip Harburg</span>                 </dd>                                                                  </dl>         </div>         </li><li class="pbswhatson-feed">         <b>Y Info >></b>          <div>             <dl class="pbswhatson-programs pbswhatson-tonight-element">                                   <div class="displaydate">Saturday, November 21</div>                  <dt class="pbswhatson-odd"> 8:00pm</dt>                 <dd class="pbswhatson-odd">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=17699=&amp;amp;station=WHYY&amp;amp;title_id=SESL&amp;amp;display_date=2009-11-21&amp;amp;display_time=20:00:00&quot;);"><span class="pbswhatson-title">Secrets of Shangri-La</span></a> <br />                                  </dd>                                                                                                                                              <dt class="pbswhatson-even"> 9:00pm</dt>                 <dd class="pbswhatson-even">                 <a href="javascript:PBSMultichannelEpisodeWindowPopUp(&quot;supersite=stations&amp;amp;display_feed=17699=&amp;amp;station=WHYY&amp;amp;title_id=LCAT&amp;amp;display_date=2009-11-21&amp;amp;display_time=21:00:00&quot;);"><span class="pbswhatson-title">Lost Cave Temples of the Himalaya</span></a> <br />                                  </dd>                                                                  </dl>         </div>         </li>     </ul>       </div>     </div> </div>' };


(function() {
 YAHOO.util.Event.onAvailable("pbs-whatson", function() {
     var _d = PBS.whatson_multi;
     var el = document.getElementById("pbs-whatson");
     el.innerHTML = _d.html;

     var tab = new YAHOO.widget.TabView('pbs-whatson-internal');
     tab.addListener('activeTabChange', function(arg) {
         // console.log("in activeTabChange");
         var tabidx = this.get("activeIndex");

         if(arg.prevValue) {
             var oldtabidx = this.getTabIndex(arg.prevValue);
             _d.accordions[oldtabidx].removeListener("afterPanelOpen");
         }

         var _a = _d.accordions[tabidx];
         _a.addListener("afterPanelOpen", function() {
             var panels = _a.getElementsByClassName('yui-accordion-toggle');
             var activeIndex = 0;
             for(var i=0; i<panels.length; i++) {
                 if(YAHOO.util.Dom.hasClass(panels[i], 'active')) activeIndex=i;
             }

             // console.log("Panel number " + activeIndex + " opened.");
             for(var i=0; i<_d.tabs.length; i++) {
                 if(i != tabidx) _d.accordions[i].openPanel(activeIndex);
             }

             });
         });

     _d.whatsonTabs = tab;
     _d.accordions = new Array();

     for(var i=0; i<_d.tabs.length; i++) {
         var tabname = _d.tabs[i];
         var a = new YAHOO.widget.AccordionView('yui-accordionview-block-' + tabname, { width:'100%', expandItem:0 });
         _d.accordions[i] = a;
     }

     var ns = document.createElement('style');
     document.getElementsByTagName('head')[0].appendChild(ns);
     if(!window.createPopup) ns.appendChild(document.createTextNode(''));
     var s = document.styleSheets[document.styleSheets.length - 1];
     for(var selector in _d.style) {
         try {
             if(s.insertRule) s.insertRule(selector + _d.style[selector], s.cssRules.length)
             else s.addRule(selector, _d.style[selector]);
         } catch(e) {
             // Oh well.
         }
     }


     tab.set('activeIndex', _d.tabStart);
 });
})();
