var ganderTabEvents = {
  
 tabHolder : null,
 theAnchors : null,
  
 init : function() {
	ganderTabEvents.theTabHolder = document.getElementById('tabs');
	if(ganderTabEvents.theTabHolder){
		ganderTabEvents.theAnchors = ganderTabEvents.theTabHolder.getElementsByTagName('a');
		ganderTabEvents.tabBox();
	}
 },

 tabBox : function(){
   var readReviews = document.getElementById('read_reviews');
   var sizingGuide = document.getElementById('sizing_guide');
   var readMore = document.getElementById('read_more');
   for(var i=0; i<ganderTabEvents.theAnchors.length; i++){
       ganderTabEvents.addEvent (ganderTabEvents.theAnchors[i], 'click', ganderTabEvents.showTab)
   }
   if(readReviews){ganderTabEvents.addEvent(readReviews, 'click', ganderTabEvents.openReviews)}
   if(readMore){ganderTabEvents.addEvent(readMore, 'click', ganderTabEvents.openDetails)}
 },
  
 hideAllTabs : function(){
    var theDivHolder = document.getElementById('details_box_holder');
    var allTheDivs = theDivHolder.getElementsByTagName('div');
	for(var i=0; i<allTheDivs.length; i++){ 
		if(allTheDivs[i].id.match(/^gntbx_/))
			allTheDivs[i].className = '';
		//allTheDivs[i].className = '';
    }
    for(var i=0; i<ganderTabEvents.theAnchors.length; i++){
		ganderTabEvents.theAnchors[i].parentNode.parentNode.className = '';
    }
 },
  
 showTab : function(e){
	ganderTabEvents.hideAllTabs();
    var theParentLI = this.parentNode.parentNode;
    theParentLI.className = 'on';
    var theRelatedDiv = document.getElementById(theParentLI.id + '_box');
	theRelatedDiv.className = 'on';  
	ganderTabEvents.stopDefault(e);
 },
  
 openReviews : function(){
  	ganderTabEvents.hideAllTabs();
    var theReviewDiv = document.getElementById('gntbx_product_reviews_box');
    theReviewDiv.className = 'on';
    var theReviewTab = document.getElementById('gntbx_product_reviews');
    theReviewTab.className= 'on';
 },
 
 openAnsBox : function(){
  	ganderTabEvents.hideAllTabs();
    var theAnswrBxDiv = document.getElementById('gntbx_answerbox_box');
    theAnswrBxDiv.className = 'on';
    var theAnswrBxTab = document.getElementById('gntbx_answerbox');
    theAnswrBxTab.className= 'on';
 },
 
 openDetails : function(){
	ganderTabEvents.hideAllTabs();
	var theDetailsDiv = document.getElementById('gntbx_additional_details_box');
    theDetailsDiv.className = 'on';
    var theDetailsTab = document.getElementById('gntbx_additional_details');
    theDetailsTab.className= 'on';
 
 },
 
 //prevents page from jumping back to the top after tab is selected
 stopDefault : function(e) {
  	if (!e) {e = window.event;}
	if (!e.preventDefault) {
       	e.preventDefault = function() { this.returnValue = false; }
   	}
  	e.preventDefault();
   	return false;
  },
 
    // utility function for adding events
  addEvent : function(obj, type, func) {
    if (obj.addEventListener) {obj.addEventListener(type, func, false);}
    else if (obj.attachEvent) {
      obj["e" + type + func] = func;
      obj[type + func] = function() {obj["e" + type + func] (window.event);}
      obj.attachEvent("on" + type, obj[type + func]);
    }
    else {obj["on" + type] = func;}
  }
}

ganderTabEvents.addEvent(window, 'load', ganderTabEvents.init);