
function overGhost(elm, bg) {
	if (ua['dom']) {
		var tmp = elm.style.backgroundImage;
		elm.onmouseout = function() {
			elm.style.backgroundImage = tmp;
		}
		elm.style.backgroundImage = 'url('+ bg +')';
	}
}


function gridProduct(id, type, num, title, description, img, imgX, imgY) {
	this.id = id;
	this.type = type;
	this.num = num;
	this.title = title;
	this.description = description;
	this.img = img;
	this.imgX = imgX;
	this.imgY = imgY;
}

function gridProducts() {

	
	this.Members = new Array();
	var rx = /(idp\d+)?idd(\d+)\.asp.*$/i;
	if (location.href.match(rx)) {
		this.DocId = rx.exec(location.href)[2];	
	}
	this.defaultId = null;
	

	this.Add = function(prodId, prodType, prodNum, prodTitle, prodDescription, prodImg, prodImgX, prodImgY) {
		if (this.Exists(prodId) == -1) {

//			var img = new Image; //preload image
//			img.src = prodImg;

 			this.Members[this.Members.length] = new gridProduct(prodId, prodType, prodNum, prodTitle, prodDescription, prodImg, prodImgX, prodImgY);
		}
	} 
	
	this.Exists = function(prodId) {
		for (var i = 0; i < this.Members.length; i++) {
			if (this.Members[i].id == prodId) {
				return i;
			}
		}
		return -1;
	}

	this.GetCategory = function(type) {
		switch(type) {
			case 'ecare' :
				return 'maintenance';
				break;
			case 'eflash' :
				return 'work';
				break;
			case 'emana' :
			case 'efoto' :
			case 'eshare' :
			case 'ewave' :
				return 'entertainment';
				break;
			case 'bsafer' :
				return 'bsafer';
				break;
			default :
				return '';
				break;
		}		
	}

	this.GetTypeImg = function(type) {
		var src = '';
		var txt = '';
		switch(type) {
			case 'ecare' :
				src = '/site/images/ecare_logo.gif';
				txt = 'eCare - For the best performance';
				break;
			case 'eflash' :
				src = '/site/images/eflash_logo.gif';
				txt = 'eFlash - Presentation at your fingertips';
				break;
			case 'efoto' :
				src = '/site/images/efoto_logo.gif';
				txt = 'eFoto - Save your best moments';
				break;
			case 'emana' :
				src = '/site/images/emana_logo.gif';
				txt = 'eMana - Amplify your music experience';
				break;
			case 'eshare' :
				src = '/site/images/eshare_logo.gif';
				txt = 'eShare - Sharing your world';
				break;
			case 'ewave' :
				src = '/site/images/emana_logo.gif';
				txt = 'eMana - Give life to your music collection';
				break;
			case 'bsafer' :
				src = '/site/images/bsafer_logo.gif';
				txt = 'bSafer';
				break;
		}

		if (src != '') {
			var img = new Image;
			img.src = src;
			return '<img src="'+ src+ '" width="155" height="33" alt="'+ txt +'" title="'+ txt +'"/>';
		}
		return '';
	}

	this.SetDefault = function(prodId) {
		this.defaultId = prodId;
	}

	this.ShowDefault = function() {
		this.Show(this.defaultId);
	}

	this.ShowText = function() {
		var oInfoText = document.getElementById('infoText');
		var oFocusProd = document.getElementById('focusProduct');

		if (oInfoText) {
			oInfoText.style.display = 'block';
		}

		if (oFocusProd) {
			oFocusProd.style.display = 'none';
		}

	}

	this.Show = function(prodId) {
		var prod = this.Members[this.Exists(prodId)];
		if (prod) {
			var oMainH = 0;
			var oMain = document.getElementById('main');
			if (oMain) {
				oMainH = oMain.offsetHeight;
			}

			var oInfoText = document.getElementById('infoText');
			if (oInfoText) {
				oInfoText.style.display = 'none';
			}

			var oFocusProd = document.getElementById('focusProduct');

			if (oFocusProd) {
				oFocusProd.style.display = 'block';
			}
			var oFocusProdTitle = document.getElementById('focusProductTitle');
			var oFocusProdDesc = document.getElementById('focusProductDesc');
			var oFocusProdImg = document.getElementById('focusProductImg');
			var oFocusProdImgContent =  document.getElementById('focusProductImgContent');

			if (prod.type != 'ghost') {
				oFocusProdTitle.innerHTML = '<h1>'+ this.GetTypeImg(prod.type) + prod.title +' '+ prod.num + '</h1>'; 
				oFocusProdDesc.innerHTML = '<p>' + prod.description + '</p>';
			}
			else {
				oFocusProdTitle.innerHTML = '';
				oFocusProdDesc.innerHTML = '';
			}

			oFocusProdImg.style.visibility = 'hidden';
			oFocusProdImgContent.style.marginTop = '0px';

			var img_str

			img_str = '';
			if (prod.img != '') {
				var img = new Image;
				img.src = prod.img;
				
				img_str += '<table class="root '+ this.GetCategory(prod.type) +'_root" border="0" cellpadding="0" cellspacing="0">';
				img_str += '<colgroup>';
				img_str += '<col span="1" width="2*" />';
				img_str += '<col span="1" width="1*" />';
				img_str += '</colgroup>';
				img_str += '<tbody>';
				img_str += '<tr>';
				img_str += '<td colspan="2" class="img">';
				img_str += '<div class="img">';
				img_str += '<div class="img_head"></div>';
				img_str += '<div class="img_foot"></div>';
				img_str += '<a href="idp'+ prod.id +'.asp"><img src="'+ prod.img +'" width="'+ prod.imgX +'" height="'+ prod.imgY +'" alt="" /></a>';
				img_str += '</div>';
				img_str += '</td>';
				img_str += '</tr>';
				img_str += '<tr>';
				img_str += '<td class="title"><div><a href="idp'+ prod.id +'.asp">'+ prod.title +'</a></div></td>';
				img_str += '<td class="num"><div><a href="idp'+ prod.id +'.asp">'+ prod.num +'</a></div></td>';
				img_str += '</tr>';
				img_str += '</tbody>';
				img_str += '</table>';
			}


			oFocusProdImgContent.innerHTML = img_str;

			var oFocusProdTitleH = oFocusProdTitle.offsetHeight;
			var oFocusProdDescH = oFocusProdDesc.offsetHeight;
			var oFocusProdImgH = oFocusProdImg.offsetHeight;

			if (oFocusProdTitleH + oFocusProdDescH + oFocusProdImgH < oMainH) {
				oFocusProdImgContent.style.marginTop = (oMainH - oFocusProdTitleH - oFocusProdDescH - oFocusProdImgH) + 'px';	
			}

			oFocusProdImg.style.visibility = 'visible';
			adjustLayout();
		}		
	}

}

function setBlur(obj, showDefault) {
	if (ua['iewin'] && !ua['ie5']) {

		if (showDefault) {
			obj.onmouseleave = function() {
				myGridProducts.ShowDefault();
			}
		}
		else {
			obj.onmouseleave = function() {
				myGridProducts.ShowText();
//				myGridProducts.ShowDefault();
			}
		}
	}
	else {
		if (showDefault) {
			obj.onmouseout = function() {
				myGridProducts.ShowDefault();
			}
		}
		else {
			obj.onmouseout = function() {
				myGridProducts.ShowText();
//				myGridProducts.ShowDefault();
			}
		}
	}
}
