/* Course box
***************************************************************************/



/* Course box
***************************************************************************/

function attachCourseBoxHover() {

  if (!document.getElementById) { return false; }
  if (!$('course-bars')) { return false; }

  var course_list = $('course-bars').getElementsBySelector('div');

  course_list.each(function(course) {

    course.onmouseover = function() {
      var classNames = $w(course.className)
      var courseImage = $('course-image').getElementsBySelector('img');
      var courseType = classNames[1];
      var newImage = 'images/homepage/courses_' + courseType + '_large.jpg';

      if (courseImage[0].alt != courseType) {
        swapImage(courseImage[0], 'images/homepage/courses_' + courseType + '_large.jpg', courseType, 0);
      }

      addClassName(this, 'hover');
    }

    course.onmouseout = function() {
      removeClassName(this, 'hover');
    }
  });

}

/* Course panels
***************************************************************************/

function attachCoursePanelHover() {

  if (!document.getElementById) { return false; }
  if (!$('course-detail-box')) { return false; }

  var course_list = $('course-detail-box').getElementsBySelector('div');

  course_list.each(function(course) {
    course.onmouseover = function() { addClassName(this, 'hover'); }
    course.onmouseout = function() { removeClassName(this, 'hover'); }
  });
}

/* Books etc
***************************************************************************/

function attachBookBoxHover() {

  if (!document.getElementById) { return false; }
  if (!$('book-box')) { return false; }

  var section_list = $('book-box').getElementsBySelector('div');

  section_list.each(function(section) {
    section.onmouseover = function() { addClassName(this, 'hover'); }
    section.onmouseout = function() { removeClassName(this, 'hover'); }
  });
}

/* Misc
**********************/

function addClassName(element, className) {
  if (!hasClassName(element, className)) {
    if (element.className) element.className += " " + className;
    else element.className = className;
  }
};

function removeClassName(element, className) {
  var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
  element.className = element.className.replace(regexp, "$2");
};

function hasClassName(element, className) {
  var regexp = new RegExp("(^|\\s)" + className + "(\\s|$)");
  return regexp.test(element.className);
};


function swapImage(element, newImage, alt, useFade) {
  /* Hide the current image */
  element.src = "";

  if (useFade == 1) {
    element.fade({ duration: 0.3 });
  }

  /* Update the image */
  element.src = newImage;

  /* Fade in the new image */
  if (useFade == 1) {
    element.appear({ duration: 0.7, queue: 'end' });
  }

  element.alt = alt;
}

function attachGreatBooksButtonRollovers() {
  new Rollover('great-books-box');
}

function rotatingStudentQuote() {

  var studentQuoteImages = ["images/homepage/student_quote1.jpg",
                            "images/homepage/student_quote2.jpg",
                            "images/homepage/student_quote3.jpg",
                            "images/homepage/student_quote4.jpg",
                            "images/homepage/student_quote5.jpg"];

  new Fader($('student-quote-box').firstDescendant(), studentQuoteImages, { displayDuration: 5 });
}

function swapSectionNavigationImage(section, show_hide) {

  switch (section) {

    case 'courses':

      if (show_hide == 1) {
        $('course-title').select('img')[0].style.borderBottom = '5px solid #5F5845';
        $('nav_courses_image').src = 'images/tb_courses_on_m.gif';
        break;
      } else {
        $('course-title').select('img')[0].style.borderBottom = 'none';
        $('nav_courses_image').src = 'images/tb_courses_off.gif';
        break;
      }

    case 'books':
      if (show_hide == 1) {
        $('books-title').select('img')[0].style.borderBottom = '5px solid #52656F';
        $('nav_books_image').src = 'images/tb_books_on_b.gif';
        break;
      } else {
        $('books-title').select('img')[0].style.borderBottom = 'none';
        $('nav_books_image').src = 'images/tb_books_off.gif';
        break;
      }

    case 'about':
      if (show_hide == 1) {
        $('about-title').select('img')[0].style.borderBottom = '5px solid #6B603C';
        $('nav_about_image').src = 'images/tb_about_us_on_y.gif';
        break;
      } else {
        $('about-title').select('img')[0].style.borderBottom = 'none';
        $('nav_about_image').src = 'images/tb_about_us_off.gif';
        break;
      }
  }
}

/* Event handlers
*****************/

Event.observe(window, 'load', attachCourseBoxHover, false);
Event.observe(window, 'load', attachCoursePanelHover, false);
Event.observe(window, 'load', attachBookBoxHover, false);
Event.observe(window, 'load', attachGreatBooksButtonRollovers, false);
Event.observe(window, 'load', rotatingStudentQuote, false);
Event.observe(window, 'load', soopaSetup, false);