/* ALL CODE COPYRIGHT ZEHN 2009 */

/* optional navigation javascript */
document.observe('dom:loaded', function()
{
  The6YardBox.observe_navigation();
  $('navigation').observe('content:updated', The6YardBox.observe_navigation);
});

The6YardBox.observe_navigation = function()
{
  $('navigation').select('*').invoke('stopObserving');
  $('navigation').select('div.dropdown-holder').each(function(holder)
  {
    var li = holder.up('li');
    new The6YardBox.Dropdown(li);
  });
  
  //observe the tag finder
  new The6YardBox.NavSearchSuggester($('tag-content-finder'),
    $('tag-finder-suggestions'), 'find_content_tags');
  new The6YardBox.NavSearchSuggester($('user-finder'),
      $('user-finder-suggestions'), 'find_users');
};

The6YardBox.Dropdown = Class.create({
  initialize: function(li)
  {
    this.li = li;
    this.dropdown = this.li.down('div.dropdown-holder');
    li.observe('mouseover', this.mover.bind(this));
    li.observe('mouseout', this.mout.bind(this));
    this.out = true;
  },
  mover: function()
  {
    this.out = false;
    this.dropdown.show();
    var offsetFromRight =
    (Zehn.get_page_size()[0] - $('header-inner').positionedOffset()[0]) -
    (this.dropdown.positionedOffset()[0] + this.dropdown.down('ul').getWidth());
    if(offsetFromRight < 0)
    {
      this.dropdown.makePositioned();
      this.dropdown.setStyle({ left: offsetFromRight + 'px' });
    }
  },
  mout: function()
  {
    this.out = true;
    this.actionout.bind(this).delay(0.2);
  },
  actionout: function(out, dropdown)
  {
    if(this.out)
      this.dropdown.hide();
  }
});