var sets_per_row=3;
var page=1;
var defMetal="18K White gold";
var disp_data=[];
var num_of_pages;
var cur_page;
var ShowPrice='1';
var ShowShapes='1';

/*********************************************/
function Show_Set(set_id,set_name,strPrice,pic,jm,shapes,shape_name_list,has_video,discount,strFinalPrice)
{
var shape_ids,shape_names;

var set_html='<td align="center" width="170" height="100%" valign="top" bgColor="white" class="mainBorder">';
set_html+='<table height="100%" border="0" cellpadding="0" cellspacing="0">';
set_html+='<tr><td valign="top">';
set_html+='<table border="0" cellpadding="0" cellspacing="0"><tr><td align="center" width="170">';
set_html+='<img src="../images/Jewels/New/' + pic + '" class="jewel_imageNew" alt="' + set_name + '"/><br/>';
set_html+='<a href=\'javascript:openModalImage_ff(' + set_id + ', "' + set_name + '")\' class="w1">Click for more pictures</a>';
if(has_video=='Y')
	set_html+='<br/><br/><a href=\'../diamond_jewelry/Jewel_Video.asp?jewel_id=' + set_id + '\' class="w1"><img src="../images/playvideo.jpg" border="0"/>View 3d Video</a>';
set_html+='</td></tr>';
if(ShowPrice=='1')
	{
	set_html+='<tr><td align="center" width="170" style="padding-top:10px;padding-bottom:1px;"><font class="w1"><b>' + defMetal + ' settings price:<br/>';
	if(discount!=0 && discount!='')
		set_html+='<strike>' + strPrice + '</strike><br/>' + strFinalPrice + '</b></font><p/></td></tr>';
	else
		set_html+= strPrice + '</b></font><p/></td></tr>';
	}
set_html+='<tr><td align="center" width="170" height="45" valign="top">';
set_html+='<font class="w1">' + set_name + '</font>';
set_html+='</td></tr>';
set_html+='</table></td></tr>';
set_html+='<tr><td valign="bottom">';
set_html+='<table border="0" cellpadding="0" cellspacing="0">';

set_html+='<tr><td align="center" width="170">';
if(ShowShapes=='1')
	{
		//Display shapes
		set_html+='<div class="bordered_div" style="padding-bottom:2px;"><font class="w1"><b>Click on shape to continue</b></font><br/>';
		shape_ids=shapes.split(",")
		shape_names=shape_name_list.split(",")
		for(i=0;i<shape_ids.length;i++)
			{
				set_html+='<div class="smallButton"><a href=javascript:shapeSelected(' + set_id + ',' + shape_ids[i] + ',' + jm + ')>';
				set_html+='<img src="../images/images-icons/' + shape_names[i] + '_off.gif" border="0" class="shape_iconNew"';
				set_html+=' onmouseover=this.className="shape_iconNew2" onmouseout=this.className="shape_iconNew"';
				set_html+=' alt="' + shape_names[i] + ' - Click to continue"/></a></div>';
			}
		set_html+='</div>';
	}
else
	set_html+='<a href=javascript:settingsSelected(' + set_id + ',' + jm + ') class=w1><b>Continue</b></a>';
//close table
set_html+='<p/></td></tr></table></td></tr><tr><td></td></tr></table></td>';
return set_html;
}
/******************************************************************************/
function sort_by_price(data_array,order)
{
var i,j,k,l;
var tmp;

for(j=data_array.length;j>0;j--)
	{
		for(i=0;i<j-1;i++)
		{
			if(order=="asc")
			{
				if(parseInt(data_array[i][4])>parseInt(data_array[i+1][4]))
					{
						tmp=data_array[i];
						data_array[i]=data_array[i+1];
						data_array[i+1]=tmp;
					}
			}
			else
			{
				if(parseInt(data_array[i])<parseInt(data_array[i+1]))
					{
						tmp=data_array[i];
						data_array[i]=data_array[i+1];
						data_array[i+1]=tmp;
					}
			}
		}
	}
return(data_array);
}
/*********************************************/
function pageSelected(pageN)
{
	setCookie('strPageNumber',pageN.toString());

	cur_page=pageN;

	XMLtoHTML("showHtml");

	window.scrollTo(0,10); // horizontal and vertical scroll targets
}
/*********************************************/	
function menuSelected(strMainTitle, strSubTitle, strFilterValue, strSortValue)
{
	//select first page
	setCookie('strPageNumber','1');
	//document.getElementById('strPageNumber').value="1";
	//display menu selection
	initDisplay(strMainTitle, strSubTitle, strFilterValue, strSortValue)
}
/******************************************************************************/
function num_in_list(num,num_list)
{
var results;
if(num_list.indexOf(',')>-1) //num_list is array
	{
		var list_vals=num_list.split(',');
		results=false;
		for(var i=0;i<list_vals.length;i++)
			{
				if(parseInt(num)==parseInt(list_vals[i]))
					results=true;
			}
	}
else //num_list is 1 number
	{
		if(parseInt(num)==parseInt(num_list))
			results=true;
		else
			results=false;
	}

return results;
}
/******************************************************************************/
function pagingXML(res_data,strQuery)
{
	var PageNode,atPageN;
	var objNodeList;
	var sel_fld,sel_val;
	var i,j;
	var pn=1;
	var num_in_page=0;
	var page_size=9;

	disp_data[pn]=new Array();

	if(strQuery.indexOf("tid")>-1)
		sel_fld=1;  //type_id
	if(strQuery.indexOf("fid")>-1) 
		sel_fld=2;  //father_id;
	
	var tmp=strQuery.split("=");
	
	var sel_vals="";
	
	for(i=1;i<=tmp.length-1;i++)
		sel_vals+=(parseInt(tmp[i])) + ',';

	sel_vals=sel_vals.substr(0,sel_vals.length-1);

	//sel_val=parseInt(tmp[1]);

	for(i=0;i<res_data.length;i++)
	{
		if(num_in_list(res_data[i][sel_fld],sel_vals))
		//if(res_data[i][sel_fld]==sel_val)
		{
			disp_data[pn][num_in_page]=res_data[i];

			num_in_page+=1;
			if(num_in_page==page_size)
				{
					pn+=1;
					disp_data[pn]=new Array();
					num_in_page=0;
				}
		}
	}

	num_of_pages=pn;
}
/******************************************************************************/
function XMLtoHTML(strHTMLtargetId)
{
var set_id,set_name,strPrice,pic,jm,shapes,shape_names,has_video;
var set_in_page=0;
var set_in_row=1;
var i;

var HTMLoutput='<table cellpadding="0" class="w1" border="0" cellspacing="10">';
HTMLoutput+='<tr>';
if(num_of_pages>1)
	{
		HTMLoutput+='<td align="center">';

		if(cur_page>1)
			{
				HTMLoutput+='<a class="Paging" href="javascript:pageSelected(' + (parseInt(cur_page)-1) + ')">';
				HTMLoutput+='<img src="../images/back_xsl.gif" border="0"/>';
				HTMLoutput+='</a>';
			}
		else
			HTMLoutput+='<img src="../images/back_xsl_off.gif" border="0"/>';
		HTMLoutput+='</td>';
	}

HTMLoutput+='<td align="center"><span style="width:200px;">';
HTMLoutput+='<table cellpadding="0" class="w1" border="0" cellspacing="10">';
HTMLoutput+='<tr><td align="center">Page </td>';
HTMLoutput+='<td align="center"><b style="font-size:10pt;">' + cur_page + '</b></td><td align="center">Of </td>';
HTMLoutput+='<td align="center"><b style="font-size:10pt;">' + num_of_pages + '</b></td></tr></table></span></td>';

if(num_of_pages>1)
	{
		HTMLoutput+='<td align="center">';

		if(cur_page<num_of_pages)
			{
				HTMLoutput+='<a class="Paging" href="javascript:pageSelected(' + (parseInt(cur_page) + 1) + ')">';
				HTMLoutput+='<img src="../images/next_xsl.gif" border="0"/>';
				HTMLoutput+='</a>';
			}
		else
			HTMLoutput+='<img src="../images/next_xsl_off.gif" border="0"/>';
		HTMLoutput+='</td>';
	}

HTMLoutput+='</tr>';				
				
HTMLoutput+='<tr><td width="100%" align="center" colspan="8"><b>Click diamond shape icon to continue</b></td></tr></table>';
				
HTMLoutput+='<span style="height:720px;">';
HTMLoutput+='<table cellpadding="3" width="520" cellspacing="1" border="0">';	
HTMLoutput+='<tr>';

for(var i=0;i<disp_data[cur_page].length;i++)
{
	set_id=disp_data[cur_page][set_in_page][0];
	set_name=disp_data[cur_page][set_in_page][3];
	strPrice=disp_data[cur_page][set_in_page][5];
	jm=disp_data[cur_page][set_in_page][6];
	pic=disp_data[cur_page][set_in_page][7];
	shapes=disp_data[cur_page][set_in_page][8];
	shape_names=disp_data[cur_page][set_in_page][9];
	has_video=disp_data[cur_page][set_in_page][10];
	set_discount=disp_data[cur_page][set_in_page][11];

	if(parseInt(set_discount)>0)
		s_FinalPrice=disp_data[cur_page][set_in_page][12];
	else
		s_FinalPrice=strPrice;
	HTMLoutput+=Show_Set(set_id,set_name,strPrice,pic,jm,shapes,shape_names,has_video,set_discount,s_FinalPrice);
	set_in_page++;
	set_in_row++;

	if(set_in_row>sets_per_row)
		{
			HTMLoutput+='</tr><tr>';
			set_in_row=1;
		}
}

HTMLoutput+='</tr></table></span>';

//display page numbers
HTMLoutput+='<table cellpadding="0" class="w1" border="0" cellspacing="10"><tr><td align="center">Select page:</td>';

if(num_of_pages>1)
	{
		HTMLoutput+='<td align="center">';

		if(cur_page>1)
			HTMLoutput+='<a class="Paging" href="javascript:pageSelected(' + (parseInt(cur_page) -1) + ')"> << </a>';
		else
			HTMLoutput+='<<';	

		HTMLoutput+='</td>';	
	}
HTMLoutput+='<td align="center">';	
for(i=1;i<=num_of_pages;i++)
	{
		if(cur_page!=i)
			HTMLoutput+='<a class="Paging" href="javascript:pageSelected(' + i + ')">' + i + '</a>&#160;&#160;';
		else
			HTMLoutput+='<b style="font-size:10pt;">' + i + '</b>&#160;&#160;';
		
		if(i%15==0)HTMLoutput+='<br/>';
	}
HTMLoutput+='</td>';	
if(num_of_pages>1)
	{
		HTMLoutput+='<td align="center">';

		if(cur_page<num_of_pages)
			HTMLoutput+='<a class="Paging" href="javascript:pageSelected(' + (parseInt(cur_page)+1) + ')"> >> </a>';
		else
			HTMLoutput+='>>';

		HTMLoutput+='</td>';
	}
HTMLoutput+='</tr></table>';

document.getElementById(strHTMLtargetId).innerHTML=HTMLoutput;
}
/******************************************************************************/
function initDisplay(strMainTitle, strSubTitle, strFilterValue, strSortValue)
{	
	var strPageTitle = "<b>" + strMainTitle + " :: </b>" + strSubTitle 
	setCookie('strMainTitle',strMainTitle);
	setCookie('strSubTitle',strSubTitle);
	setCookie('strFilterValue',strFilterValue);
	setCookie('strSortValue',strSortValue);

	document.getElementById('mainTitle').innerHTML = strPageTitle;

	//sorting parameter
	var sort_order;
	//setXSLParameter(oXSLTProcessor_sort,'sort', strSortValue);	
	if(strFilterValue=='@tid=114') // change sort order for solitaire pendants
		sort_order="desc";
   else
        sort_order="asc";

	//sort xml
	//tXML = getSortedXML(oXSLTProcessor_sort, "strXML");
	res_data=sort_by_price(res_data,sort_order);

	var page_url=document.location.href.toLowerCase();

	if(page_url.indexOf("match_jewelry_ff.asp")>0)
		is_design=1;
	else
		is_design=0;
	//display filter
	var FilterValue= strFilterValue;
	if(FilterValue=="@tid=42" || FilterValue=="@tid=69" || FilterValue=="@tid=95")
		FilterValue+= "] | //SET[@tid=127";
	if(FilterValue=="@tid=115")
		FilterValue+= "] | //SET[@tid=44] | //SET[@tid=48";
	//price filter
	if(FilterValue=="@tid=20" || FilterValue=="@tid=60" || FilterValue=="@tid=123" || FilterValue=="@tid=142" || FilterValue=="@tid=143" || is_design==1) //wedding, cocktail, or fashion rings, necklaces, gem stones earring studs
		ShowPrice='1';
	else
		ShowPrice='0';
	//shapes filter
	if(page_url.indexOf("did=")>0)
		ShowShapes=0;
	else
		ShowShapes=1;
	pagingXML(res_data,FilterValue);

	cur_page=getCookie('strPageNumber');

	XMLtoHTML("showHtml");
}
