function AjaxObject(){
	var ajaxRequest;
	var countMethod;
	this.Request = function(url,count){
		countMethod = count;
		if (!document.all) {
             ajaxRequest = new XMLHttpRequest();
        }else if (document.all) {
             ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
			 //url = url + "&useUnicode=true&characterEncoding=utf-8";
        }
		if(ajaxRequest){
            ajaxRequest.open("get", url, true);
            ajaxRequest.onreadystatechange = callBackMethod;
            ajaxRequest.send(null);        
        }
	}
	var callBackMethod = function(){
		if (ajaxRequest.readyState == 4) {
			if (ajaxRequest.status == 200) {
				parseAjaxMessage();
			}
			else{
				//alert ("Not able to retrieve description" + ajaxRequest.statusText);
				//alert("您的请求无法发送，请检查您的网络连接是否正常");
				//return;
				fucnRent();
			}       
   	 	}
	}
	var parseAjaxMessage = function() {
		var ajaxResult = ajaxRequest.responseText;
		//var method = eval("ajaxOut" + countMethod);
		//method(ajaxResult);
		countMethod(ajaxResult);
	}
}

var ajaxReq;
var stepCount;
function ajaxInByUrl(requestUrl,count) { 
		 stepCount = count;	
         var url = requestUrl;
		 
         if (!document.all) {
             ajaxReq = new XMLHttpRequest();
         }else if (document.all) {
             ajaxReq = new ActiveXObject("Microsoft.XMLHTTP");
			 //url = url + "&useUnicode=true&characterEncoding=utf-8";
         }

        if(ajaxReq){
            ajaxReq.open("get", url, true);
            ajaxReq.onreadystatechange = callBackByAjax;
            ajaxReq.send(null);        
         }
         
}
function ajaxIn(elementId,requestUrl,count) { 
		stepCount = count;
		var elementValue = document.getElementById(elementId).value;
		var url;
		 
         if (!document.all) {
             ajaxReq = new XMLHttpRequest();
             url = requestUrl + "&elementValue=" + encodeURIComponent(elementValue);
         }else if (document.all) {
             ajaxReq = new ActiveXObject("Microsoft.XMLHTTP");
             url = requestUrl + "&elementValue=" + encodeURIComponent(elementValue);
         }

        if(ajaxReq){
            ajaxReq.open("get", url, true);
            ajaxReq.onreadystatechange = callBackByAjax;
            ajaxReq.send(null);        
         }
}
function callBackByAjax() {	
    if (ajaxReq.readyState == 4) {
        if (ajaxReq.status == 200) {
                 parseMessage();
        }else{
            //alert ("Not able to retrieve description" + ajaxReq.statusText);
			alert("您的请求无法发送，请检查您的网络连接是否正常");
			return;
        }       
    }
} 
function parseMessage() {  
    /*var xmlDoc = ajaxReq.responseXML.documentElement;   
    var node = xmlDoc.getElementsByTagName('info');    
	var ajaxResult = node[0].firstChild.nodeValue; */
	var ajaxResult = ajaxReq.responseText;
	var method = eval("ajaxOut" + stepCount);
	method(ajaxResult);
  	// alert(node1[0].firstChild.nodeValue);
}

var functionStr = "";
var requestIdArray = "";
var objectId = "";
var statusStr = "";
var keywordStr = "";
var currentPage = "";
var sortProperty = "";
var sortOrder = "";
var pageSize = "";
var requestActionStr = "";
var requestMethodStr = "";
var isEncodedKeyWord = false;

function AjaxProperties(){
	this.overtimer = false;
	this.isInvokeCallBackMethod = false;
	this.onloadOvertimerCancel = function(){
		clearTimeout(this.overtimer);
	}
	this.iniOnloadOvertime = function(){
		this.overtimer = setTimeout(this.showErrorMessage.bind(this), 10000);	
	}
	this.showErrorMessage = function(){
		var overtimeMsg = '<div id="ajax_onload_overtime">目前网速较慢，页面打开时间过长<br />建议您<a href="javascript:startRequestByPageNum(null)" class="ab_">再试一次</a></div>';
		newAjaxProperties.hideLodingMessage();
		$('testAjaxId').update(overtimeMsg);
	}
	this.showLodingMessage = function(divId){
		document.getElementById(divId).innerHTML = "";
		/*
		var listLoading = $('listloading');
		if(!listLoading){
		var wrap = $(divId).up();
		var listLoading = $(document.createElement('div'));
		listLoading.innerHTML = '<img src="images/common/ajax_loading_1.gif" />';
		listLoading.id = 'listloading';
//		new Insertion.Top($('testAjaxId'), listLoading);
		wrap.insert(listLoading);
		}
		listLoading.show();
		*/
	}
	this.hideLodingMessage = function(){
		var listLoading = $('listloading');
		if(listLoading)listLoading.hide();
	}
	this.ajaxCallbackAfter = function(){
		functionStr = "";
		requestIdArray = "";
		if(sortProperty != ""){
			var imgId = sortProperty+"Id";
			var imgElm = document.getElementById(imgId);
			if(imgElm != null){
				if(sortOrder == "desc")
					imgElm.src = "images/box/btn_ranking.gif";
				else
					imgElm.src = "images/box/btn_ranking_up.gif";
			}
		}
		if(this.isInvokeCallBackMethod)
			ajaxOutMethod();
	}
}

function initStatus() {
	statusStr = "";
	currentPage = "";
	sortProperty = "";
	sortOrder = ""; 
	pageSize = "";
	isEncodedKeyWord = false;
}

function initAllStatus() {
	functionStr = "";
	requestIdArray = "";
	objectId = "";
	statusStr = "";
	keywordStr = "";
	currentPage = "";
	sortProperty = "";
	sortOrder = "";
	pageSize = "";
	requestActionStr = "";
	requestMethodStr = "";
	isEncodedKeyWord = false;
}

var newAjaxProperties = new AjaxProperties();

function startRequestByPageNum(pageNum){
	newAjaxProperties.iniOnloadOvertime();
	newAjaxProperties.showLodingMessage("testAjaxId");
	if(pageNum != null)
		this.currentPage = pageNum;
	if(keywordStr != null && keywordStr != "" && isEncodedKeyWord == false){
		keywordStr = encodeURIComponent(keywordStr);
		isEncodedKeyWord = true;
	}	
	//keywordStr = java.net.URLEncoder.encode(keywordStr);
		
	var requestUrlForAjax = ""+requestActionStr+".html?method="+requestMethodStr+"&pageNum="+currentPage+"&statusStr="+statusStr
	+"&sortProperty="+sortProperty+"&sortOrder="+sortOrder
	+"&pageSize="+pageSize+"&objectId="+objectId+"&keywordStr="+keywordStr
	+"&functionStr="+functionStr+"&requestIdArray="+requestIdArray;
	
	new AjaxObject().Request(requestUrlForAjax,function(result){
		ajaxOut99(result);
	});
}
function ajaxOut99(ajaxResult){
	newAjaxProperties.onloadOvertimerCancel();
	newAjaxProperties.hideLodingMessage();
	$('testAjaxId').update(ajaxResult);
	if($('friends_list')&&$('friends_list').down('div.dayuan')){
		$('friends_list').select('ul>li.u_inf').each(function(elt){
			Seven.Folder.instances[Seven.Folder.instances.length]=new Seven.Folder(elt.down('a.orline'),elt.down('div.dayuan'),{beforeFun:function(){
					elt.setStyle({zIndex:'50'})
				},afterFun:function(){
					elt.setStyle({zIndex:'1'})
				}
			})
		})
	}
	newAjaxProperties.ajaxCallbackAfter();
}
function sortMethod(sortProperty){
	if(this.sortProperty != sortProperty)
		this.sortOrder = "desc";
	else{
		if(this.sortOrder == "desc")
			this.sortOrder = "asc";
		else
			this.sortOrder = "desc";
	}
	this.sortProperty = sortProperty;
	startRequestByPageNum(null);
}
function pageSizeMethod(pageSize){	
	this.pageSize = pageSize;
	startRequestByPageNum(1);
}
function changeStatusMethod(statusStr){
	initStatus();
	this.statusStr = statusStr;
	startRequestByPageNum(1);
}
function publishFunctionMethod(checkboxName,functionStr){
	var items = document.getElementsByName(checkboxName);
	var isChecked = false;
	for(var i=0;i<items.length;i++){
		if(items[i].checked){
			requestIdArray += items[i].value + "_";
			isChecked = true;
		}
	}
	if(!isChecked){
		alert("您没有选择,请选择!");
		return;
	}
	this.requestIdArray = requestIdArray.replace(/_$/, "");
	this.functionStr = functionStr;
	startRequestByPageNum(null);
}
function publishFunctionMethodById(objectId,functionStr){
	this.requestIdArray = objectId;
	this.functionStr = functionStr;
	startRequestByPageNum(null);
}
function setRequestActionMethod(requestActionStr,requestMethodStr){
	this.requestActionStr = requestActionStr;
	this.requestMethodStr = requestMethodStr;
	document.observe("dom:loaded",function(){
	startRequestByPageNum(1);
	});
}

function selectAllOrNoOne(elm,name){
	var elms = document.getElementsByName(name);
	if(elm.checked){
		for(var i=0;i<elms.length;i++)
			elms[i].checked = true;
	}else{
		for(var i=0;i<elms.length;i++)
			elms[i].checked = false;
	}
}
function selectAllCheckbox(name){
	var items = document.getElementsByName(name);
	for(var i=0;i<items.length;i++){
		items[i].checked = true;
	}
}
function cancelSelectAllCheckbox(name){
	var items = document.getElementsByName(name);
	for(var i=0;i<items.length;i++){
		items[i].checked = false;
	}
}   
function antiSelectCheckbox(name){
	var items = document.getElementsByName(name);
	for(var i=0;i<items.length;i++){
		if(items[i].checked)
			items[i].checked = false;
		else
			items[i].checked = true;
	}
}
function contrastFunctionMethod(checkboxName,requestAction,requestMethod){
	var items = document.getElementsByName(checkboxName);
	var isChecked = false;
	var objectIdsArray = "";
	for(var i=0;i<items.length;i++){
		if(items[i].checked){
			objectIdsArray += items[i].value + "_";
			isChecked = true;
		}
	}
	if(!isChecked){
		alert("您没有选择,请选择!");
		return;
	}
	objectIdsArray = objectIdsArray.replace(/_$/, "");
	
	window.open(requestAction+".html?method="+requestMethod+"&objectIdsArray="+objectIdsArray);
	//document.location = requestAction+".html?method="+requestMethod+"&objectIdsArray="+objectIdsArray;
}
function packAwayFunctionMethod(requestAction,requestMethod,id){
	ajaxInByUrl(requestAction+'.html?method='+requestMethod+'&elementValue='+id,'98');
}
function ajaxOut98(ajaxResult){
	if(ajaxResult == "noCompetence")
		alert("对不起，登录后才能收藏，如果您还没有房伯乐帐号请先注册");
	else
		alert("已收藏！");
}
function publishSaveMethod(functionStr,objectId,objectContentId,MaxContentSize){
	this.requestIdArray = objectId;
	this.functionStr = functionStr;
	var content = document.getElementById(objectContentId).value;
	if(content.length < 1){
		alert("输入的内容不能为空!");
		return;
	}
	if(content.length > MaxContentSize){
		alert("您输入的内容超过"+MaxContentSize+"了个字符!");
		return;
	}
	content = content.replace(/\n/g,"<br/>");
	keywordStr = content;
	if(isEncodedKeyWord == true)
		keywordStr = encodeURIComponent(keywordStr);
	startRequestByPageNum(null);
}
function warpLoaction(url){
	var root = "http://www.7dian.com";
	if(url.indexOf('/')==0)
		url = root+url;
	else
		url = root+'/'+url;
	document.location = url;
}
