// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

//
// http://railscasts.com/episodes/197-nested-model-form-part-2
//
function remove_fields(link) {
  $(link).previous("input[type=hidden]").value = "1";
  $(link).up(".fields").hide();
};

function add_fields(link, association, content) {
  var new_id = new Date().getTime();
  var regexp = new RegExp("new_" + association, "g")
  
  footnote = $(link).up().insert({
    before: content.replace(regexp, new_id)
  });
  jQuery(footnote).parent().find("input[type=text]:last").focus();
  // todo: mixing prototype & jquery; switch all syntax over to jquery
}


jQuery(document).ready(function() {
  var hovering = 0; 
  var config = {    
    over: function() {
      hovering = hovering + 1;
      jQuery("span.secondary-nav").hide(); 
  
      if (! jQuery(this).hasClass("current")) {                            
        jQuery(this).siblings("li.current")
                    .addClass("deactive-hover")
                    .find("span.secondary-nav").hide();
      }
      jQuery(this).siblings("li")
                  .removeClass("hover-active");
      jQuery(this).removeClass("deactive-hover")
                  .addClass("hover-active"); 
      jQuery(this).find("span.secondary-nav").show();
      jQuery("div.secondary-nav-bar, ul#mainnav").addClass("hovering");
  
      },
    timeout: 500, 
    sensitivity: 3,
    out: function() {
       jQuery(this).removeClass("hover-active");
       hovering = hovering - 1;
       if (hovering == 0) {
         jQuery("span.secondary-nav").hide(); // hide whatever's shown

         current_primary_tab = jQuery(this).hasClass("current") ? jQuery(this) : jQuery(this).siblings("li.current");
     
         // reset back to non-hovering state
         current_primary_tab.removeClass("deactive-hover")
                            .find("span.secondary-nav").show();
         jQuery("div.secondary-nav-bar, ul#mainnav").removeClass("hovering");
     
       } // end of if (hovering == 0) 
    } // end of  out: function()
  } // end of var config = 



  jQuery("ul#mainnav > li").hoverIntent(config);
  jQuery("ul#mainnav > li span.secondary-nav > ul > li").hover(function() { 
    teritary_navs = jQuery(this).find("ul.tertiary-nav")
      if (teritary_navs.size() > 0) {
        jQuery(".tertiary-nav-bar").show();
        jQuery(".secondary-nav-bar").addClass("with-tertiary-nav")
                                    .removeClass("without-tertiary-nav");
        jQuery(this).find("ul.tertiary-nav").show()
        jQuery(this).siblings().find("ul.tertiary-nav").hide();
      }
     } , function() { 
        jQuery(this).find("ul.tertiary-nav").hide();
        restore_tertiary();
    });
		
		
		jQuery("#adjunct-nav > li").hover(function() { 
      jQuery(this).find("span.secondary-nav").show();
     } , function() { 
      jQuery(this).find("span.secondary-nav").hide();
    });
		
    		
  
  restore_tertiary();
}); // end of jQuery(document).ready(function() {


function restore_tertiary() {
  if (isLookingAtThirdLevel) {
    jQuery("span.secondary-nav.active li.current ul.tertiary-nav").show();
  } else {
    jQuery(".tertiary-nav-bar").hide();
    jQuery(".secondary-nav-bar").addClass("without-tertiary-nav")
                                .removeClass("with-tertiary-nav");
  }
}
