
// we want to make sure that the hover state images don't need to load on the actual hover
var preload = [

];
if (!window.CRS) {
    Tablet.preloadImages(preload);
}
var Tablet = Tablet || {};
Tablet.SiteNav = {
    setPageNav:function(el) {
        if (typeof el['pagenav'] === 'undefined') {
            el.pagenav = Tablet.getElementByClassName(el, 'page-nav', 'ul') || false;
            if (el.pagenav && (Prototype.Browser.IE)) {
                var listwidth = 0;
                var lis = $A(el.pagenav.getElementsByTagName('li'));
                if (lis) {
                    if (Tablet.UI.Enhanced) {
                        // absolutely positioned elements don't expand in width for their child elements
                        el.pagenav.setStyle({left:'-9000px', top:'-9000px', display:'block', position:'static'});
                        lis.each(function(li) {
                            if (li.offsetWidth > listwidth) {
                                listwidth = li.offsetWidth;
                            }
                        });
                        el.pagenav.setStyle({left:'', top:'', display:'', width:'', position:''});
                    }
                    else {
                        listwidth = 220;
                    }
                }
                if (listwidth > 0) {
                    el.pagenav.setStyle({width:listwidth+'px'});
                }
            }
        }
    },
    onMouseEnter:function(e) {
        Tablet.SiteNav.setPageNav(this);
        this.addClassName('hover');
        if (this.pagenav) {
            this.up('ul').addClassName('hover');
            if (Tablet.UI.Enhanced) {
                Tablet.UI.fadeIn(this.pagenav, {duration:0.2, activeClass:'active'});
            }
            else {
                this.pagenav.addClassName('active');
            }
        }
    },
    onMouseLeave:function(e) {
        Tablet.SiteNav.setPageNav(this);
        this.removeClassName('hover');
        if (this.pagenav) {
            this.up('ul').removeClassName('hover');
            if (Tablet.UI.Enhanced) {
                Tablet.UI.fadeOut(this.pagenav, {duration:0.1, activeClass:'active'});
            }
            else {
                this.pagenav.removeClassName('active');
            }
        }
    }
};
document.observe('dom:loaded', function(e) {
    if (!$('mainnav')) { return; }
    $('mainnav').select('ul.section-nav > li').each(function(el) {
        el.addClassName('enhanced');
        el.observe('mouseenter', Tablet.SiteNav.onMouseEnter);
        el.observe('mouseleave', Tablet.SiteNav.onMouseLeave);
        if (el.hasClassName('active')) { //  || el.getElementsByTagName('UL').length > 0
            var link = el.down('a');
            if (link) {
                var marker = $(document.createElement('span'));
                marker.addClassName('marker');
                el.appendChild(marker);
            }
        }
    });
    
});

Event.addBehavior({
  "div.brief a#morelink:click" : function(e) {
    $('moretext').toggle();
    return false;
  }
});
var emailBox;
// after content of layer is set, set behavior of form post
// function updateEmailForm() {
//     friendEmailForm = document.getElementById('friendEmailForm');
//     if (friendEmailForm) {
//         friendEmailForm.observe('submit', function(e) { processEmailForm(this); Event.stop(e); });
//     }
// }
// process form by ajax instead of normal behavior
function processEmailForm(emailForm) {
    new Ajax.Request(
        emailForm.getAttribute('action'),{
            method: 'post', 
            onSuccess: processEmailResponse.bindAsEventListener(this), 
            parameters:Form.serialize(emailForm, true)
        }
    );
  
  return false;
}
// call processInfo to reset content of email layer
function processEmailResponse(resp) {
    emailBox.setPageContent('emailpage', resp.transport.responseText);
}

document.observe('dom:loaded', function(e) {

    var shareLinks = $$('a.emailpage');
    if (shareLinks.size() > 0) {
        emailBox = new Tablet.Pane('', {
            pageReset: true
        });
        
        shareLinks.each(function(link) {
            link.observe('click', function(e) {

                new Ajax.Request(link.href, {
                    method:'get',
                    onSuccess:function(transport) {
                        emailBox.setContent(transport);
                        emailBox.show();
                    }
                });
            
                Event.stop(e);
            });
        });
    }
  
});
