/*appears once at the start of the content*/
var formheader='<div id="autocategorize"><form action="http://www.forespar.com/cgi-forespar/sb/order.cgi" method="post">';

/*appears once for every category*/
var catheader='<p class="txt-1"><span class="subHeadBlue bookmark" id="$bkid">$cat_title</span><br> $cat_text<br></p><img height="156" align="right" width="149" style="margin-left:5px; margin-top:0px; float:right;" src="$cat_image">';
/*no image version*/
var catheaderNoImage='<p class="txt-1"><span class="subHeadBlue bookmark" id="$bkid">$cat_title</span><br> $cat_text<br></p>';



/*appears once for every category just after catheader*/
var tablehead='<table cellspacing="0" cellpadding="1" border="0" bgcolor="#2e5c59" width="500">'+
'	<tbody>'+
'		<tr> '+
'			<td>'+
'				<table cellspacing="0" cellpadding="0" width="100%" class="newpad-bord3" style="border-bottom:none;">'+
'					<tbody>'+
'						<tr valign="top" class="tableHead"> '+
'							<td align="left" valign="top" width="5%" class="newpad-bord4"><p class="wht-txt1">&nbsp;</p></td>'+
'							<td align="left" valign="top" width="10%" class="newpad-bord4"><p class="wht-txt1">Qty</p></td>'+
'							<td align="left" valign="top" width="15%" class="newpad-bord4"><p class="wht-txt1">Part No</p></td>'+
'							<td align="left" valign="top" width="55%" class="newpad-bord4"> <p class="wht-txt1">Product</p></td>'+
'							<td align="left" valign="top" width="15%" class="newpad-bord4"><p class="wht-txt1">Price</p></td>'+
'						</tr>';

/*appears multiple times in each category, once for every product*/
var tablerow='<tr class="tableBody"> '+
'							<td align="left" valign="top" width="5%" class="newpad-bord7"><p class="wht-txt1"><input type=checkbox name="itemnum" value="$recordnumber"></p></td>'+
'							<td align="left" valign="top" width="10%" class="newpad-bord7"><p class="wht-txt1"><input type=text size=2 name="$recordnumber:qnty" value="0"></p></td>'+
'							<td align="left" valign="top" width="15%" class="newpad-bord7"><p class="wht-txt1">$sku</p></td>'+
'							<td align="left" valign="top" width="55%" class="newpad-bord7"><p class="wht-txt1">$name</p></td>'+
'							<td align="left" valign="top" width="15%" class="newpad-bord7"> <p class="wht-txt1"><strong>$price</strong></p></td>'+
'						</tr>';

/*appears once for every category after the last product*/
var tablefooter='</tbody>'+
'				</table>'+
'			</td>'+
'		</tr>'+
'	</tbody>'+
'</table><div style="clear:both"><BR></div>';

/*appears once after the last category*/
var formfooter='<input type=hidden name=storeid value=*188e9195c2fe85168171bf36400f>'+
'                                        <input type=hidden name=dbname value=products>'+
'                                        <input type=hidden name=function value=add>'+
'										<input type="submit" value="Add To Cart" class="sub-newbtn1"></form></div>';



/*appears as a link to scroll down to each category, inserted in the "bkdiv" div*/
var bookmarktag='<span class="bookmark_link" id="bkl$counter">$cat</span>';


/*--------------------------------------------------------------------------------*/
var categories=new Array();

$(function() {
	var c="";
	var bk="";

	var allData=$('#autocategorize-data').html();
	if (allData.match(/^<\!--/)) {allData=""};
	var allDataLines=allData.split(/ *::[\r\n]* */);
	var allCategories=allDataLines[0].split(/ *\| */);
	var allImages=allDataLines[1].split(/ *\| */);
	var allDescriptions=allDataLines[2].split(/ *\| */);

	for (i=0;i<allCategories.length;i++) {
		var category=allCategories[i];
		categories[category]=new Array();
		categories[category]['desc']="";
		categories[category]['desc']=allDescriptions[i];
		categories[category]['image']="";
		categories[category]['image']=allImages[i];
	}

	$('#autocategorize_data > table > tbody > tr').each(function() {
		var id=$(this).find('.recordnumber').html();
		var sku=$(this).find('.sku').html();
		sku=sku.substring(0,6);
		var model=$(this).find('.model').html();
		var price=$(this).find('.price').html();
		var productCategories=$(this).find('.category').html();
		var category="";
		var catList=productCategories.split(/ *\| */);
		for (i=0;i<catList.length;i++) {
			var cat1=catList[i].toUpperCase();
			for (j=0;j<allCategories.length;j++) {
				cat2=allCategories[j].toUpperCase();
				if (cat1==cat2) {category=catList[i];break}
			}
			if (category) {break}
		}
		if (!category) {return}
		if (categories[category]['data']===undefined) {categories[category]['data']=new Array()};
		categories[category]['data'][id]=new Array();
		categories[category]['data'][id]['sku']=sku;
		categories[category]['data'][id]['price']=price;
		categories[category]['data'][id]['model']=model;
	});



	var allcats=getKeys(categories);
	//alert(allcats);
	for (i in allcats) {
		var cat=allcats[i];
		var counter=i;
		if (!cat.match(/Empty field/i)) {
			var icatheader=catheader;
			var list=new Array();
			if (categories[cat]['image']===undefined) {categories[cat]['image']=""};
			if (categories[cat]['desc']===undefined) {categories[cat]['desc']=""};
			if (!categories[cat]['image'].match(/\.gif|\.jpg|\.jpeg|\.png/i)) {icatheader=catheaderNoImage};
			icatheader=icatheader.replace(/\$cat_title/g,cat);
			icatheader=icatheader.replace(/\$bkid/g,"bk"+counter);
			icatheader=icatheader.replace('\$cat_image',categories[cat]['image']);
			icatheader=icatheader.replace('\$cat_text',categories[cat]['desc']);
			c+=icatheader+tablehead;

			var allrows=getKeys(categories[cat]['data'],1);
			for (j in allrows) {
				var id=allrows[j];
				var sku=categories[cat]['data'][id]['sku'];
				var price=categories[cat]['data'][id]['price'];
				var model=categories[cat]['data'][id]['model'];
				var itr=tablerow;
				itr=itr.replace('\$sku',sku);
				itr=itr.replace('\$name',model);
				itr=itr.replace('\$price',price);
				itr=itr.replace(/\$recordnumber/g,id);
				c+=itr;
			}
			c+=tablefooter;
		}

		/*set bookmarks*/
		var ibookmarktag=bookmarktag;
		ibookmarktag=ibookmarktag.replace('$counter',counter);
		ibookmarktag=ibookmarktag.replace('$cat',cat);
		bk+=ibookmarktag;

	}
	$('#autocategorize_data').hide().before(formheader+c+formfooter);
	$('#autocategorize table tbody tr td p').css('text-align','left');
	$('#bkdiv').html(bk);

	$('#bkdiv .bookmark_link').click(function() {
		var text=$(this).attr('id');
		text=text.replace('bkl','bk');
		$('#'+text).autoscroll(500);
	});

	$.fn.autoscroll = function(speed) {
		$('html,body').animate(
		{
		scrollLeft: this.offset().left,
		scrollTop: this.offset().top
		},
		speed
		);
		return this;
	};

	$('.txtarea-bg4').hide();
	var h=$('.txtarea-bg1').height();
	$('.txtarea-bg4').height(h);
	$('.txtarea-bg4').show();
});

function getKeys(a,sortBoolean) {
	/*IN a hash array, 1 to sort*/
	/*OUT a sorted list of keys*/
	var result=new Array();
	for (i in a) {result.push(i)};
	if (sortBoolean) {return result.sort()} else {return result};
}


