var bcompareshowsimilar = true;
var objbtnHideSimilar = document.getElementById('btnHideSimilar');
if (objbtnHideSimilar != null){
	objbtnHideSimilar.innerHTML = sTextHideSimilar;
	objbtnHideSimilar.onClick="javascript:comparerecalcsimilar('hidesimilar');";
}
if ((navigator.userAgent.indexOf("Gecko") != -1)||(navigator.userAgent.indexOf("Opera") != -1))
	var sGeckoShowRow = 'table-row';
else
	var sGeckoShowRow = 'block';

function getElementsByClass(searchClass,node,tag){
  var classElements = new Array();
  if (node == null)
    node = document;
  if (tag == null)
    tag = '*';
  var els = node.getElementsByTagName(tag);
  var elsLen = els.length;
  var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
  for (i = 0, j = 0; i < elsLen; i++) {
    if (pattern.test(els[i].className) ) {
      classElements[j] = els[i];
      j++;
    }
  }
  return classElements;
}
function comparehideclass(cpname){
	var objcp=getElementsByClass(cpname);
	for (var cpctr = 0; cpctr < objcp.length; cpctr++){
		objcp[cpctr].className = objcp[cpctr].className += ' hide';
	}
	comparerecalcsimilar('hilite');
	comparecheckoneproduct();
}
function compareshowclass(cpname){
	var objcp=getElementsByClass(cpname);
	for (var cpctr = 0; cpctr < objcp.length; cpctr++){
		objcp[cpctr].className = objcp[cpctr].className.replace(' hide','');
	}
	comparerecalcsimilar('hilite');
	comparecheckoneproduct();
}
function compareshowhiderow(rtsig){
	var objimg = document.getElementById(rtsig)
	if (objimg.src.indexOf('Minus') != -1){
		comparehideclass(rtsig);
		objimg.src='/HP/images/products/common/icoPlus.gif';
	}
	else{
		compareshowclass(rtsig);
		objimg.src='/HP/images/products/common/icoMinus.gif';
	}
}
function comparerecalcsimilar(sMode){
	if (objbtnHideSimilar != null){
		var bDiff = false;
		var objTRArray;
		var objTDArray;
		var objPArray;
		var pInnerHTML;
		if (sMode == ''){
			if (bcompareshowsimilar)
				sMode = 'showsimilar';
			else
				sMode = 'hidesimilar';
		}
		var table = document.getElementById('tblProductComparison'); 
		var objTBodyArray = getElementsByClass("rowGroup"); 
		var hiddenItemsCount;
		// Loop through tbody tags
		for (var i = 0; i < objTBodyArray.length; i++){
			blnHasRows = false;
			firstRowIndex = -1;	
			hiddenItemsCount = 0;			

			objTRArray = objTBodyArray[i].getElementsByTagName('tr');	
			
			for (var trcount = 0; trcount < objTRArray.length; trcount++){
				if (objTRArray[trcount].className == 'rowTechSpecItem first'){				
					firstRowIndex = trcount;
				}
				else
				{
					objTDArray = getElementsByClass('cp',objTRArray[trcount],'td');
					pInnerHTML = '';
					for (var tdcount = 0; tdcount < objTDArray.length; tdcount++){
						if (objTDArray[tdcount].className.indexOf(' hide') == -1){
							blnHasRows = true;
							objPArray = objTDArray[tdcount].getElementsByTagName('p');
							if (pInnerHTML.length == 0)
								pInnerHTML = objPArray[0].innerHTML;
							else{
								if (pInnerHTML != objPArray[0].innerHTML){
									bDiff = true;
									break;
								}
							}
						}
					}
					switch (sMode){
						case 'hilite':{
							objTRArray[trcount].className = objTRArray[trcount].className.replace(' diff','');							
							if (bDiff){
								objTRArray[trcount].className += ' diff';
								bDiff = false;
							}
							break;
						}
						case 'hidesimilar':{
							objTRArray[trcount].className = objTRArray[trcount].className.replace(' sim','');
							if (!bDiff){
								objTRArray[trcount].className += ' sim';
								hiddenItemsCount += 1;
								if (hiddenItemsCount == (objTRArray.length - 1))
									objTBodyArray[i].style.display = 'none';
								else
									objTBodyArray[i].style.display = '';
									
							}
							else
								bDiff = false;
							bcompareshowsimilar = false;
							break;
						}
						case 'showsimilar':{
							objTRArray[trcount].className = objTRArray[trcount].className.replace(' sim','');
							objTBodyArray[i].style.display = '';
							bcompareshowsimilar = true;
							break;
						}
						default:
							break;						
					}
				}
			}	
		}
	}
}
function hidsplrow1() {
 if( document.getElementById("hidethis").style.display=='none' ){
  document.getElementById("hidethis").style.display = '';
 }
 else{
  document.getElementById("hidethis").style.display = 'none';
 }
 compareswitchhidesimilar()
}
function compareswitchhidesimilar(){

	if (bcompareshowsimilar){
		comparerecalcsimilar('hidesimilar');
		objbtnHideSimilar.innerHTML = sTextShowSimilar;
	}
	else{
		comparerecalcsimilar('showsimilar');
		objbtnHideSimilar.innerHTML = sTextHideSimilar;
	}	

}
function comparecheckoneproduct(){
	var bVisibleCount = 0;
	var bInVisibleCount = 0;
	var objTDArray = getElementsByClass('cphdr');
	for (var spancount = 0; spancount < objTDArray.length; spancount++){
		if (objTDArray[spancount].className.indexOf(' hide') == -1)
			bVisibleCount += 1;
		else
			bInVisibleCount += 1;
	}
	if (bInVisibleCount > 0)
		document.getElementById('btnUnhideAll').style.display = 'block';
	else 
		document.getElementById('btnUnhideAll').style.display = 'none';
	
	var objTRArray = getElementsByClass('similar');
	var objSpanArray = getElementsByClass('hid');
	for (var spancount = 0; spancount < objSpanArray.length; spancount++){
		if (bVisibleCount > 2){
			objSpanArray[spancount].style.display = 'block';
			if (objbtnHideSimilar != null)
				objTRArray[0].style.display = sGeckoShowRow;
		}
		else{
			objSpanArray[spancount].style.display = 'none';
			if (objbtnHideSimilar != null){
				comparerecalcsimilar('showsimilar');
				objbtnHideSimilar.innerHTML = sTextHideSimilar;
				objTRArray[0].style.display = 'none';
			}
		}
	}
}
function printOK(modelsNotHiddenSize, warningText){
	var objcp;
	var objcp ;
	var size = modelsNotHiddenSize;	
	for (var i = 1; i <= size; i++){
		className = "cp" + i ;
		objcp = getElementsByClass(className);
		if (objcp != null && objcp[0].className.indexOf( ' hide' ) > 0 ) { 
			modelsNotHiddenSize --  ;
		}
	}
	maxNoOfProductsForPrint  = 5;
	return (modelsNotHiddenSize <= maxNoOfProductsForPrint || (modelsNotHiddenSize > maxNoOfProductsForPrint && confirm(warningText)));
}
comparerecalcsimilar('hilite');
comparecheckoneproduct();

















