//构造Filrer
function getFilter(type, value, url, name, isStrong){
	var strAry = filter.split('q');
	if(type=='a'){
		strAry = deleteSArea().split('q');
	}
	var result = '';
	var j = 0;
	for(var i=1; i<strAry.length;i++){
		var thistype = strAry[i].substring(0, 1);
		if(thistype==type){
			if(value==strAry[i].substring(1, strAry[i].length)){
				result = result+'q'+type+value;
				isStrong = true;
			}else if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if(i==strAry.length-1 && thistype<type){
			result = result+'q'+strAry[i];
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if((thistype>type && j==0)){
			if(value>0){
				result = result+'q'+type+value;
			}
			result = result+'q'+strAry[i];
			j++;
		}else{
			result = result+'q'+strAry[i];
		}
	}
	if(result.length==0 && value>0){
		result = 'q'+type+value;
	}
	if(isStrong){
		return '<a href="/'+url+'?name='+encodeURI(keyword)+'&filter='+result+'"><font color="#ff9b3c" style="font-weight: bolder;">'+name+'</font></a>';
	}else{
		return '<a href="/'+url+'?name='+encodeURI(keyword)+'&filter='+result+'">'+name+'</a>';
	}
	
}


//构造Filrer
function getFilter_props(type, value, url, name, isStrong){
	var strAry = filter.split('q');
	var result = '';
	var j = 0;
	for(var i=1; i<strAry.length;i++){
		var thistype = strAry[i].substring(0, 1);
		if(thistype==type){
			if(value==strAry[i].substring(1, strAry[i].length)){
				result = result+'q'+type+value;
				isStrong = true;
			}else if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if(i==strAry.length-1 && thistype<type){
			result = result+'q'+strAry[i];
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if((thistype>type && j==0)){
			if(value>0){
				result = result+'q'+type+value;
			}
			result = result+'q'+strAry[i];
			j++;
		}else{
			result = result+'q'+strAry[i];
		}
	}
	if(result.length==0 && value>0){
		result = 'q'+type+value;
	}
	if(isStrong){
		return '<a href="/'+url+'?id='+this_bid+'&filter='+result+'"><font color="#ff9b3c" style="font-weight: bolder;">'+name+'</font></a>　';
	}else{
		return '<a href="/'+url+'?id='+this_bid+'&filter='+result+'">'+name+'</a>　';
	}
}

function getFilterURL(type, value){
	var strAry = filter.split('q');
	if(type=='a'){
		strAry = deleteSArea().split('q');
	}
	var result = '';
	var j = 0;
	for(var i=1; i<strAry.length;i++){
		var thistype = strAry[i].substring(0, 1);
		if(thistype==type){
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if(i==strAry.length-1 && thistype<type){
			result = result+'q'+strAry[i];
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if((thistype>type && j==0)){
			if(value>0){
				result = result+'q'+type+value;
			}
			result = result+'q'+strAry[i];
			j++;
		}else{
			result = result+'q'+strAry[i];
		}
	}
	if(result.length==0 && value>0){
		result = 'q'+type+value;
	}
	return result;
}

function getFilterURL_props(type, value){
	var strAry = filter.split('q');
	var result = '';
	var j = 0;
	for(var i=1; i<strAry.length;i++){
		var thistype = strAry[i].substring(0, 1);
		if(thistype==type){
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if(i==strAry.length-1 && thistype<type){
			result = result+'q'+strAry[i];
			if(value>0){
				result = result+'q'+type+value;
			}
			j++;
		}else if((thistype>type && j==0)){
			if(value>0){
				result = result+'q'+type+value;
			}
			result = result+'q'+strAry[i];
			j++;
		}else{
			result = result+'q'+strAry[i];
		}
	}
	if(result.length==0 && value>0){
		result = 'q'+type+value;
	}
	return result;
}

function deleteSArea(type){
	var result = filter;
	if(filter.indexOf('qb')>=0){
		var strAry = filter.split('q');
		var result = '';
		for(var i=1; i<strAry.length;i++){
			var type = strAry[i].substring(0, 1);
			if(type!='b'){
				result = result+'q'+strAry[i];
			}
		}
	}
	return result;
}

//按类型获得值
function getTypeValue(type){
	if(filter.indexOf('q'+type)>=0){
		var strAry = filter.split('q');
		for(var i=1; i<strAry.length;i++){
			var t_type = strAry[i].substring(0, 1);
			if(t_type==type){
				return strAry[i].substring(1, strAry[i].length);
			}
		}
	}
	return 0;
}

//获得第一级区域
function getAreaHTML(type){
	var data = Json.evaluate(area);
	var html = '';
	var url = 'search!'+type+'.action';
	if(filter.indexOf('qa')<0){
		filter = deleteSArea();
		html = getFilter('a', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}else{
		html = getFilter('a', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	}
	for(var i=0; i<data.area.length; i++){
		var areabhnum = 0;
		var areahbnumStr = '';
		if(type=='build'){
			areabhnum = getAreaBnum(data.area[i].id);
			areahbnumStr = '<font style="color:#999999;font-size:10px;white-space:nowrap;">('+areabhnum+')</font>';
		}else if(type=='house'){
			areabhnum = getAreaHnum(data.area[i].id);
			areahbnumStr = '<font style="color:#999999;font-size:10px;white-space:nowrap;">('+areabhnum+')</font>';
		}
		if(i<data.area.length-1){
			html = html+getFilter('a', data.area[i].id, url, data.area[i].name+areahbnumStr+'<span>|</span>', false);
		}else{
			html = html+getFilter('a', data.area[i].id, url, data.area[i].name+areahbnumStr, false);
		}
	}
	document.write(html);
}

//获得每个区域的楼盘数
function getAreaBnum(id){
	var data = Json.evaluate(areabuildnum);
	var num = 0;
	for(var i=0; i<data.areabuildnum.length; i++){
		if(data.areabuildnum[i].districtCityId==id){
			return data.areabuildnum[i].num;
		}
	}
	return num;
}

//获得每个区域的户型数
function getAreaHnum(id){
	var data = Json.evaluate(areahousenum);
	var num = 0;
	for(var i=0; i<data.areahousenum.length; i++){
		if(data.areahousenum[i].districtCityId==id){
			return data.areahousenum[i].num;
		}
	}
	return num;
}

//获得第二级区域
function getSAreaHTML(id, type){
	var data = Json.evaluate(area);
	var url = 'search!'+type+'.action';
	var html = getFilter('b', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qb')<0){
		html = getFilter('b', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.area.length; i++){
		if(data.area[i].id==id){
			for(var j=0; j<data.area[i].list.length; j++){
				if(j<data.area[i].list.length-1){
					html = html+getFilter('b', data.area[i].list[j].id, url, data.area[i].list[j].name+'<span>|</span>', false);
				}else{
					html = html+getFilter('b', data.area[i].list[j].id, url, data.area[i].list[j].name, false);
				}
			}
			break;
		}
	}
	document.write(html);
}

//获得价格
function getPriceHTML(a){
	var data = Json.evaluate(price);
	var url = 'search!'+a+'.action';
	var html = getFilter('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qc')<0){
		html = getFilter('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.price.length; i++){
		if(i<data.price.length-1){
			html = html+getFilter('c', data.price[i].id, url, data.price[i].name, false)+'<span>|</span>';
		}else{
			html = html+getFilter('c', data.price[i].id, url, data.price[i].name, false);
		}
	}
	document.write(html);
}

//获得户型
function getPropertyHTML(type){
	var data = Json.evaluate(buildtype);
	var url = 'search!'+type+'.action';
	var html = getFilter('d', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qd')<0){
		html = getFilter('d', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.property.length; i++){
		if(i<data.property.length-1){
			html = html+getFilter('d', data.property[i].id, url, data.property[i].name, false)+'<span>|</span>';
		}else{
			html = html+getFilter('d', data.property[i].id, url, data.property[i].name, false);
		}
	}
	document.write(html);
}

//获得特色
function getFeatureHTML(a){
	var data = Json.evaluate(feature);
	var url = 'search!'+a+'.action';
	var html = getFilter('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qe')<0){
		html = getFilter('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	var this_f_id = 0;
	var index = -1;
	for(var i=0; i<data.feature.length; i++){
		var state = false;
		if(feature_ids.indexOf('|'+data.feature[i].id+'|')>=0){
			state = true;
			this_f_id = data.feature[i].id;
			index = i;
		}
		if(i<data.feature.length-1){
			html = html+getFilter('e', data.feature[i].id, url, data.feature[i].name+'<span>|</span>', state);
		}else{
			html = html+getFilter('e', data.feature[i].id, url, data.feature[i].name, state);
		}
	}
	html = html + '</div>';
	document.write(html);
	if(index>=0){
		getSFeatureHTML(data.feature[index].list, data.feature[index].id, a);
	}
}

//特色的子类
function getSFeatureHTML(list, a, b){
	if(list.length>0){
		var data = Json.evaluate(feature);
		var url = 'search!'+b+'.action';
		var html = '<div class="Links" style="margin-left:79px;">';
		var index = -1;
		var this_f_id = 0;
		for(var i=0; i<list.length; i++){
			if(feature_ids.indexOf('|'+list[i].id+'|')>=0){
				index = i;
				this_f_id = list[i].id;
			}
		}
		if(index<0){
			html += getFilter('e', a, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
		}else{
			html += getFilter('e', a, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
		}
		for(var i=0; i<list.length; i++){
			var state = false;
			if(list[i].id==this_f_id){
				state = true;
			}
			if(i<list.length-1){
				html += getFilter('e', list[i].id, url, list[i].name+'<span>|</span>', state);
			}else{
				html += getFilter('e', list[i].id, url, list[i].name, state);
			}
		}
		html += '</div>';
		document.write(html);
		if(index>=0){
			getSFeatureHTML(list[index].list, list[index].id);
		}
	}
}

//获得总价
function getTotalHTML(){
	var data = Json.evaluate(total);
	var url = 'search!house.action';
	var html = getFilter('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qc')<0){
		html = getFilter('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.total.length; i++){
		if(i<data.total.length-1){
			html = html+getFilter('c', data.total[i].id, url, data.total[i].name, false)+'<span>|</span>';
		}else{
			html = html+getFilter('c', data.total[i].id, url, data.total[i].name, false);
		}
	}
	document.write(html);
}

//获得总价
function getAcreageHTML(){
	var data = Json.evaluate(acreage);
	var url = 'search!house.action';
	var html = getFilter('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qe')<0){
		html = getFilter('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.acreage.length; i++){
		if(i<data.acreage.length-1){
			html = html+getFilter('e', data.acreage[i].id, url, data.acreage[i].name+'<span>|</span>', false);
		}else{
			html = html+getFilter('e', data.acreage[i].id, url, data.acreage[i].name, false);
		}
	}
	document.write(html);
}

//获得居室
function getRoomHTML(){
	var url = 'search!house.action';
	var html = getFilter('f', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qf')<0){
		html = getFilter('f', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<room.length; i++){
		if(i<room.length-1){
			html = html+getFilter('f', i+1, url, room[i]+'<span>|</span>', false);
		}else{
			html = html+getFilter('f', i+1, url, room[i], false);
		}
	}
	document.write(html);
}

//更多过滤器
function getMoreHTML(a){
	$('select_bstime').options.length = 0;
	var iArray = new Array('开盘时间全部', '已开盘', '未开盘', '本月开盘', '下月开盘', '3个月内开盘', '6个月内开盘', '1年内开盘');
	getMoreIMPL('f', iArray, 'select_bstime', a);
	$('select_bstime').options[getTypeValue('f')].selected = true ;
	$('select_bftime').options.length = 0;
	iArray = new Array('销售状态全部', '现房销售', '预售期房', '3个月内入住', '6个月内入住', '1年内入住');
	getMoreIMPL('g', iArray, 'select_bftime', a);
	$('select_bftime').options[getTypeValue('g')].selected = true ;
	iArray = new Array('默认排序', '由低到高', '由高到低');
	getMoreIMPL('h', iArray, 'select_price', a);
	$('select_price').options[getTypeValue('h')].selected = true ;
}

//更多过滤器
function getMoreHTML_H(){
	$('select_decoration').options.length = 0;
	//var iArray = new Array('装修情况全部', '毛坯', '精装修');
	//getMoreIMPL('g', iArray, 'select_decoration', 'house');
	var return_result = getMoreDecoration();
	$('select_decoration').value = return_result;
	$('select_bftime').options.length = 0;
	iArray = new Array('销售状态全部', '现房销售', '预售期房', '3个月内入住', '6个月内入住', '1年内入住');
	getMoreIMPL('h', iArray, 'select_bftime', 'house');
	$('select_bftime').options[getTypeValue('h')].selected = true ;
	iArray = new Array('默认排序方式', '总价从低到高', '总价从高到低', '单价从低到高', '单价从高到低', '面积从低到高', '面积从高到低');
	getMoreIMPL('i', iArray, 'select_order', 'house');
	$('select_order').options[getTypeValue('i')].selected = true ;
}

function getMoreIMPL(type, array, selece_name, searchtype){
	var url = 'search!'+searchtype+'.action';
	var result = '';
	for(var i=0; i<array.length; i++){
		result = getFilterURL(type, i);
		$(selece_name).options[i] = new Option(array[i], url+'?name='+encodeURI(keyword)+'&filter='+result);
	}
}

function getMoreDecoration(){
	var url = '/search!house.action';
	var this_decoration = Json.evaluate(decoration);
	result = getFilterURL('g', 0);
	$('select_decoration').options[0] = new Option('装修情况全部', url+'?name='+encodeURI(keyword)+'&filter='+result);
	var return_result = url+'?name='+encodeURI(keyword)+'&filter='+result;
	for(var i=0; i<this_decoration.property.length; i++){
		result = getFilterURL('g', this_decoration.property[i].id);
		if(filter==result){
			return_result = url+'?name='+encodeURI(keyword)+'&filter='+result;
		}
		$('select_decoration').options[i+1] = new Option(this_decoration.property[i].name, url+'?name='+encodeURI(keyword)+'&filter='+result);
	}
	return return_result;
}

function getBuildTpriceHTML(a){
	var data = Json.evaluate(total);
	var tprice = Json.evaluate(totalPrice);
	var url = 'psearch!find.action';
	var html = '';
	if(a==0){
		html = getFilter_props('a', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
		if(filter.indexOf('qa')<0){
			html = getFilter_props('a', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
		}
	}
	for(var i=0; i<data.total.length; i++){
		var state = false;
		for(var j=0; j<tprice.json.length; j++){
			if(Number(data.total[i].min)<=Number(tprice.json[j].value) && (Number(data.total[i].max)==-1 || Number(data.total[i].max)>=Number(tprice.json[j].value))){
				state = true;
				break;
			}
		}
		if(state){
			html = html+getFilter_props('a', data.total[i].id, url, data.total[i].name, false);
		}
	}
	document.write(html);
}

function getBuildAreaHTML(){
	var data = Json.evaluate(acreage);
	var tprice = Json.evaluate(proparea);
	var url = 'psearch!find.action';
	var html = getFilter_props('b', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qb')<0){
		html = getFilter_props('b', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<data.acreage.length; i++){
		var state = false;
		for(var j=0; j<tprice.json.length; j++){
			if(Number(data.acreage[i].min)<=Number(tprice.json[j].value) && (Number(data.acreage[i].max)==-1 || Number(data.acreage[i].max)>=Number(tprice.json[j].value))){
				state = true;
				break;
			}
		}
		if(state){
			html = html+getFilter_props('b', data.acreage[i].id, url, data.acreage[i].name, false);
		}
	}
	document.write(html);
}

function getBuildRoomHTML(a){
	var url = 'psearch!find.action';
	var room = Json.evaluate(proproom);
	var html = '';
	if(a==0){
		html = getFilter_props('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
		if(filter.indexOf('qc')<0){
			html = getFilter_props('c', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
		}
	}
	for(var i=0; i<room.json.length; i++){
		html = html+getFilter_props('c', room.json[i].id, url, room.json[i].name+'室', false);
	}
	document.write(html);
}

function getBuildNumHTML(a){
	var url = 'psearch!find.action';
	var num = Json.evaluate(propnum);
	var html = '';
	if(a==0){
		html = getFilter_props('d', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
		if(filter.indexOf('qd')<0){
			html = getFilter_props('d', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
		}
	}
	for(var i=0; i<num.json.length; i++){
		html = html+getFilter_props('d', num.json[i].id, url, num.json[i].name, false);
	}
	document.write(html);
}

function getBuildHouseTypeHTML(){
	var url = 'psearch!find.action';
	var htype = Json.evaluate(housetype);
	var html = getFilter_props('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', false);
	if(filter.indexOf('qe')<0){
		html = getFilter_props('e', 0, url, '<font color="#ff9b3c" style="font-weight: bolder;">全部</font>　', true);
	}
	for(var i=0; i<htype.json.length; i++){
		html = html+getFilter_props('e', htype.json[i].id, url, htype.json[i].name, false);
	}
	document.write(html);
}

function getBuildMoreIMPL(){
	var iArray = new Array('默认排序方式', '总价从低到高', '总价从高到低', '单价从低到高', '单价从高到低', '面积从低到高', '面积从高到低');
	var url = '/psearch!find.action';
	var result = '';
	for(var i=0; i<iArray.length; i++){
		result = getFilterURL_props('f', i);
		$('select_order').options[i] = new Option(iArray[i], url+'?id='+this_bid+'&filter='+result);
	}
	$('select_order').options[getTypeValue('f')].selected = true ;
}
