
var isAccessoriesDownLoaded=false;
var ajaxTabId;
var ajaxColorId;

var accessoriesID ="accessories";
var technicalDetailsId = "technical_details";
var customerReviewsId = "customer_reviews";

var accessoriesColorId = "accessoriesColor";
var technicalDetailsColorId = "technicalColor"
var customerReviewsColorId = "customerReviewsColor"

var accessoriesTab = "accessoriesTab.jsp";
var technicalDetailsTab = "technicalDetailsTab.jsp";
var customerReviewsTab = "customerReviewsTab.jsp";


var errFunc = function(t) {
   refreshCurrentPage();
}

function getTabContent(productId,tabType,historyURL, reviewsFlag) { 

  if(document.getElementById("reviewsTabLoadedFlag")!=null){
    var revTabLoadedFlagVal = document.getElementById("reviewsTabLoadedFlag").innerHTML;
    if(reviewsFlag=='true' && revTabLoadedFlagVal != 'true'){
      tabType = customerReviewsTab;
    }
  }

	if(!isAccessoriesDownLoaded && tabType==accessoriesTab){
		var url = tabsJspPath+tabType
		tabsAjaxRequest = new Ajax.Request(url,{parameters :"?productId="+productId+'&history='+historyURL,asynchronous:true,onSuccess : handleTabsRequest,onFailure:errFunc,method:'Get'});
			switch(tabType)
			{
			case accessoriesTab:
				{
					isAccessoriesDownLoaded=true;
					ajaxTabId=accessoriesID;
					ajaxColorId=accessoriesColorId;
		            changeTabColor(accessoriesColorId );
					break;
				}
			}
		} 
	else{
		switch(tabType)
		{
		case technicalDetailsTab:
			{
			 displayTabContent(technicalDetailsId);
			 changeTabColor(technicalDetailsColorId)
			 break;
			}
		case accessoriesTab:
			{
			 displayTabContent(accessoriesID);
			 changeTabColor(accessoriesColorId)
			 break;
			}
    case customerReviewsTab:
      {
        if(historyURL=='numReviewsLink'){
          cmCreateManualPageviewTag("Reviews: Customer Review Tab Number of Reviews", "Reviews");
        }else if(historyURL=='readReviewsLink'){
          cmCreateManualPageviewTag("Reviews: Customer Review Tab Read Reviews", "Reviews");
        }else{
          cmCreateManualPageviewTag("Reviews: Customer Review Tab", "Reviews");
        }

        displayTabContent(customerReviewsId);
        changeTabColor(customerReviewsColorId);
        window.loadReviews();
        break;
			}
		}
	} 
}

function handleTabsRequest(response) {
	 var obj=document.getElementById(accessoriesID);
		if(response.responseText.indexOf('<error500>') > 0){
			window.location.replace( contextPath+"/error/error.jsp");
		}
		else
		if(response.responseText.indexOf('<error404>') > 0){
		window.location.replace( contextPath+"/home/homePage.jsp");
	
		}
		else{
			 obj.innerHTML= response.responseText;
		}
	 changeTabColor(ajaxColorId );
	 displayTabContent(ajaxTabId);
	 initCartQuantity();
	 callHover();
}

 function hideTabContent(){
  if(document.getElementById(technicalDetailsId)!=null)
	document.getElementById(technicalDetailsId).style.display="none";

  if(document.getElementById(accessoriesID)!=null)
	document.getElementById(accessoriesID).style.display="none";

  if(document.getElementById(customerReviewsId)!=null)
    document.getElementById(customerReviewsId).style.display="none";
 }

 function displayTabContent(id){
	 hideTabContent();
  if(document.getElementById(id)!=null)
   document.getElementById(id).style.display="block";
 }
 function changeColor(){
   if(document.getElementById(accessoriesColorId)!=null)
	 document.getElementById(accessoriesColorId).parentNode.parentNode.className=" ";

   if(document.getElementById(technicalDetailsColorId)!=null)
	 document.getElementById(technicalDetailsColorId).parentNode.parentNode.className=" ";

	 document.getElementById(customerReviewsColorId).parentNode.parentNode.className=" ";

   if(document.getElementById(accessoriesColorId)!=null)
	 document.getElementById(accessoriesColorId).className='greenTitle';

   if(document.getElementById(technicalDetailsColorId)!=null)
	 document.getElementById(technicalDetailsColorId).className='greenTitle';

	 document.getElementById(customerReviewsColorId).className='greenTitle';
 }
 function changeTabColor(color){
   changeColor();
   document.getElementById(color).parentNode.parentNode.className="active";
   document.getElementById(color).className ='orangeTitle';
 }
 
  function callHover(){
  var grayhovers = $A($$('.emailWhat'));
	var gh_length = grayhovers.length;
	for (i=0; i < gh_length; ++i){
		new grayHover(grayhovers[i]);
	}
 }
	
function printSkuPage(url,productId){	
	var skuURL=url+productId+"&printTab=true";
	var w = window.open(skuURL,'','directories=no,location=no,menubar=no,titlebar=no,toolbar=no,width=950,height=750,resizable=no');	
	w.focus();
}
	
