function GetChilds(idx) {
	var arr = [];
	var node = gOpener.myFindex.ch[idx];
	if (node == -1) return arr;

	while (node != -1) {
		arr.push(node);
		node = gOpener.myFindex.nx[node]
	}
	return arr;
}

function CleanMerknaam(arg) {
	var re = new RegExp('[0-9]|[a-z]|[A-Z]', '')
	var newname = '';
	for (var i=0; i<arg.length; i++) {
		if (re.test(arg.charAt(i))) {
			newname += arg.charAt(i);
		}
	}
	return newname;
}

function GetMerkImage(merknaam) {
	return gOpener.gImgPath+'merken/zw/'+CleanMerknaam(merknaam)+'.jpg';
}
function GetMerkImageKleur(merknaam) {
	return gOpener.gImgPath+'merken/kleur/'+CleanMerknaam(merknaam)+'.jpg';
}

function Toggle(e,arg){
	var a = arg.src;
	if(e.type == 'mouseover'){
		a = a.replace(/\/zw\//i ,'/kleur/');
	}else if(e.type == 'mouseout'){
		a = a.replace(/\/kleur\//i ,'/zw/');			
	}
	arg.src = a;
}

function ShowMerk(arr) {
	var merkarr = [];
	for (var i in arr) {
		var merknaam = gOpener.gBoom.om[arr[i]];
		if (gOpener.myFindex.om[arr[i]] == '') continue;

		if (merknaam.toLowerCase().indexOf('chevrolet') != -1) {
			var tmparr = merknaam.split('/');
			merkarr.push([tmparr[0], arr[i]])
			merkarr.push([tmparr[1], arr[i]])
		} else {
			merkarr.push([merknaam, arr[i]])
		}		
	}
	merkarr.sort();
	var t = [];
	for (var i in merkarr) {
		t.push('<a href="javascript:;" onclick="LoadModel('+merkarr[i][1]+'); return false;">');
		t.push('<img src="'+GetMerkImage(merkarr[i][0])+'" onmouseover="Toggle(event,this); return false;" onmouseout="Toggle(event,this); return false;">');
		t.push('</a> ');
	}
	return t.join('');	
	/*
	var t = [];
	for (var i in arr) {
		var merknaam = gOpener.gBoom.om[arr[i]];
		if (gOpener.myFindex.om[arr[i]] == '') continue;
	
		if (merknaam.toLowerCase().indexOf('chevrolet') != -1) {
			var tmparr = merknaam.split('/');
			merknaam = tmparr[0];
			t.push('<a href="javascript:;" onclick="LoadModel('+arr[i]+'); return false">');
			t.push('<img src="'+GetMerkImage(merknaam)+'" onmouseover="Toggle(event,this);" onmouseout="Toggle(event,this);">');
			t.push('</a> ');
			merknaam = tmparr[1];
			t.push('<a href="javascript:;" onclick="LoadModel('+arr[i]+'); return false">');
			t.push('<img src="'+GetMerkImage(merknaam)+'" onmouseover="Toggle(event,this);" onmouseout="Toggle(event,this);">');
			t.push('</a> ');
		} else {
			t.push('<a href="javascript:;" onclick="LoadModel('+arr[i]+'); return false">');
			t.push('<img src="'+GetMerkImage(merknaam)+'" onmouseover="Toggle(event,this);" onmouseout="Toggle(event,this);">');
			t.push('</a> ');
		}
	}
	return t.join('');
	*/
}

function LoadModel(idx) {
	gOpener.ShowModel(idx);
}

function GetTableRow() {
	var t = [];
	var tdval = '';
	var styleModel='width:25%;';
	t.push('<tr style="vertical-align:top">');
	
	for (var i=0; i<arguments.length; i++) {
		tdval = arguments[i] == undefined ? '' : arguments[i];

		
		//styleModel= tdval==''?'background-color:red;':'background-image:url('+top.gImgPath+'model/modelCel.gif);background-repeat:no-repeat;padding-left:15px;';
		
		if (tdval == '') tdval = '&nbsp;';
		t.push('<td style="'+styleModel+'" class="col'+i+'">' + tdval + '</td>');
	}
	t.push('</tr>');
	return t.join('');
}

function GetModelTable (idx, arr) {
	var numcells = 4;
	var parentname = gOpener.gBoom.om[idx];
	var re = new RegExp(parentname, 'g');
	
	var newarr = [];
	var newidx = -1;
	var newname = oldname = '';
	for (var i in arr) {
		newname = gOpener.gBoom.om[arr[i]].replace(re, '');
		newname = gOpener.Trim(newname).substr(0, 4);
		if (newname != oldname) {
			newidx++;
			newarr[newidx] = [];
			oldname = newname;
		}
		newarr[newidx].push(arr[i]);
	}
	var numrows = Math.floor(newarr.length / numcells) + (newarr.length % numcells == 0 ? 0 : 1);

	var GetCellData = function (arg) {
		var cd = [];
		cd.push('<table style="width:100%" border="0" class="merk" cellspacing="0" cellpadding="0">');
		for (var j in arg) {
			oms = gOpener.gBoom.om[arg[j]];
			if (oms != undefined) {
				oms = oms.replace(re, '');
				if (cd.length > 0) 
				cd.push('<tr><td><img src="'+top.gImgPath+'/model/pijl.gif"></td><td><a class="merk" href="javascript:;" onclick="top.LoadSubTree('+arg[j]+')">'+oms+'</a></td></tr>');
				//cd.push(oms);
			}
			
		}
		cd.push('</table>');
		return cd.join('');
	}

	var t = [];
	t.push('<table class="merken" border="0" width="100%" cellspacing="5" cellpadding="0">');
	for (var i=0; i<numrows; i++) {
		var y = i * numcells;
		t.push(GetTableRow(GetCellData(newarr[y]), GetCellData(newarr[y+1]), GetCellData(newarr[y+2]), GetCellData(newarr[y+3])));
	}
	t.push('</table>');
	return t.join('');
}

function ShowModel(idx) {
	var arr = GetChilds(idx);
	var t = [];
	var omsch = '';

	var parentname = gOpener.gBoom.om[idx];

	t.push('<table class="merkheader">');
	t.push('<tr><td>');
	t.push('<img src="'+GetMerkImageKleur(parentname)+'">');
	//<span class="merkTitle">' + parentname + '</span><br>
	t.push('</td><td><span class="kiesModel">Kies model en bouwjaar:</span>');
	t.push('</td></tr>');
	t.push('<tr><td>&nbsp</td><td>');
	t.push('</td></tr>');
	t.push('</table>');


	t.push('<br/>');

	t.push(GetModelTable(idx, arr));

	t.push('<br/>');

	var linktext = 'Terug naar home'; // 'Terug naar merken' ?
	t.push('<div class="merkfooter"><a class="merk" href="javascript:;" onclick="gOpener.ShowMerk(); return false;">'+linktext+'</a></div>')
	return t.join('');
}


