function init() {
  $('FORM').each( function(i) { this.reset(); } );
  $('INPUT[type=text]').keypress(respondToEnter);
  $('.tooltip').tooltip( {delay: 0} );
}

function go_to_page(p) {
  $('#page').val(p);
  $('#dataform').submit();
}

function change_pagesize(p) {
  $('#pagesize').val(p);
  $('#dataform').submit();
}

function toggle_descriptions() {
  $('.result .description').toggle();

  if ($('FORM input[name="showdesc"]').attr('value') == 'Hide') {
    $('.desc_toggle_link').text('Hide Descriptions');
    $('FORM input[name="showdesc"]').attr('value', 'Show');
  } else {
    $('.desc_toggle_link').text('Show Descriptions');
    $('FORM input[name="showdesc"]').attr('value', 'Hide');
  }

}

function advanced_view() {
  $('.advanced_container').slideToggle(1000);
}

function search_advanced() {
  $('#adv').val('1');
  $('#dataform').submit();
}

function search_regular() {
  $('#adv').val('0');
  $('#dataform').submit();
}

function get_course(course_id) {
  location.href = 'search.php?search=' + course_id + '&yearsem=' + $('#yearsem').val();
  return;
  $('#search').val(course_id);
  $('#dataform').submit();
}

function respondToEnter(e) {
  if (e.which == 13) {
    if ($('#' + this.id).hasClass('search_trigger_adv')) {
      search_advanced();
    } else if ($('#' + this.id).hasClass('search_trigger_reg')) {
      search_regular();
    } else {
      alert('Error: unknown search type');
    }

    return false;
  }
  
  return true;
}

jQuery.fn.check = function(mode) {
 // if mode is undefined, use 'on' as default
 var mode = mode || 'on';
 
 return this.each(function() {
   switch(mode) {
     case 'on':
       this.checked = true;
       break;
     case 'off':
       this.checked = false;
       break;
     case 'toggle':
       this.checked = !this.checked;
       break;
   }
 });
};

$(document).ready( function(){ init(); });
