var Core = {};

// function is changed for getting faster performance especially in ie
Core.getElementsByClass1 = function(theClass, tag)
{
  var elementArray = [];
  	if (document.getElementsByTagName(tag)) {
    	elementArray = document.getElementsByTagName(tag);
	}
	else {
		elementArray = document.all;		
	}


  var matchedArray = [];
  var pattern = new RegExp("(^| )" + theClass + "( |$)");

  for (var i = 0; i < elementArray.length; i++)
  {
    if (pattern.test(elementArray[i].className))
    {
      matchedArray[matchedArray.length] = elementArray[i];
    }
  }

  return matchedArray;
};

Core.getElementsByClass = function(theClass) {
	var elementArray = [];

	if (document.all)
	{
	elementArray = document.all;
	}
	else
	{
	elementArray = document.getElementsByTagName("*");
	}

	var matchedArray = [];
	var pattern = new RegExp("(^| )" + theClass + "( |$)");

	for (var i = 0; i < elementArray.length; i++)
	{
	if (pattern.test(elementArray[i].className))
	{
	  matchedArray[matchedArray.length] = elementArray[i];
	}
	}

	return matchedArray;
};

function hideClass(classObj) {
	var list = Core.getElementsByClass1(classObj, 'p');
	for (var i = 0; i < list.length; i++) {
	list[i].style.display = 'none';
	}
}

function hideClass2(classObj) {
	var list = Core.getElementsByClass(classObj);
	for (var i = 0; i < list.length; i++) {
	list[i].style.display = 'none';
	}
}

function tabs(id) {
	resetTabs();
	document.getElementById(id+'Span').style.background = '#fff';
	document.getElementById(id+'Span').style.borderBottom = '10px solid #fff';
	document.getElementById(id+'Span').style.color = '#3b73b9';
	document.getElementById(id+'Text').style.display = 'block';
	document.getElementById(id+'Img').style.display = 'block';
	if (id == 'tab1') {
		document.getElementById(id).style.borderLeft = '1px solid #fff';
		document.getElementById(id).style.borderRight = '1px solid #b5bac0';
	} else if (id == 'tab2') {
		document.getElementById(id).style.borderLeft = '1px solid #b5bac0';
		document.getElementById(id).style.borderRight = '1px solid #b5bac0';
	} else if (id == 'tab3') {
		document.getElementById(id).style.borderLeft = '1px solid #b5bac0';
		document.getElementById(id).style.borderRight = '1px solid #fff';	
	}
}

function resetTabs() {
	var list = Core.getElementsByClass1('tab', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.borderLeft = '1px solid #fff';
		list[i].style.borderRight = '1px solid #fff';
	}	
	var list = Core.getElementsByClass1('tabSpan', 'span');
	for (var i = 0; i < list.length; i++) {
		list[i].style.background = '#d5d4d4';
		list[i].style.borderBottom = '1px solid #fff';
		list[i].style.color = '#4a525c';
	}
	var list = Core.getElementsByClass1('featureText', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
	}
	var list = Core.getElementsByClass1('featureImg', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
	}
}

function featureClear() {
	var list = Core.getElementsByClass1('featureImg', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
	}	
	document.getElementById('tabDefImg').style.display = 'block';	
}

function featShow(id) {
	var list = Core.getElementsByClass1('slideImage', 'img');
	for (var i = 0; i < list.length; i++) {
		list[i].style.opacity = '0.3';
		list[i].style.filter = 'alpha(opacity=30)';
	}	
	var list = Core.getElementsByClass1('featureHolder', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
	}	
	document.getElementById(id + 'Img').style.opacity = '1';	
	document.getElementById(id + 'Img').style.filter = 'alpha(opacity=100)';
	document.getElementById(id).style.display = 'block';
}

function featClear() {
	var list = Core.getElementsByClass1('slideImage', 'img');
	for (var i = 0; i < list.length; i++) {
		list[i].style.opacity = '1';
		list[i].style.filter = 'alpha(opacity=100)';
	}	
	var list = Core.getElementsByClass1('featureHolder', 'div');
	for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
	}	
	document.getElementById('featDefault').style.display = 'block';
}

var activeElement = 1;

function feature(type) {
	var list = Core.getElementsByClass1('slideImage', 'img');
	var lenght = list.length;
	if (type == 'prev') {
		if (activeElement == 1) {
			var stopscript = 1;
		} else {
			activeElement = activeElement -1;
		}
	} else if (type == 'next') {
		if (activeElement == lenght-3) {
			var stopscript = 1;
		} else {
			activeElement = activeElement +1;
		}
	}
	if (stopscript != 1) {
		for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
		}
		activeElement2 = activeElement +1;
		activeElement3 = activeElement +2;
		activeElement4 = activeElement +3;
		
		document.getElementById('feat' + activeElement + 'Img').style.display = 'block';
		document.getElementById('feat' + activeElement2 + 'Img').style.display = 'block';
		document.getElementById('feat' + activeElement3 + 'Img').style.display = 'block';
		document.getElementById('feat' + activeElement4 + 'Img').style.display = 'block';
	}
}

function showBrands() {
		document.getElementById('brands').style.display = 'block';
		document.getElementById('brandsLink').style.background = '#7e8690';
		var list = Core.getElementsByClass1('select-left', 'select');
		for (var i = 0; i < list.length; i++) {
			list[i].style.display = 'none';
		}	
}

function hideBrands() {
		document.getElementById('brands').style.display = 'none';
		document.getElementById('brandsLink').style.background = 'none';
		var list = Core.getElementsByClass1('select-left', 'select');
		for (var i = 0; i < list.length; i++) {
			list[i].style.display = 'inline';
		}	
}

function showProdInfo(id) {
	document.getElementById(id).style.display = 'block';	
}

function hiddeProdInfo(id) {
	document.getElementById(id).style.display = 'none';	
}

var activeElement1 = 1;

function showProddetails(id) {

	document.getElementById(id).style.display = 'inline';
	document.getElementById('products-list').style.opacity = '1';
	document.getElementById('products-list').style.filter = 'alpha(opacity=100)';


}


function hiddeProddetails(id) {
	document.getElementById(id).style.display = 'none';
	document.getElementById('products-list').style.opacity = '1';
	document.getElementById('products-list').style.filter = 'alpha(opacity=100)';

}

function slider(type, id) {
	var list = Core.getElementsByClass1('rec-prod', 'div');
	var lenght = list.length;
	if (type == 'prev') {
		if (activeElement1 == 1) {
			var stopscript1 = 1;
		} else {
			activeElement1 = activeElement1 -1;
		}
	} else if (type == 'next') {
		if (activeElement1 == 3) {
			var stopscript1 = 1;
		} else {
			activeElement1 = activeElement1 +1;
		}
	}
	if (stopscript1 != 1) {
		for (var i = 0; i < list.length; i++) {
		list[i].style.display = 'none';
		}
		activeElement2 = activeElement1 +1;
		activeElement3 = activeElement1 +2;
		
		document.getElementById('rec' + id + activeElement1).style.display = 'block';
		document.getElementById('rec' + id + activeElement2).style.display = 'block';
		document.getElementById('rec' + id + activeElement3).style.display = 'block';
	}
}
