jQuery(document).ready(function($) {

  // Colorbox items are fancyboxed
  if (typeof($.fn.fancybox) !== 'undefined') {
    $("a.colorbox").each(function(i,e){
      var $a = $(e);
      $a.fancybox({ 
        type  : 'iframe',
        width : parseInt($a.attr("data-iframewidth")) || 800,
        height: parseInt($a.attr("data-iframeheight")) || 600
      });
    });
    $("area.fancybox").each(function(i,e){
      var $area = $(e);
      $area.fancybox({ 
        type  : 'iframe',
        width : parseInt($area.attr("data-iframewidth")) || 800,
        height: parseInt($area.attr("data-iframeheight")) || 600
      });
    });
  }


    initAccordionMenuIUS('sub-navigation-wrap');

    function initAccordionMenuIUS(ulclass) {
        $('.sub-navigation-folder-wrap:not(.expanded-folder)').find('ul').hide();
        
        var currMenuClass = 'sub-navigation-red';
        if($('div#sub-navigation').length > 0) {
            var currFolder = $('div#sub-navigation').attr('data-foldername');
            if(currFolder) {
                $('li.em-tab[data-foldername='+currFolder+']').each(function() {
                    $('li.em-tab').removeClass('active');
                    $(this).addClass('active');

                    if($(this).hasClass('green-tab')) {
                        currMenuClass = 'sub-navigation-green';
                    } else if($(this).hasClass('blue-tab')) {
                        currMenuClass = 'sub-navigation-blue';
                    } else if($(this).hasClass('orange-tab')) {
                        currMenuClass = 'sub-navigation-orange';
                    } else if($(this).hasClass('yellow-tab')) {
                        currMenuClass = 'sub-navigation-yellow';
                    } else if($(this).hasClass('red-tab')) {
                        currMenuClass = 'sub-navigation-red';
                    }
                });
            }
        }
        $('ul#ul-sub-navigation-wrap').addClass(currMenuClass);
        
        $('ul.' + ulclass + ' li a').click( function(){
            var checkElement = $(this).next();
            var parent = this.parentNode;
            var grandParent = this.parentNode.parentNode;

            if($(grandParent).hasClass('noaccordion')) {
                $(this).next().slideToggle('normal');
                return false;
            }
            if((checkElement.is('ul')) && (checkElement.is(':visible'))) {
                if($(grandParent).hasClass('collapsible')) {
                    $(grandParent).find('ul:visible').slideUp('normal');
                }
                return false;
            }
            if((checkElement.is('ul')) && (!checkElement.is(':visible'))) {
                $(grandParent).find('ul:visible').slideUp('normal');
                checkElement.slideDown('normal');
                $('li.sub-navigation-folder-wrap').removeClass('expanded-folder');
                $(parent).addClass('expanded-folder');
                return false;
            }
        });

        // Top level tab need not be marked active if sub-navigation doesn't have a data-foldername attribute
        if ($("#sub-navigation").attr("data-foldername") === "") {
          $("li.em-tab").removeClass("active");
        }
    }
    
    $('#frm_professor_search').submit(function () {
        var lastName = $('#professorName').val();
        console.log('lastName = ' + lastName);
        $("#professor_search_results").children().remove();
        
        $.ajax({
            url: '/modules/ScheduleOfClasses_prof_redesign.cfm',
            type: "POST",
            data: {'name': lastName },
            dataType: "html",
            cache: false,
            success: function(data) {
                if(data) {
                    $("#professor_search_results").append(data);
                    $("#professor_search_results").first('table').css('position', 'relative').css('left', '-20px');
                }
            },
            error:function (xhr, ajaxOptions, thrownError){
                alert('Unable to complete your search.  Please try again later.');
            }
        });
        return false;
    });
});

// Fixing cascade resources 
(function($){
  // Fixing cascade resources 
  $.fn.absolutizePath = function(prefix, base_path) {
    // No need to rewrite src or links if already inside ccp
    if (/\/ccp\//.test(window.location.href)) {
      return;
    }

    this.each(function() {
      var $elm = $(this);
      if ($elm.attr("src") && $elm.attr("src").substring(0,2) === "..") {
        $elm.attr("src", prefix + base_path + $elm.attr("src"));
      } 
      else if ($elm.attr("src") &&  $elm.attr("src").substring(0,5) === "files") {
        $elm.attr("src", prefix + "/" + $elm.attr("src"));
      }      
      else if ($elm.attr("href") && $elm.attr("href").substring(0,2) === ".." && !(/\.htm(l)?$/.test($elm.attr("href"))) && /\.\w{2,4}$/.test($elm.attr("href"))) {
        $elm.attr("href", prefix + base_path + $elm.attr("href"));
      }       
      else if ($elm.attr("href") && $elm.attr("href").substring(0,5) === "files" && !(/\.htm(l)?$/.test($elm.attr("href"))) && /\.\w{2,4}$/.test($elm.attr("href"))) {
        $elm.attr("href", prefix + base_path + $elm.attr("href"));
      }            
    });
  };

  $(document).ready(function(e){
    var base_path = window.location.pathname.substring(0,window.location.pathname.lastIndexOf('/')) + "/";
    $("img").absolutizePath("/ccp/_secondary-pages", base_path);
    $("a").absolutizePath("/ccp/_secondary-pages", base_path);    
    if ($("#sub-navigation").length == 0) {
      $("#sub-content").css({ width : 650 });
    }
  });
})(jQuery);



