var initr='<TR CLASS=trb OnMouseOver="row_on(this);" OnMouseOut="row_off(this);" id="d_tr_';
var initr_b = '<TR CLASS=trb OnMouseOver="row_on(this);" OnMouseOut="row_off(this,\'#E5E9EE\');" id="d_tr_';
var initr_w = '<TR CLASS=trw OnMouseOver="row_on(this);" OnMouseOut="row_off(this,\'#FFFFFF\');" id="d_tr_';
var innk = '<a target="_self" href="javascript:void(detail(\'';
var innkimg = '\'))">选择</a></TD></TR>'; 
var inidiv='<div id="insert_here"></div>';


var HTout;
var isload=false;
var isfilter=true;
var pindex=0;
var inipre='<TABLE ID="dl_data" WIDTH="100%" BORDER=0 CELLSPACING=0 cellpadding=0  style="table-layout:fixed;">'
			+'<TR height=0><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=70></TD><TD WIDTH=50></TD><TD WIDTH=50></TD></TR>'

var GTout=2;
var TOTALLENGTH=248;
var PREXLENGTH=12; 
var plength=200;
var sPage;
var is_iframe=false;
var numtotal=0;
function inide(id,pos,cut,color,clarity,ct,lwratio,lab,dprice,compare,polish,symetry)
{
	this.pid=id;
	this.pos=pos; 
	this.cut = cut;//'爱尼德<br>签注';
	this.color=color; 
	this.clarity=clarity;
	this.carat=ct; 
	this.disp_carat=toFixed(ct); 
	this.polsym=polish+'/'+symetry; 
	this.lwratio=toFixed(lwratio); 
	this.report=lab; 
	this.price=dprice;
	this.disp_price=formatNumber(dprice,'##,###');
	this.filter_cut=false;
	this.filter_color=false;
	this.filter_clarity=false;
	this.filter_ct=false;
	this.filter_price=false;
	this.filtered=false;
	this.checked=compare; 
	this.tr=null;
	
	DoArr[pos]=this;
	numtotal++;
	 
}
var DoArr=new Array();
var DcArr=new Array();
var DsArr=new Array();

inide.prototype.draw_data = function()
{
	var s='';
	var initr=(this.pos % 2 == 1) ? initr_b : initr_w; 
	s=initr+this.pid+'"><TD>'+this.cut+'</td><td>'+this.color+'</td><td>'
		+this.clarity+'</td><td>'+this.disp_carat+'</td><td>';
		
 
	{
		s+=this.polsym;
	}
	s+='</td><td>'+this.report+'</td><td>'+this.disp_price+'</td><td>';
	
	var checked=(this.checked == 1) ? ' CHECKED' : ''; 
	s+=	'<INPUT TYPE=checkbox  OnClick="DsArr['+this.pos+'].checked=this.checked;" STYLE="cursor:auto" VALUE='
		+this.pid+checked+'>'+'</td><td align="center">';
	s+=innk+this.pid+innkimg;
	return s;
};



																				
function mp() 
{
	clearTimeout(HTout);
	var els = document.all.loading_status;
	var esf = document.all.status_fill;
	var ese = document.all.status_empty;
	var pc=document.all.load_percent;
	var ddata=document.all.datadiv;
	
	if(!isload)
	{
		if(pindex<sPage-1)
		{
			esf.style.width = parseInt((pindex+1)*100/sPage)+'%';
			ese.style.width = parseInt((sPage-1-pindex)*100/sPage)+ '%';
		}
		
		pc.innerHTML='...完成'+esf.style.width+'...';
		//alert(pc.innerHTML);
		loadData();
		//alert(pc.innerHTML);
		var tdiv=document.createElement("<div>");
		tdiv.innerHTML=inipre+DcArr.join(' ')+'</table>';
		ddata.insertBefore(tdiv,document.all.insert_here);
		
		pindex++;
		HTout=setTimeout("mp()",GTout);
	}
	else
	{
		els.style.display='none';
		esf.style.width='0%';
		ese.style.width='100%';
		
	}
	
}



function loadData()
{
	DcArr.length=0;
	var ftotal=DsArr.length;
	var rows=Math.ceil(ftotal/sPage);
	 
	if(pindex*rows>ftotal || ftotal==0)
	{
		isload=true;
		return;
	}
	
	var j=0;
	for(var i=pindex*rows;i<ftotal && i<(pindex+1)*rows;++i)
	{
		DcArr[j]=DsArr[i].draw_data();
		++j;
	}
	
}



function inidycut()
{
	fi_Pause(this,GTout);
	this.NextStep=function()
	{
		clear_data();
		var count=0;
		for(var i=0;i<numtotal;++i)
		{
			var b=DoArr[i].filter_color || DoArr[i].filter_clarity || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				var b1=false;
				for(var j=0;j<a_cut.length;++j)
				{
					if(a_cut[j]==DoArr[i].cut) 
					{
						b1=true;
						break;
					}
				}
				if(b1)
				{
					DoArr[i].filter_cut=true;
					DoArr[i].filtered=true;
				}
				else
				{
					DoArr[i].filter_cut=false;
					DoArr[i].filtered=false;
				}
			}
			if(!DoArr[i].filtered) 
			{
				DsArr[count]=DoArr[i];
				DsArr[count].pos=count;
				count++;
			}
		}
		reset_loadingstatus();
		HTout=setTimeout("mp()",GTout);
	}
}


function fd_color()
{
	fi_Pause(this,GTout);
	this.NextStep=function()
	{
		clear_data();
		var count=0;
		for(var i=0;i<numtotal;++i)
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_clarity || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				var b1=false;
				for(var j=0;j<a_color.length;++j)
				{
					if(a_color[j]==DoArr[i].color) 
					{
						b1=true;
						break;
					}
				}
				if(b1)
				{
					DoArr[i].filter_color=true;
					DoArr[i].filtered=true;
				}
				else
				{
					DoArr[i].filter_color=false;
					DoArr[i].filtered=false;
				}
			}
			if(!DoArr[i].filtered) 
			{
				DsArr[count]=DoArr[i];
				DsArr[count].pos=count;
				count++;
			}
		}
		reset_loadingstatus();
		HTout=setTimeout("mp()",GTout);
	}
}


function fd_clarity()
{
	fi_Pause(this,GTout);
	this.NextStep=function()
	{
		clear_data();
		var count=0;
		for(var i=0;i<numtotal;++i)
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_color || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				var b1=false;
				for(var j=0;j<a_clarity.length;++j)
				{
					if(a_clarity[j]==DoArr[i].clarity) 
					{
						b1=true;
						break;
					}
				}
				if(b1)
				{
					DoArr[i].filter_clarity=true;
					DoArr[i].filtered=true;
				}
				else
				{
					DoArr[i].filter_clarity=false;
					DoArr[i].filtered=false;
				}
			}
			if(!DoArr[i].filtered) 
			{
				DsArr[count]=DoArr[i];
				DsArr[count].pos=count;
				count++;
			}
		}
		reset_loadingstatus();
		HTout=setTimeout("mp()",GTout);
	}
}

function detail(pid)
{
 
		window.open('/goodsinfo-'+pid+'-12.html');
		 
}
 

function sortlist(field,d)
{
	clearTimeout(HTout);
	document.all.datadiv.innerHTML=inidiv;
	
	pindex=0; 
	switch(field)
	{
		case "ct":
			if(d=="up")
			{
				quicksortct(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortctd(DsArr,0,DsArr.length-1);
			}
			break;
		case "color":
			if(d=="up")
			{
				quicksortcolor(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortcolord(DsArr,0,DsArr.length-1);
			}
			break;
		case "clarity":
			if(d=="up")
			{
				quicksortclarity(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortclarity(DsArr,0,DsArr.length-1);
			}
			break;
		case "cut":
			if(d=="up")
			{
				quicksortcut(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortcutd(DsArr,0,DsArr.length-1);
			}
			break;
		case "dprice":
			if(d=="up")
			{
				quicksortprice(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortpriced(DsArr,0,DsArr.length-1);
			}
			break;
		case "lwratio":
			if(d=="up")
			{
				quicksortlwratio(DsArr,0,DsArr.length-1);
			}
			else
			{
				quicksortlwratiod(DsArr,0,DsArr.length-1);
			}
			break;
		
	}
	
	
	
	var count=DsArr.length;
	for(var i=0;i<count;++i)
	{
		DsArr[i].pos=i;
	} 
	isload=false;
	document.all.loading_status.style.display='';
	HTout=setTimeout("mp()",GTout);
}

function row_on(row) 
{
	row.setAttribute("initcolor",row.style.backgroundColor);
	row.style.backgroundColor='#B7C3CF';
	row.style.color='#000000';
	row.style.cursor='hand';
}

function row_off(row) 
{
	row.style.backgroundColor=row.getAttribute("initcolor");
	row.style.color='#555555';
}

function dprice_asc(a,b) 
{
	return a.price - b.price; 
}

function dprice_desc(a,b) 
{ 
	return b.price - a.price; 
}

function ct_asc(a,b) 
{ 
	return a.carat - b.carat; 
}

function ct_desc(a,b) 
{
	return b.carat - a.carat; 
}

function lw_ratio_asc(a,b)
{
	return a.lwratio - b.lwratio; 
}

function lw_ratio_desc(a,b) 
{
	return b.lwratio - a.lwratio; 
}

function num_asc(a,b)
{
	return a-b;
}

var clarityRef = ' SI2 SI1 VS2 VS1 VVS2 VVS1 IF FL ';
function clarity_asc(a,b) 
{
	return clarityRef.indexOf(' '+a.clarity+' ') - clarityRef.indexOf(' '+b.clarity+' '); 
}

function clarity_desc(a,b) 
{
	return clarityRef.indexOf(' '+b.clarity+' ') - clarityRef.indexOf(' '+a.clarity+' '); 
}

var cutRef = 'FA GD VG ID';
function cut_asc(a,b) 
{
	return cutRef.indexOf(a.cut) - cutRef.indexOf(b.cut); 
}

function cut_desc(a,b) 
{ 
	return cutRef.indexOf(b.cut) - cutRef.indexOf(a.cut); 
}

var colorRef = 'PONMLKJIHGFED';
function color_asc(a,b) 
{ 
	return colorRef.indexOf(a.color) - colorRef.indexOf(b.color); 
}
function color_desc(a,b)
{ 
	return colorRef.indexOf(b.color) - colorRef.indexOf(a.color);
}


function toFixed(fixNum) 
{
	fixNum = fixNum.toString();
	if (fixNum.length == 1)
	{
		fixNum = fixNum + '.00';
	}
	else if (fixNum.substr(fixNum.indexOf('.')+1,2).length < 2) 
	{
		fixNum = fixNum + '0';
	}
	return fixNum;
}

function toCurr(currNum) 
{
	if(!currNum) return '';
	currNum = currNum.toString();
	if (currNum.length > 3) 
	{
		currNum = currNum.substr(0,currNum.length-3) + ',' + currNum.substr(currNum.length-3,3);
	}
	return currNum;
}

//////////////////////////////////////////////////////////////////////////


var limg_cut;
var rimg_cut;
var limg_color;
var rimg_color;
var limg_clarity;
var rimg_clarity;
var limg_ct;
var rimg_ct;
var limg_price;
var rimg_price;

var s_cut=',FA,GD,VG,ID,';
var s_color=',J,I,M,G,F,E,D,';
var s_clarity=',SI2,SI1,VS2,VS1,VVS2,VVS1,IF,FL,';
var s_ct='';
var s_price='';

var a_cut=new Array();
var a_color=new Array();
var a_clarity=new Array();


function setcutcondition()
{
	var l=parseInt(document.all.cut_left_arrow.style.width);
	var m=parseInt(document.all.cut_mid_arrow.style.width);
	var r=parseInt(document.all.cut_right_arrow.style.width);
	
	a_cut.length=0;
	if(l>TOTALLENGTH/8-8) a_cut.push('F');
	if(l>TOTALLENGTH*3/8-PREXLENGTH) a_cut.push('G');
	if(l>TOTALLENGTH*4/8-PREXLENGTH) a_cut.push('GD');
	if(l>TOTALLENGTH*5/8-PREXLENGTH) a_cut.push('VG');
	if(l>TOTALLENGTH*7/8-PREXLENGTH) a_cut.push('EX');
	if(r>TOTALLENGTH/8+8) a_cut.push('ID');
	if(r>TOTALLENGTH*3/8+8) a_cut.push('EX');
	if(r>TOTALLENGTH*5/8+8) a_cut.push('VG');
	if(r>TOTALLENGTH*6/8) a_cut.push('GD');
	if(r>TOTALLENGTH*7/8) a_cut.push('G');
	

	
	document.all.cut_fa.className='active_td';
	document.all.cut_gd.className='active_td';
	document.all.cut_vg.className='active_td';
	document.all.cut_ex.className='active_td';
	document.all.cut_id.className='active_td';
	
	document.all.chk_cut_fa.checked=true;
	document.all.chk_cut_gd.checked=true;
	document.all.chk_cut_vg.checked=true;
	document.all.chk_cut_ex.checked=true;
	document.all.chk_cut_id.checked=true;
	
	
	
	for(var i=0;i<a_cut.length;++i)
	{
		if(a_cut[i]=='F')
		{
			document.all.cut_fa.className='inactive_td';
			document.all.chk_cut_fa.checked=false;
		}
		else if(a_cut[i]=='G') 
		{
			document.all.cut_gd.className='inactive_td';
			document.all.chk_cut_gd.checked=false;
		}
		else if(a_cut[i]=='VG') 
		{
			document.all.cut_vg.className='inactive_td';
			document.all.chk_cut_vg.checked=false;
		}
		else if(a_cut[i]=='EX')
		{
			document.all.cut_ex.className='inactive_td';
			document.all.chk_cut_ex.checked=false;
		}
		else if(a_cut[i]=='ID') 
		{
			document.all.cut_id.className='inactive_td';
			document.all.chk_cut_id.checked=false;
		}
	}
	
	
}

function setcorcondition()
{
	
	var l=parseInt(document.all.color_left_arrow.style.width);
	var m=parseInt(document.all.color_mid_arrow.style.width);
	var r=parseInt(document.all.color_right_arrow.style.width);
	a_color.length=0;
	if(l>TOTALLENGTH/12-2) a_color.push('J');
	if(l>TOTALLENGTH*3/12-6) a_color.push('I');
	if(l>TOTALLENGTH*5/12-6) a_color.push('H');
	if(l>TOTALLENGTH*7/12-PREXLENGTH) a_color.push('G');
	if(l>TOTALLENGTH*9/12-PREXLENGTH) a_color.push('F');
	if(l>TOTALLENGTH*11/12-PREXLENGTH) a_color.push('E');
	if(r>TOTALLENGTH*1/12+12) a_color.push('D');
	if(r>TOTALLENGTH*3/12+8) a_color.push('E');
	if(r>TOTALLENGTH*5/12+8) a_color.push('F');
	if(r>TOTALLENGTH*7/12+6) a_color.push('G');
	if(r>TOTALLENGTH*9/12+4) a_color.push('H');
	if(r>TOTALLENGTH*11/12) a_color.push('I');
	
	document.all.color_j.className='active_td';
	document.all.color_i.className='active_td';
	document.all.color_h.className='active_td';
	document.all.color_g.className='active_td';
	document.all.color_f.className='active_td';
	document.all.color_e.className='active_td';
	document.all.color_d.className='active_td';
	
	document.all.chk_color_j.checked=true;
	document.all.chk_color_i.checked=true;
	document.all.chk_color_h.checked=true;
	document.all.chk_color_g.checked=true;
	document.all.chk_color_f.checked=true;
	document.all.chk_color_e.checked=true;
	document.all.chk_color_d.checked=true;
	
	for(var i=0;i<a_color.length;++i)
	{
		if(a_color[i]=='J')
		{
			document.all.color_j.className='inactive_td';
			document.all.chk_color_j.checked=false;
		}
		else if(a_color[i]=='I') 
		{
			document.all.color_i.className='inactive_td';
			document.all.chk_color_i.checked=false;
		}
		else if(a_color[i]=='H') 
		{
			document.all.color_h.className='inactive_td';
			document.all.chk_color_h.checked=false;
		}
		else if(a_color[i]=='G')
		{
			document.all.color_g.className='inactive_td';
			document.all.chk_color_g.checked=false;
		}
		else if(a_color[i]=='F') 
		{
			document.all.color_f.className='inactive_td';
			document.all.chk_color_f.checked=false;
		}
		else if(a_color[i]=='E') 
		{
			document.all.color_e.className='inactive_td';
			document.all.chk_color_e.checked=false;
		}
		else if(a_color[i]=='D') 
		{
			document.all.color_d.className='inactive_td';
			document.all.chk_color_d.checked=false;
		}
	}
	
	

}

function setclarityction()
{
	
	var l=parseInt(document.all.clarity_left_arrow.style.width);
	var m=parseInt(document.all.clarity_mid_arrow.style.width);
	var r=parseInt(document.all.clarity_right_arrow.style.width);
	
	a_clarity.length=0;
	if(l>TOTALLENGTH/14) a_clarity.push('SI2');
	if(l>TOTALLENGTH*3/14) a_clarity.push('SI1');
	if(l>TOTALLENGTH*5/14) a_clarity.push('VS2');
	if(l>TOTALLENGTH*7/14) a_clarity.push('VS1');
	if(l>TOTALLENGTH*9/14) a_clarity.push('VVS2');
	if(l>TOTALLENGTH*11/14) a_clarity.push('VVS1');
	if(l>TOTALLENGTH*13/14) a_clarity.push('IF');
	if(r>TOTALLENGTH/14+10) a_clarity.push('FL');
	if(r>TOTALLENGTH*3/14+6) a_clarity.push('IF');
	if(r>TOTALLENGTH*5/14+6) a_clarity.push('VVS1');
	if(r>TOTALLENGTH*7/14+6) a_clarity.push('VVS2');
	if(r>TOTALLENGTH*9/14+6) a_clarity.push('VS1');
	if(r>TOTALLENGTH*11/14+6) a_clarity.push('VS2');
	if(r>TOTALLENGTH*13/14) a_clarity.push('SI1');
	
	document.all.clarity_si2.className='active_td';
	document.all.clarity_si1.className='active_td';
	document.all.clarity_vs2.className='active_td';
	document.all.clarity_vs1.className='active_td';
	document.all.clarity_vvs2.className='active_td';
	document.all.clarity_vvs1.className='active_td';
	document.all.clarity_if.className='active_td';
	document.all.clarity_fl.className='active_td';
	
	document.all.chk_clarity_si2.checked=true;
	document.all.chk_clarity_si1.checked=true;
	document.all.chk_clarity_vs2.checked=true;
	document.all.chk_clarity_vs1.checked=true;
	document.all.chk_clarity_vvs2.checked=true;
	document.all.chk_clarity_vvs1.checked=true;
	document.all.chk_clarity_if.checked=true;
	document.all.chk_clarity_fl.checked=true;
	
	for(var i=0;i<a_clarity.length;++i)
	{
		if(a_clarity[i]=='SI2') 
		{
			document.all.clarity_si2.className='inactive_td';
			document.all.chk_clarity_si2.checked=false;
		}
		else if(a_clarity[i]=='SI1')
		{
			document.all.clarity_si1.className='inactive_td';
			document.all.chk_clarity_si1.checked=false;
		}
		else if(a_clarity[i]=='VS2') 
		{
			document.all.clarity_vs2.className='inactive_td';
			document.all.chk_clarity_vs2.checked=false;
		}
		else if(a_clarity[i]=='VS1') 
		{
			document.all.clarity_vs1.className='inactive_td';
			document.all.chk_clarity_vs1.checked=false;
		}
		else if(a_clarity[i]=='VVS2') 
		{
			document.all.clarity_vvs2.className='inactive_td';
			document.all.chk_clarity_vvs2.checked=false;
		}
		else if(a_clarity[i]=='VVS1') 
		{
			document.all.clarity_vvs1.className='inactive_td';
			document.all.chk_clarity_vvs1.checked=false;
		}
		else if(a_clarity[i]=='IF') 
		{
			document.all.clarity_if.className='inactive_td';
			document.all.chk_clarity_if.checked=false;
		}
		else if(a_clarity[i]=='FL')
		{
			document.all.clarity_fl.className='inactive_td';
			document.all.chk_clarity_fl.checked=false;
		}
	}
	
}

function set_ct_condition()
{
	var l=parseInt(document.all.ct_left_arrow.style.width);
	var r=parseInt(document.all.ct_right_arrow.style.width);	
	var arrCt=getCtArrayByAsc();
	var lindex=Math.floor((l-12)*numtotal/TOTALLENGTH);
	var rindex=Math.floor((TOTALLENGTH-r+12)*numtotal/TOTALLENGTH);
	if(!rindex || rindex==numtotal) rindex=numtotal-1;
	if(!lindex || isNaN(lindex) || lindex=="undefined" ) lindex=0;
	
	var ct1=arrCt[lindex];
	var ct2=arrCt[rindex];
	
	document.all.ct_min.innerHTML=toFixed(ct1);
	document.all.ct_max.innerHTML=toFixed(ct2);
	document.all.ct_low.value=ct1;
	document.all.ct_high.value=ct2;

}

function set_price_condition()
{
	var l=parseInt(document.all.price_left_arrow.style.width);
	var r=parseInt(document.all.price_right_arrow.style.width);	
	var arrPrice=getPriceArrayByAsc();
	var lindex=Math.floor((l-12)*numtotal/TOTALLENGTH);
	var rindex=Math.floor((TOTALLENGTH-r+12)*numtotal/TOTALLENGTH);
	 
	if(!rindex || rindex==numtotal) rindex=numtotal-1;
	if(!lindex || isNaN(lindex) || lindex=="undefined" ) lindex=0;
	// alert(lindex+" .. "+rindex);
	// document.all.price_left_arrow.style.width="22.7414px";
	// alert(170*TOTALLENGTH/numtotal+12); 
	//for(var i=0;i<arrPrice.length;++i)
	//{
		//if (arrPrice[i]=="5000") alert(i);
		
	//}
		
	var price1=arrPrice[lindex];
	var price2=arrPrice[rindex]; 
	
	if(!price1 || !price2) return;
	document.all.price_min.innerHTML=price1;
	document.all.price_max.innerHTML=price2;
	document.all.price_low.value=price1;
	document.all.price_high.value=price2;	
	
}

function getCtArrayByAsc()
{
	var arr=new Array();
	for(var i=0;i<numtotal;++i)
	{
		arr[i]=DoArr[i].carat;
	}
	quick_sort(arr,0,arr.length-1);
	return arr;
}

function getPriceArrayByAsc()
{
	var arr=new Array();
	for(var i=0;i<numtotal;++i)
	{
		arr[i]=DoArr[i].price;
		
	}
	quick_sort(arr,0,arr.length-1);
	return arr;
}

function quick_sort(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i]<middle) && (i<right)) i++;           
        while((pData[j]>middle) && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quick_sort(pData,left,j);
    if(right>i)   quick_sort(pData,i,right);
}

function quick_sort_desc(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i]>middle) && (i<right)) i++;           
        while((pData[j]<middle) && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quick_sort_desc(pData,left,j);
    if(right>i)   quick_sort_desc(pData,i,right);
}

function quick_sort_function(pData, left, right,func)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while(func(pData[i],middle)<0 && (i<right)) i++;           
        while(func(pData[j],middle)>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quick_sort_function(pData,left,j,func);
    if(right>i)   quick_sort_function(pData,i,right,func);
}

function quicksortct(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i].carat-middle.carat)<0 && (i<right)) i++;           
        while((pData[j].carat-middle.carat)>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortct(pData,left,j);
    if(right>i)  quicksortct(pData,i,right);
}

function quicksortctd(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i].carat-middle.carat)>0 && (i<right)) i++;           
        while((pData[j].carat-middle.carat)<0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortctd(pData,left,j);
    if(right>i)  quicksortctd(pData,i,right);
}

function quicksortprice(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while(pData[i].price-middle.price<0 && (i<right)) i++;           
        while(pData[j].price-middle.price>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortprice(pData,left,j);
    if(right>i)  quicksortprice(pData,i,right);
}

function quicksortpriced(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while(pData[i].price-middle.price>0 && (i<right)) i++;           
        while(pData[j].price-middle.price<0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortpriced(pData,left,j);
    if(right>i)  quicksortpriced(pData,i,right);
}

function quicksortlwratio(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i].lwratio-middle.lwratio)<0 && (i<right)) i++;           
        while((pData[j].lwratio-middle.lwratio)>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortlwratio(pData,left,j);
    if(right>i)  quicksortlwratio(pData,i,right);
}

function quicksortlwratiod(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((pData[i].lwratio-middle.lwratio)>0 && (i<right)) i++;           
        while((pData[j].lwratio-middle.lwratio)<0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortlwratiod(pData,left,j);
    if(right>i)  quicksortlwratiod(pData,i,right);
}


function quicksortcut(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((cutRef.indexOf(pData[i].cut) - cutRef.indexOf(middle.cut))<0 && (i<right)) i++;           
        while((cutRef.indexOf(pData[j].cut) - cutRef.indexOf(middle.cut))>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortcut(pData,left,j);
    if(right>i)  quicksortcut(pData,i,right);
}

function quicksortcutd(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((cutRef.indexOf(pData[i].cut) - cutRef.indexOf(middle.cut))>0 && (i<right)) i++;           
        while((cutRef.indexOf(pData[j].cut) - cutRef.indexOf(middle.cut))<0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortcutd(pData,left,j);
    if(right>i)  quicksortcutd(pData,i,right);
}

function quicksortcolor(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while(colorRef.indexOf(pData[i].color) - colorRef.indexOf(middle.color)<0 && (i<right)) i++;           
        while(colorRef.indexOf(pData[j].color) - colorRef.indexOf(middle.color)>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortcolor(pData,left,j);
    if(right>i)  quicksortcolor(pData,i,right);
}

function quicksortcolord(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while(colorRef.indexOf(pData[i].color) - colorRef.indexOf(middle.color)>0 && (i<right)) i++;           
        while(colorRef.indexOf(pData[j].color) - colorRef.indexOf(middle.color)<0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortcolord(pData,left,j);
    if(right>i)  quicksortcolord(pData,i,right);
}



function quicksortclarity(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((clarityRef.indexOf(' '+pData[i].clarity+' ') - clarityRef.indexOf(' '+middle.clarity+' '))<0 && (i<right)) i++;           
        while((clarityRef.indexOf(' '+pData[j].clarity+' ') - clarityRef.indexOf(' '+middle.clarity+' '))>0 && (j>left))  j--;
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortclarity(pData,left,j);
    if(right>i)  quicksortclarity(pData,i,right);
}

function quicksortclarity(pData, left, right)
{
    var i,j;
    var middle,iTemp;
    i = left;
    j = right;
    middle = pData[Math.floor((left+right)/2)];  
    do{
        while((clarityRef.indexOf(' '+pData[i].clarity+' ') - clarityRef.indexOf(' '+middle.clarity+' '))>0 && (i<right)) i++;           
        while((clarityRef.indexOf(' '+pData[j].clarity+' ') - clarityRef.indexOf(' '+middle.clarity+' '))<0 && (j>left))  j--;
        if(i<=j)
        if(i<=j)
        {
            iTemp = pData[i];
            pData[i] = pData[j];
            pData[j] = iTemp;
            i++;
            j--;
        }
    }while(i<=j);

    
    if(left<j)  quicksortclarity(pData,left,j);
    if(right>i)  quicksortclarity(pData,i,right);
}





function numeric_asc(a,b)
{
	return parseFloat(a)-parseFloat(b);
}

var dragapproved=false;
var cimg,tempx,tempy;
function move()
{
	if ( dragapproved)
	{
		cimg.style.pixelLeft=temp1+event.clientX-tempx;
		clearTimeout(HTout);
		//set_newpos(cimg);
		//cimg.style.pixelTop=temp2+event.clientY-tempy;
		return false;
	}
}


function drags()
{
	if (!document.all)	return;
	if (event.srcElement.className=="drag")
	{
		dragapproved=true;
		cimg=event.srcElement;
		temp1=cimg.style.pixelLeft;
		temp2=cimg.style.pixelTop;
		tempx=event.clientX;
		//y=event.clientY;
		document.onmousemove=move;
		
	}
}

function dragrelease()
{
	set_newpos(cimg)
	if (!document.all)	return;
	if (!cimg) return;
	
	dragapproved=false;
	switch(cimg.id)
	{
		case "limg_cut":
		case "rimg_cut":
			inidycut();
			break;
		case "limg_color":
		case "rimg_color":
			fd_color()
			break;
		case "limg_clarity":
		case "rimg_clarity":
			fd_clarity();
			break;
		case "limg_ct":
		case "rimg_ct":
			fd_ct();
			break;
		case "limg_price":
		case "rimg_price":
			fd_price();
			break;
	}
	cimg=null;
	
}

document.onmousedown=drags;
document.onmouseup=dragrelease;


function set_newpos(img)
{
	if(!img) return ;
	var xpos=img.style.posLeft;
	switch(img.id)
	{
		case "limg_cut":
			if(xpos>=rimg_cut.style.posLeft-12) {img.style.posLeft=rimg_cut.style.posLeft-12;dragapproved=false;}
			pos=getAbsPosition(document.all.cut_left_arrow, document.body); 
			if(xpos<pos[0])  {img.style.posLeft=pos[0];dragapproved=false;}
			document.all.cut_left_arrow.style.width=img.style.posLeft-pos[0];
			document.all.cut_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.cut_left_arrow.style.width==''?'0':document.all.cut_left_arrow.style.width)-parseInt(document.all.cut_right_arrow.style.width==''?'0':document.all.cut_right_arrow.style.width);
			setcutcondition();
			break;
		case "rimg_cut":
			if(xpos<=limg_cut.style.posLeft+12) {img.style.posLeft=limg_cut.style.posLeft+12;dragapproved=false;}
			pos=getAbsPosition(document.all.cut_right, document.body);
			if(xpos+12>pos[0]) {img.style.posLeft=pos[0]-12;dragapproved=false;}
			document.all.cut_right_arrow.style.width=pos[0]-img.style.posLeft;
			document.all.cut_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.cut_left_arrow.style.width==''?'0':document.all.cut_left_arrow.style.width)-parseInt(document.all.cut_right_arrow.style.width==''?'0':document.all.cut_right_arrow.style.width);
			setcutcondition();
			break;
		case "limg_color":
			if(xpos>=rimg_color.style.posLeft-12) {img.style.posLeft=rimg_color.style.posLeft-12;dragapproved=false;}
			pos=getAbsPosition(document.all.color_left_arrow, document.body); 
			if(xpos<pos[0]) {img.style.posLeft=pos[0];dragapproved=false;}
			document.all.color_left_arrow.style.width=img.style.posLeft-pos[0]
			document.all.color_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.color_left_arrow.style.width==''?'0':document.all.color_left_arrow.style.width)-parseInt(document.all.color_right_arrow.style.width==''?'0':document.all.color_right_arrow.style.width);
			setcorcondition();
			break;
		case "rimg_color":
			if(xpos<=limg_color.style.posLeft+12) {img.style.posLeft=limg_color.style.posLeft+12;dragapproved=false;}
			pos=getAbsPosition(document.all.color_right, document.body);
			if(xpos+12>pos[0]) {img.style.posLeft=pos[0]-12;dragapproved=false;}
			document.all.color_right_arrow.style.width=pos[0]-img.style.posLeft;
			document.all.color_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.color_left_arrow.style.width==''?'0':document.all.color_left_arrow.style.width)-parseInt(document.all.color_right_arrow.style.width==''?'0':document.all.color_right_arrow.style.width);
			setcorcondition();
			break;
			
		case "limg_clarity":
			if(xpos>=rimg_clarity.style.posLeft-12) {img.style.posLeft=rimg_clarity.style.posLeft-12;dragapproved=false;}
			pos=getAbsPosition(document.all.clarity_left_arrow, document.body); 
			if(xpos<pos[0]) {img.style.posLeft=pos[0];dragapproved=false;}
			document.all.clarity_left_arrow.style.width=img.style.posLeft-pos[0]+12;
			document.all.clarity_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.clarity_left_arrow.style.width==''?'0':document.all.clarity_left_arrow.style.width)-parseInt(document.all.clarity_right_arrow.style.width==''?'0':document.all.clarity_right_arrow.style.width);
			setclarityction();
			break;
		case "rimg_clarity":
			if(xpos<=limg_clarity.style.posLeft+12) {img.style.posLeft=limg_clarity.style.posLeft+12;dragapproved=false;}
			pos=getAbsPosition(document.all.clarity_right, document.body);
			if(xpos+12>pos[0]) {img.style.posLeft=pos[0]-12;dragapproved=false;}
			document.all.clarity_right_arrow.style.width=pos[0]-img.style.posLeft;
			document.all.clarity_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.clarity_left_arrow.style.width==''?'0':document.all.clarity_left_arrow.style.width)-parseInt(document.all.clarity_right_arrow.style.width==''?'0':document.all.clarity_right_arrow.style.width);
			setclarityction();
			break;
			
		case "limg_ct":
			if(xpos>=rimg_ct.style.posLeft-12) {img.style.posLeft=rimg_ct.style.posLeft-12;dragapproved=false;}
			pos=getAbsPosition(document.all.ct_left_arrow, document.body); 
			if(xpos<pos[0]) {img.style.posLeft=pos[0];dragapproved=false;}
			document.all.ct_left_arrow.style.width=img.style.posLeft-pos[0]+12;
			document.all.ct_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.ct_left_arrow.style.width==''?'0':document.all.ct_left_arrow.style.width)-parseInt(document.all.ct_right_arrow.style.width==''?'0':document.all.ct_right_arrow.style.width);
			set_ct_condition();
			break;
		case "rimg_ct":
			if(xpos<=limg_ct.style.posLeft+12) {img.style.posLeft=limg_ct.style.posLeft+12;dragapproved=false;}
			pos=getAbsPosition(document.all.ct_right, document.body);
			if(xpos+12>pos[0]) {img.style.posLeft=pos[0]-12;dragapproved=false;}
			document.all.ct_right_arrow.style.width=pos[0]-img.style.posLeft;
			document.all.ct_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.ct_left_arrow.style.width==''?'0':document.all.ct_left_arrow.style.width)-parseInt(document.all.ct_right_arrow.style.width==''?'0':document.all.ct_right_arrow.style.width);
			set_ct_condition();
			break;
			
		case "limg_price":
			if(xpos>=rimg_price.style.posLeft-12) {img.style.posLeft=rimg_price.style.posLeft-12;dragapproved=false;}
			pos=getAbsPosition(document.all.price_left_arrow, document.body); 
			if(xpos<pos[0]) {img.style.posLeft=pos[0];dragapproved=false;}
			document.all.price_left_arrow.style.width=img.style.posLeft-pos[0]+12;
			document.all.price_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.price_left_arrow.style.width==''?'0':document.all.price_left_arrow.style.width)-parseInt(document.all.price_right_arrow.style.width==''?'0':document.all.price_right_arrow.style.width);
		    // alert(pos[0]);
			set_price_condition();
	
			break;
		case "rimg_price":
			if(xpos<=limg_price.style.posLeft+12) {img.style.posLeft=limg_price.style.posLeft+12;dragapproved=false;}
			pos=getAbsPosition(document.all.price_right, document.body);
			if(xpos+12>pos[0]) {img.style.posLeft=pos[0]-12;dragapproved=false;}
			document.all.price_right_arrow.style.width=pos[0]-img.style.posLeft;
			document.all.price_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.price_left_arrow.style.width==''?'0':document.all.price_left_arrow.style.width)-parseInt(document.all.price_right_arrow.style.width==''?'0':document.all.price_right_arrow.style.width);
			set_price_condition();
			break;
	}	
	
	
}




function hideArrow()
{
	if(limg_cut) limg_cut.style.display='none';
	if(rimg_cut) rimg_cut.style.display='none';
	if(limg_color) limg_color.style.display='none';
	if(rimg_color) rimg_color.style.display='none';
	if(limg_clarity) limg_clarity.style.display='none';
	if(rimg_clarity) rimg_clarity.style.display='none';
	if(limg_ct) limg_ct.style.display='none';
	if(rimg_ct) rimg_ct.style.display='none';
	if(limg_price) limg_price.style.display='none';
	if(rimg_price) rimg_price.style.display='none';
}

function Arrow()
{
	if(!limg_cut) initArrow();
	limg_cut.style.display='';
	rimg_cut.style.display='';
	limg_color.style.display='';
	rimg_color.style.display='';
	limg_clarity.style.display='';
	rimg_clarity.style.display='';
	limg_ct.style.display='';
	rimg_ct.style.display='';
	limg_price.style.display='';
	rimg_price.style.display='';
}

function get_tdwidth(el)
{
	return el.style.width==""?0:parseInt(el.style.width);
}

function resize_handle()
{
	if(document.all.drag_search.style.display=='none') return;
	var pos=getAbsPosition(document.all.cut_left_arrow, document.body); 
	var tdw=get_tdwidth(document.all.cut_left_arrow);
	limg_cut.style.posLeft=pos[0]+tdw-(tdw>12?12:0);
	
	pos=getAbsPosition(document.all.color_left_arrow, document.body); 
	tdw=get_tdwidth(document.all.color_left_arrow);
	limg_color.style.posLeft=pos[0]+tdw-(tdw>12?12:0);
	
	pos=getAbsPosition(document.all.clarity_left_arrow, document.body); 
	tdw=get_tdwidth(document.all.clarity_left_arrow);
	limg_clarity.style.posLeft=pos[0]+tdw-(tdw>12?12:0);

	pos=getAbsPosition(document.all.ct_left_arrow, document.body); 
	tdw=get_tdwidth(document.all.ct_left_arrow);
	limg_ct.style.posLeft=pos[0]+tdw-(tdw>12?12:0);
	
	pos=getAbsPosition(document.all.price_left_arrow, document.body); 
	tdw=get_tdwidth(document.all.price_left_arrow);
	limg_price.style.posLeft=pos[0]+tdw-(tdw>12?12:0);
	
	pos=getAbsPosition(document.all.cut_right, document.body);
	tdw=get_tdwidth(document.all.cut_right_arrow); 
	rimg_cut.style.posLeft=pos[0]-tdw-(tdw<12?12:0);
	
	pos=getAbsPosition(document.all.color_right, document.body); 
	tdw=get_tdwidth(document.all.color_right_arrow); 
	rimg_color.style.posLeft=pos[0]-tdw-(tdw<12?12:0);
	
	pos=getAbsPosition(document.all.clarity_right, document.body); 
	tdw=get_tdwidth(document.all.clarity_right_arrow); 
	rimg_clarity.style.posLeft=pos[0]-tdw-(tdw<12?12:0);
	
	pos=getAbsPosition(document.all.ct_right, document.body); 
	tdw=get_tdwidth(document.all.ct_right_arrow); 
	rimg_ct.style.posLeft=pos[0]-tdw-(tdw<12?12:0);
	
	pos=getAbsPosition(document.all.price_right, document.body); 
	tdw=get_tdwidth(document.all.price_right_arrow); 
	rimg_price.style.posLeft=pos[0]-tdw-(tdw<12?12:0);
	
}

function change_focus(td)
{

	document.all.td_grp_cut.className="search_result_td1";
	document.all.td_grp_color.className="search_result_td1";
	document.all.td_grp_clarity.className="search_result_td1";
	document.all.td_grp_ct.className="search_result_td1";
	document.all.td_grp_price.className="search_result_td1";
	td.className="search_result_td";

}

function set_pos(postype)
{
	clearTimeout(HTout);
	var x1;
	var x2;
	var x=event.clientX;
	var pos;
	
	switch(postype)
	{
		case "cut":
			x1=limg_cut.style.posLeft;
			x2=rimg_cut.style.posLeft;
			if(x-x1>x2-x)
			{
				rimg_cut.style.posLeft=x;
				pos=getAbsPosition(document.all.cut_right, document.body);
				if(x>pos[0]-12) rimg_cut.style.posLeft=pos[0]-12;
				document.all.cut_right_arrow.style.width=pos[0]-rimg_cut.style.posLeft;
				document.all.cut_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.cut_left_arrow.style.width==''?'0':document.all.cut_left_arrow.style.width)-parseInt(document.all.cut_right_arrow.style.width==''?'0':document.all.cut_right_arrow.style.width);
			}
			else
			{
				limg_cut.style.posLeft=x;
				pos=getAbsPosition(document.all.cut_left_arrow,document.body);
				if(x<pos[0]) limg_cut.style.posLeft=pos[0];
				document.all.cut_left_arrow.style.width=limg_cut.style.posLeft-pos[0]+12;
				document.all.cut_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.cut_left_arrow.style.width==''?'0':document.all.cut_left_arrow.style.width)-parseInt(document.all.cut_right_arrow.style.width==''?'0':document.all.cut_right_arrow.style.width);
			}
			setcutcondition();
			inidycut();
			break;
		case "color":
			x1=limg_color.style.posLeft;
			x2=rimg_color.style.posLeft;
			if(x-x1>x2-x)
			{
				rimg_color.style.posLeft=x;
				pos=getAbsPosition(document.all.color_right, document.body);
				if(x>pos[0]-12) rimg_color.style.posLeft=pos[0]-12;
				document.all.color_right_arrow.style.width=pos[0]-rimg_color.style.posLeft;
				document.all.color_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.color_left_arrow.style.width==''?'0':document.all.color_left_arrow.style.width)-parseInt(document.all.color_right_arrow.style.width==''?'0':document.all.color_right_arrow.style.width);
			}
			else
			{
				limg_color.style.posLeft=x;
				pos=getAbsPosition(document.all.color_left_arrow,document.body);
				if(x<pos[0]) limg_color.style.posLeft=pos[0];
				document.all.color_left_arrow.style.width=limg_color.style.posLeft-pos[0]+12;
				document.all.color_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.color_left_arrow.style.width==''?'0':document.all.color_left_arrow.style.width)-parseInt(document.all.color_right_arrow.style.width==''?'0':document.all.color_right_arrow.style.width);
			}
			setcorcondition();
			fd_color();
			break;
		case "clarity":
			x1=limg_clarity.style.posLeft;
			x2=rimg_clarity.style.posLeft;
			if(x-x1>x2-x)
			{
				rimg_clarity.style.posLeft=x;
				pos=getAbsPosition(document.all.clarity_right, document.body);
				if(x>pos[0]-12) rimg_clarity.style.posLeft=pos[0]-12;
				document.all.clarity_right_arrow.style.width=pos[0]-rimg_clarity.style.posLeft;
				document.all.clarity_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.clarity_left_arrow.style.width==''?'0':document.all.clarity_left_arrow.style.width)-parseInt(document.all.clarity_right_arrow.style.width==''?'0':document.all.clarity_right_arrow.style.width);
			}
			else
			{
				limg_clarity.style.posLeft=x;
				pos=getAbsPosition(document.all.clarity_left_arrow,document.body);
				if(x<pos[0]) limg_clarity.style.posLeft=pos[0];
				document.all.clarity_left_arrow.style.width=limg_clarity.style.posLeft-pos[0]+12;
				document.all.clarity_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.clarity_left_arrow.style.width==''?'0':document.all.clarity_left_arrow.style.width)-parseInt(document.all.clarity_right_arrow.style.width==''?'0':document.all.clarity_right_arrow.style.width);
			}
			setclarityction();
			fd_clarity();
			break;
		case "ct":
			x1=limg_ct.style.posLeft;
			x2=rimg_ct.style.posLeft;
			if(x-x1>x2-x)
			{
				rimg_ct.style.posLeft=x;
				pos=getAbsPosition(document.all.ct_right, document.body);
				if(x>pos[0]-12) rimg_ct.style.posLeft=pos[0]-12;
				document.all.ct_right_arrow.style.width=pos[0]-rimg_ct.style.posLeft;
				document.all.ct_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.ct_left_arrow.style.width==''?'0':document.all.ct_left_arrow.style.width)-parseInt(document.all.ct_right_arrow.style.width==''?'0':document.all.ct_right_arrow.style.width);
			}
			else
			{
				limg_ct.style.posLeft=x;
				pos=getAbsPosition(document.all.ct_left_arrow,document.body);
				if(x<pos[0]) limg_ct.style.posLeft=pos[0];
				document.all.ct_left_arrow.style.width=limg_ct.style.posLeft-pos[0]+12;
				document.all.ct_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.ct_left_arrow.style.width==''?'0':document.all.ct_left_arrow.style.width)-parseInt(document.all.ct_right_arrow.style.width==''?'0':document.all.ct_right_arrow.style.width);
			}
			var l=parseInt(document.all.ct_left_arrow.style.width);
			var r=parseInt(document.all.ct_right_arrow.style.width);	
			var arrCt=getCtArrayByAsc();
			var lindex=Math.floor((l-12)*numtotal/TOTALLENGTH);
			var rindex=Math.floor((TOTALLENGTH-r+12)*numtotal/TOTALLENGTH);
			if(!rindex || rindex==numtotal) rindex=numtotal-1;
			if(!lindex || isNaN(lindex) || lindex=="undefined" ) lindex=0;
			
			var ct1=arrCt[lindex];
			var ct2=arrCt[rindex];
			
			document.all.ct_min.innerHTML=toFixed(ct1);
			document.all.ct_max.innerHTML=toFixed(ct2);
			document.all.ct_low.value=ct1;
			document.all.ct_high.value=ct2;
			set_ct_condition();
			fd_ct();
			break;
		case "price":
		   
			x1=limg_price.style.posLeft;
			x2=rimg_price.style.posLeft;
			
			if(x-x1>x2-x)
			{
				rimg_price.style.posLeft=x;
				pos=getAbsPosition(document.all.price_right, document.body);
				if(x>pos[0]-12) rimg_price.style.posLeft=pos[0]-12;
				document.all.price_right_arrow.style.width=pos[0]-rimg_price.style.posLeft;
				document.all.price_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.price_left_arrow.style.width==''?'0':document.all.price_left_arrow.style.width)-parseInt(document.all.price_right_arrow.style.width==''?'0':document.all.price_right_arrow.style.width);
			}
			else
			{
				limg_price.style.posLeft=x;
				pos=getAbsPosition(document.all.price_left_arrow,document.body);
				if(x<pos[0]) limg_price.style.posLeft=pos[0];
				document.all.price_left_arrow.style.width=limg_price.style.posLeft-pos[0]+12;
				document.all.price_mid_arrow.style.width=TOTALLENGTH-parseInt(document.all.price_left_arrow.style.width==''?'0':document.all.price_left_arrow.style.width)-parseInt(document.all.price_right_arrow.style.width==''?'0':document.all.price_right_arrow.style.width);
			}
			var r=parseInt(document.all.price_right_arrow.style.width);	
			var arrPrice=getPriceArrayByAsc();
			var lindex=Math.floor((l-12)*numtotal/TOTALLENGTH);
			var rindex=Math.floor((TOTALLENGTH-r+12)*numtotal/TOTALLENGTH);
			if(!rindex || rindex==numtotal) rindex=numtotal-1;
			if(!lindex || isNaN(lindex) || lindex=="undefined" ) lindex=0;
			//alert(document.all.price_left_arrow.style.width);
			var price1=arrPrice[lindex];
			var price2=arrPrice[rindex];
			if(!price1 || !price2) return;
			document.all.price_min.innerHTML=toCurr(price1);
			document.all.price_max.innerHTML=toCurr(price2);
			document.all.price_low.value=price1;
			document.all.price_high.value=price2;	
			set_price_condition();
			fd_price();
			break;
	}
}


function change_search_mode()
{
	if(document.all.drag_search.style.display=='')
	{
		document.all.drag_search.style.display='none';
		document.all.normal_search.style.display='';
		hideArrow();
	}
	else
	{
		document.all.drag_search.style.display='';
		document.all.normal_search.style.display='none';
		Arrow();
	}
}




//////////////////////////////////////////////////////////////////
function clear_data()
{
	document.all.datadiv.innerHTML="<div id=\"insert_here\"></div>";
	isload=false;
	pindex=0;
	DsArr.length=0;
	
}

function reset_loadingstatus()
{
	var count=DsArr.length;
	document.all.diamond_count.innerHTML="<font color=\'#ff003c\' size=\'3px'\ >"+count+"颗</font>";
	sPage=count/plength;
	if(count>plength) 
	{
		document.all.load_percent.innerHTML='完成0%';
		document.all.status_fill.style.width='0%';
		document.all.status_empty.style.width='100%';
		document.all.loading_status.style.display='';
	}
	else
	{
		document.all.loading_status.style.display='none';
	}
}

function chk_cut_click(scut)
{
	clear_data();
	var chk=event.srcElement;
	var checked=chk.checked;
	
	var j=0;
	
	for(var i=0;i<numtotal;++i)
	{
		if(!checked)
		{
			if(!DoArr[i].filtered && DoArr[i].cut==scut)
			{
				DoArr[i].filtered=true;
				DoArr[i].filter_cut=true;
			}
		}
		else
		{
			var b=DoArr[i].filter_color || DoArr[i].filter_clarity || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				if(DoArr[i].cut==scut)
				{
					
					DoArr[i].filter_cut=false;
					DoArr[i].filtered=false;
					
				}
			}
			
		}
		if(!DoArr[i].filtered) 
		{
			DsArr[j]=DoArr[i];
			DsArr[j].pos=j;
			j++;
			
		}
	}
	document.all.diamond_count.innerHTML=j+"颗";
	reset_loadingstatus();
	HTout=setTimeout("mp()",GTout);
}

function chk_color_click(scolor)
{
	clear_data();
	
	var chk=event.srcElement;
	var checked=chk.checked;
	
	var j=0;
	
	for(var i=0;i<numtotal;++i)
	{
		if(!checked)
		{
			if(!DoArr[i].filtered && DoArr[i].color==scolor)
			{
				DoArr[i].filtered=true;
				DoArr[i].filter_color=true;
			}
		}
		else
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_clarity || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				if(DoArr[i].color==scolor)
				{
					
					DoArr[i].filter_color=false;
					DoArr[i].filtered=false;
					
				}
			}
			
		}
		if(!DoArr[i].filtered)  
		{
			DsArr[j]=DoArr[i];
			DsArr[j].pos=j;
			j++;
		}	
		
	}
	reset_loadingstatus();
	HTout=setTimeout("mp()",GTout);
}


function chk_clarity_click(sclarity)
{
	
	clear_data();
	
	var chk=event.srcElement;
	var checked=chk.checked;
	
	var j=0;
	
	
	for(var i=0;i<numtotal;++i)
	{
		if(!checked)
		{
			if(!DoArr[i].filtered && DoArr[i].clarity==sclarity)
			{
				DoArr[i].filtered=true;
				DoArr[i].filter_clarity=true;
			}
		}
		else
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_color || DoArr[i].filter_ct || DoArr[i].filter_price;
			if(!b)
			{
				if(DoArr[i].clarity==sclarity)
				{
					
					DoArr[i].filter_clarity=false;
					DoArr[i].filtered=false;
					
				}
			}
			
		}
		if(!DoArr[i].filtered)  
		{
			DsArr[j]=DoArr[i];
			DsArr[j].pos=j;
			j++;
		}	
	}
	reset_loadingstatus();
	HTout=setTimeout("mp()",GTout);
}



function fd_ct()
{
	fi_Pause(this,GTout);
	this.NextStep=function()
	{
		clear_data();
		ct1=document.all.ct_low.value;
		ct2=document.all.ct_high.value;
		var j=0;
		for(var i=0;i<numtotal;++i)
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_color || DoArr[i].filter_clarity || DoArr[i].filter_price;
			if(!b)
			{
				if(DoArr[i].carat>=ct1 && DoArr[i].carat<=ct2)
				{
					DoArr[i].filter_ct=false;
					DoArr[i].filtered=false;
				}
				else
				{
					DoArr[i].filter_ct=true;
					DoArr[i].filtered=true;
				}
			}
			
			if(!DoArr[i].filtered)  
			{
				DsArr[j]=DoArr[i];
				DsArr[j].pos=j;
				j++;
			}	
		}
		reset_loadingstatus()
		HTout=setTimeout("mp()",GTout);
	}
}
 
function fd_price()
{
	fi_Pause(this,GTout);
	this.NextStep=function()
	{
		clear_data();
		price1=document.all.price_low.value;
		price2=document.all.price_high.value;	
		var j=0;
		for(var i=0;i<numtotal;++i)
		{
			var b=DoArr[i].filter_cut || DoArr[i].filter_color || DoArr[i].filter_clarity || DoArr[i].filter_ct;
			if(!b)
			{
				if(DoArr[i].price>=price1 && DoArr[i].price<=price2)
				{
					DoArr[i].filter_price=false;
					DoArr[i].filtered=false;
				}
				else
				{
					DoArr[i].filter_price=true;
					DoArr[i].filtered=true;
				}
			}
			
			if(!DoArr[i].filtered)  
			{
				DsArr[j]=DoArr[i];
				DsArr[j].pos=j;
				j++;
			}	
		}
		reset_loadingstatus();
		HTout=setTimeout("mp()",GTout);
	}
}

 

function compare()
{
	var s='';
	for(var i=0;i<DsArr.length;++i)
	{
		if(DsArr[i].checked) s+='&gids='+DsArr[i].pid;
	}
	 
	if(s!='') s=s.substring(1);
	
 	if(s!='') window.open('diamoelite.jsp?'+s);
 	
 
}


function fi_Pause(obj,iMinSecond)
{
	if (window.eventList==null) window.eventList=new Array();
	var ind=-1;
	for (var i=0;i<window.eventList.length;i++)
	{
		if (window.eventList[i]==null) 
		{
			window.eventList[i]=obj;
			ind=i;
			break;
		}
	}
 
	if (ind==-1)
	{
		ind=window.eventList.length;
		window.eventList[ind]=obj;
	}
	setTimeout("fi_GoOn(" + ind + ")",iMinSecond);
}


function fi_GoOn(ind)
{
	var obj=window.eventList[ind];
	window.eventList[ind]=null;
	if (obj.NextStep) obj.NextStep();
	else obj();
}


