/**
 * flash 2008/02/12 Version 1.0
 * general javascript for flash products.
 */
 /**
  * Note: IE v.s. NN
  * when using "split", jscript will discard the last element when there is nothing after delimiter.
  * so the number of element in the array will be different.
  * Example:
  * var myStr="0,1,2,3,4,";
  * var myArray=new Array();
  * myArray = myStr.split(",");
  * ==> in IE: myArray.length=6;
  * ==> in NN: myArray.length=5;
  *
  */



// room - Main.nsf, folder - Library, page - images
var _img1 = "/QuickPlace/hq/Main.nsf/h_Library/BB0296915D0F44574825740B0030E624/$File/tag1.gif";
var _img2 = "/QuickPlace/hq/Main.nsf/h_Library/BB0296915D0F44574825740B0030E624/$File/tag2.gif";
var _img3 = "/QuickPlace/hq/Main.nsf/h_Library/BB0296915D0F44574825740B0030E624/$File/tag3.gif";
var _img4 = "/QuickPlace/hq/Main.nsf/h_Library/BB0296915D0F44574825740B0030E624/$File/tag4.gif";

// room - Products, folder - room index, page - Docs
var file_prefix = "/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/7CE3021F57B8EA4848257412002E26CC/$File/";
var mx23_prefix = "/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/5647C43E4CA4339248257639003A181F/$File/";
var mx25_prefix = "/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/3F21BAC2E121E17848257639003A3146/$File/";
var mx28_prefix = "/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/EA9BF3273C17626148257639003A483B/$File/";
var mx29_prefix = "/QuickPlace/hq/PageLibrary4825740B00298A3B.nsf/h_Index/DBACA1C90564EBB248257639003A563A/$File/";
//var file_postfix = "/?OpenElement";
var file_postfix = "";

var _Def0 = new Array("Serial Flash", "Parallel Flash", "Secured Flash", "Serial ROM", "Parallel ROM", "PCN", "EOL");
var _Def1 = new Array("1Mb", "2Mb", "4Mb", "8Mb", "16Mb", "32Mb", "64Mb", "128Mb", "256Mb", "512Mb");
var _Def2 = new Array("1.8V", "2.5V", "3V", "5V");

var _Type = new Array();
var _Density = new Array();
var _Vcc = new Array();
var _PartNo = new Array();
var _Datasheet = new Array();
var _Version = new Array();
var _Status = new Array();

var _content = new Array();	

function init() {
// alert("init");
	var tempstr = PageBody;
	// 去除最後一個"|"
	tempstr = tempstr.substring(0, tempstr.length-1);
	
	var productList = new Array();	// product | product | product |
	var specList = new Array();	// spec#spec#spec#spec	
	var attachmentList = new Array();	// file::file::file::
	var filename = "";
	var pos = 0;
	var len = 0;
	productList = tempstr.split("|");
	for (var i=0; i<productList.length; i++) {				
	
		specList[i] = new Array();
		specList[i] = productList[i].split("#");
		
		_Type[i] = specList[i][0];		
		_Density[i] = specList[i][1];
		_Vcc[i] = specList[i][2];
		_PartNo[i] = specList[i][3];
		_Status[i] = specList[i][4];

		len = specList[i].length;
		
		// attachment - 去除最後一個"::"		
		tempstr = specList[i][len-1];			
		tempstr = tempstr.substring(0, tempstr.length-2);		
		attachmentList[i] = new Array();
		attachmentList[i] = tempstr.split("::");

		for(var j=0; j<attachmentList[i].length; j++) {
			filename = attachmentList[i][j];	
			if (filename.indexOf("DATASHEET")>-1) {
				_Datasheet[i] = filename.substring(10, filename.length);	
				pos = filename.lastIndexOf("-");
				if (pos<0) {
					pos = filename.lastIndexOf("ver");
					pos = pos + 3;
				} else {
					pos = pos + 1;
				}
				_Version[i] = filename.substring(pos, filename.length-4);
				break;
			}
		}
		
	}	

	writeTable();
}

function writeTable() {

// golbal	var _content = new Array();	
	var idx1 = -1;
	var idx2 = -1;
	var idx3 = -1;
	
	for (var i=0; i<_Def0.length; i++) {
		_content[i] = new Array();
		for (var j=0; j<_Def1.length; j++) {
			_content[i][j] = new Array();
			for (var k=0; k<_Def2.length; k++) {
				_content[i][j][k] = "";
			}			
		}
	}
	
	for (var i=0; i<_PartNo.length; i++) {		
		idx1 = getIndex(1, i);		
		idx2 = getIndex(2, i);
		idx3 = getIndex(3, i);

		if (idx1>-1 && idx2>-1 && idx3>-1) {
			//content[idx1][idx2][idx3] += writeItem(i);
			
			if (appendDatasheet(i)!="") {
				if (_content[idx1][idx2][idx3]!="") {
					_content[idx1][idx2][idx3] += "<br>";
				}
				_content[idx1][idx2][idx3] += appendDatasheet(i);
			}		

		}		
	}	
	
	for (var i=0; i<_Def0.length; i++) {

		writeInDiv(i+1, writeContent(i));
	}
	
}

function writeInDiv(key, content) {

	var id = "0"+key;
	var div = document.getElementById("tab" + id);
	var obj = document.getElementById("span" + id);
		
	obj.innerHTML = content;	
	//div.style.display = "block";
}



function getIndex(layer, idx) {
	var result = -1;
	switch (layer) {
		case 1:
			for (var i=0; i<_Def0.length; i++) {
				if (_Type[idx] == _Def0[i]) {				
					result = i;
					break;
				} else {
					if (_Status[idx] == _Def0[i] || _Status[idx] == "Both") {
						result = i;
						break;
					}
				}
			}
			break;
		case 2:
			for (var i=0; i<_Def1.length; i++) {
				if (_Density[idx] == _Def1[i]) {
					result = i;
					break;
				}
			}
			break;
		case 3:
			for (var i=0; i<_Def2.length; i++) {
				//if (_Vcc[idx] == _Def2[i]) {
				if (_Vcc[idx].indexOf(_Def2[i])>-1) {
					result = i;
					break;
				}
			}	
			break;
	}
	
	return result;
}

function appendDatasheet(mIdx) {	

	var tmpstr = "";
	if ((_PartNo[mIdx].indexOf("MX25L1606E")>-1 && _Version[mIdx]=="0.00") || (_PartNo[mIdx].indexOf("MX25L8006E")>-1 && _Version[mIdx]=="0.00")) {
			// do not show
	} else {

	if (_Version[mIdx]!="" && typeof(_Version[mIdx])!="undefined") {
		if (_Datasheet[mIdx].indexOf("MX23")>-1) {
			tmpstr += "<a href='" + mx23_prefix + _Datasheet[mIdx] + file_postfix + "' class='texte' target='_blank'>" + _PartNo[mIdx] + " (REV. " + _Version[mIdx] + ")</a>";
		} else if (_Datasheet[mIdx].indexOf("MX25")>-1) {
			tmpstr += "<a href='" + mx25_prefix + _Datasheet[mIdx] + file_postfix + "' class='texte' target='_blank'>" + _PartNo[mIdx] + " (REV. " + _Version[mIdx] + ")</a>";
		} else if (_Datasheet[mIdx].indexOf("MX28")>-1) {
			tmpstr += "<a href='" + mx28_prefix + _Datasheet[mIdx] + file_postfix + "' class='texte' target='_blank'>" + _PartNo[mIdx] + " (REV. " + _Version[mIdx] + ")</a>";
		} else if (_Datasheet[mIdx].indexOf("MX29")>-1) {
			tmpstr += "<a href='" + mx29_prefix + _Datasheet[mIdx] + file_postfix + "' class='texte' target='_blank'>" + _PartNo[mIdx] + " (REV. " + _Version[mIdx] + ")</a>";
		} else	{
			tmpstr += "<a href='" + file_prefix + _Datasheet[mIdx] + file_postfix + "' class='texte' target='_blank'>" + _PartNo[mIdx] + " (REV. " + _Version[mIdx] + ")</a>";
		}
	}
	}

	return tmpstr;
}

function writeContent(idx) {
//	alert("writeContent");
	
	var content = "";
	var header = "";
	var result = "";
	
	header += "<table width='100%' border='0' cellpadding='5' cellspacing='1' bgcolor='#d7d7d7'>";
	header += "<tr>";
	header += "<td align='center' bgcolor='#fcf7f1' class='text1'>Density</td>";
	header += "<td align='center' bgcolor='#fcf7f1' class='text1'>1.8 V</td>";
	header += "<td align='center' bgcolor='#fcf7f1' class='text1'>2.5 V</td>";
	header += "<td align='center' bgcolor='#fcf7f1' class='text1'>3 V</td>";
	header += "<td align='center' bgcolor='#fcf7f1' class='text1'>5 V</td>";
	header += "</tr>"
	
	for (var i=0; i<_Def1.length; i++) {
		if (_content[idx][i][0]=="" && _content[idx][i][1]=="" && _content[idx][i][2]=="" && _content[idx][i][3]=="") {
			// do nothing
		} else {
			content += "<tr>";
			content += "<td align='center' nowrap='nowrap' bgcolor='#FCF7F1' class='text1'>" + _Def1[i] + "</td>";
			for (var j=0; j<_Def2.length; j++) {
				content += "<td valign='top' width='25%' bgcolor='#FFFFFF' class='text'>" + _content[idx][i][j] + "</td>";
			}
			content += "</tr>";
		}
	}	

	result = header + content + "</table>";	
	return result;
}


// +++++++++++++++++++++++++++++++++++


