/////////////////////////////////////////////////////////
//
// dyn_grids.js  - JS required by product page grids
//
/////////////////////////////////////////////////////////
// 
// copyright 2002 web-engineer - www.web-engineer.co.uk
// last edit by C.Lawson 24.04.2003
//
/////////////////////////////////////////////////////////
//
/////////////////////////////////////////////////////////
//
//
var maxgridln = 5;

function drawsizegrid(dims){
	var grid = new Array();
	var i=0;
	var j=dims;
	var k=0;
	var label;
	var warn;
	var oldwarn;
	var warn2=0;
	var oldwarn2=0;
	document.write('<table cellspacing="0" cellpadding="0" border="0">');
	// iterate through the descriptors and if they are too long, stick them on the end
	// initialize grid

	for(i=dims; i<sizegrid.length; i++){
		label = sizegrid[i -dims];
		sizegrid[i]=sizegrid[i].replace(/([.]*)[#]*$/, "$1");
		grid[i-dims]=(label+'#'+sizegrid[i]).split('#');
	}

	// fix grid element lengths
	for(i=0; i<j; i++){
		if(grid[i].length > maxgridln+2){ // + 2 due to the label being attached
			//		if(gridIndex > maxgridln+2){ // + 2 due to the label being attached
			var namearray = Array(grid[i][0]);
			grid[j]=namearray.concat(grid[i].slice(maxgridln+1,grid[i].length)); // move the rest to the end!
			//grid.push('');
			grid[i]=grid[i].slice(0,maxgridln+1); // slice the former
			j=j+1;	// update the size of the grid
			warn2=1;
		} else warn2=0;
		
		oldwarn2=warn2;
	}
	
	// there may be some rows to shunt
	var rc = 0
	var move = Array();
	if(grid.length % 2 == 1){ 
		var maxlen = grid[0].length;
		for(i=1; i<grid.length; i++){
			if(grid[i].length>=maxlen){
				maxlen = grid[i].length;
			} else {
				
				for(j=0;j<grid.length;j++){
					if(grid[i][0]==grid[j][0]){
						rc++;
					}
				}
				if(rc==1){
					move[move.length] = grid[i];
					grid[i]='';
				}
			}
		}
	}
	var moddims = dims;
	var skipped = 0;
	if(move.length>0){
		for(i=0;i<move.length;i++){
			grid[grid.length]=move[i];
			moddims = dims-1;
		}
	}
	
	// Draw the grid
	for(i=0; i<grid.length; i++){
		if(grid[i]!=''){
			document.write('<tr><td class="small">'+grid[i][0]+'</td>');
			for(j=1; j<grid[i].length; j++){
				document.write('<td class="small" align="center">&nbsp;'+grid[i][j]+'&nbsp;</td>');
			}
			document.write('</tr>');
			if(i>0 && grid[i][0]!=grid[i-1][0]){
				if((i-skipped)%moddims==(moddims-1)){
					document.write('<tr><td colspan="'+(dims+1)+'"><img src="images/spacer.gif" width="1" height="5"/></td></tr>');
				}
			}
		} else {
			skipped++;
		}
	}
	document.write('</table>');
}

