var msg_vipchargepage = msg_setcenter_b + 5;
var msg_vipcertdonate = msg_setcenter_b + 6;
var msg_scoredonate = msg_setcenter_b + 7;
var msg_coindonate = msg_setcenter_b + 8;
var msg_maildonate = msg_setcenter_b + 9;


var paylist = [
{id:'paycard',tid:'chargePaycard',txt:'网易充值一卡通',sindex:2,sicon:0},
{id:'bank',tid:'chargeBank',txt:'网 上 银 行',sindex:3,sicon:1},
{id:'mobile',tid:'chargeMobile',txt:'神州行充值卡',sindex:1,sicon:1},
{id:'nm12588',tid:'charge12588',txt:'移动手机支付',sindex:0,sicon:0},
{id:'alipay',tid:'chargealipay',txt:'支　付　宝',sindex:4,sicon:0}];

function getPaylist(id) {
	for(var i = 0; i < paylist.length; ++i){
		if(paylist[i].id == id)
			return paylist[i];
	}
	return paylist[0];
}
function changePaylistRadio(id){
		var item = getPaylist(id);
		var divNode = document.getElementById('paydiv');
		$("cz1_yes").id="cz1_no";
		var tdNodes = document.getElementsByName('cz1_no');
		var showflag = showUmpp();
		var siconhtml = "<img src=\"http://idate.163.com/images/czyh3.gif\" width=\"21\" height=\"21\" border=\"0\" align=\"absmiddle\" />";
		if(item) {
			divNode.innerHTML = global.gTemplates.get(item.tid).process(global);
			for(var i = 0; i < paylist.length; ++i){
				var pspan = $(paylist[i].id+"sp");
				if(paylist[i].id == id){
					if(pspan) {
						pspan.innerHTML = "<a href=\"javascript:void(0)\">"+paylist[i].txt+(paylist[i].sicon>0?siconhtml:"")+"</a>";
						tdNodes[paylist[i].sindex-(1-showflag)].id="cz1_yes";
					}
				}else {
					if(pspan) {
						pspan.innerHTML = "<a href=\"javascript:changePaylistRadio('"+paylist[i].id+"')\">"+paylist[i].txt+(paylist[i].sicon>0?siconhtml:"")+"</a>";
						var notd=tdNodes[paylist[i].sindex-(1-showflag)]
						if(notd)  notd.id="cz1_no";
					}
				}
			}

			var paytd = document.getElementById('payundertd');
			if(showflag==0 && (paylist[0].id==id || paylist[2].id==id) ){
				if(paytd)  paytd.height=200;
			}else{
				if(paytd)  paytd.height=150;
			}
		}

}

addMsg(msg_vipchargepage, [procVipChargePage]);

function procVipChargePage(msg){
	checkNavigate('mm_setCenter');
	procPoint('vipchargelist', 'mainpoint', global);
	vipChangePaylistRadio("mobile");
	refreshPayStatus();
}


addMsg(msg_vipcertdonate, [procVipCertDonate]);
function procVipCertDonate(msg){
	openLayerCall("activatecertdonate.do");
}

function doAfterCertDonate(){
	showMiddleLayer("certdonatesuccess");
	loadHistory();
}

addMsg(msg_scoredonate, [procScoreDonate]);
function procScoreDonate(msg) {
	openLayerCall("activatescoredonate.do");
}

function doAfterScoreDonate(stack) {
	global.scoreDonateSuccessMsg = globalUnemit(stack.pop());
	showMiddleLayer("scoredonatesuccess");
	loadHistory();
}

addMsg(msg_coindonate, [procCoinDonate]);
function procCoinDonate(msg){
	openLayerCall("activatecoindonate.do");
}

function doAfterCoinDonate(stack) {
	sendMessage(msg_index);
}

addMsg(msg_maildonate, [procMailDonate]);
function procMailDonate(msg) {
	openLayerCall("activatemaildonate.do");
}

function doAfterMailDonate(stack) {
	global.scoreDonateSuccessMsg = globalUnemit(stack.pop());
	showMiddleLayer("scoredonatesuccess");
	loadHistory();
}


function selectStyle(showindex)
{
	//显示介绍文字和字体大小变化
	var orderarray=[2,3,6,12];
	for(var i=0;i<orderarray.length;i++){
		if(parseInt(showindex)==orderarray[i]){
			showElement("showdetail_"+orderarray[i],true);
			document.getElementsByName("ordermonth")[i].checked=true;
		}else  showElement("showdetail_"+orderarray[i],false);
	}
	var pbimage=document.getElementById('selectmonthimg');
	if(pbimage)  pbimage.src='/images/vip/s3_jt'+showindex+'.gif';
	for(var i=0;i<orderarray.length;i++){
		var ptr = document.getElementById("ordermonth_ptr"+orderarray[i]);
		if(parseInt(showindex)==orderarray[i]){
			if(ptr)  ptr.className = "vip_qx";
		}else{
			if(ptr)  ptr.className = "f14";
		}
	}
	
	//充值数字变更
	var pminput=document.getElementsByName("paymonth")[0];
	if(pminput)  pminput.value=showindex;
	var pmspan=document.getElementsByName("paymonthspan")[0];
	if(pmspan)  pmspan.innerHTML=showindex;
	var nmspan=document.getElementsByName("needmoneyspan");
	for(var i=0;nmspan!=null&&i<nmspan.length;i++)  nmspan[i].innerHTML=global.convVipFee(showindex).value;

	var needamount = global.convVipFee(showindex).value;
  	if(global.chargestatus)  needamount=getPositiveValue(needamount-global.chargestatus.paidamount);
	var nsspan=document.getElementsByName("needstatusspan")[0];
	if(nsspan)  nsspan.innerHTML=needamount;

	//充值表单变量变更
	refreshPayamount(needamount);
	
	//一卡通的数量改变为点数
	if(global.paymethod==paylist[0].id){
		if(nmspan)  nmspan[nmspan.length-1].innerHTML=global.convVipFee(showindex).value*10;
	}

}


var tmpRadioId;
function vipChangePaylistRadio(id){
		var divNode = document.getElementById('paydiv');
 		if(divNode==null){tmpRadioId=id;setTimeout("vipChangePaylistRadio()", 500);return;}
 		if(id==null)  id = tmpRadioId;
        var item = getPaylist(id);
		if($("cz_yes"))  $("cz_yes").id="cz_no";
		var tdNodes = document.getElementsByName('cz_no');
		if(item) {
			divNode.innerHTML = global.gTemplates.get('vip'+item.tid).process(global);
			for(var i = 0; i < paylist.length && tdNodes.length > 0; ++i){
				if(paylist[i].sindex-1<0 || paylist[i].sindex-1>2)  continue;
				if(paylist[i].id == id){
						tdNodes[paylist[i].sindex-1].id="cz_yes";
				}
			}
			var paytd = document.getElementById('payundertd');
			if(paylist[0].id==id){
				if(paytd)  paytd.height=200;
			}else{
				if(paytd)  paytd.height=150;
			}
		}
		global.paymethod=id;
		refreshStyle();

}
function refreshStyle(){
		var omselect = document.getElementsByName("ordermonth");
		for(var i=0;i<omselect.length;i++){
			if(omselect[i].checked)
				selectStyle(omselect[i].value);
		}
}

var isdebug=false;

function vipCheckntCard(){
	var cardno = document.getElementById("cardNo");
	var cardpa = document.getElementById("cardPass");
	if(cardno.value != "" && isNaN(cardno.value)) {
		alert("请输入正确的卡号");
		return false;
	}
	if(cardpa.value != "" && isNaN(cardpa.value)) {
		alert("请输入正确的密码");
		return false;
	}
	if(cardpa.value!="" && cardpa.value!="") {
		var cform = document.getElementById("paycardform");
		if(!isdebug)  cform.action = "http://pay.163.com/servlet/controller?operation=dofastfillvalue&ursName="+global.gUInfo.account+"&url=http%3A%2F%2Fidate.163.com%2Fdovipcharge.jsp%3Fpaytype=paycard%26amount%3D"+ document.getElementById("pamount").value;
	}
	return 	vipCheckCardRadio();
}
function vipCheckCardRadio(){
	var omselect = document.getElementsByName('ordermonth');
	for(var i=0;i<omselect.length;i++){
		if(omselect[i].checked)  return true;
	}
	alert("请选择要充值的月份");
	return false;
}

function getVipEndTime(daybalance){
	var Stamp=new Date(new Date().getTime() + parseInt(daybalance)*24*60*60*1000);
	var month = parseInt(Stamp.getMonth())+1;var day= parseInt(Stamp.getDate());var year = String(Stamp.getYear());
	if(month<10) month = "0"+month; if(day<10) day = "0"+day;
	var datestr = year+"年"+month+"月"+day+"日";
	return datestr;
}

function refreshPayStatus(){
	var ajax = new AjaxWrap(payStatusCallBack);
	ajax.openText("getchargestatus.do?id="+global.gUInfo.id+"&content="+global.gUInfo.account, true);
}

function payStatusCallBack(stask){
	if(!stask)  return;
	var chargestatus = stask.pop();
	global.chargestatus = chargestatus;
	var nmspan=document.getElementsByName("paystatusspan");
	if(nmspan==null || nmspan.length==0)  return;
	switch(parseInt(chargestatus.status)){
	case 0:
		nmspan[0].innerHTML="<b>未支付</b>，请选择服务时间和支付方式后完成升级&nbsp;&nbsp;<a href=javascript:refreshPayStatus() style=color:#cc0000>刷新</a>";
		break;
	case 1:
		nmspan[0].innerHTML="已付 <b>"+chargestatus.paidamount+"</b> 元，还差 <b id=needstatusspan name=needstatusspan>"+getPositiveValue(global.convVipFee(document.getElementsByName("paymonth")[0].value).value-global.chargestatus.paidamount)+"</b> 元&nbsp;&nbsp;<a href=javascript:refreshPayStatus() style=color:#cc0000>刷新</a>";
		refreshStyle();
		break;
	case 2:
		nmspan[0].innerHTML="您的金钻有效期剩 <b>"+chargestatus.daybalance+"</b> 天，如需延长请再购买服务时间";
		break;
		
	}
	if(chargestatus.daybalance>0)  global.gUInfo.vipBalance=chargestatus.daybalance;
}

function refreshPayamount(needamount){
		var amount=document.getElementsByName("amount")[0];
		if(global.paymethod==paylist[1].id){
			if(amount)  amount.value=needamount;
		}else if(global.paymethod==paylist[0].id){
			if(amount)  amount.value=needamount*10;
			checkMyPoint(needamount*10);
		}
}

function getPositiveValue(value){
	if(value>0)
		return value;
	else
		return 0;
}
var msg_searchdating = msg_commenddating + 1;
var msg_cdsponser = msg_commenddating + 2;
var msg_cddinfo = msg_commenddating + 3;
var msg_concern = msg_commenddating + 4;
var msg_getcommenddating = msg_commenddating + 5;
addMsg(msg_commenddating, [procCommendDating]);
addMsg(msg_searchdating, [procSearchDating]);
addMsg(msg_getcommenddating,[procGetCommendDating]);

addMsgRange(msg_cdsponser, msg_concern + 1, [cdOperator]);

function commendView(){
	this.onrefresh = function(infoes){
		global["DListItemBeanes"] = infoes;
		procPoint('commendDating', 'mainpoint', global);
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

function searchView(){
	this.onrefresh = function(infoes){
		global["DListItemBeanes"] = infoes;
		
		checkNavigate('mm_commendDating', 'searchpoint', 'commendDating');
		procPoint('searchitem', 'searchpoint', global);
		var cp = document.getElementById('joinclear');
		if(cp!=null)  cp.innerHTML = "";
		transAgeRange(document.forms['searchform'],'age','ageBegin','ageEnd');
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

var commendDatings = new ArrayInfoData(cCmp);
var commendListener = new commendView();
var searchListener = new searchView();

function cCmp(left, right){
	return left.dinfo.did == right.did;
}

function procCommendDating(msg){
	commendDatings.removeAllListeners();
	commendDatings.register(commendListener);
	checkNavigate('mm_commendDating', 'searchpoint', 'commendDating');
	if(global.DListItemBeanes==null)  global.DListItemBeanes=null;
	if(global.cmbean==null)  global.cmbean={current:1,per:8,total:0};
	if(global['sdateFilter']==null)  global['sdateFilter']={ageBegin:0,ageEnd:0,city:0,multipartRequestHandler:{},page:1,pg:1,province:0,sex:0};
	if(lastmsg.MSG!=msg_getcommenddating)  procPoint('commendDating', 'mainpoint', global);			
	var ajax = new AjaxWrap(null);
	ajax.openText("joinpubdating.do", true);
}


function procGetCommendDating(msg){
	commendDatings.removeAllListeners();
	commendDatings.register(commendListener);
	checkNavigate('mm_commendDating');
		
	var ajax = new AjaxWrap(null);
	ajax.openText("joinpubdating.do?page="+msg.page, true);
}

function procSearchDating(msg){
	commendDatings.removeAllListeners();
	commendDatings.register(searchListener);

	if(msg.page == null)
		msg.page = 1;
	var queryString = "pg=" + msg.page + '&';
	var searchDtStr = formToRequestString('searchform');
	if(searchDtStr==null && msg.age)  searchDtStr="age="+msg.age+"&sex="+msg.sex+"&province="+msg.province+"&city="+msg.city;
	if(searchDtStr!=null) global.searchDtStr = searchDtStr;
	queryString +=	global.searchDtStr;
	
	setCookie(myInfo.info.id + "searchdating", searchDtStr, "/", 10000);
	
	if(global.DListItemBeanes==null)  global.DListItemBeanes=null;
	if(global.commendDiv==null)  global.commendDiv={current:1,per:8,total:0};
	if(global['sdateFilter']==null)  global['sdateFilter']={ageBegin:0,ageEnd:0,city:0,multipartRequestHandler:{},page:1,pg:1,province:0,sex:0};
	if(lastmsg.MSG!=msg.MSG)  checkNavigate('mm_commendDating', 'searchpoint', 'commendDating');
	
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchdating.do", queryString, true);
	
	global.cmbean='';
}

function cdOperator(msg){
	var dt = commendDatings.getById(msg);
	if(dt ==null) {
		if(global.dateBean!=null)
			dt = global.dateBean.dinfo;
	}
	
	//if(dt != null){
		switch(msg.MSG){
		case msg_cdsponser:
			showUInfo(dt.dinfo.sponser, msg.page);
			break;
		case msg_cddinfo:
			sendMessage(msg_datinginfo, msg);
			break;
		case msg_concern:
			{
				var ajax = new AjaxWrap(null);
				ajax.openText("concerndating.do?id=" + msg.did);
				break;
			}
		}
	//}else{
	//	alert('operator commend dating get null id: ' + msg.did);
	//}
}

function searchDating(page, formname){
	if(page == null)
		page = 1;
	var queryString = "pg=" + page + '&';
	queryString +=	formToRequestString(formname);

	var ajax = new AjaxWrap(pageCallBack("joinitem", "DListItemBeanes", "searchpoint"));
	ajax.postFormText("searchdating.do", queryString, true);
	var cp = document.getElementById('joinclear');
	cp.innerHTML = "";
}

function setCmDatingPre(stask){
	global.cmbean = stask.pop();
	global['sdateFilter'] = stask.pop();
	var sfAge = getMyCookieValue("searchdating", "age");
	var sfAgeBegin = getMyCookieValue("searchdating", "ageBegin");
	var sfAgeEnd = getMyCookieValue("searchdating", "ageEnd");
	var sfSex = getMyCookieValue("searchdating", "sex");
	var sfProvince = getMyCookieValue("searchdating", "province");
	var sfCity = getMyCookieValue("searchdating", "city");
	if (sfAge) global.sdateFilter.age = sfAge;
	if (sfAgeBegin) global.sdateFilter.ageBegin = sfAgeBegin;
	if (sfAgeEnd) global.sdateFilter.ageEnd = sfAgeEnd;
	if (sfSex) global.sdateFilter.sex = sfSex;
	if (sfProvince) global.sdateFilter.province = sfProvince;
	if (sfCity) global.sdateFilter.city = sfCity;
}


function renderCommentDatingPage(pb){
	return renderPageDiv(pb,"nextCommentDt(%p)",[]);
}

function renderSearchPageDiv(pb){
	return renderPageDiv(pb,"nextSearchDt(%p)",[]);
}

function nextSearchDt(pg){
	sendMessage(msg_searchdating, {page:pg});
}

function nextCommentDt(pg){
	sendMessage(msg_getcommenddating, {page:pg});
}


global.commendPN = function(page, n){
	return "global.commendPage(" + (parseInt(page) + n) + ")";
}

global.searchPN = function(page, n){
	var tt = parseInt(page) + n;
	return "searchDating(" + tt + " ,'searchform')";
}
var datingdiv = "myitem";

var cDatingType = 0;

var datingCallBack = new BaseCall("datingDetail", "dateBean");
var datingDiv = "myitem";
var datingIds = ["mm_iamsponsor", "mm_iamembracer", "mm_lookDating", "mm_enddating"];
var datingEndIds = ["end_myall", "end_iamsponsor", "end_embracer", "end_mysucc","end_myfail"];


var msg_getdating = msg_dating_b;//200

addMsg(msg_getdating, [getDating]);

var msg_acceptdating = msg_dating_b + 15;
var msg_refusedating = msg_dating_b + 16;
var msg_commentdating = msg_dating_b + 17;

var msg_paycontact = msg_dating_b + 20;
var msg_readdatemsg = msg_dating_b + 21;


addMsg(msg_acceptdating, [procAcceptDating]);
addMsg(msg_refusedating, [procRefuseDating]);
addMsg(msg_paycontact, [procPaycontact]);
addMsg(msg_readdatemsg, [procReaddatemsg]);

function procAcceptDating(msg){
	var fm = document.getElementsByName("answerform");
	var contact = document.getElementsByName("contact")[0];
	var contact_email = document.getElementsByName("contact_email")[0];
	if(checkResqiubo())  return;
	if(contact!=null && contact.value.length<6) {
		alert("小i提醒：请填写有效的手机号码。");
		return;
	}
	if(contact_email!=null && contact_email.value.length<6) {
		alert("小i提醒：请填写有效的电子邮箱地址。");
		return;
	}

	if(fm && fm[0]){
		fm[0].submit();
	}
}

function procRefuseDating(msg){
	var queryString = "did=" + msg.dinfo.did + "&eid=" + msg.dinfo.eid + "&page=" + msg.page;
	var mood = document.getElementById("mood");
	var postscriptitme = document.getElementById("psid");
	if(mood && postscriptitme){
		queryString += "&mood="+mood.value+"&postscript="+postscriptitme.value; 
	}
	var ajax = new AjaxWrap(null);
	ajax.postFormText("refusedating.do", queryString, true);
}

addMsg(msg_commentdating, [procComment]);
function procComment(msg){
	var item = datingData.getById(msg);
	if(!item)
		item = manageEntity.getById(msg);
	global['comment'] = item;
	var tmp = global.gTemplates.get("comment");
	openWindowWrap(function(){
				return tmp.process(global);
			});
}

var msg_datinginfo = msg_dating_b + 31;
var msg_concerndating = msg_dating_b + 32;
var msg_disconcerndating = msg_dating_b + 33;
var msg_applyinfo = msg_dating_b + 34;
var msg_managedate = msg_dating_b + 35;
var msg_listvisitdate = msg_dating_b + 36;
var msg_needinput = msg_dating_b + 37;
var msg_datinguinfo = msg_dating_b + 50;
var msg_singledate = msg_dating_b + 51;

addMsg(msg_listvisitdate, [procListDateVisit]);
addMsg(msg_datinginfo, [procDatingInfo]);
addMsg(msg_applyinfo, [procApplyInfo]);
addMsg(msg_managedate, [procManageDatingInfo]);
addMsg(msg_needinput, [procNeedInput]);
addMsg(msg_datinguinfo, [procShowDatingUInfo]);
addMsg(msg_singledate, [procPubSingleDate]);

function procApplyInfo(msg){
	//callAjax("getapplyinfo.do?did=" + msg.did, datingCallBack.getCallBack());
	var ajax = new AjaxWrap(null);
	ajax.openText("getapplyinfo.do?did=" + msg.did , true);	
}
function procPubSingleDate(msg){
	var ajax = new AjaxWrap(showPubSingleDate);
	ajax.openText("checkgsendstatus.do", true);
}
	
function showPubSingleDate(stask){
	var content = stask.pop();
	var result = stask.pop();
	if (result == 0) {alert('无权发布');  return;}
	checkNavigate('mm_applydating');
	initDatePlanUInfo();
	var oldagebegin 				= datePlanUInfo.embracerAgeBegin;
	var oldageend 					= datePlanUInfo.embracerAgeEnd;
	datePlanUInfo.embracerAgeBegin 	= 0;
	datePlanUInfo.embracerAgeEnd 	= 100;
	datePlanUInfo.content 			= content;
	datePlanUInfo.vip	 			= 2;
	procPoint('newPubDating', 'mainpoint', global);
	datePlanUInfo.embracerAgeBegin	= oldagebegin;
	datePlanUInfo.embracerAgeEnd 	= oldageend;
	datePlanUInfo.content			= '';
	datePlanUInfo.vip	 			= 0;
}

function procDatingInfo(msg){
	var ajax = new AjaxWrap(null);
	ajax.openText("getlistitem.do?did=" + msg.did + "&eid=" + msg.eid , true);		
}

addMsg(msg_disconcerndating, [procDisConcern]);
function procDisConcern(msg){
	openLayerCall("cancelconcern.do?id=" + msg.did);
}


function procShowDatingUInfo(msg){
	var it = datingData.getById(msg);
	if(it){
		showUInfo(it.uinfo.id, msg.page);
	}
}

global.createDItemId = function(did, eid){
	return "d" + did + "e" + eid;
}



global.renderDatingItem = function(pp, loopc){
	global.item = pp;
	global.item.color = loopc;
	if(global.datingType==2) {
		return global.gTemplates.get("datingItem3").process(global);
		
	}else if(pp.dinfo.sponser==global.gUInfo.id) {
		//发起的约会
		return global.gTemplates.get("datingItem").process(global);
	}
		//响应的约会
	else {
		return global.gTemplates.get("datingItem2").process(global);

	}
}

function setDatingPre(stask){
	global.datingpage = stask.pop();
	global.datingType = stask.pop();
	global.datingPeriodType = stask.pop();
	global.managepb = {current:0};
}

function DatingViewAll(){
	this.pt = 'mainpoint';
	this.tpl = "myDating";
	this.onrefresh = function(infoes){
		checkNavigate('mm_myDating');
		global["myDatingBeans"] = infoes;
		procPoint(this.tpl, this.pt, global)
		var ck = global.datingType > 3 ? 3 : global.datingType;
		
		showElement("edating", global.datingType >= 3);
		
		if(ck >= 0){
			var toChange = document.getElementById(datingIds[ck]);
			if(toChange){
				toChange.className = "my2";
				//toChange.innerHTML = "<span style='width:140px' class='lanmu'>" + toChange.innerText + "</span>";
			}
		}
		if(global.datingType >=3) {
			var toChange = document.getElementById(datingEndIds[global.datingType-3]);
			if(toChange) {
				toChange.className = "perxx";
				
			}
			
		}
		
	}

	this.onchange = function(item){
		var doc = document.getElementById(datingDiv + global.createDItemId(item.dinfo.did, item.dinfo.eid));
		if(doc){
			doc.outerHTML = global.renderDatingItem(item, doc.getAttribute('ctag'));
		}
	}

	this.ondelete = function(item){
		var doc = document.getElementById(datingDiv + global.createDItemId(item.did, item.eid));
		if(doc){
			doc.outerHTML = "";
		}
	}
}

var dtObserver = new DatingViewAll();

function findDating(left, right){
	if(right.dinfo != null){
		return left.dinfo.did == right.dinfo.did && left.dinfo.eid == right.dinfo.eid;
	}else{
		return left.dinfo.did == right.did && left.dinfo.eid == right.eid;
	}
}

var datingData = new ArrayInfoData(findDating);
datingData.register(dtObserver);

var getDatingCache = [null,null,null];

function getDating(msg){
	var periodtype=0;
	var perioditems=document.getElementsByName('periodtype');
	if(perioditems.length>0)  periodtype=perioditems[0].options[perioditems[0].selectedIndex].value;
	else if(global.datingPeriodType)  periodtype=global.datingPeriodType;
	if(msg.banner && global["myDatingBeans"]){
        new DatingViewAll().onrefresh(global["myDatingBeans"]);
        return;
    }else{
    	if(global["myDatingBeans"])  getDatingCache[global.datingType]=global["myDatingBeans"];
	    if(!global.datingPeriodType)  global.datingPeriodType = 0;
	    if(!global.datingType||global["myDatingBeans"])  global.datingType = msg.type;
        global["myDatingBeans"]=getDatingCache[global.datingType];
        if(lastmsg.MSG!=msg.MSG || (lastmsg.MSG==msg.MSG&&lastmsg.type!=msg.type))  new DatingViewAll().onrefresh(global["myDatingBeans"]);
    }

	checkNavigate('mm_myDating');
	if(msg.type == null){
		msg.type = 0;
	}
	
	if(!msg.page)
		msg.page = 1;
	
	var ajax = new AjaxWrap(null);
	ajax.openText("getdating.do?type=" + msg.type + "&page=" + msg.page + "&periodtype=" + periodtype, true);
}

function renderDatingPage(pb, type){
	return renderPageDiv(pb,"nextDating(%0,%p)",[type]);
}

function showContact(stask){
	global.contactInfo = stask.pop();
	showMiddleLayer("contactPage");
}


global.cDatingObject = function(dt){
	return "{did:" + dt.did + ", eid:" + dt.eid + "}";
}

function cDatingObjectPage(dt, pg){
	return "{did:" + dt.did + ", eid:" + dt.eid + ", page:" + pg + "}";
}


function datingoperator(msg){
	var obj = datingData.findItem(msg);
	if(obj != null){
		var qstr = "?did=" + obj.did + "&eid=" + obj.eid;
		switch(msg.MSG){
			case msg_showcontact:
				openLayerCall("viewcontact.do" + qstr);
			break;
			case msg_sendaccept:
				openLayerCall("acceptdating.do" + qstr);
			break;
			case msg_sendrefuse:
				openLayerCall("refusedating.do" + qstr);
			break;
		}
	}else{
		alert("find item error: did: " + msg.did + "eid: " + msg.eid);
	}
}

function RealityItem(){
	var tb = document.getElementById("realityTable");
	tb.style.display = "";	
}

function SatisfactionItem(){
	var tb = document.getElementById("safetyTable");
	tb.style.display = "";
}

function applyDating(uInfo){
	global.appDating = uInfo;
	openLayerCall("checkisblack.do?id=" + uInfo.id + "&reason=showApplyDating");
}
function showApplyDating(){
		procPoint('newDating', 'mainpoint', global);
}

function applyDatingByDid(msg){
	var uinfo;
	var dt = commendDatings.getById(msg);

	if(!dt){
		if(youInfo.info.id == msg.uid){
			uinfo = youInfo.info;
		}
	}else {
		uinfo = dt.uinfo;
	}
	if(!uinfo||!uinfo.embracerProvince) {
		getUInfo4newDating(msg.uid);
	}else {
		global.appDating = uinfo;
		procPoint('newDating', 'mainpoint', global);
	}
}

function applyDatingByUid(msg){
	var uinfo;
	uinfo = dateVisit.getById(msg);
	if(!uinfo||!uinfo.embracerProvince) {
		getUInfo4newDating(msg.id);
		uinfo = newDatingUInfo;
	}else {
		global.appDating = uinfo;
		procPoint('newDating', 'mainpoint', global);
	}
}
var newDatingUInfo;
function getUInfo4newDating(id) {
	var ajax = new AjaxWrap(null);
	ajax.openText("getuser4newdating.do?id=" + id, true);
}
function setNewDatingUInfo(stask) {
	newDatingUInfo = stask.pop();
	global.appDating = newDatingUInfo;
	procPoint('newDating', 'mainpoint', global);
}	


global.convCommentTag = function(tag, idtag){
	var ret = "";
	/*
	if((tag & 1) == 1){
		ret += "<a href=\"javascript:sendMessage(" + msg_commentdating+ "," + idtag + ")\" style='font-size:14px;color:#FF0033'>评价</a>  ";
	}
	*/
	if((tag & 2) == 2){
		return ret += "<a href=\"javascript:sendMessage(" + msg_datinginfo + "," + idtag + ")\" style='font-size:14px;color:#FF0033'>查看评价</a>";
	}
	
	return ret;
}

function nextDating(tp, pg){
	sendMessage(msg_getdating, {type:tp,page:pg});
}

global.renderAnswerRadio = function(qs, ind){
	var ret = "";
	for(var i = 0; i < qs.candidate.length; ++i){
		ret += "<input type='radio' name='answer[" + ind + "]' " + " value='" + i + "'>" + qs.candidate[i];	
	}
	return ret;
}
global.renderAnswerRadio2 = function(qs, ind){
	var ret = "";
	for(var i = 0; i < qs.candidate.length; ++i){
		ret += "<input type='radio' name='answer[" + ind + "]' " + " value='" + i + "' disabled>" + qs.candidate[i];	
	}
	return ret;
}

global.renderAnswer = function(qs, answers, ind){
	for(var i = 0; i < answers.length; ++i){
		if(answers[i].questionID == qs.questionID){
			return "<input type='hidden' name='answer[" + ind + "]' value='" + answers[i].answer + "'>" + 
			qs.candidate[answers[i].answer];
		}
	}
	return "";
}

global.renderAnswer2 = function(qs){
	var ret = "";
	for(var i = 0; i < qs.candidate.length; ++i){
		ret += " " + (i + 1) + "、" + qs.candidate[i];
	}
	return ret;
}

function getOperUrl(oper, item){
	switch(oper){
		case 0:
		{
			//return "<input type='button' class='anniu' value='拒绝' " + 	"onclick='sendMessage("+ msg_refusedating + "," + global.cDatingObject(item.dinfo) + ")'>";
			return "<a href='javascript:var a;' "+ "onclick='sendMessage("+ msg_refusedating + ",{dinfo:" + global.cDatingObject(item.dinfo)  +",page:"+global.managepb.current+"})'><img src='images/tongyin.gif' border='0'></a>";
		}
		case 1:
		{
			//return "<input type='button' class='anniu' value='同意' " + 			"onclick='sendMessage(" + msg_acceptdating + "," + global.cDatingObject(item.dinfo) + ")'>";
			return "<a href='javascript:var a;' "+ "onclick='sendMessage("+ msg_acceptdating + "," + global.cDatingObject(item.dinfo) + ")'><img src='images/tongyi.gif' border='0'></a>";
		}
		case 3:
		{
			//return "<input type='button' class='anniu' value='评价' " + 			"onclick='sendMessage(" + msg_commentdating + "," + global.cDatingObject(item.dinfo) + ")'>";
			if(item.dinfo.contactMsg!=0 && item.dinfo.contactMsg.status!=0)
				return "<a href='javascript:var a;' "+ "onclick='sendMessage("+ msg_commentdating + "," + global.cDatingObject(item.dinfo) + ")'><img src='images/100_1.gif'  border='0'></a>";
			else
				return "";
		}
		default:
			alert("no operator");
	}
}

global.renderOperators = function(item){
	var ret = "";
	
	var ops = item.dinfo.operatorBeanes;
	for(var i = 0; ops && i < ops.length; ++i){
		if(i>0 && parseInt(ops[0].opCode)>parseInt(ops[i].opCode))
			ret += getOperUrl(parseInt(ops[i].opCode), item);
		else
			ret = getOperUrl(parseInt(ops[i].opCode), item) + ret;
	}
	return ret;
}

function getManageOperUrl(oper, item){
	switch(oper){
		case 0:
		{
			if(item.dinfo.kind==1)
				return "<tr><td align='center' ><a href='javascript:sendMessage("+msg_refusedating+",{dinfo:"+ global.cDatingObject(item.dinfo) +",page:"+global.managepb.current+"})'><img src='images/list_jj.gif' width='94' height='25' border='0'></a></td></tr>";
			else
				return "";
		}
		case 1:
		{
			if(item.dinfo.kind==1)
				return "<tr><td align='center' ><a href='javascript:acceptBySponsor("+ global.cDatingObject(item.dinfo) +","+ global.managepb.current +")'><img src='images/list_ty.gif' width='94' height='25' border='0'></a></td></tr>";
			else
				return "<tr><td align='center' ><a href='javascript:sendMessage("+msg_datinginfo+","+ global.cDatingObject(item.dinfo) +")'><img src='images/list_ck.gif' width='94' height='25' border='0'></a></td></tr>";

		}
		case 3:
		{
			if(item.dinfo.contactMsg!=0 && item.dinfo.contactMsg.status!=0){
			    var sexhim = rdsexHim(item.uinfo.sex);
			    if(item.uinfo.id==myInfo.info.id)  sexhim = rdsexHim(global.dateBean.uinfo.sex);
				return "<tr><td align='center' ><a href='javascript:sendMessage("+msg_commentdating+","+ global.cDatingObject(item.dinfo) +")'>约会完成了？给"+sexhim+"个评价</a></td></tr>";
			}else
				return "";
		}
		default:
			alert("no operator");
	}
}
global.renderManageOperators = function(item){
	var ret = "";
	
	var ops = item.dinfo.operatorBeanes;
	for(var i = 0; ops && i < ops.length; ++i){
		if(i>0 && parseInt(ops[0].opCode)>parseInt(ops[i].opCode))
			ret += getManageOperUrl(parseInt(ops[i].opCode), item);
		else
			ret = getManageOperUrl(parseInt(ops[i].opCode), item) + ret;
	}
	return ret;
}

function doAfterApply(){
	var isempty = true;
	isempty &= (myInfo.info.personality==''&&myInfo.info.speciality=='');
	isempty &= (myInfo.info.loveViewpoint==''&&myInfo.info.marriageViewpoint=='');
	isempty &= (myInfo.info.hobby==''&&myInfo.info.favorSport=='');
	isempty &= (myInfo.info.favorDish==''&&myInfo.info.favorPlace=='');
	isempty &= (myInfo.info.favorDatePlace=='');
	if(isempty){
		sendMessage(msg_needinput, {nextmsg:'msg_reg2'});
	}else if(myInfo.info.intro==''&&myInfo.info.favorEmbracer==''){
		sendMessage(msg_needinput, {nextmsg:'msg_reg3'});
	}else if(myInfo.info.hasPortrait == 0){
		sendMessage(msg_needinput, {nextmsg:'msg_reg4'});
	}else{
		var lastmsg = JSON.parse(window.frames['histroyFrame'].document.body.innerText);
		switch(lastmsg.MSG){
			case msg_pubdating:
				sendMessage(msg_getdating, {type:0});		//发起公开约会
				break;
			case msg_datinginfo:
				sendMessage(msg_getdating, {type:1});		//响应约会
				break;
			default:
				sendMessage(msg_getdating, {type:0});		//发起私人约会(因为发布私人约会页面没有记录到历史)
				break;
		}
	}
}

function doAfterMDFailed() {
	sendMessage(msg_getdating, {type:0});
}

function doAfterReject(){
	sendMessage(msg_getdating, {type:1});
}
function doAfterBidDate(){
	sendMessage(msg_getdating, {type:0});
}

function checkComment(){
	verify.clearTips();
	var tag = false;
	tag |= verify.verifyRadio(document, 'datingComplete', true);
	tag |= verify.verifyRadio(document, 'onTime', true);
	tag |= verify.verifyRadio(document, 'checkCarNo', true);
	tag |= verify.verifyRadio(document, 'reality', true);
	tag |= verify.verifyRadio(document, 'satisfaction', true);
	tag |= verify.verifyRadio(document, 'possibility', true);
	return !tag;
}

function showBidWindow(msg) {
	var type = msg.type;
	var dateid = msg.id;
//	global.dbbean = stask.pop();
	if(type==1) {//show bid window
		openWindowWrap(function(){
			//global.bidDateId = dateId;
			return global.gTemplates.get("biddate").process(global);
		});	
	}
	else {
		var ajax = new AjaxWrap(null);
		ajax.openText("getbidinfo.do?id=" + dateid, true);
	}
	
}

function showBidInfo(stask) {
	global.bidtype = stask.pop();
	global.bidDateId = stask.pop();
	global.bidinfo = stask.pop();
		
	if(global.bidtype==1) {//show bid window
		openWindowWrap(function(){
			//global.bidDateId = dateId;
			return global.gTemplates.get("biddate").process(global);
		});
	}else {//show bid info
		openWindowWrap(function(){
			return global.gTemplates.get("bidinfo").process(global);
		});
	}
	
}
function cancelBid(dateId) {
	var ajax = new AjaxWrap(null);
	ajax.openText("biddate.do?valid=3&dateId="+dateId, true);
	
}

var manageEntity = new ArrayInfoData(findDating);
function manageEntityView(){
	this.onrefresh = function(infoes){
		global["manageEnt"] = infoes;
		procPoint('manageDate', 'mainpoint', global);
	}
}
manageEntity.register(new manageEntityView());
function setManageDatingPre(stask){
	global.managepb  =  stask.pop();
	global.entityid = stask.pop();
	global.dateBean = stask.pop();
	if(!global.datingpage)  global.datingpage={current:0};
}

function procManageDatingInfo(msg){
	if(!msg.eid)
		msg.eid = 0;
	if(!msg.apply)
		msg.apply = 0;
	var ajax = new AjaxWrap(null);
	ajax.openText("managedate.do?id=" + msg.id + "&eid=" + msg.eid + "&page=" + msg.page+"&apply="+msg.apply, true);
}

global.renderManagedate = function(pp){
	global.item = pp;
	return global.gTemplates.get("manageDateItem").process(global);

}

function renderManageDatingPage(dateid,pb){
	return renderPageDiv(pb,"sendMessage(msg_managedate,{id:%0,page:%p})",[dateid]);
}

function renderOperStatusPic(status) {
	var picpath = "images/list_xx1.gif"; //成功, 2操作？ 3.失败
	if(status==19 || status==18 || status==17 || status==13 || status==12 ) {
		picpath = "images/list_xx3.gif";
	}
	else if(status==14 || status==15 || (status>=4 && status<=10)) {
		picpath = "images/list_xx2.gif";
	}
	return picpath;
}

function procPaycontact(msg){
	var ajax = new AjaxWrap(null);
	ajax.openText("paycontact.do?id=" + msg.id + "&eid=" + msg.eid + "&page=" + msg.page, true);
}

function doAfterPaycontact(stask) {
	var id = stask.pop();
	var page = stask.pop();
	loadHistory();
}

function showDatingDetail(stask) {
	global.dateBean = stask.pop();
	return global.gTemplates.get("datingDetail").process(global);

}

var datingDetail = new ArrayInfoData();
function datingDetailView(){
	this.onrefresh = function(infoes){
		global["dateBean"] = infoes;
		try{
	        if(infoes.dinfo.eid!=-1 && !datingData.getById(infoes.dinfo))  datingData.addItem(infoes);
	    }catch(err){}	//捕捉一个奇怪的错误
		procPoint('datingDetail', 'mainpoint', global);
	}
}
datingDetail.register(new datingDetailView());

function procReaddatemsg(msg) {
	var msgid = msg.id;
	var eid = msg.did;
	var page = msg.page;
	var ajax = new AjaxWrap(null);
	ajax.openText("readdatemsg.do?id=" + msgid+"&eid="+eid+"&page="+page, true);		
}

function doAfterReaddatemsg(stask) {
	var id = stask.pop();
	var page = stask.pop();
	var ajax = new AjaxWrap(null);
	ajax.openText("managedate.do?id=" + id + "&page=" + page, true);
}

function acceptBySponsor(msg,page) {

	var ajax = new AjaxWrap(null);
	ajax.openText("acceptdatingbynoinput.do?id=" + msg.did + "&eid=" + msg.eid+"&page="+page, true);
}

function renderDatingsStatusColor(manage_text) {
	if(manage_text!='已结束' && manage_text!='已完成' && manage_text!='约会失败' && manage_text!='进行中') {
		return "#ff0000";
	}else{
		return "666666";
	}

}

function renderBidStatus(dinfo) {
	var dtstatus = dinfo.dtStatus;
	var etstatus = dinfo.etStatus;	
	if( (dtstatus==5 || dtstatus==6) &&  !(etstatus==12 || etstatus==13 || etstatus==16 || etstatus==17 || etstatus==18 || etstatus==19) ) 
		return 1;
	else
		return 0;
	
}
function judgeIfNeedDialog(dateBean, responseInfo) {
	var dinfo = dateBean.dinfo;
	var dtstatus = dinfo.dtStatus;
	var returnType = -1;

	switch (parseInt(dtstatus)) {
  		case 1: case 3:		//等待响应或者等待审核的情况
    		returnType = 1;
    		break;
  		case 5:  case 6: 	//约会还没有人响应
    		if( (responseInfo && responseInfo.length==0) || (dinfo.kind==2 && responseInfo[0].dinfo.etStatus==4) )  returnType = 1;
    		break;
  		case 7:				//过期无人响应的情况
    		if( (responseInfo && responseInfo.length==0) || (dinfo.kind==2 && responseInfo[0].dinfo.etStatus==13) )  returnType = 2;
    		break;
  		case 2:				//审核不通过的情况
  		case 4:
    		returnType = 3;
    		break;
  		case 9:				//约会被终止
    		returnType = 4;
    		break;
  		default:			//其它情况
    		returnType = -1;
    		break;
	}
	if(dateBean.uinfo.userType==-1)  returnType = 4;
	if(	responseInfo && responseInfo.length>0 &&
		responseInfo[0].dinfo.contactMsg!=null && 
		responseInfo[0].dinfo.contactMsg.status==1)  returnType=-1;
	return returnType;
	
}
var date_progress_text =   [["发出邀请", "等待响应", "确认请求", "查看联系方式", "双方评价"],
							["响应约会", "等待确认", "查看联系方式", "双方评价"],
							["发出邀请", "等待响应", "查看联系方式", "双方评价"],
							["查看邀请", "等待确认", "查看联系方式", "双方评价"]];


function renderDateProgress(dinfo) {
	var selectedRow = (dinfo.kind-1)*2;
	var selectedColumn = 1;
	if(dinfo.embracer==global.gUInfo.id)  selectedRow=selectedRow+1;
	switch (parseInt(dinfo.etStatus)) {
  		case 9:				//等待响应
  		case 19:
    		selectedColumn = 1;
    		break;
   		case 18:			//等待响应
  		case 13:
    		selectedColumn = 1;
    		break;
  		case 11:			//查看联系方式
    		selectedColumn = 2;
    		if(dinfo.contactMsg.status==1)  selectedColumn = 3;
    		break;
		case 14: 			//查看联系方式/约会评价
  			if(dinfo.embracer==global.gUInfo.id)  selectedColumn = 2+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 3;
  			break;
		case 15: 			//查看联系方式/约会评价
  			if(dinfo.sponser==global.gUInfo.id)  selectedColumn = 2+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 3;
    		break;
		case 16:			//完成
    		selectedColumn = 4;
    		break;
   		default:			//其它情况
    		selectedColumn = 1;
    		break;
	}
	if(selectedRow==0)  selectedColumn=selectedColumn+1;
	var ret = "";
	for(var i = 0; i < date_progress_text[selectedRow].length; ++i){
		if(i < selectedColumn){
			ret += "<span style='color:#FE6700'>" + date_progress_text[selectedRow][i] + "→</span>";
		}else if(i == selectedColumn){
			ret += "<span style='color:#000000;font:bold'>" + date_progress_text[selectedRow][i] + "</span>→";
		}else{
			ret += date_progress_text[selectedRow][i] + "→";
		}
	}
	ret=ret.substring(0,ret.lastIndexOf("→"));
	return ret;
	
}
var date_manage_text =     [["进行中", "已结束"],
							["进行中", "约会成功<br>查看联系方式", "约会评价", "已完成", "约会失败"],
							["进行中", "约会成功<br>查看联系方式", "约会评价", "已完成", "约会失败"],
							["查看约会邀请", "约会成功<br>查看联系方式", "约会评价", "已完成", "约会失败"]];
//公开约会发布	公开约会响应	私人约会发布 私人约会响应

function renderDatingsStatus(dinfo) {
	var selectedRow = (dinfo.kind-1)*2;
	var selectedColumn = 0;
	if(dinfo.embracer==global.gUInfo.id)  selectedRow=selectedRow+1;
	if(selectedRow==0 || dinfo.dtStatus==2 || dinfo.dtStatus==4 || dinfo.dtStatus==9){
		switch (parseInt(dinfo.dtStatus)) {
  		case 0: case 1: case 3: case 5: case 6:						//进行中
    		selectedColumn = 0;
    		break;
  		case 2: case 4: case 7: case 9: 							//已结束
    		selectedColumn = date_manage_text[selectedRow].length-1;
    		break;
		}
		return date_manage_text[selectedRow][selectedColumn];
	}
	switch (parseInt(dinfo.etStatus)) {
  		case 0: case 4: case 9: 									//等待确认
    		selectedColumn = 0;
    		break;
  		case 11: 													//约会成功/约会评价
  			selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			break;
		case 14: 													//约会成功/约会评价
  			if(dinfo.embracer==global.gUInfo.id)  selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 2;
  			break;
		case 15: 													//约会成功/约会评价
  			if(dinfo.sponser==global.gUInfo.id)  selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 2;
    		break;
  		case 16:													//完成
    		selectedColumn = 3;
    		break;
  		case 13: case 17: case 18: case 19: 						//约会失败
    		selectedColumn = 4;
    		if(dinfo.contactMsg.status==1)  selectedColumn = 3;
    		break;
   		default:													//其它情况
    		selectedColumn = 0;
    		break;
	}
	return date_manage_text[selectedRow][selectedColumn];
	
}

function procListDateVisit(msg){
	var ajax = new AjaxWrap(null);
	if(!msg.apply)
		msg.apply = 0;
	ajax.openText("listdatevisit.do?id=" + msg.id + "&page=" + msg.page+"&apply="+msg.apply, true);
}


function dateVisitView(){
	this.onrefresh = function(infoes){
		global["dvisitors"] = infoes;
		procPoint('listdatevisit', 'mainpoint', global);
	}
}
function findVisit(left, right){
	return left.id == right.id;
}
var dateVisit = new ArrayInfoData(findVisit);
dateVisit.register(new dateVisitView());

function setDateVisitPre(stask) {
	global.visitpb = stask.pop();
	global.dateBean = stask.pop();
	global.groupsendinfo = stask.pop();
}
function renderDateVisitPage(dateid,pb){
	return renderPageDiv(pb,"sendMessage(msg_listvisitdate,{id:%0,page:%p})",[dateid]);
}
function checkDatingComment(commentTag, idtag) {
	 if (typeof(convCommentTag)!="undefined" &&(typeof(global.datingType)!="undefined" || global.datingType!=2)){
		return convCommentTag(commentTag, idtag);
    }
}
var afterApplyInfo={
	nextmsg:'msg_reg2',
	applytype:1
};
function procNeedInput(msg){
	afterApplyInfo.nextmsg = msg.nextmsg;
	var lastmsg = JSON.parse(window.frames['histroyFrame'].document.body.innerText);
	switch(lastmsg.MSG){
		case msg_pubdating:
		case msg_singledate:
			afterApplyInfo.applytype=0;		//发起公开约会
			break;
		case msg_datinginfo:
			afterApplyInfo.applytype=2;		//响应公开约会
			if(lastmsg.eid){
				afterApplyInfo.applytype=3;	//响应私人约会
			}else{
				var at = new AjaxWrap(tipsCallBack);
				at.openText("gettips.do", true);
			}
			break;
		default:
			afterApplyInfo.applytype=1;		//发起私人约会(因为发布私人约会页面没有记录到历史)
			break;
	}
	procPoint('inputDataAfterApply', 'mainpoint', global);
}
function doAfterConcernDating() {
	showRWrap('操作成功', "此约会已保存在<a href='javascript:closeResult();closeLayer();sendMessage(msg_getdating, {type:2});'>我收藏的约会</a>", 1);
}
function doAfterCancelConcern() {
	getDating({type:2,page:1});
}
var datePlanUInfo={
	aim:'',
	embracerSex:'',
	embracerAgeBegin:'',
	embracerAgeEnd:'',
	embracerProvince:'',
	embracerCity:'',
	embracerIncome:'',
	embracerMarriage:'',
	hasloaded:false,
	content:'',
	vip:0
};
function showDatePlan(msg){
	initDatePlanUInfo();
	procPoint('dateplan', 'mainpoint', global);
}
function initDatePlanUInfo(){
	if(!datePlanUInfo.hasloaded){
		datePlanUInfo.aim = global.gUInfo.aim;
		datePlanUInfo.embracerSex = global.gUInfo.embracerSex;
		datePlanUInfo.embracerAgeBegin = global.gUInfo.embracerAgeBegin;
		datePlanUInfo.embracerAgeEnd = global.gUInfo.embracerAgeEnd;
		datePlanUInfo.embracerProvince = global.gUInfo.embracerProvince;
		datePlanUInfo.embracerCity = global.gUInfo.embracerCity;
		datePlanUInfo.embracerIncome = global.gUInfo.embracerIncome;
		datePlanUInfo.embracerMarriage = global.gUInfo.embracerMarriage;
		datePlanUInfo.hasloaded = true;
	}
}
function renewDatePlanUInfo(){
	datePlanUInfo.hasloaded = false;
}
function changeIdealTable(isUnfold){
		showElement('idealtext',!isUnfold);
		showElement('dttable2',isUnfold);
		if (!isUnfold) {
			saveDateFavorForm();
			procPoint('dateIdeal', 'idealtext', global);
		}
}
function submitDateFavor(){
	var queryString =	formToRequestString('dateplanform');

	var ajax = new AjaxWrap(null);
	ajax.postFormText("editdatefavor.do", queryString, true);
}
function doAfterDateFavor(){
		saveDateFavorForm();
		sendMessage(msg_showdateselect);
}
function saveDateFavorForm(){
		datePlanUInfo.aim = document.getElementsByName('aim')[0].value;
		datePlanUInfo.embracerSex = document.getElementsByName('embracerSex')[0].checked?'0':'1';
		datePlanUInfo.embracerAgeBegin = document.getElementsByName('embracerAgeBegin')[0].value;
		datePlanUInfo.embracerAgeEnd = document.getElementsByName('embracerAgeEnd')[0].value;
		datePlanUInfo.embracerProvince = document.getElementsByName('embracerProvince')[0].value;
		datePlanUInfo.embracerCity = document.getElementsByName('embracerCity')[0].value;
		datePlanUInfo.embracerIncome = document.getElementsByName('embracerIncome')[0].value;
		datePlanUInfo.embracerMarriage = document.getElementsByName('embracerMarriage')[0].value;
}
function showDateSelect(){
		procPoint('dateselect', 'mainpoint', global);
}
function selectDateType(){
	if(document.getElementsByName('selectdatetype')[0].checked){
		writeHistory({MSG:msg_index});
		sendMessage(msg_pubdating);
	}else
		sendMessage(msg_scprvdatesearch,{from:1});
}
function deployQuestionTable(){
		var dn = document.getElementById('questiondeploy');
		if(dn){
			dn.style.display="none";
		}
		var tb = document.getElementById("questioninput");
		if(tb){
			tb.style.display = "";
		}
}
function foldQuestionTable(){
		var dn = document.getElementById('questiondeploy');
		if(dn){
			dn.style.display="";
		}
		var tb = document.getElementById("questioninput");
		if(tb){
			tb.style.display = "none";
		}
}

//用于沟通记录显示的约会状态
var commun_date_description =  [["等待回应……", "已结束。", ""],
								["等待回应……", "约会成功，查看联系方式。", "约会评价中。", "已完成。", "约会失败。", "[user]拒绝了响应，约会失败。"],
								["等待回应……", "约会成功，查看联系方式。", "约会评价中。", "已完成。", "约会失败。", "[user]拒绝了响应，约会失败。"],
								["等待回应……", "约会成功，查看联系方式。", "约会评价中。", "已完成。", "约会失败。", "[user]拒绝了响应，约会失败。"]];
//公开约会发布	公开约会响应	私人约会发布 私人约会响应

function renderCommunDateStatus(dinfo) {
	var selectedRow = (dinfo.kind-1)*2;
	var selectedColumn = 0;
	var uid=-1;
	if(dinfo.embracer==global.gUInfo.id)  selectedRow=selectedRow+1;
	if(selectedRow==0 || dinfo.dtStatus==2 || dinfo.dtStatus==4 || dinfo.dtStatus==9){
		switch (parseInt(dinfo.dtStatus)) {
  		case 0: case 1: case 3: case 5: case 6:						//进行中
    		selectedColumn = 0;
    		break;
  		case 2: case 4: case 7: case 9: 							//已结束
    		selectedColumn = commun_date_description[selectedRow].length-2;
    		break;
		}
		return commun_date_description[selectedRow][selectedColumn];
	}
	switch (parseInt(dinfo.etStatus)) {
  		case 0: case 4: case 9: 									//等待确认
    		selectedColumn = 0;
    		break;
  		case 11: 													//约会成功/约会评价
  			selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			break;
		case 14: 													//约会成功/约会评价
  			if(dinfo.embracer==global.gUInfo.id)  selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 2;
  			break;
		case 15: 													//约会成功/约会评价
  			if(dinfo.sponser==global.gUInfo.id)  selectedColumn = 1+parseInt(dinfo.contactMsg.status);
  			else  selectedColumn = 2;
    		break;
  		case 16:													//完成
    		selectedColumn = 3;
    		break;
  		case 13: case 17:					 						//约会失败
    		selectedColumn = 4;
    		if(dinfo.contactMsg.status==1)  selectedColumn = 3;
    		break;
  		case 18:		 											//约会被拒绝
    		selectedColumn = 5;
    		uid=dinfo.sponser;
    		break;
  		case 19: 													//约会被拒绝
    		selectedColumn = 5;
    		uid=dinfo.embracer;
    		break;
   		default:													//其它情况
    		selectedColumn = 0;
    		break;
	}
	var result = commun_date_description[selectedRow][selectedColumn];
	result = result.replace('[user]',getNickById(uid));
	return result;
	
}
var msg_reg1 = msg_editinfo;
var msg_reg2 = msg_editinfo + 1;
var msg_reg3 = msg_editinfo + 2;
var msg_reg4 = msg_editinfo + 3;
var msg_reg5 = msg_editinfo + 4;
var msg_reg6 = msg_editinfo + 5;
var msg_reg7 = msg_editinfo + 6;
var msg_edittodaymood = msg_editinfo + 8;
var msg_closetip = msg_editinfo + 9;
var msg_regcomplete = msg_editinfo + 2000;

addMsgRange(msg_reg1, msg_reg6 + 2, [procEditInfo]);

addMsg(msg_edittodaymood, [procEditTodaymood]);

regTemplateId = ["editReg1", "editReg2", "editReg3",
				 "editReg4", "editReg5", "editReg6",
				 "editReg7"];

function procEditInfo(msg){
	var pos = msg.MSG - msg_editinfo;
	checkNavigate('mm_setCenter');
	//render mainpoint
	if(pos<=2||pos==6){
		procPoint('editRegRoot', 'mainpoint', global);
		var rid = "reg" + (pos + 1);
		var toChange = document.getElementById(rid);
		if(toChange){
			toChange.className = "per2";
		}
	}
	//render content
	if(pos==3)
		getPortraitStatus();
	else if(pos==4)
		getMailStatus();
	else if((pos<=2||pos==6) && !msg.havebanner){
		global.shouldMaskHeader = true;
		procPoint(regTemplateId[pos], 'regpoint', global);
		global.shouldMaskHeader = false;
	}else
		procPoint(regTemplateId[pos], 'mainpoint', global);
}

function submitReg1(){
	calDate('byear', 'bmonth', 'bday', 'birthday');
	if(!reg.step1()){
		var queryString =	formToRequestString('step1');

		var ajax = new AjaxWrap(null);
		ajax.postFormText("editreg1.do", queryString, true);

	}
}

function submitReg2(){
	var queryString =	formToRequestString('reg2form');

	var ajax = new AjaxWrap(null);
	ajax.postFormText("editreg2.do", queryString, true);
}

function submitReg3(){
	var queryString =	formToRequestString('reg3form');

	var ajax = new AjaxWrap(null);
	ajax.postFormText("editreg3.do", queryString, true);
}

function submitReg5(){
	var queryString =	formToRequestString('step5');

	var ajax = new AjaxWrap(null);
	ajax.postFormText("changemobileremind.do", queryString, true);
}

function ageselSearch(sFilter) {

	var ageavg = parseInt( (parseInt(sFilter.ageBegin) + parseInt(sFilter.ageEnd)) /2);
	var agesel = 1;
	if(ageavg >= 18 && ageavg <=25 )
		agesel = 1;

	else if(ageavg >= 26 && ageavg <=35 )
		agesel = 2;

	else if(ageavg >= 36 && ageavg <=45 )
		agesel = 3;

	else if(ageavg >= 46  )
		agesel = 4;
    return agesel;
}
var heightEdge = [0,145,150,155,160,165,170,180,300];
function heightselSearch(sFilter) {
	var heightavg = parseInt( (parseInt(sFilter.heightBegin) + parseInt(sFilter.heightEnd)) /2);
	var heightsel = -1;
	for(var i = 0; i < heightEdge.length-1; ++i){
		if(heightavg>heightEdge[i] && heightavg<=heightEdge[i+1])
			heightsel=i+1;
	}
    return heightsel;
}


function searchfixTd(now, up){
	var ret = "";
	for(var i = now; i <up; ++i){
		ret += "<td width='232' height='144'>&nbsp;</td>  ";
	}
	return ret;
}

function transAgeRange(form_step3,selectname,beginname,endname) {
	var idx = form_step3.elements[selectname].selectedIndex;
	var agesel = parseInt(form_step3.elements[selectname].options[idx].value);
	var setEmbracerAgeBegin=function(age) {
		form_step3.elements[beginname].value = age;

	}
	var setEmbracerAgeEnd=function(age) {
		form_step3.elements[endname].value = age;
	}
	switch(agesel) {
			case 1:
				setEmbracerAgeBegin(18);
				setEmbracerAgeEnd(25);
				break;
			case 2:
				setEmbracerAgeBegin(26);
				setEmbracerAgeEnd(35);

				break;
			case 3:
				setEmbracerAgeBegin(36);
				setEmbracerAgeEnd(45);

				break;
			case 4:
				setEmbracerAgeBegin(45);
				setEmbracerAgeEnd(100);
				break;
			default:
				setEmbracerAgeBegin(18);
				setEmbracerAgeEnd(25);
				break;

	}

}
function transHeightRange(form_step3,selectname,beginname,endname) {
	var idx = form_step3.elements[selectname].selectedIndex;
	var heightsel = parseInt(form_step3.elements[selectname].options[idx].value);
	var setEmbracerHeightBegin=function(height) {
		form_step3.elements[beginname].value = height;

	}
	var setEmbracerHeightEnd=function(height) {
		form_step3.elements[endname].value = height;
	}
	if(parseInt(heightsel)==-1){
		setEmbracerHeightBegin(-1);
		setEmbracerHeightEnd(-1);
	}else{
		setEmbracerHeightBegin(heightEdge[heightsel-1]+1);
		setEmbracerHeightEnd(heightEdge[heightsel]);
	}
}
function procEditTodaymood() {
	showMiddleLayer("edittodaymood");
}




/**
 * 显示弹出图片。
 * @param tag 目标元素。弹出的框将显示在其旁边
 * @param url 需要弹出的图片的URL
 * @param pos 弹出位置。0=右，1=上，2=左，3=下，缺省为自动选择最佳方位。
 */
function showImage(imgname,tag,url,pos) {
    tag.attachEvent("onmouseout",mouseout);

    var helper = document.all["_showImage"];
    helper.removeAttribute("src");
    helper.removeAttribute("width");
    helper.removeAttribute("height");
    helper.onload=showImage_show;
    helper.src = url;

    function mouseout() {
        //if(event.toElement != helper) //注释本行将使鼠标移出原图时弹出图立即关闭
            helper.onmouseout();
        helper.onload = null;
        helper.removeAttribute("src");
        tag.detachEvent("onmouoseout",arguments.callee);
    }

    function showImage_show() {
        var rc = tag.getBoundingClientRect();
        helper.style.display = '';
        var rc2 = helper.getBoundingClientRect();
        helper.alt = (rc2.right-rc2.left)+" x "+(rc2.bottom-rc2.top);

        var body = document.body;

        var l = rc.left;
        var t = rc.top;
        var r = body.clientWidth-rc.right;
        var b = body.clientHeight-rc.bottom;
        var ratio = (rc2.bottom-rc2.top) / (rc2.right-rc2.left);

        var pos = typeof(pos)!='undefined'?pos:-1;
        if(pos >= 0) { //指定了显示方位
            var w = pos==1||pos==3?body.clientWidth : pos==0?r:l;
            var h = pos==0||pos==2?body.clientHeight : pos==1?t:b;
            if(h < w*ratio) w = h/ratio;
            else if(w < h/ratio) h = w*ratio;

        } else { //未指定显示方位，自动选择
            var pos0_2 = l < r ? 0 : 2;
            var pos1_3 = t < b ? 3 : 1;
            var w = l < r ? r : l;
            var h = t < b ? b : t;
            var h1 = w*ratio; if(h1 > body.clientHeight) h1 = body.clientHeight;
            var h2 = body.clientWidth*ratio; if(h2 > h) h2 = h;
            if(h1 > h2) {
                var pos = pos0_2;
                h = h1;
                w = h1 / ratio;
            } else {
                var pos = pos1_3;
                h = h2;
                w = h2 / ratio;
            }
        }

        if(rc2.bottom-rc2.top > h || rc2.right-rc2.left > w) {
            helper.width = w;
            helper.height = h;
        }

        var rc2 = helper.getBoundingClientRect();
        l = (pos==1||pos==3?rc.left:pos==0?rc.right:rc.left-(rc2.right-rc2.left));
        t = (pos==0||pos==2?rc.top:pos==3?rc.bottom:rc.top-(rc2.bottom-rc2.top));
        var k = body.clientWidth-(l+rc2.right-rc2.left);
        if(k < 0) l += k;
        var k = body.clientHeight-(t+rc2.bottom-rc2.top);
        if(k < 0) t += k;

        helper.style.left = -2+body.scrollLeft+l;
        helper.style.top = -2+body.scrollTop+t;
    }

}

function change_areaByForm(doc, pro, c,idx){
	var province = doc.getElementsByName(pro)[idx];
	var city = doc.getElementsByName(c)[idx];

	city.options.length = 0;
	var length = 0;
	var arr = global.areaConst[province.options[province.selectedIndex].value].array;
	arr.each(function(value,i) {
		city.options[length] = new Option(value, i, length==0, false);
		++length;
	}
	)
}
function validNewMail(){
	var ne = $("contact_email");
	if(ne && ne.value.length>0)	{
		var ajax = new AjaxWrap(null);
		ajax.openText("rvemail.do?ne="+ne.value, true);
	}
}
function getPortraitStatus(){
	var ajax = new AjaxWrap(null);
	ajax.openText("getportraitstatus.do" , true);
}
function getMailStatus(){
	var ajax = new AjaxWrap(null);
	ajax.openText("getuncheckmail.do" , true);
}
function doAfterGetPrstatus(stask) {
	global.porstatus = stask.pop();
	var u = stask.pop();
	global.portraitAuditUrl = u ? u : global.gUInfo.photoUri;
	procPoint("editReg4", 'mainpoint', global);
}
function renderPrstatus() {
	var status = global.porstatus;
	var str = "";
	if(status==-2) str="您的形象照已经上传！<br><font color='red'>为了让您的资料更有吸引力，请参考标准图，从您上传的照片里截取出头像部分作为您资料页面的形象照缩略图。</font>";
//	else if(global.gUInfo.photoUri.indexOf("eye")==-1) str = "您已经上传了形象照，如果您有新的、更能展示您个人风采的照片，重新上传即可替换原来的照片。";
	else if (status == -1 || status == 2) {
		var puri = global.gUInfo.photoUri;
		if (puri.indexOf("eye") != -1) {
			str = "<font color='red'>您还没有形象照，请尽量挑选清晰美观、能展示您个人魅力的照片上传，以带给其他会员最好的第一印象。</font>";
		} else {
			if (puri.indexOf("PORTRAIT_CERT.AUDIT") != -1) {
				str = "<font color='red'>您的形象照已经上传，客服人员正在审核中，请耐心等待。</font>";
			} else {
				str = "直接上传新的照片即可替换掉现在的照片。";
			}
		}
	}
	else if(status==0) str="<font color='red'>您的形象照已经上传，客服人员正在审核中，请耐心等待。</font>";
	else if(status==1) str="<font color='red'>您所上传的形象照没有通过审核，请阅读下面的形象照要求，并重新上传最能展示您个人风采的、高清晰的照片。</font>";
//	else if(status==2) str="直接上传新的照片即可替换掉现在的照片。";
	return str;
}
function cropPortrait(p) {
	var ajax = new AjaxWrap(null);
	ajax.postFormText("editreg41.do", p, true);
}
var uncheckMailInfo = new InfoData();
uncheckMailInfo.register(new mailRemindView());
function mailRemindView(){
	this.onrefresh = function(infoes){
		global["mailinfo"] = infoes;
		procPoint('editReg5', 'mainpoint', global);
	}
}
function doAfterSetRemind(){
	if(window.frames['histroyFrame']){
		var lastmsg = JSON.parse(window.frames['histroyFrame'].document.body.innerText);
		if(lastmsg && lastmsg.MSG==msg_reg5){
			loadHistory();
		}
	}
}
function doAfterEditreg4(){
	sendMessage(msg_reg4);
}
function doAfterEditreg41(){
	sendMessage(msg_reg4);
}
function modifyPageStyle(style){
	var ajax = new AjaxWrap(null);
	ajax.openText("editpagestyle.do?id="+style, true);
}
function doAfterSetStyle(){
	procPoint('editReg7', 'regpoint', global);
}

addMsg(msg_closetip, [showCloseTips]);
function showCloseTips(msg){
	sendMessage(msg_index);
	showMiddleLayer("closelogintips");
	var dMask = document.getElementById("mask");
	if(dMask)  dMask.style.height = 1022;
	setCookie(myInfo.info.id + indexCookieName, "msg_closetip", "/", 10000);
}
function openUser(){
	openLayerCall("closeuserdetail.do?cs=1");
}

addMsg(msg_regcomplete, [showRegTips]);
function showRegTips(msg){
	global.gUInfo.vehicle=0;
	global.gUInfo.industry=-1;
	global.gUInfo.companyType=-1;
	procPoint('regcomplete', 'mainpoint', global);
	showMiddleLayer("regcompletetips");
	var dMask = document.getElementById("mask");
	if(dMask)  dMask.style.height = 1022;
	setCookie(myInfo.info.id + indexCookieName, "msg_regcomplete", "/", 10000);
}
function gohome(){
	window.location="index.htm";
}
regcomplete_verify = function(){
	verify.clearTips();
	var hasError = false;

	hasError |= instantverify.verifySelectByName('province','city');
	hasError |= instantverify.verifySelectByName('nativeProvince','nativeCity');
	hasError |= instantverify.verifySelectByName('industry');
	return hasError;
}
var frienddiv = "frienditem";

var msg_listvisituser = msg_friend_b;
var msg_getfriend = msg_friend_b + 1;
var msg_getdatefriend = msg_friend_b + 2;
var msg_blacklist = msg_friend_b + 3;

var msg_qiubos = msg_friend_b + 5;
var msg_sentMsg = msg_friend_b + 6;
var msg_recvGift = msg_friend_b + 7;
var msg_sentGift = msg_friend_b + 8;
var msg_friendapplys = msg_friend_b + 9;

var msg_aceeptapply  = msg_friend_b + 11;
var msg_rejectapply  = msg_friend_b + 12;


var fSubIds = ["mm_listvisituser", "mm_relationer", "mm_getdatefriend", "mm_blackList","",
				"mm_qiubo", "mm_sentMsg", "mm_recvGift", "mm_sentGift"];
				
var friends = new ArrayInfoData(findFriend);
function friendView(){
	this.onrefresh = function(infoes){
		global["FInfoes"] = infoes;
		procPoint("friendList", "friendpoint", global);
		checkSub(global["friendType"]);
	}
}

function findFriend(left, right){
	return left.id == right.id;
}

friends.register(new friendView());
addMsgRange(msg_listvisituser, msg_blacklist + 1, [procFriend]);

function checkSub(index){
	for(var i=0; i<fSubIds.length; i++){
		var sb = document.getElementById(fSubIds[i]);
		if(sb){
			sb.className = "per"+(index==i?"2":"");
		}
	}
}

var friendListCache = [null,null,null];
function procFriend(msg){
	checkNavigate('mm_myFriend');
	if(!msg.page){
		msg.page = 1;
	}
	var friendtype = msg.MSG - msg_friend_b;

	var shouldreload = (document.getElementById('friendpoint')==null);
	if(lastmsg.MSG!=msg.MSG||shouldreload)  procPoint("myFriend", "mainpoint", global);
	checkSub(friendtype);
    if(global.FInfoes)  friendListCache[global["friendType"]]=global.FInfoes;
	global.FInfoes=friendListCache[friendtype];
	global["friendType"]=friendtype;
	if(lastmsg.MSG!=msg.MSG||shouldreload){
		procPoint("friendList", "friendpoint", global);
		if(msg.MSG==msg_listvisituser && global['uvisitors']!=null)
			procPoint("listuservisit", "friendpoint", global);
		else
			procPoint("friendList", "friendpoint", global);
	}
	openLayerCall("getfriends.do?type=" + friendtype + "&page=" + msg.page)
}

function doAfterRemoveFriend(stask){
	var type = stask.pop();
	var page = stask.pop();
	eval("msg={page:"+page+"}");
	var msgtype = msg_friend_b + parseInt(type);
	sendMessage(msgtype,msg);
}

function doAfterReleaseBlack(stask){
	var page = stask.pop();
	eval("msg={page:"+page+"}");
	sendMessage(msg_blacklist,msg);
}

var msg_friendappdating  = msg_friend_b + 10;
var msg_friendcontact  = msg_friend_b + 11;
var msg_friendqiubo  = msg_friend_b + 12;
var msg_friendmessage  = msg_friend_b + 13;
var msg_friendaddblack  = msg_friend_b + 14;
var msg_friendreleaseblack  = msg_friend_b + 15;
var msg_removestranger = msg_friend_b + 16;
var msg_readleermsg = msg_friend_b + 17;
var msg_showleermsg = msg_friend_b + 18;

var msg_showCertRemind = msg_friend_b + 19;
var msg_showPortraitRemind = msg_friend_b + 20;
var msg_showComplainLayer = msg_friend_b + 21;
var msg_albumslideshow = msg_friend_b + 22;
//var msg_listvisituser = msg_friend_b + 23;
var msg_listarguuser = msg_friend_b + 24;
var msg_showdateplan = msg_friend_b + 25;
var msg_showdateselect = msg_friend_b + 26;
var msg_listcommunicate = msg_friend_b + 27;

addMsg(msg_showleermsg, [showLeerMsg]);
addMsg(msg_showCertRemind,[procShowCertRemind]);
addMsg(msg_showPortraitRemind,[procshowPortraitRemind]);
addMsg(msg_showComplainLayer,[showComplainLayer]);
addMsgRange(msg_friendappdating, msg_friendreleaseblack + 3, [procFriendOp]);
addMsg(msg_albumslideshow, [procAlbumSlideShow]);
//addMsg(msg_listvisituser, [procListUserVisit]);
addMsg(msg_listarguuser, [procListArguUser]);
addMsg(msg_showdateplan, [showDatePlan]);
addMsg(msg_showdateselect, [showDateSelect]);
addMsg(msg_listcommunicate, [procListCommunicate]);

function procFriendOp(msg){
	var finfo = friends.getById(msg);
	if(!finfo){
		if(youInfo.info.id == msg.id){
			finfo = youInfo.info;
		}
	}
	switch(msg.MSG){
		case msg_friendappdating:
			if (global.gUInfo.id == msg.id) {
				showResult([{closeTag:"0",content:"对不起，您不能给自己发约会",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败!"}]);
			} else {
				if (!finfo||!finfo.embracerProvince) {
					getUInfo4newDating(msg.id);
				} else {		
					applyDating(finfo);
				}
			}
			break;
		case msg_friendcontact:
			addFriend(finfo)
			break;
		case msg_friendqiubo:
			//openLayerCall("sendqiubo.do?id=" + msg.id);
			//break;
			preSendLeer(msg);
			break;
		case msg_friendmessage:
			showMessagePage(msg.id, 1);
			break;
		case msg_friendaddblack:
			openLayerCall("addblack.do?id=" + msg.id+"&page="+msg.page);
			break;
		case msg_friendreleaseblack:
			openLayerCall("releaseblack.do?id=" + msg.id+"&page="+msg.page);
			break;
		case msg_removestranger:
			openLayerCall("delstranger.do?id=" + msg.id+"&page="+msg.page);
			break;
		case msg_readleermsg:
			readLeerMsg(msg);
			break;
	}
}


addMsgRange(msg_aceeptapply, msg_rejectapply + 1, [procApply]);

function procApply(msg){
	var str = "?did=" + msg.did + "&eid=" + msg.eid;
	if(msg.MSG == msg_aceeptapply){
		openLayerCall("acceptcontact.do" + str)
	}else{
		openLayerCall("rejectcontact.do" + str)
	}
}

var qiuboData = new ArrayInfoData();
function qiuboView(){
	this.onrefresh = function(infoes){
		global["qiubos"] = infoes;
		procPoint('qiubo', 'friendpoint', global);
	}
}
qiuboData.register(new qiuboView());
addMsgRange(msg_qiubos, msg_friendapplys + 1, [procFListOper]);
function procFListOper(msg){
	checkNavigate('mm_qiuboGift');
	if(msg.page==null)  msg.page = 1;
	switch(msg.MSG){
		case msg_qiubos:
		case msg_sentMsg:
			if(msg.type==null){
				if(global.qiubotype!=null)  msg.type=global.qiubotype;
				else msg.type = (global.tips.qiubo!=0?0:-1);
			}
			global.qiubotype = msg.type;
			break;
		case msg_recvGift:
		case msg_sentGift:
			if(msg.type==null){
				if(global.giftType)  msg.type=global.giftType;
				else msg.type = 0;
			}
			break;
	}
	global.quibopaidlist = "";
	var url = "";
	switch(msg.MSG){
		case msg_qiubos:
			url = "getallstrangermsg.do";
			break;
		case msg_sentMsg:
			url = "getsentmsg.do";
			break;
		case msg_recvGift:
		case msg_sentGift:
			url = "getgift.do";
			break;
	}
	var shouldreload = (document.getElementById('friendpoint')==null);
	if(lastmsg.MSG!=msg.MSG||shouldreload)  procPoint("myQiuboGift", "mainpoint", global);
	checkSub(msg.MSG - msg_friend_b);
	if(msg.MSG==msg_qiubos||shouldreload){
		if(!global["allsgmsg"])  global["allsgmsg"]=null;
		procPoint('allsgmessages', 'friendpoint', global);
		if(msg.page==1)  setUnreadedMsgCount();
	}
	if(msg.MSG==msg_sentMsg){
		if(!global["allsentmsg"])  global["allsentmsg"]=null;
		procPoint('allsentmessages', 'friendpoint', global);
	}
	if(msg.MSG==msg_recvGift||msg.MSG==msg_sentGift){
		if(!global["gifts"]||global.giftType != msg.type)  global["gifts"]=null;
		global.giftType = msg.type;
		procPoint('giftList', 'friendpoint', global);
	}
	openLayerCall(url + "?page=" + msg.page+"&type="+msg.type);
}

var allMessagesData = new ArrayInfoData();
function allMessagesView(){
	this.onrefresh = function(infoes){
		global["allmessages"] = infoes;
		procPoint('allmessages', 'friendpoint', global);
	}
}
allMessagesData.register(new allMessagesView());

var applysData = new ArrayInfoData();
function applysView(){
	this.onrefresh = function(infoes){
		global["applys"] = infoes;
		procPoint('friendapply', 'friendpoint', global);
	}
}
applysData.register(new applysView());


function addFriend(ui){
	openLayerCall('concernuser.do?id=' + ui.id);
}

function sendQiubo(ui){
	openLayerCall('sendqiubo.do?id=' + ui.id);
}

global.renderXXXPage = function(mid, pb){
	return renderPageDiv(pb,"pnMessage(%0,%p)",[mid]);
}

function pnMessage(mid, pg){
	sendMessage(mid, {page:pg});
}

function setFPage(stask){
	global[stask.pop()] = stask.pop();
}

//	0,	//约会对方
//	1,	//直接沟通
//	2,	//加为好友
//	3,	//发送消息
//	4,	//加入黑名单
//	5,	//解除黑名单

function cfid(fid){
	return "{id:" + fid + "}";
}

function cfid(fid,page){
	return "{id:" + fid + ",page:"+page+"}";
}
function friendDatingOp(fid){
	return "sendMessage(" + msg_friendappdating + ", " + cfid(fid) + ")"; 
}

function friendContactOp(fid){
	return "sendMessage(" + msg_friendcontact + ", " + cfid(fid) +")"; 
}

function friendQiuboOp(fid){
	return "showLeerMessagePage("+ fid + ")";	
}

function friendMessageOp(fid){
	return "sendMessage(" + msg_friendmessage + "," + cfid(fid) + ")";
}

function friendAddBlackOp(fid,page){
	return "sendMessage(" + msg_friendaddblack + ", " + cfid(fid,page) + ")";
}

function friendReleaseBlackOp(fid,page,sex){
	return "showDelConfirm({id:"+fid+",page:"+page+",fname:'releaseBlack',content:'确定把"+rdsexHim(sex)+"从“黑名单”里删除？'})";
}

function friendSendGiftOp(fid, page, sex){
	return "sendMessage(" + msg_sendgift + ", {id:" + fid + ",sex:" + sex + "})";
}

var fOperator_Info = [{name:"<img src='images/opan_3.gif'  border='0'>",op:friendDatingOp}, 
				 {name:"", op:friendContactOp}, 
				 {name:"<img src='images/opan_2.gif'  border='0'>", op:friendQiuboOp}, 
				 {name:"", op:friendMessageOp}, 
				 {name:"<img src='images/opan_4.gif'  border='0'>", op:friendAddBlackOp}, 
				{name:"<img src='images/opan_6.gif'  border='0'>", op:friendReleaseBlackOp}];

function convFriendOper_Info(oper, id, nick,sex){
	if(sex==0){
		fOperator_Info[0].name="<img src='images/opan_3_0.gif'  border='0'>";
		fOperator_Info[2].name="<img src='images/opan_2_0.gif'  border='0'>";
	}
	else {
		fOperator_Info[0].name="<img src='images/opan_3.gif'  border='0'>";
		fOperator_Info[2].name="<img src='images/opan_2.gif'  border='0'>";
	}
	var ret = "";
	for(var i = 0; i < oper.length; ++i){
		if(oper[i] >=0 && oper[i] < fOperator_Info.length){
			ret += "<tr><td align='center'><a href=\"javascript:" + fOperator_Info[oper[i]].op(id, nick) + "\">" + 
				fOperator_Info[oper[i]].name + "</a></td></tr>";
		}
	}
	return	ret;
}

var fOperator = [{name:"<img src='images/gongn3.gif'  border='0'>",op:friendDatingOp}, 
				 {name:"", op:friendContactOp}, 
				 {name:"<img src='images/gongn2.gif'  border='0'>", op:friendQiuboOp}, 
				 {name:"", op:friendMessageOp}, 
				 {name:"<img src='images/button03_small.gif' width='68' height='18' border='0'>", op:friendSendGiftOp}, 
				 {name:"<img src='images/gongn4.gif'  border='0'>", op:friendAddBlackOp}, 
				{name:"<img src='images/gongn40.gif'  border='0'>", op:friendReleaseBlackOp}];

global.convFriendOper = function(oper, id, nick,page,sex){
	if(sex==0) {
		fOperator[0].name = "<img src='images/gongn3_0.gif'  border='0'>";
	}
	else {
		fOperator[0].name = "<img src='images/gongn3.gif'  border='0'>";
	}
	var ret = "";
	for(var i = 0; i < oper.length; ++i){
		if(oper[i] >=0 && oper[i] < fOperator.length && fOperator[oper[i]].name!=''){
			ret += "<a href=\"javascript:" + fOperator[oper[i]].op(id, page, sex) + "\">" + fOperator[oper[i]].name + "</a>&nbsp;";
		}
	}
	return	ret;
}
	
global.convFriendOperV2 = function(oper, id, nick){
	var ret = "";
	for(var i = 0; i < oper.length; ++i){
		if(oper[i] >=0 && oper[i] < fOperator.length){
			ret += "<div style='height:30'><a href=\"javascript:" + fOperator[oper[i]].op(id, nick) + "\">" + fOperator[oper[i]].name + "</a></div>";
		}
	}
	return	ret;
}

function setFriendsPage(stask){
	global["friendPage"] = stask.pop();
	global["friendType"] = stask.pop();
}

function renderFriendPage(pb, msgtype){
	var type = msg_friend_b + parseInt(msgtype);
	return renderPageDiv(pb,"sendMessage(%0,{page:%p})",[type]);
}

global.renderFriendItem = function(pp, c){
	global.friendItem = pp;
	global.friendItem.color = c;
	if(global.friendItem.color%2==0)
	return global.gTemplates.get("friendItem").process(global);
}

global.removeFriendItem = function(stask){
	var id = stask.pop();
	var doc = document.getElementById(frienddiv + id);
	if(doc){
		doc.outerHTML = "";
	}
}

function refreshFriendItem(stask){
	var item = stask.pop();
	var doc = document.getElementById(frienddiv + item.id);
	if(doc){
		doc.outerHTML = global.renderFriendItem(item, doc.getAttribute('ctag'));
	}
}

function checkReason(){
	var par = document.getElementById('tpcTable');
	return !verify.verifyRadio(par, 'topic', true);
}

function setUnreadedMsgCount() {
	var at = new AjaxWrap(tipsCallBack);
	at.openText("gettips.do", true);
}

var allStrangerMsg = new ArrayInfoData();
function allStrangerMsgView(){
	this.onrefresh = function(infoes){
		global["allsgmsg"] = infoes;
		procPoint('allsgmessages', 'friendpoint', global);
	}
}
allStrangerMsg.register(new allStrangerMsgView());
var allSentMsg = new ArrayInfoData();
function allSentMsgView(){
	this.onrefresh = function(infoes){
		global["allsentmsg"] = infoes;
		procPoint('allsentmessages', 'friendpoint', global);
	}
}
allSentMsg.register(new allSentMsgView());

function preSendLeer(msg) {
		openLayerCall("presendleermsg.do?id=" + msg.id);
}

function showSendLeerWindow(stask) {
	global.sendInfo = stask.pop();
	openWindowWrap(function(){
		return global.gTemplates.get("sendleermsg").process(global);
	}
	)
}

function readLeerMsg(msg) {
	var msgid = msg.id;
	var page = msg.page;
	var ajax = new AjaxWrap(null);
	ajax.openText("readchargeleer.do?id=" + msgid+"&page="+page, true);		

}

function doAfterReadChargeLeer(stask) {
	if($('friendpoint')!=null){
		var page = stask.pop();
		var msgid = stask.pop();
		if(!global.quibopaidlist)  global.quibopaidlist="";
		if(msgid>0)	 global.quibopaidlist+=msgid+";";
		if(global.quibopaidlist && msgid<0)	 global.quibopaidlist=global.quibopaidlist.replace(-msgid+";","");
		openLayerCall("getallstrangermsg.do" + "?page=" + page+"&type="+global.qiubotype+"&msglist="+global.quibopaidlist);
		setUnreadedMsgCount();
	}else{
		loadHistory();
	}
}
function deleteLeer(msg) {
	openLayerCall("deleteleermessages.do" + "?id=" + msg.id+"&page="+msg.page);
	
}
function doAfterDelSentLeer(stask) {
	var page = stask.pop();
	openLayerCall("getsentmsg.do" + "?page=" + page);
}
function deleteSentLeer(msg) {
	openLayerCall("deletesentmessages.do" + "?id=" + msg.id+"&page="+msg.page);
	
}

function strangerMsgView(){
	this.onrefresh = function(infoes){
		var mpt = document.getElementById('messagepage');
		var lt = document.getElementById('layertable');
		
		if(mpt && lt.style.display != "none"){
			mpt.innerHTML = global.renderLeerMessageView(infoes);
			$('mask').style.height=document.body.scrollHeight;
		}else{
			global["messageBean"] = infoes;
			global["viewmode"] = 0;
			showMsgView();
		}
	}

}
//added by leo: for loginandred.do message fail
function showMsgView(){
	var tmp = global.gTemplates.get("replyleer");
	if(tmp==""){
		setTimeout("showMsgView()", 500);
		return;
	}
	openWindowWrap(function(){
		return tmp.process(global);
	});
	movePlayer("rlPlayerContainer");

}

var strangerMsg = new ArrayInfoData();
strangerMsg.register(new strangerMsgView());

global.renderLeerMessageView = function(mb,viewmode){
	global.messageBean = mb;
	if(viewmode==null)  viewmode=global.viewmode;
	if(viewmode==null)  viewmode=0;
	global.viewmode=viewmode;
	var tmpsrc = global.gTemplates.get("leermessageList").process(global);
	return tmpsrc;
}
global.renderLeerMsgItem = function(pp){
	global.messageItem = pp;
	return global.gTemplates.get("leermessageItem").process(global);
}




global.renderLeerMessagePage = function(id, pb){
	return renderPageDiv(pb,"showLeerMessagePage(%0,%p);",[id]);
}

function showLeerMessagePage(id, page, isreply){
	if(isreply==undefined)  isreply=0;
	global.isreply=isreply;

	if (global.gUInfo.id == id) {
		showResult([{closeTag:"0",content:"对不起，您不能给自己发留言",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败!"}]);
	} else {
		if (!page) page = 1;
		openLayerCall("getleerbyperson.do?id=" + id + "&page=" + page);
	}
}
function showLeerMessagePageNotp(id, page){
	global.isreply=0;
	if (global.gUInfo.id == id) {
		showResult([{closeTag:"0",content:"对不起，您不能给自己发留言",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败!"}]);
	} else {
		if (!page) page = 1;
		openLayerCall("getleerbyperson.do?id=" + id + "&page=" + page+"&refresh=2");
	}
}

function showLeerMessagePageUsetp(id, page){
	global.isreply=0;
	if (global.gUInfo.id == id) {
		showResult([{closeTag:"0",content:"对不起，您不能给自己发留言",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败!"}]);
	} else {
		if (!page) page = 1;
		openLayerCall("getleerbyperson.do?id=" + id + "&page=" + page+"&refresh=1");
	}
}
function showLeerMsg(msg){
	sendMessage(msg_qiubo_cp,msg);
}

function showPortraitRemind(param){
	global.uid = param;
	openLayerCall("checkisblack.do?id=" + param + "&reason=showPortraitRemind_post");
}
function showPortraitRemind_post(){
	showMiddleLayer("portraitremind");
	document.getElementsByName('invitedid')[0].value=global.uid;
}

function getCorrectPhotoUrl(fullurl,uid){
    if(fullurl.indexOf('images')==-1)  return fullurl+getImageTail(uid,fullurl);
	else return	'javascript:showPortraitRemind('+uid+')';
}

function renderportraitflag(fullurl){
    if(fullurl.indexOf('images')==-1)  return 1;
    else
    	return 0;
}

function showCertRemind_post(){
	showMiddleLayer("certremind");
	document.getElementsByName('id')[0].value=global.uid;
}
function procShowCertRemind(msg) {
	global.uid = msg.id;
	openLayerCall("checkisblack.do?id=" + msg.id + "&reason=showCertRemind_post");
}
function procshowPortraitRemind(msg) {
	showPortraitRemind(msg.id);
}
function showComplainLayer(msg){

	global.cplid = msg.id;
	global.cpltype = msg.type;
	global.extraid = 0;
	if(msg.extraid) {
		global.extraid = msg.extraid;
	}
	showMiddleLayer("complainLayer");	
				
}

function showMsgComplainLayer(msg) {
	global.msgcomplain = msg;
	var ajax = new AjaxWrap(null);
	ajax.openText("checkmsgcomplain.do?id=" + msg.id, true);
}

function showMsgComplainLayerCb(x) {
	if (x == 1) {
		showResult([{closeTag:"1",content:"您已经举报过这条留言。",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败！"}]);
	} else {
		showComplainLayer(global.msgcomplain);
	}
}

function renderFullSpecial(UInfo) {
	if( UInfo.language.length!=0 && UInfo.personality.length!=0 && UInfo.speciality.length!=0 && UInfo.loveViewpoint.length!=0 && 
UInfo.marriageViewpoint.length!=0 && UInfo.hobby.length!=0 && UInfo.favorSport.length!=0 && UInfo.favorDatePlace.length!=0 &&
UInfo.favorPlace.length!=0 && UInfo.favorDish.length!=0 ) 
		return 1;
	else 
		return 0;//not full special detail


}
function procAlbumSlideShow(msg){
		var ajax = new AjaxWrap(null);
		ajax.openText("getalbumfolder.do?uid=" + msg.id+"&beginid=" + msg.beginid+"&folderid=" + msg.folderid, true);
}

function replyLeerJS(msg) {
	var queryString =	formToRequestString('replyleerform');
	var ajax = new AjaxWrap(null);
	ajax.postFormText("sendleermsg.do", queryString, true);
}
function addBlackAtMsg(msg){
	openLayerCall("addblack.do?id=" + msg.id+"&refresh="+msg.refresh);
}

function firstSendLeer() {
	if (leertpInit==0)
		genUserLeertp();	
	var tmp = global.gTemplates.get("firstsendleer");
	openWindowWrap(function(){
		return tmp.process(global);
	});
	movePlayer("fslPlayerContainer");
	getLrFocus();
}

var lpar = new Array();
//lpar[1][0] 第一个下标表示对方性别.1=male,0:female
var lpwrcont  = new Array();
var oriLeerTp = "";
var leertpInit = 0;
function genUserLeertp() {
	leertpInit = 1;
	var myinfo = global.gUInfo;
	for(var ti=0;ti<5;ti++) {
		lpar[ti] = {};
		lpwrcont[ti] = addSpaceLp(" ");
		lpar[ti].content = {};
		lpar[ti].title = {};
	}	
	lpar[0].title["0"] = "介绍一下你自己";
	lpar[1].title["0"] = "你的个性特征是";
	lpar[2].title["0"] = "对她赞美一下哦";
	lpar[3].title["0"] = "她与你一样喜欢";	
	lpar[4].title["0"] = "你想跟她说的是";	
		
	lpar[0].title["1"] = "简单的自我介绍";
	lpar[1].title["1"] = "你的特别之处是";
	lpar[2].title["1"] = "你对生活的看法";
	lpar[3].title["1"] = "正在寻找的他是";	
	lpar[4].title["1"] = "希望进一步了解";
	//发给女;
	lpar[0].content["0"] = "高收入、高学历、高身材的三高人士最受欢迎";
	lpar[1].content["0"] = "您认为您的性格如何？举例来做说明更有说服力";
	lpar[2].content["0"] = "女孩都爱听甜言蜜语，投其所好更容易获得青睐";
	lpar[3].content["0"] = "共同的生活爱好有助你们交流，让你们话题不断";
	lpar[4].content["0"] = "最后轻轻祝福一下她，让她感动一分钟快乐一天";
	//发给男
	lpar[0].content["1"] = "你的职业、家庭、个性特点、兴趣爱好等";
	lpar[1].content["1"] = "你最擅长的，朋友最常赞美你的";
	lpar[2].content["1"] = "你认同的或最不能接受的的两性相处方式";
	lpar[3].content["1"] = "他的职业、性格、经济条件、婚姻爱情观等";
	lpar[4].content["1"] = "请他介绍他的个性爱好、家庭、职业等";	
}

function changeLeertp(ids,sex) {
		var leeritem = document.getElementById("leertp"+ids);
		var lptd = document.getElementById("lptd"+ids);
		if(leeritem) {			
			 var idsadd = ids+1;
			 //if(idsadd>4) idsadd=0;
			leeritem.innerHTML="<textarea id='leervalue"+ids+"' name='textarea' cols='47' rows='3' class='leerarea'>"+jsTrim(lpwrcont[ids])+"</textarea>&nbsp;&nbsp;&nbsp;&nbsp;<a href='#' onclick='javascript:changeLeertp("+idsadd+","+sex+");'><img src='images/lyxd_ok.gif' width='54' height='22' border='0'></a>";
			var textleer = document.getElementById("leervalue"+ids);
			textleer.focus();
			lptd.background = "images/lyxd_hang2.gif";
			
		}
		for(var i=0;i<lpwrcont.length;i++) {
			if(i==ids) continue;
			var cleer = document.getElementById("leertp"+i);
			if(cleer) {
				var cleervalue = document.getElementById("leervalue"+i);
				var clptd = document.getElementById("lptd"+i);
				if(cleervalue) {
					lpwrcont[i] = addSpaceLp(cleervalue.value);
					cleer.innerHTML = "<span onclick='javascript:changeLeertp("+i+","+sex+");'>"+lpwrcont[i]+"</span>";
					clptd.background = "images/lyxd_hang1.gif";
				}
			}
		}	

	var divtip = document.getElementById('leertiplay');
	var divtipsp = document.getElementById('leertiplaysp');
	if(divtip) {
		switch(ids) {
		case 0:
			divtip.style.top ='380px';
			break;
		case 1:
			divtip.style.top ='411px';
			break;
		case 2:
			divtip.style.top ='442px';
			break;
		case 3:
			divtip.style.top ='474px';
			break;
		case 4:
			divtip.style.top ='504px';
			break;
		}
		if(ids<=4) {
			divtip.style.display = "";
			divtipsp.innerText = lpar[ids].content[sex];
		}
		else {
			divtip.style.display = "none";
		}
	}
		
}
function getLrFocus()
{
	var textleer = document.getElementById("leervalue0");
	if(textleer) {
		textleer.focus();
		var rt = textleer.createTextRange();
		rt.select();
	}
}
function submitLeertp() {
	var content = "";
	for(var i=0;i<lpwrcont.length;i++) {
		var cleervalue = document.getElementById("leervalue"+i);
		if(cleervalue) {
			lpwrcont[i] = cleervalue.value;
			content = content + jsTrim(cleervalue.value);
		}
		else
			content = content + jsTrim(lpwrcont[i]);
	}
	
	if(content.length <4 ) {
		alert("请输入内容");
		return false;
	}
	var contentel = document.getElementById("contentfst");
	contentel.value = content;
	return true;
}
function cutLeerAtt(attname,attvalue) {
	var str = global.convVarArr(attname,attvalue);
	if(str!='' && str.length>23) {
		str = str.substring(0,23)+"...";
	}
	return str;
}
function addSpaceLp(str) 
{
	var spacestr = " ";
	var size = 60-str.length;
	if(size<0)
		return str;
	else {
		for(i=0;i<size;i++) {
			spacestr += "&nbsp;";
		}
		str = str+spacestr;
		return str;
		
	}
}
function jsTrim(str){  
  str   =   str.replace(/(&nbsp;)*/g,""); 
  str   = str.replace(/\s*$/g,""); 
  return str;
}   

/////////////////////////begin:最新访问者列表处理/////////////////////////////
function userVisitView(){
	this.onrefresh = function(infoes){
		global["uvisitors"] = infoes;
		procPoint("listuservisit", "friendpoint", global);
	}
}
var userVisit = new ArrayInfoData();
userVisit.register(new userVisitView());
function setUserVisitPre(stask) {
	global.visitpb = stask.pop();
	global.groupsendinfo = stask.pop();
}
function renderUserVisitPage(pb){
	return renderPageDiv(pb,"sendMessage(msg_listvisituser,{page:%p})",[]);
}
/////////////////////////end:最新访问者列表处理/////////////////////////////
function renderSystemMessageLink(content){
//url翻译
	var hrefurl = content.substring(content.indexOf('[url]')+5,content.indexOf('[/url]'));
	var hrefarray = hrefurl.split('|');
	if(hrefarray==null||hrefarray.length<2)  hrefarray=[hrefurl,hrefurl];
	content=content.replace('[url]'+hrefurl+'[/url]','<a href=\''+hrefarray[1]+'\' target=_blank>'+hrefarray[0]+'</a>');
	content=content.replace(new RegExp('\\[br]','g'),'<br>');
//message翻译
	while(content.indexOf('[msg]')!=-1){
		var msgtext = content.substring(content.lastIndexOf('[msg]')+5,content.lastIndexOf('[/msg]'));
		var msginfo = msgtext.split('|');
		if(msginfo==null||msginfo.length<2)  msginfo=['',''];
		content=content.replace('[msg]'+msgtext+'[/msg]','<a href=\'javascript:sendMessage('+msginfo[1]+')\'>'+msginfo[0]+'</a>');
	}
//date,用户资料翻译
	if(content.indexOf('{')!=-1 && content.lastIndexOf('}')==content.length-1){
		var datemsg = content.substring(content.lastIndexOf('{'));
		content = content.substring(0,content.lastIndexOf('{'));
		if(!datemsg)  return content;
    	if(content.indexOf('查看一下')!=-1)  content=content.replace('查看一下','<a href=\'javascript:sendMessage(msg_datinginfo,'+datemsg+')\'>查看一下</a>');
		if(content.indexOf('[')!=-1 && content.indexOf(']')!=-1){
			var nickname = content.substring(content.lastIndexOf('[')+1,content.lastIndexOf(']'));
			content=content.replace('['+nickname+']','<a href=\'javascript:sendMessage(msg_showuinfo,'+datemsg+')\'>'+nickname+'</a>');
		}
	}
	return content;
}
//date,列出曾经使用单身群发的用户
function procListGroupSend(page){
	var ajax = new AjaxWrap(null);
	ajax.openText("listgroupsend.do?page=" + page, true);
}
function singleListView(){
	this.onrefresh = function(infoes){
		global["uvisitors"] = infoes;
		procPoint('listgroupsend', 'singlelistpoint', global);

	}
}
var singleList = new ArrayInfoData();
singleList.register(new singleListView());
function setGroupSendPre(stask) {
	global.groupsendpb = stask.pop();
}
function doAfterChristmas(stask){
	var embracecount = stask.pop();
	if(document.getElementsByName('embracecount').length>0)
		document.getElementsByName('embracecount')[0].innerHTML=embracecount;
}
function renderGroupSendUserPage(pb){
	return renderPageDiv(pb,"procListGroupSend(%p)",[]);
}

function arguUserView(){
	this.onrefresh = function(infoes){
		global["uvisitors"] = infoes;
		procPoint('listarguuser', 'mainpoint', global);

	}
}
var arguUsers = new ArrayInfoData();
arguUsers.register(new arguUserView());
function setArguUserPre(stask) {
	global.visitpb = stask.pop();
	global.agid = stask.pop();
	global.stand = stask.pop();
	
}
function procListArguUser(msg){
	var ajax = new AjaxWrap(null);
	ajax.openText("getarguuser.do?page=" + msg.page+"&agid="+msg.agid+"&stand="+msg.stand, true);
}
function renderArguUserViewPage(pb,agid,stand){
	return renderPageDiv(pb,"sendMessage(msg_listarguuser,{page:%p,agid:%0,stand:%1})",[agid,stand]);
}
///////////begin:沟通记录处理//////////////////
function procListCommunicate(msg){
	if (global.gUInfo.id == msg.id) {
		return;
	} else {
		if (!msg.page){
			msg.page = 1;
		}
		openLayerCall("getcommunicate.do?id=" + msg.id + "&page=" + msg.page);
	}
}
function communicateMsgView(){
	this.onrefresh = function(infoes){
		global["communmsg"] = infoes;
		procPoint('communicatemessages', 'mainpoint', global);

	}

}
var communicateMsg = new ArrayInfoData();
communicateMsg.register(new communicateMsgView());
function renderCommunicatePage(pb,uid){
	return renderPageDiv(pb,"sendMessage(msg_listcommunicate,{id:%0,page:%p})",[uid]);
}
function getNickById(uid){
	if(uid==global.gUInfo.id){
		return global.gUInfo.nick;
	}else{
		if(global.minfo!=null)  return global.minfo.nick;
	}
}
global.renderCommunicateItem = function(pp, loop){
	if(pp!=null && pp.cid==0)  return '';
	global.item = pp;
	global.item.color = loop;
	var templateindex=parseInt((parseInt(pp.ctype)+1)/2);
	if(templateindex==4)  templateindex=3;
	return global.gTemplates.get("communicateItem"+templateindex).process(global);
}
global.renderCommunicateHref = function(item){
	if(item.dinfo.sponser!=global.gUInfo.id && item.dinfo.kind==2 && item.dinfo.etStatus==4)
		return "javascript:sendMessage("+(item.dinfo.isApply==1?"msg_applyinfo":"msg_datinginfo")+", "+global.cDatingObject(item.dinfo)+")";
	else 
		return "javascript:sendMessage(msg_managedate,{id:"+item.dinfo.did+(item.dinfo.kind==1?"":",eid:"+item.dinfo.eid)+",page:1"+(item.dinfo.isApply==1?",apply:1":"")+"})";
}

///////////end:沟通记录处理//////////////////

function doAfterConcernUser(stask) {
	var result = stask.pop();
	var sex = stask.pop();
	if(global && global.tips!=null){
		switch(parseInt(result)){
		case 0:	showResult([{closeTag:"0",content:"您已收藏过"+rdsexHim(sex)+"，保存在“我的朋友——<a href='javascript:closeResult();closeLayer();sendMessage(msg_getfriend);'>我的收藏</a>”",showIcon:"1",showTitle:"1",tag:"0",title:"操作失败!"}]); break;
		case 1:	showResult([{closeTag:"0",content:"收藏成功，已保存到“我的朋友——<a href='javascript:closeResult();closeLayer();sendMessage(msg_getfriend);'>我的收藏</a>”",showIcon:"1",showTitle:"1",tag:"1",title:"操作成功!"}]); break;
		case 2:	showResult([{closeTag:"0",content:rdsexHim(sex)+"已经是你的朋友，保存在——<a href='javascript:closeResult();closeLayer();sendMessage(msg_getdatefriend);'>约会成功</a>”",showIcon:"1",showTitle:"1",tag:"1",title:"操作失败!"}]); break;
		}
	}else{
		if(result==1)
			showResultNoMask([{closeTag:"0",content:"收藏成功，已保存到“我的朋友——<a href='http://idate.163.com/loginandred.do?msgs=msg_getfriend&params='>我的收藏</a>”",goNewUrl:"0",showTitle:"1",tag:"1",title:"操作成功!"}]);
		else
			showResultNoMask([{closeTag:"0",content:"您已收藏过"+rdsexHim(sex)+"，保存在“我的朋友——<a href='http://idate.163.com/loginandred.do?msgs=msg_getfriend&params='>我的收藏</a>”",goNewUrl:"0",showTitle:"1",tag:"0",title:"操作失败!"}]);
	}
}

function deleteFriend(msg) {
	openLayerCall("delstranger.do?id=" + msg.id+"&type="+global.friendType+"&page="+msg.page);
}
function releaseBlack(msg) {
	openLayerCall("releaseblack.do?id=" + msg.id+"&page="+msg.page);
}

function msgchkbox_checkallstatus() {
	var a = document.getElementsByName("msgchkbox");
	var b = document.getElementById("msgchkboxall");
	var t = 0;
	for (var i = 0; i < a.length; i++) {
		if (a[i].checked) t++;
	}
	b.checked = t == a.length;
	msgchkbox_delbtn();
}

function msgchkbox_checkall() {
	var a = document.getElementsByName("msgchkbox");
	var b = document.getElementById("msgchkboxall");
	for (var i = 0; i < a.length; i++) {
		a[i].checked = b.checked;
	}
	msgchkbox_delbtn();
}

function msgchkbox_checkall2() {
	var b = document.getElementById("msgchkboxall");
	b.checked = !b.checked;
	msgchkbox_checkall();
}

function msgchkbox_delbtn() {
	var a = document.getElementsByName("msgchkbox");
	var da = document.getElementById("msgchkbox_dela");
	var db = document.getElementById("msgchkbox_delb");
	var f = false;
	for (var i = 0; i < a.length && !f; i++) {
		if (a[i].checked) f = true;
	}
	if (f) {
		da.style.display = "none";
		db.style.display = "";
	} else {
		da.style.display = "";
		db.style.display = "none";
	}
}

function msgchkbox_del(currpage) {
	var obj = {fname:'msgchkbox_del2'};
	obj.id = 0;
	obj.page = currpage;
	var a = document.getElementsByName("msgchkbox");
	var c = 0;
	var f = false;
	for (var i = 0; i < a.length; i++) {
		if (a[i].checked) {
			c++;
			if (!f && parseInt(a[i].value.split("|")[1]) == 0) f = true;
		}
	}
	obj.content = f ? "选择中包含未读留言，确定删除？" : "确定删除所选留言？";
	showDelConfirm(obj);
}

function msgchkbox_del2(msg) {
	var a = document.getElementsByName("msgchkbox");
	var ids = [];
	for (var i = 0; i < a.length; i++) {
		if (a[i].checked) {
			ids.push(a[i].value.split("|")[0]);
		}
	}
	if (ids.length > 0) {
		global.msgchkbox_currpage = msg.page;
		openLayerCall("deleteleermsgs.do" + "?ids=" + ids.join(";"));
	}
}

function doAfterDelLeerMsgs() {
	var obj = {};
	obj.type = global.qiubotype;
	obj.page = global.msgchkbox_currpage;
	sendMessage(msg_qiubos, obj);
}
var msg_gift_b = 1300;

var msg_getgift = msg_gift_b;//1300
var msg_sendgift = msg_gift_b + 1;
var msg_delgift = msg_gift_b + 2;
var msg_usergiftall = msg_gift_b + 3;
var msg_showuserandsendgift = msg_sendgift;

addMsg(msg_getgift, [getGift]);
addMsg(msg_sendgift, [sendGift]);
addMsg(msg_delgift, [delGift]);
addMsg(msg_usergiftall, [showUserGift]);

var giftTabIds = ["mm_recvGift", "mm_sentGift"];
var giftNames = ["勿忘我", "香水百合", "香槟玫瑰", "定情璀钻", "憨憨熊"];
var giftMeanings = ["友谊思念", "纯洁庄重", "浪漫爱恋", "给你幸福", "温暖祝福"];
var userGiftAllPageSize = 12;
msg_getgift = msg_recvGift;

function getGift(msg) {
	if (msg.type == null) {
		if (global.giftType != null) {
			msg.type = global.giftType;
		} else {
			msg.type = 1;
		}
	}
	if (msg.page == null) msg.page = 1;
	openLayerCall("getgift.do?page=" + msg.page + "&type=" + msg.type);
}

function setGiftPage(stack) {
	global["giftPage"] = stack.pop();
	global["giftType"] = parseInt(stack.pop());
}

var giftData = new ArrayInfoData();
function giftView() {
	this.onrefresh = function(infoes) {
		global["gifts"] = infoes;
		checkNavigate('mm_qiuboGift');
		//procPoint("myGift", "mainpoint", global);
		//setCurrentTab(giftTabIds, global.giftType == 2 ? 1 : 0, "per");
		procPoint("giftList", "friendpoint", global);
	};
}
giftData.register(new giftView());

function openGift(gid) {
	if (!isNaN(parseInt(gid))) {
		var x = document.getElementById("gift-" + gid);
		var y = document.getElementById("gift-openbtn-" + gid);
		if (x) {
			openLayerCall("opengift.do?id=" + gid);
			x.style.display = "";
			if (y) y.style.display = "none";
		}
	}
}

function doAfterOpenGift() {
	refreshNewGiftCount();
}

function showDelGiftConfirm(msg){
	global.delgift = msg;
	showMiddleLayer("delgiftconfirmLayer");	
}

function delGift(msg) {
	if (!isNaN(parseInt(msg.id))) {
		openLayerCall("delgift.do?id=" + msg.id + "&type=" + msg.type);
	}
}

function doAfterDelGift() {
	var msg = {};
	msg.page = global.giftPage.current;
	getGift(msg);
}

function sendGift(msg) {
	global.sendgiftreceiver = msg.id;
	global.sendgiftreceiversex = typeof(msg.sex) != "undefined" ? msg.sex : 0;
	global.sendfreegift = false;
	global.cansendfreegift = 0;
	global.sendgiftcheck2 = false;
	if (msg.free == 1 || (global.sendgiftreceiversex == 1 && global.gUInfo.sex == 0)) {
		global.sendfreegift = true;
	}
	if (global.sendgiftreceiversex == 0 && global.gUInfo.sex == 1) {
		global.sendgiftcheck2 = true;
	}
	openLayerCall("checkisblack.do?id=" + msg.id + "&reason=showSendGift");
}

function showSendGift(){
	showMiddleLayer('sendGift');
	if (global.sendgiftreceiversex == 0 && global.gUInfo.sex == 1) {
		sendGiftShowMessageBox(true);
		sendGiftCheckBalance(150);
	}
	//if (!global.sendfreegift) sendGiftCheckBalance(150); else sendGiftCheckBalance(0);
}

function submitGift(formname) {
	var params = formToRequestString(formname);
	var ajax = new AjaxWrap(layerCallBack(document));
	ajax.postFormText("sendgift.do", params, true);
}

function showUserGiftLayer() {
	global.userGiftAllPage = {current:1, per:0, total:0};
	global.userGiftAllPage.per = userGiftAllPageSize;
	global.userGiftAllPage.total = global.UInfo.giftList.length;
	showMiddleLayer('userGiftAll');
	showUserGift();
}

function showUserGift(msg) {
	if (msg && msg.page) {
		global.userGiftAllPage.current = msg.page;
	}
	procPoint("userGiftAll2", "usergiftallpoint", global);
}

function sendGiftCheckBalance(price) {
	document.getElementById("sendgift-freegifterror").style.display = "none";
	var snd = document.getElementById("sendgift-send");
	var err = document.getElementById("sendgift-error");
	var nem = document.getElementById("sendgift-nem");
	if (price > global.gUInfo.balance / 10) {
		snd.style.display = "none";
		err.style.display = "";
		nem.style.display = "";
	} else {
		snd.style.display = "";
		err.style.display = "none";
		nem.style.display = "none";
	}
}

function sendGiftCheckFree() {
	document.getElementById("sendgift-freegift").style.display = "";
	document.getElementById("sendgift-send").style.display = "none";
	document.getElementById("sendgift-error").style.display = "none";
	document.getElementById("sendgift-nem").style.display = "none";
	switch (global.cansendfreegift) {
		case 0:
			document.getElementById("sendgift-send").style.display = "none";
			document.getElementById("sendgift-error").style.display = "none";
			var at = new AjaxWrap(null);
			at.openText("checkfreegift.do?receiver=" + global.sendgiftreceiver, true);
			break;
		case 1:
			document.getElementById("sendgift-error").style.display = "";
			document.getElementById("sendgift-freegifterror").style.display = "";
			break;
		case 2:
			document.getElementById("sendgift-send").style.display = "";
			break;
	}
}

function sendGiftCheckFreeCB(stack) {
	global.cansendfreegift = 1;
	if (parseInt(stack.pop()) == 1) {
		global.cansendfreegift = 2;
	}
	sendGiftCheckFree();
}

function sendGiftShowMessageBox(show) {
	document.getElementById("sendgift-hr").style.display = "";
	var a = document.getElementById("sendgift-freegift");
	if (a) a.style.display = show ? "none" : "";
	document.getElementById("sendgift-message").style.display = show ? "" : "none";
}

function refreshNewGiftCount() {
	var at = new AjaxWrap(tipsCallBack);
	at.openText("gettips.do", true);
}

function giftNickName(str, max) {
	return str.substr(0, max) + (str.length > max ? '…' : '');
}

function convGift(gid) {
	return '<img src="images/mb/mblw' + (parseInt(gid) + 1) + '_2.gif" width="70" height="70"><br><span style="color:#000">' + giftNames[gid] + '</span><br><span style="color:#999">代表' + giftMeanings[gid] + '</span>';
}

function convGift2(gid, str) {
	return '<img src="images/mb/mblw' + (parseInt(gid) + 1) + '_1.gif" width="44" height="37"><div>' + giftNickName(str, 4) + '</div>';
}

function convUserGift(gifts) {
	var html = "";
	for (var i = 0; i < gifts.length && i < 6; i++) {
		html += '<div style="width:50%;clear:none;float:left;text-align:center;" title="' + gifts[i].friendInfo.nick + '赠送">' + convGift2(gifts[i].gift, gifts[i].friendInfo.nick) + '</div>';
	}
	return html;
}

function convUserGiftAll(gifts, page) {
	var html = "";
	for (var i = userGiftAllPageSize * (page - 1); i < gifts.length && i < userGiftAllPageSize * page; i++) {
		html += '<div style="width:25%;clear:none;float:left;vertical-align:top;margin:2px 0;">';
		html += '<center><div style="border:1px solid #CDDEF2; height:83px; width:83px; background-color:#fff;padding-top:5px">';
		html += '<img src="images/mb/mblw' + (parseInt(gifts[i].gift) + 1) + '_2.gif" width="70" height="70">';
		html += '</div><div style="color:#666;margin-top:4px;">' + giftNickName(gifts[i].friendInfo.nick, 5) + '</div></center></div>';
	}
	return html;
}

function historyFilter(msg){
	if(msg.MSG >= msg_reg1 && msg.MSG <= msg_reg7){
		return	writeHistory(msg);	
	}
	
	if(msg.MSG >= msg_setcenter && msg.MSG <= msg_feepage){
		return	writeHistory(msg);	
	}
	
	if(msg.MSG >= msg_myphotofolder && msg.MSG <= msg_myphoto){
		return	writeHistory(msg);	
	}
	
	if(msg.MSG >= msg_helpall && msg.MSG <= msg_helpcharge){
		return	writeHistory(msg);	
	}
	
	if(msg.MSG >= msg_listvisituser && msg.MSG <= msg_friendapplys){
		return	writeHistory(msg);	
	}
	if(msg.MSG== msg_getcommenddating || msg.MSG == msg_commenddating || msg.MSG == msg_getdating || msg.MSG == msg_datinginfo){
		return writeHistory(msg);
	}
	if(msg.MSG == msg_chargepage || msg.MSG == msg_vipchargepage)
		return writeHistory(msg);
		
	switch(msg.MSG){
	case msg_index:
	case msg_pubdating:
	case msg_friendappdating:
	case msg_getdating:
	case msg_commenddating:
	case msg_searchdating:
	case msg_datinginfo:	
	case msg_applyinfo:
	case msg_searchperson:
	case msg_highsearchperson:
	case msg_managedate:
	case msg_listvisitdate:
	case msg_showuinfo:
	case msg_albumslideshow:
	case msg_showdateselect:
	case msg_scprvdatesearch:
	case msg_scsearch:
	case msg_idxuser:
	case msg_showdateplan:
	case msg_listcommunicate:
		writeHistory(msg);
		break;
	}
	return true;
}

addMsgFilter(historyFilter);

function noPortraitFilter(msg){
	if(myInfo.info.hasPortrait == 0){
		var sign = true;
		if(msg.MSG >= msg_friendappdating && msg.MSG <=msg_friendreleaseblack)
			sign = false;
		if(msg.MSG >= msg_acceptdating && msg.MSG <= msg_commentdating)
			sign = false;
		if(msg.MSG >= msg_addfriend_cp && msg.MSG <= msg_applydating_cp)
			sign = false;
		
		switch(msg.MSG){
			case msg_concerndating:
			case msg_disconcerndating:
			//case msg_pubdating:
			case msg_concern:
				sign = false;
		}
		
		if(!sign){
			showRWrap('操作失败', "为营造真实的交友氛围，请上传您的形象照片。<br>一张好的形象照，会使您的约会成功率提高10倍以上！<br><input type='button' value='上传头像' class='anniu' onclick='closeResult();sendMessage(msg_reg4)'>", 0);
			return false;
		}
	}
	return true;
}

//addMsgFilter(noPortraitFilter);

function noMobileFilter(msg){
	if(myInfo.info.mobileNo == ""){
		var sign = true;
		if(msg.MSG > msg_friendappdating && msg.MSG <=msg_friendreleaseblack)
			sign = false;
		if(msg.MSG > msg_refusedating && msg.MSG <= msg_commentdating)
			sign = false;
		if(msg.MSG == msg_addfriend_cp)
			sign = false;
		
		if(!sign){
			showRWrap('', "请验证您的手机号码。<input type='button' value='验证手机' class='anniu' onclick='closeResult();sendMessage(msg_reg5);showModifyMobile();'>", 0);
			return false;
		}
	}
	return true;
}
addMsgFilter(noMobileFilter);

function noMoneyFilter(msg){
//收费项目
//加好友 msg_addfriend_cp , msg_friendcontact
//发布公开约会 msg_pubdating
//响应公开约会 msg_acceptdating
//单独约会 msg_applydating_cp ,msg_friendappdating

	var balance = parseInt(myInfo.info.balance);
	var freeze = parseInt(myInfo.info.freeze);
	if(balance <= freeze){
		var sign = true;

		if(msg.MSG == msg_paycontact || msg.MSG==msg_readdatemsg)
			sign = false;			
		if(msg.MSG == msg_readleermsg && global.msgextra!=1 )
			sign = false;

		if(!sign){
			showRWrap('您的金币余额不足，不能进行此操作', "您的金币余额已不多，为保障您的<br>约会顺利进行，请尽快充值。<input type='button' value='账户充值' class='anniu' onclick='closeResult();closeLayer();sendMessage(msg_chargepage)'>", 0);
			return false;
		}
	}

	return true;
}
addMsgFilter(noMoneyFilter);
var msg_showuinfo = msg_uinfo_b + 50;
addMsg(msg_showuinfo, [procShowUInfo]);

var msg_baseinfo = msg_uinfo_b;
var msg_hobby = msg_uinfo_b + 1;
var msg_otherfolderes = msg_uinfo_b + 2;
var msg_otherdatinges = msg_uinfo_b + 3;

var msg_otherphotoes = msg_uinfo_b + 10;
var msg_otherphoto = msg_uinfo_b + 11;
var msg_uinfodating = msg_uinfo_b + 12;

addMsgRange(msg_baseinfo, msg_otherdatinges + 1, [procOtherInfo]);
addMsg(msg_otherphotoes, [procOtherPhotoes]);
addMsg(msg_otherphoto, [procOtherPhoto]);

global.UInfoPage = 0;

function UInfoView(){
	this.onrefresh = function(infoes){
		friends.addWithoutNoitify(infoes);
		
		global.UInfo = infoes;
		if (parseInt(global.UInfo.sex) == 0 && global.UInfo.todaymood == '') {
			global.UInfo.todaymood = '圣诞节到了，还没收到玫瑰花噢～<a href="javascript:sendMessage(msg_sendgift,{id:' + global.UInfo.id + '})" style="color:red">来做送花人</a>';
		}
		procPoint("uinfo_"+infoes.pageStyle, "mainpoint", global);
		//sendMessage(msg_baseinfo + parseInt(global.UInfoPage));
		
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

function setUInfoPage(stask){
	global.UInfoPage = stask.pop();
}

var youInfo = new InfoData();
youInfo.register(new UInfoView());

function procShowUInfo(msg){
	var ajax = new AjaxWrap(null);
	
	if(!msg.page){
		msg.page = 0;
	}
	ajax.openText("getuserinfo.do?id=" + msg.id + "&page=" + msg.page, true);
}

function showUInfo(uid, pg){
	if(pg == null)
		pg = 0;
	sendMessage(msg_showuinfo, {id:uid,page:pg});
}

function UPhotoesView(){
	this.onrefresh = function(infoes){
		global.photoes = infoes;
		showElement("uinfohide", true);
		showElement("uinfotable1", false);
		procPoint('viewPhoto0', 'uinfohide', global);	
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

var uPhotoes = new InfoData();
uPhotoes.register(new UPhotoesView());

var uInfoIdes = ['base', 'hobby', 'ophoto', 'dating'];
function procOtherInfo(msg){
	var uId = uInfoIdes[msg.MSG - msg_uinfo_b];
	showElement("uinfohide", false);
	showElement("uinfotable1", true);	
	for(var i = 0, dc = 0; i < uInfoIdes.length; ++i){
		var tc = document.getElementById(uInfoIdes[i]);
		if(tc.id != ""){
			if(tc.id == uId){
				tc.className = "open2";
				var divNode = document.getElementById(tc.id + "uinfo");
				divNode.style.display = "";
			}else{
				tc.className = "open";
				var divNode = document.getElementById(tc.id + "uinfo");
				divNode.style.display = "none";
			}
			dc++;
		}
	}
	
	/*if(msg.MSG == msg_otherfolderes){
		var ajax = new AjaxWrap(null);
		ajax.openText("getalbumfolder.do?id=" + youInfo.info.id, true);
	}*/	
}

function procOtherPhotoes(msg){
	var ajax = new AjaxWrap(null);
	ajax.openText("showphotos.do?val=" + msg.fid + "&key=" + youInfo.info.id, true);
}

function procOtherPhoto(msg){
	global.curIndex = msg.pid;
	global.photoes = uPhotoes.info;
	
	showElement("uinfohide", true);
	showElement("uinfotable1", false);	
	procPoint('viewPhoto00', 'uinfohide', global);
}

function renderCertRemind(info,textColor) {
	var sextext = "他";
	if(info!=null && info.sex==0)  sextext="她";
	if(!textColor)  textColor="#666666";
	if( !(info.IDCert==2 && info.marriageCert==2 && info.jobCert==2 && info.schoolCert==2 && info.incomeCert==2 && info.realtyCert==2 && info.carNoCert==2) )
		return "<a href='javascript:sendMessage(msg_showCertRemind,{id:"+info.id+"})' style='color:"+textColor+"'>请"+sextext+"上传证件</a>";
}

function renderCertRemindFlag(info) {
	if( !(info.IDCert==2 && info.marriageCert==2 && info.jobCert==2 && info.schoolCert==2 && info.incomeCert==2 && info.realtyCert==2 && info.carNoCert==2) )
		return 1;
	else
		return 0;
}

var photoIdx = 0;
var photoList;
var loopImageId;
var userid = 0;
function setPhotoList(photo,id) {
	photoList = photo;
	userid = id;
	//if(userid!=0) startBrowse();//关闭相册自动播放
}
function startBrowse() {
    if(loopImageId)  window.clearInterval(loopImageId);
	loopImageId = window.setInterval('loopImage()',3000);
}
function stopBrowse() {
	window.clearInterval(loopImageId);
}
function nextLoopImage() {
	var photoitem = document.getElementById('photoaddr');
	if(photoitem==null) {
		stopBrowse();
		return;
	}
	var photohref = document.getElementById('photohref');
	var newwindowhref = document.getElementById('newwindowhref');
	
	if(++photoIdx>=photoList.length) photoIdx=0;
	photoitem.src = photoList[photoIdx].url;
	photohref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
	newwindowhref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
}
function prevLoopImage() {
	var photoitem = document.getElementById('photoaddr');
	if(photoitem==null) {
		stopBrowse();
		return;
	}
	var photohref = document.getElementById('photohref');
	var newwindowhref = document.getElementById('newwindowhref');
	
	if(--photoIdx<0) photoIdx=0;
	photoitem.src = photoList[photoIdx].url;
	photohref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
	newwindowhref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
}
function loopImage() {
	var photoitem = document.getElementById('photoaddr');
	if(photoitem==null) {
		stopBrowse();
		return;
	}
	var photohref = document.getElementById('photohref');
	var newwindowhref = document.getElementById('newwindowhref');

	if(photoIdx>=photoList.length) photoIdx=0;
	photoitem.src = photoList[photoIdx].url;
	photohref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
	newwindowhref.href = "javascript:sendMessage(msg_albumslideshow,{id:"+userid+",beginid:"+photoIdx+",folderid:-1})";
	photoIdx++;
}

function convEvaluation(info){
	var evalClass = new evalCal(info);
//	info["age"]=1;info["stature"]=2;info["house"]=0;
	var result = info.nick + (info.sex==1?"先生":"女士");
	result += evalClass.appendVar("","age","，");
	result += evalClass.appendVar("目前","marriage","。");
	result += evalClass.appendVar(rdsexHim(info.sex),"stature","，");
	if(info.companyType!=7)  result += "在"+global.convVar2("companyType",info)+"工作，";
	result += evalClass.appendVar("","income","。");
	result += evalClass.appendVar(rdsexHim(info.sex),"bloodType","，");
	result += evalClass.appendVar("","constellation","。");
	result += evalClass.appendVar("","house","。");
	result += evalClass.appendVar("正在寻找","aim","。");
	evalClass = null;
	return result;
}

var evalCal = Class.create();
evalCal.prototype = {
	info : null,
	initialize : function (m_value){
		this.info = m_value;
		this.info.age = this.calAge();
		this.info.stature = this.calStature();
		this.info.income = this.calIncome();
		this.info.house = this.calHouse();
　　},
	convVar :  function(evaluation, name, value){
		var cc = evaluation[name];
		if(cc != null){
			return cc[value];
		}else{
			throw "const not found when conv " + name;
		}
	},
	convVar2 : function(name){
		var cc = global.evaluation[this.info.sex][name];
		if(cc != null){
			return this.randDesc(cc[this.info[name]]);
		}else{
			throw "const not found when conv " + name;
		}
	},
	randDesc : function(desc){
		if(desc==null || desc =="")  return "";
		var descarray = desc.split("|");
		return descarray[rand(descarray.length)-1];
	},
	appendVar : function(prefix,name,suffix){
		var content = this.convVar2(name);
		if(content==null || content=="")  return "";
		return prefix+content+suffix;
	},
	ageEdge : [18,25,28,31,41,51],
	calAge : function(){
		for(var i=0;i<this.ageEdge.length;i++){
			if(this.info.age<this.ageEdge[i])  return i;
		}
		return this.ageEdge.length;
	},
	statureEdge : [	[155,-100,0],[161,-7,6],[166,-5,7],
					[171,-5,7],[176,-2,8],[181,-1,9],[1000,-1,10]
					],
	calStature : function(){
		var saval = (this.info.stature-105)*(this.info.sex==1?1:0.9)-this.info.avoirdupois;
		var laststature = 0;
		for(var i=0;i<this.statureEdge.length;i++){
			if(	this.info.stature>=laststature &&
				this.info.stature<this.statureEdge[i][0] &&
				saval>=this.statureEdge[i][1] &&
				saval<=this.statureEdge[i][2]
				)  return i;
			laststature = this.statureEdge[i][0];
		}
		return this.statureEdge.length;
	},
	degreeEdge : [	[0,3],[0,3],[2,5] ],
	calIncome : function(){
		for(var i=0;i<this.degreeEdge.length;i++){
			if(	this.info.income==i &&
				this.info.degree>=this.degreeEdge[i][0] &&
				this.info.degree<=this.degreeEdge[i][1]
				)  return i;
		}
		if(this.info.income < this.degreeEdge.length)  return 7;
		else return this.info.income;
	},
	calHouse : function(){
		var hashouse = 0, hascar = 0;
		if(this.info.house==0)  hashouse=1;
		if(this.info.vehicle>0)  hascar=1;
		return hascar<<1 | hashouse<<0;
	}
};
var msgdiv = 'msgitem';

function messageView(){
	this.onrefresh = function(info){
		var mpt = document.getElementById('messagepage');
		var lt = document.getElementById('layertable');
		
		if(mpt && lt.style.display != "none"){
			mpt.innerHTML = global.renderMessageView(info)
		}else{
			global["messageBean"] = info;
			var tmp = global.gTemplates.get("message");
			openWindowWrap(function(){
				return tmp.process(global);
			});
		}
	}
	
	this.ondelete = function(ids){
			for(var i = 0; i < ids.length; ++i){
				var ditem = document.getElementById(msgdiv + ids[i].id);
				if(ditem){
					ditem.outerHTML = "";
				}
			}
	}
	
	this.onadd = function(msg){
		var nl = document.getElementById("msgtable1").insertRow(-1);
		newc = nl.insertCell();
		newc.innerHTML = global.renderMsgItem(msg);
		//empty the input
		var ta = document.getElementById("inputarea");
		ta.value = "";
	}
}

function findMessage(right, left){
	return right.id == left.id;
}

var messageData = new ArrayInfoData(findMessage);
messageData.register(new messageView());

function mUInfoView(){
	this.onrefresh = function(info){
		global["minfo"] = info;
		//friends.addWithoutNoitify(info);
	}
}

var mUInfoData = new InfoData();
mUInfoData.register(new mUInfoView);

function messageSongsView() {
	this.onrefresh = function(info) {
		global["messageSongs"] = info;
	};
}

var messageSongsData = new InfoData();
messageSongsData.register(new messageSongsView);

function showMessagePage(id, page){
	if(!page){
		page = 1;
	}
	openLayerCall("getmessage.do?id=" + id + "&page=" + page);
}

function messagePageCalBack(){
	return function(stask){
		var tmp = global.gTemplates.get("messageList");
		global.messageBean = stask.pop();
		if(tmp == null){
			alert(templateId + " can't be getted");
		}else{
			var sp = document.getElementById("messagepage");
			sp.innerHTML = tmp.process(global);
		}
	};
}

function deleteMessage(){
	var params = "";

	var chks = document.getElementsByTagName("input");
	for(var j = 0; chks && j < chks.length; ++j){
		if(chks[j].type.toLowerCase() == "checkbox" && chks[j].name=="msgchk" && chks[j].checked){
			params += chks[j].value + ";";
		}
	}
	
	if(params != ""){
		global.openLayerCall(document, "deletemessages.do?ids=" + params);
	}
}

function selectAllMessage(){
	var params = "";
	var chks = document.getElementsByTagName("input");
	for(var j = 0; chks && j < chks.length; ++j){
		if(chks[j].type.toLowerCase() == "checkbox" && chks[j].name=="msgchk"){
			chks[j].checked = true;
		}
	}
}


global.renderMessageView = function(mb){
	global.messageBean = mb;
	return global.gTemplates.get("messageList").process(global);
}

global.renderMsgItem = function(pp){
	global.messageItem = pp;
	return global.gTemplates.get("messageItem").process(global);
}

global.renderMessagePage = function(id, pb){
	var current = parseInt(pb.current);
	var per = parseInt(pb.per);
	var total = parseInt(pb.total);
	
	var ret = "";
	
	var tt = current - current % 6;
	if(current > 1){
		ret += "<a href='javascript:showMessagePage(" + id + "," + (current-1) + ")'>上一页</a>&nbsp; "
	}
	
	var tr = parseInt(Math.ceil(total / per).toFixed());

	ret +=" &nbsp;第"+current+"/"+tr+"页&nbsp;";
	
	if(current < tr){
		ret += " <a href='javascript:showMessagePage(" + id + ","  + (current+1) + ")' >下一页</a>"
	}
	
	return ret;
}

global.renderMessageSongList = function(pc) {
	var ret = "<select id='msgSongSelector' name='songid' onchange='msgSongSelected(this.value,\"" + pc + "\");'>";
	ret += "<option value='0' selected>请选择一首歌</option>";
	var songs = global["messageSongs"];
	for (var i = 0; i < songs.length; i++) {
		ret += "<option value='" + songs[i].id + "'>" + songs[i].title + " - " + songs[i].artist + "</option>";
	}
	ret += "</select>";
	return ret;
};

function msgSongSelected(v, pc) {
	var s = document.getElementById(pc);
	if (v == 0) {
		playLoveSong("");
		s.style.display = "none";
	} else {
		s.style.display = "";
		playLoveSong(v);
	}
}

function showSongSelector(state) {
	var s = document.getElementById('msgSongSelector');
	var a = document.getElementById('msgSongSelectorA');
	var b = document.getElementById('msgSongSelectorB');
	if (state) {
		a.style.display = "";
		b.style.display = "none";
		playLoveSong("");
	} else {
		playLoveSong("");
		b.style.display = "";
		a.style.display = "none";
		s.selectedIndex = 0;
	}
}

function showPlayerOnMsgList(mid) {
	var tr = document.getElementById('llmPlayer' + mid);
	var s = document.getElementById('llmPlayerContainer' + mid);
//	var ts = document.getElementsByName('llmPlayer');
//	for (var i = 0; i < ts.length; i++) {
//		if (ts[i].style.display != "none" && ts[i].id != 'llmPlayer' + mid) {
//			playLoveSong("");
//			ts[i].style.display = "none";
//		}
//	}
	if (tr.style.display == "none") {
//		playLoveSong("");
//		for (var i = 0; i < 100000; i++) ;
		var p = LOVE_SONG_PLAYER.parentNode;
		if (p && p.id.indexOf("llmPlayerContainer") == 0) {
			var tr2 = document.getElementById('llmPlayer' + p.id.replace("llmPlayerContainer", ""));
			if (tr2) tr2.style.display = "none";
		}
		movePlayer("llmPlayerContainer" + mid);
		tr.style.display = "";
		playLoveSong(s.url);
	} else {
		playLoveSong("");
		tr.style.display = "none";
	}
}

function hidePlayerOnMsgList() {
	playLoveSong("");
	var p = LOVE_SONG_PLAYER.parentNode;
	if (p && p.id.indexOf("llmPlayerContainer") == 0) {
		var tr2 = document.getElementById('llmPlayer' + p.id.replace("llmPlayerContainer", ""));
		if (tr2) tr2.style.display = "none";
	}
}

function checkNullMessage(){
	var input = document.getElementById("inputarea");
	return input.value != "" && input.value.replace(/\s*/g, "") != "";
}

function sendMsgCheckBalance(price) {
	var extra = document.getElementById("extra");
	if (extra.checked && price > global.gUInfo.balance / 10) {
		showElement("sendmsg-send",false);
		showElement("sendmsg-nem",true);
	} else {
		showElement("sendmsg-send",true);
		showElement("sendmsg-nem",false);
	}
}
/**
	help page 
	set page??
	main page
	apply public page	
**/
var msg_helpall = msg_help_b + 0;
var msg_helpwhyuse = msg_help_b + 1;
var msg_helphowuse = msg_help_b + 2;
var msg_helpziliao = msg_help_b + 3;
var msg_helpyuehui = msg_help_b + 4;
var msg_helppingjia = msg_help_b + 5;
var msg_helpjf = msg_help_b + 6;
var msg_helpmo = msg_help_b + 7;
var msg_helphaoyou = msg_help_b + 8;
var msg_helphei = msg_help_b + 9;
var msg_helpliuyan = msg_help_b + 10;
var msg_helpqiubo = msg_help_b + 11;
var msg_helptixing = msg_help_b + 12;
var msg_helpmishu = msg_help_b + 13;
var msg_helpxiangce = msg_help_b + 14;
var msg_helpfysm = msg_help_b + 15;
var msg_helpvip = msg_help_b + 16;
var msg_helpzhangdan = msg_help_b + 17;
var msg_helpanquan = msg_help_b + 18;
var msg_helpcharge = msg_help_b + 19;
var msg_helpjiaotan = msg_help_b + 20;
var msg_helpgift = msg_help_b + 21;
var msg_helpguanbi = msg_help_b + 22;

var helpTplId = ["aboutidate","whyuse","howuse","ziliao",
				 "yuehui","pingjia","jf","mo","haoyou","hei",
				 "liuyan", "qiubohelp", "tixing", "mishu",
				  "xiangce", "fysm", "viphelp", "zhangdan", "anquan","chargehelp","jiaotan","gifthelp","guanbi"];

function helpProcess(msg){
	checkNavigate('mm_helpCenter', 'helperpoint', 'helpCenter');
	var tid = helpTplId[msg.MSG - msg_helpall];
	procPoint(tid, 'helperpoint', global);
}

addMsgRange(msg_helpall, msg_helpguanbi + 1, [helpProcess]);


var msg_addfriend_cp = msg_index + 1;
var msg_qiubo_cp = msg_index + 2;
var msg_applydating_cp = msg_index + 3;


function CmpCommendPersion(left, right){
	return left.id == right.id;
}

addMsgRange(msg_addfriend_cp, msg_applydating_cp + 1, [procCPOp]);
function procCPOp(msg){
	var cperson = commendPerson.getById(msg);
	if(cperson==null)
		cperson=searchPerson.getById(msg);
		switch(msg.MSG){
			case msg_addfriend_cp:
				addFriend(cperson);
				break;
			case msg_qiubo_cp:
				//sendQiubo(cperson);
				//preSendLeer(cperson);
				if(cperson==null)
					showLeerMessagePage(msg.id);
				else
					showLeerMessagePage(cperson.id);
				break;
			case msg_applydating_cp:
				applyDating(cperson);
				break;
		}
	
}

addMsg(msg_pubdating, [procNavigate]);

function procNavigate(msg){
	checkNavigate('mm_applydating');
	initDatePlanUInfo();
	procPoint('newPubDating', 'mainpoint', global);
}

var msg_setcenter= msg_setcenter_b;
var msg_secretary= msg_setcenter_b + 1;
var msg_selfsetting = msg_setcenter_b + 2;
var msg_feepage = msg_setcenter_b + 3;
var msg_chargepage = msg_setcenter_b + 4;
addMsgRange(msg_setcenter, msg_chargepage + 1, [procSetCenter]);

var centerTpl = ['setCenter', 'secretary', 'selfSetting', 'feeManager','chargelist'];

function procSetCenter(msg){
	checkNavigate('mm_setCenter');
	var tpl = centerTpl[msg.MSG - msg_setcenter_b];
	switch(msg.MSG){
		case msg_setcenter:
		case msg_selfsetting:
			procPoint(tpl, 'mainpoint', global);
			break;
		case msg_secretary:
			{
			var ajax = new AjaxWrap(pageCallBack(tpl, 'IntBean', 'mainpoint'));
			ajax.openText('getsecretary.do', true);
			break;
			}
		case msg_feepage:	
			{
			var ajax = new AjaxWrap(pageCallBack(tpl, 'FeeInfo', 'mainpoint'));
			ajax.openText('getfee.do', true);
			break;
			}
		case msg_chargepage:
			{
				procChargePage(tpl, 'mainpoint', global);
				break;				
			}
	}
}

function procChargePage(tplId, point, root){
		var pt = document.getElementById(point);
		var tpl = global.gTemplates.get(tplId).process(root);
		if(pt && tpl){ 
			pt.innerHTML = tpl;
		}
//		if(showUmpp()==1)
//			changePaylistRadio('nm12588');
//		else
//			changePaylistRadio('mobile');
		changePaylistRadio('mobile');
}

function modSecretary(){
	var pw1 = document.getElementsByName("mspassword")[0].value;
	var pw2 = document.getElementsByName("mspw22")[0].value;
	if(pw1 != pw2){
		showRWrap("操作失败", "密码输入不一致，请重新输入", 0);
		return false;
	}
	return true;
}

function changeSecretaryRight(id){
	var params = formToRequestString(id);
	var ajax = new AjaxWrap(layerCallBack(document));
	ajax.postFormText("changeSecretaryRight.do", params, true);
}


function changeStyle(ss){
	var ops = document.getElementsByName(ss);
	if(ops.length > 0){
		defaultStyle = ops[0].options[ops[0].selectedIndex].value;
		setCookie(myInfo.info.id + styleCookieName, defaultStyle, "/", 10000);
		setStyle(defaultStyle);
	}
}

function changeIndex(si){
	var ops = document.getElementsByName(si);
	if(ops.length > 0){
		defaultIndex = ops[0].options[ops[0].selectedIndex].value;
		setCookie(myInfo.info.id + indexCookieName, defaultIndex, "/", 10000);
	}
}

function cInvite(){
	return checkInvite();
}

function showInvite(tag){
	if(tag){
		showMiddleLayer('inviteLayer');
	}else{
		closeMiddleLayer();
	}
}

function showSugguest(tag, param, html){
	if (tag) {
		showMiddleLayer('sugguest');
		var dg = document.getElementsByName("ctype")[0];
		if (param) {
			for (var i = 0; i < dg.options.length; ++i) {
				if (html) {
					if (dg.options[i].innerHTML == html && dg.options[i].value == param) {
						dg.selectedIndex = i;
						break;
					}
				} else if (dg.options[i].value == param) {
					dg.selectedIndex = i;
					break;
				}
			}
		}
		suggestTypeChanged(dg.value);
		document.getElementsByName('account')[0].value=global.gUInfo.account;
	} else {
		closeMiddleLayer();
	}
}

function suggestTypeChanged(value) {
	var common = document.getElementById("suggestCommon");
	var sex = document.getElementById("suggestSex");
	if (value == "修改性别") {
		common.style.display = "none";
		sex.style.display = "";
	} else {
		common.style.display = "";
		sex.style.display = "none";
	}
}

function showResponse(tag){
	showElement('responseDiv', tag != 0);
}

var msg_delpr = 99945;
addMsg(msg_delpr, [showDelPortraitForm]);

function showDelPortraitForm(msg) {
	showMiddleLayer('delportrait');
	document.getElementById("delpr-account").value = global.gUInfo.account;
}

function submitDelPortrait(formname) {
	var params = formToRequestString(formname);
	var ajax = new AjaxWrap(layerCallBack(document));
	ajax.postFormText("delportrait.do", params, true);
	window.setTimeout("loadTipsOnce()", 4000);
}

function loadTipsOnce(){
	var at = new AjaxWrap(tipsCallBack);
	at.openText("gettips.do", true);
}

var curRes = 'reEmail';

function changePath(){
	var sel = document.getElementsByName("responsePath")[0];
	var sv = sel.options[sel.selectedIndex].value;
	if(sv != curRes){
		var sk = document.getElementsByName(sv)[0];
		sk.style.display = '';
		
		var ok = document.getElementsByName(curRes)[0];
		ok.style.display = 'none';
		
		curRes = sv;
	}
}

function takePhoto(type,setHouse){
	if(setHouse==null)  setHouse=0;
	var lv = document.getElementById("love");
	lv.FlashVars="serverUrl=http%3A%2F%2Fidate.163.com%2Fportraitupload.do?type=" + type+"%26setHouse="+setHouse;
	global.takePhotoType = type;
	showElement('layertable', false);
	showElement('maintable', false);
	showElement("phototable", true);
	showMask(true);
}

function closePhoto(fromIndex){
	showMask(false);
	showElement('maintable', true);
	showElement("phototable", false);
	if (fromIndex && typeof(global.takePhotoType) != "undefined" && global.takePhotoType == 6) {
		sendMessage(msg_reg4);
	}
}

function setIframe() {
  var theIframe = document.getElementById('mask')
  if (theIframe) {
//    viewport.getAll();
//    //  both theIframe.height and theIframe.style.height seem to work 
//    theIframe.style.height = viewport.height + "px";
//    theIframe.style.width = viewport.width + "px";
	theIframe.style.width = document.body.scrollWidth;
	theIframe.style.height = document.body.scrollHeight + 22;
  }
}


window.onresize = function() { setIframe();}

global.renderLeftTd = function(left){
	var ret = ""
	for(var i = left; i < 4; ++i){
		ret += "<td>&nbsp;</td>";
	}
	return ret;
}

function getFee(formname){
	calDate('byear', 'bmonth', 'bdate', 'beginTime');
	calDate('eyear', 'emonth', 'edate', 'endTime');
	searchFee(formname);
}

function nextFee(step){
	var cp = document.getElementById('hFeePage');
	cp.value = parseInt(cp.value) + step;
	searchFee('feeform2');
}

function searchFee(formId){
	var queryString = formToRequestString(formId);
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchfee.do", queryString, true);
}

function feePageType(stask){
	global.fpage = stask.pop();
}

var feeData = new ArrayInfoData(null);

function feeView(){
	this.onrefresh = function(infoes){
		global['wasteBook'] = infoes
		procPoint('feeManager_sub', 'recordpoint', global);
	}
}
feeData.register(new feeView());

var feeBalance = new InfoData();
function balanceView(){
	this.onrefresh = function(info){
		global['FeeInfo'] = info;
		procPoint('feeManager', 'mainpoint',global);
	}
}
feeBalance.register(new balanceView());

function renderRemindMoblie(remind) {
	if(remind==2 || remind==3) 
		return "checked";
	else
		return "";
}

function showUmpp() {
	return "1";
	//北京0 黑龙江9  山东15  上海1 四川22  广东19 湖北17  天津2	吉林8
	var prov = global.gUInfo.province;
	if(prov==0 || prov==1 || prov==2 || prov==19 || prov==9 || prov==15 || prov==22 || prov==17 || prov==8) 
		return "1";
	else
		return "0";
}
function showIdxSearchBox(type) 
{
	var ussearch = document.getElementById("idxussearch");
	var dtsearch = document.getElementById("idxdtsearch");
	var ssboxtd = document.getElementById("ssboxtd");
	var usstd = document.getElementById("usstd");
	var dtstd = document.getElementById("dtstd");
	if(type==1) {//显示搜索用户		
		ussearch.style.display="";
		dtsearch.style.display="none";
		ssboxtd.className = "nmain_l_01";
		usstd.className = "main_r_zi";
		dtstd.className = "a";
	}else if(type==2) {//搜索dt
		dtsearch.style.display="";
		ussearch.style.display="none"; 	
		ssboxtd.className = "nmain_l_02";
		usstd.className = "a";
		dtstd.className = "main_r_zi";
	}
	
}
function checkResetInfo() {
	var checkname = ["school","carType","carNo"];
	var checkdesc = ["毕业院校","车品牌型号","车牌号码"];
	for(var i=0;i<checkname.length;i++){
		var sch = $(checkname[i]);
		if(sch) {
			if(sch.value == '' || sch.value == '') {
				alert("请填写你的"+checkdesc[i]);
				return false;
			}
		}
	}
	return true;
}

function showDelConfirm(msg){
	global.delmsg = msg;
	showMiddleLayer("delconfirmLayer");	
}

function cheatTypeChanged(value) {
	showElement("barLine1",(value==1),"block" );
	showElement("barLine2",(value==1),"block" );
}

var msg_getargu = msg_alonepage + 1;
var msg_standargu = msg_alonepage +2;
var msg_retourl = msg_alonepage +3;

var msg_getedate = msg_alonepage + 4;
var msg_joinedate = msg_alonepage + 5;

var msg_getmidautumn = msg_alonepage + 6;
var msg_housevip = msg_alonepage + 7;
var msg_houseupload = msg_alonepage + 8;


addMsg(msg_getargu,[procArgu]);
addMsg(msg_standargu,[procStandArgu]);
addMsg(msg_retourl,[procRetourl]);
addMsg(msg_getedate,[procGetEdate]);
addMsg(msg_joinedate,[procJoinEdate]);
addMsg(msg_getmidautumn,[procMidAutumn]);
addMsg(msg_housevip,[procHouseVip]);
addMsg(msg_houseupload,[procHouseUpload]);


function leftarguView(){
	this.onrefresh = function(infoes){
		global["affinfo"] = infoes;
		if(global.neginfo && global.affinfo) {
        	procPoint('bianlun', 'mainpoint', global);
        }
		//procPoint('leftargutp', 'leftag', global);		
	}
}
var leftarguList = new InfoData();
leftarguList.register(new leftarguView());

function rightarguView(){
	this.onrefresh = function(infoes){
		global["neginfo"] = infoes;		
		if(global.neginfo && global.affinfo) {
        	procPoint('bianlun', 'mainpoint', global);
        }
		//procPoint('rightargutp', 'rightag', global);		
	}
}
var rightarguList = new InfoData();
rightarguList.register(new rightarguView());

function setLeftArguPb(stask) {
	global.affpb = stask.pop();

}
function setRightArguPb(stask) {
	global.negpb = stask.pop();
}

function procArgu(msg) {
	var ajax = new AjaxWrap(null);
	if(!msg.arguId)
		msg.arguId=1;
	if(!msg.page0){
		msg.page0 = 0;
	}
//	procPoint('bianlun', 'mainpoint', global);	
	ajax.openText("gettwoargucomment.do?arguId=" + msg.arguId + "&page0=" + msg.page0, true);
}
function procStandArgu(msg) {
	var ajax = new AjaxWrap(null);
	if(!msg.arguId)
		msg.arguId=1;
	if(!msg.page0){
		msg.page0 = 0;
	}
	if(!msg.stand) {
		msg.stand=0;
	}
	if(!msg.order){
		msg.order="time";
	}
	else if(msg.order==0) 
		msg.order = "time";
	else
		msg.order = "support";
	

	ajax.openText("getargucomment.do?stand="+msg.stand+"&arguId=" + msg.arguId + "&page0=" + msg.page0+"&order="+msg.order+"&gender="+msg.gender, true);
}

function refreshStandArgu(stask) {
	var arguId = stask.pop();
	var stand = stask.pop();
	var page = stask.pop();
	global.lyagid = arguId;
	global.lystand = stand;	
	var ajax = new AjaxWrap(null);
	ajax.openText("getargucomment.do?stand="+stand+"&arguId=" + arguId + "&page0=" + page, true);
}

function getDirectUrl(msg,param) 
{
	var url = "http://idate.163.com/loginandred.do?msgs=";
	url = url+msg;
	if(param) url = url+"&params={id:"+param+"}";
	return url;
}

function getArguUserUrl() 
{
	var url = "http://idate.163.com/loginandred.do?msgs=msg_listarguuser";
	url = url+"&params={agid:"+global.lyagid+",stand:"+global.lystand+"}";
	return url;
}
function renderArguPageDivLoop(begin, end, current, funstring, params){
	var loopret = "";
	for(var i = begin ; i <= end; ++i){
		if(i == current){
			loopret += "<span style='color:#ff0033'>"+i+"</span>&nbsp;";
		}else{
			loopret += "<a href='javascript:"+renderPageDivFunction(funstring,params,i)+"'>"+i+"</a>&nbsp;"; 
		}
	}
	return loopret;
}
function renderArguPage(pb, stand,order,gender,agid){
	if(!gender) gender = -1;
	var intord = 0;
	if(order == "support")  intord = 1;
	var current = parseInt(pb.current);
	var per = parseInt(pb.per);
	var total = parseInt(pb.total);
	var ret = "";
	var totpage = parseInt(Math.ceil(total / per).toFixed());
	var offset = (totpage!=11?1:0);
	var funstring="sendMessage(msg_standargu,{arguId:%0,page0:%p,stand:%1,order:%2,gender:%3})";
	var params=[agid,stand,intord,gender];
	
	if(totpage <= 1)  return ret;
	if(current > 1){
		ret += "<a href='javascript:"+renderPageDivFunction(funstring,params,current-1)+"'>上一页</a>&nbsp;"; 
	}

	if(totpage<=10){
	//不足10个记录
		ret += renderArguPageDivLoop(1, totpage, current, funstring, params);
	}else if(current<=8){
	//偏向列首,在前10个记录
		ret += renderArguPageDivLoop(1, 10, current, funstring, params);
		ret += "...";
		ret += renderArguPageDivLoop(totpage-offset, totpage, current, funstring, params);
	}else if(current>=totpage-7){	
	//偏向列尾,在后10个记录
		ret += renderArguPageDivLoop(1, 1+offset, current, funstring, params);
		ret += "...";
		ret += renderArguPageDivLoop(totpage-9, totpage, current, funstring, params);
	}else{
	//在列中
		ret += renderArguPageDivLoop(1, 2, current, funstring, params);
		ret += "...";
		ret += renderArguPageDivLoop(current-3, current+3, current, funstring, params);
		ret += "...";
		ret += renderArguPageDivLoop(totpage-1, totpage, current, funstring, params);
	}
	
	if(current < totpage){
		ret += "<a href='javascript:"+renderPageDivFunction(funstring,params,current+1)+"'>下一页</a>"; 
	}
	return ret;
} 
function procRetourl(msg) 
{
	window.location.href = msg.url;
}
var argudelId = new Array(78,90,289,375,1852,112033,107714,113091,112612,110981,108870,16279,108934,108647,109032,41065,1548970,198937,210316,1885324,111215,2074778);
function renderArguDelUrl(uid,ctid) {
	for(i=0;i<argudelId.length;i++) 
	{
		if(uid==argudelId[i]) {
			return "<a href=delarguct.do?ctid="+ctid+" target='mframe'>删除</a>";
		}
	}
	return "";	
}

function showPostArguLayer(agid,stand,page) 
{
	global.lyagid = agid;
	global.lystand = stand;
	global.lypage = page;
	showMiddleLayerAlone("postargulayer");
}
function postArguJS()
{
	var queryString =	formToRequestString('postarguform');
	var ajax = new AjaxWrap(null);
	ajax.postFormText("postargu.do", queryString, true);
}
function getRetoUrl(url) 
{
	return "http://idate.163.com/loginandred.do?forward="+url;
}


var topicloginurl = "";
function renderShowPostArgu(agid,stand,page,isend)
{
	if (global.gUInfo.id!=197142) {
		var url = "<a href='#' onclick='javascript:showPostArguLayer("+agid+","+stand+","+page+")'>";		
		
	}
	else {
		//var urlfix = "zt"+agid+".htm";		
		var urlfix = "zt.htm?="+agid;
		topicloginurl = getRetoUrl(urlfix);
		var url = "<a href=\"javascript:showTopicLogin()\">";
		
	}
	if(isend==0){
		if(stand==0) 
			url+="<img src=images/bl/top1_z_tj.gif width=173 height=32 border=0>";
		else 
			url+="<img src=images/bl/top1_f_tj.gif width=161 height=30 border=0>";
	}
	return url;
}
function renderShowAddArgusp(agid,ctid,stand)
{
 	if (global.gUInfo.id!=197142) {
 		var url = "<a href='addargusp.do?agid="+agid+"&ctid="+ctid+"&stand="+stand+"' target='mframe' style='text-decoration:none;cursor:pointer'>";		
		return url;
	}
	else {
		//var urlfix = "zt"+agid+".htm";		
		var urlfix = "zt.htm?="+agid;
		topicloginurl = getRetoUrl(urlfix);
		var url = "<a href='javascript:showTopicLogin()' style='text-decoration:none;cursor:pointer'>";
		return url;
	}
}

function changeArgusort(iname,arguId,stand,page) {
	var ajax = new AjaxWrap(null);
	var argusele = document.getElementById(iname+"argusort");
	var idx = argusele.selectedIndex;
	var sortvalue = argusele.options[idx].value;
	if(idx<2)
		ajax.openText("getargucomment.do?stand="+stand+"&arguId=" + arguId + "&page0=" + page+"&order="+sortvalue+"", true);
	else {
		ajax.openText("getargucomment.do?stand="+stand+"&arguId=" + arguId + "&page0=" + page+"&gender="+sortvalue+"", true);
	}		
	
}
function procGetEdate(msg)
{
}
function procJoinEdate(msg)
{
	if(global.gUInfo.id==197142){
		//var msg = {};
		//msg.url = "http://idate.163.com/loginandred.do?msgs=msg_retourl&params={url:'edatejoin.htm'}";
		//procRetourl(msg);
		
		procPoint('edatelogin', 'mainpoint', global);
	}		
	else
		procPoint('joinedate', 'mainpoint', global);
}
function checkEdateInput()
{
	var nameitem = document.getElementById("name");
	var contactitem = document.getElementById("contact");
	var intro = document.getElementById("intro");
	var workplace = document.getElementById("workplace");
	if(nameitem.value=='') {alert ("请输入你的真实姓名");return false;}
	if(contactitem.value=='') {alert ("请输入你的联系电话");return false;}
	if(workplace.value=='') {alert ("请输入你的工作单位");return false;}
	if(intro.value!='' && intro.value.length > 200) {alert("自我介绍请控制在200字内。");return false;}
	return true;
}
function renderMaintopic(info){
	var ret="<option value="+info.argu.id+" selected>"+info.argu.title;
	
	if(info.argu.isend==1) ret+="[已结束]</option>";
	else ret+="[讨论中]</option>";
	var argulist = info.argulist;
	for(i=0;i<argulist.length;i++) {
		ret+= "<option value="+argulist[i].id+">"+argulist[i].title;
		if(argulist[i].isend==1) ret+="[已结束]</option>";
		else ret+="[讨论中]</option>";
	}
	return ret;
}
function changeTopic() {
	var topicsel = document.getElementById("topicsel");
	var idx = topicsel.selectedIndex;
	var topicid = topicsel.options[idx].value;
	window.location.href="zt.htm?="+topicid;
}
function showTopicLogin(urlvalue) {
	var ele = $('nosession')
	ele.style.display='inline';
	ele.style.top = document.body.scrollTop + (browserHeight()-360)/2;
	$('url').value = topicloginurl;
}
/*------------------------中秋活动开始---------------------*/
function procMidAutumn(msg)
{
	procPoint('midautumn', 'mainpoint', global);
}
function procHouseVip(msg)
{
	if(isNaN(msg))  msg=1; 
	var ajax = new AjaxWrap(houseCallBack);
	ajax.openText("gethouselist.do?page=" + msg, true);
}
function houseCallBack(stask){
	if(stask){
		global["uvisitors"] = stask.pop();
		var houseunpasslist = stask.pop();
		var housearguelist = stask.pop();
		if(!global["houseunpasslist"])  global["houseunpasslist"] = houseunpasslist;
		if(!global["housearguelist"])   global["housearguelist"]= housearguelist;
	}
	procPoint('housepasstmp', 'hosuelistpoint', global);
	procPoint('houseunpasstmp', 'houseunpasspoint', global);
	procPoint('housearguetmp', 'housearguepoint', global);
	procPoint('housesearchtmp', 'housesearchpoint', global);
	showElement("certbutton", true);
}
function renderPassHousePage(pb){
	return renderPageDiv(pb,"procHouseVip(%p)",[]);
}
function procHouseUpload(){
	if(getCookie('sid')==''){
		showLoginBox("http://idate.163.com/loginandred.do?forward=housevip.htm&msgs=msg_houseupload");
	}else if(global.gUInfo.hasCertDonate!=-1){
		showMiddleLayer('certResult');
	}else{
		showMiddleLayer('houseCertUpload');
	}
}
function initHouseFilter(){
	if(getCookie('sid')==''){
		global.sFilter.province=0;global.sFilter.city=0;global.sFilter.sex=0;
		if(getCookie('idate_province')!='')  global.sFilter.province = getCookie('idate_province');
		if(getCookie('idate_city')!='')  global.sFilter.city = getCookie('idate_city');
		if(getCookie('idate_sex')!='')  global.sFilter.sex = getCookie('idate_sex');
	}
}

String.prototype.trim = function () {
	return this.replace(/(^\s*)|(\s*$)/g, "");
};
var Util = {getXY:function (Obj) {
	var sumTop = 0, sumLeft = 0;
	while (Obj != document.body) {
		sumLeft += Obj.offsetLeft;
		sumTop += Obj.offsetTop;
		Obj = Obj.offsetParent;
	}
	return {x:sumLeft, y:sumTop};
}};
var Passport = {usernameInputElement:false, usernameInputElementX:false, usernameInputElementY:false, usernameInputHeight:false, usernameListElement:false, currentSelectIndex:-1, domainSelectElmentString:"<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"title\" style=\"title\" align=center>请选择用户名</td></tr><tr><td></td></tr></tbody></table>", domainSelectElement:false, domainArray:["163.com", "126.com", "yeah.net", "popo.163.com", "netease.com"],
 bind:function (obj) {
  	if(obj==null)  obj=document.getElementById("username");
 	if(obj==null)  return;	this.usernameInputElement = obj;
	this.usernameInputElement = obj;
	var xy = Util.getXY(this.usernameInputElement);
	this.usernameInputElementX = xy.x;
	this.usernameInputElementY = xy.y;
	this.handle();
}, position:function () {
	var xy = Util.getXY(Passport.usernameInputElement);
	Passport.usernameInputElementX = xy.x;
	Passport.usernameInputElementY = xy.y;
}, handle:function () {
	if(!document.getElementById("passportusernamelist")) {
		var abc = document.createElement("DIV");
		abc.id = "passportusernamelist";
		abc.className = "domainSelector";
		with (abc.style) {
			position = "absolute";
			top = "0px";
			left = "0px";
			display = "none";
		}
		abc.innerHTML = this.domainSelectElmentString;
		document.body.appendChild(abc);
	}
	this.domainSelectElement = document.getElementById("passportusernamelist");
	this.usernameListElement = this.domainSelectElement.firstChild.rows[1].firstChild;
	this.currentSelectIndex = 0;
	this.usernameInputElement.onblur = function () {
		Passport.doSelect();
	};
	try {
		this.usernameInputElement.removeEventListener("focus", this.position, false);
		this.usernameInputElement.removeEventListener("keypress", this.keypressProc, false);
		this.usernameInputElement.removeEventListener("keyup", this.keyupProc, false);
		this.usernameInputElement.addEventListener("focus", this.position, false);
		this.usernameInputElement.addEventListener("keypress", this.keypressProc, false);
		this.usernameInputElement.addEventListener("keyup", this.keyupProc, false);
	}
	catch (e) {
		try {
			this.usernameInputElement.detachEvent("onfocus", this.position);
			this.usernameInputElement.detachEvent("onkeydown", this.checkKeyDown);
			this.usernameInputElement.detachEvent("onkeypress", this.keypressProc);
			this.usernameInputElement.detachEvent("onkeyup", this.keyupProc);
			this.usernameInputElement.attachEvent("onfocus", this.position);
			this.usernameInputElement.attachEvent("onkeydown", this.checkKeyDown);
			this.usernameInputElement.attachEvent("onkeypress", this.keypressProc);
			this.usernameInputElement.attachEvent("onkeyup", this.keyupProc);
		}
		catch (e) {
		}
	}
}, preventEvent:function (event) {
	event.cancelBubble = true;
	event.returnValue = false;
	if (event.preventDefault) {
		event.preventDefault();
	}
	if (event.stopPropagation) {
		event.stopPropagation();
	}
}, checkKeyDown:function (event) {
	this.currentSelectIndex = 0;
	var keyCode = event.keyCode;
	if (keyCode == 38 || keyCode == 40) {
		Passport.clearFocus();
		if (keyCode == 38) {
			Passport.upSelectIndex();
		} else {
			Passport.downSelectIndex();
		}
		Passport.setFocus();
	}
}, keyupProc:function (event) {
	this.currentSelectIndex = 0;
	var keyCode = event.keyCode;
	Passport.changeUsernameSelect();
	if (keyCode == 13) {
		Passport.doSelect();
	}
}, keypressProc:function (event) {
	this.currentSelectIndex = 0;
	var keyCode = event.keyCode;
	if (keyCode == 13) {
		Passport.preventEvent(event);
	} else {
		if (keyCode == 38 || keyCode == 40) {
			Passport.preventEvent(event);
			Passport.clearFocus();
			if (keyCode == 38) {
				Passport.upSelectIndex();
			} else {
				Passport.downSelectIndex();
			}
			Passport.setFocus();
		} else {
			if (keyCode == 108 || keyCode == 110 || keyCode == 111 || keyCode == 115) {
				setTimeout("Passport.changeUsernameSelect()", 20);
			}
		}
	}
}, clearFocus:function (index) {
	var index = this.currentSelectIndex;
	try {
		var x = this.findTdElement(index);
		x.style.backgroundColor = "white";
	}
	catch (e) {
	}
}, findTdElement:function (index) {
	try {
		var x = this.usernameListElement.firstChild.rows;
		for (var i = 0; i < x.length; ++i) {
			if (x[i].firstChild.idx == index) {
				return x[i].firstChild;
			}
		}
	}
	catch (e) {
	}
	return false;
}, upSelectIndex:function () {
	var index = this.currentSelectIndex;
	if (this.usernameListElement.firstChild == null) {
		return;
	}
	var x = this.usernameListElement.firstChild.rows;
	var i;
	for (i = 0; i < x.length; ++i) {
		if (x[i].firstChild.idx == index) {
			break;
		}
	}
	if (i == 0) {
		this.currentSelectIndex = (x.length - 1);
	} else {
		this.currentSelectIndex = x[i - 1].firstChild.idx;
	}
}, downSelectIndex:function () {
	var index = this.currentSelectIndex;
	if (this.usernameListElement.firstChild == null) {
		return;
	}
	var x = this.usernameListElement.firstChild.rows;
	var i = 0;
	for (; i < x.length; ++i) {
		if (x[i].firstChild.idx == index) {
			break;
		}
	}
	if (i >= x.length - 1) {
		this.currentSelectIndex = x[0].firstChild.idx;
	} else {
		this.currentSelectIndex = x[i + 1].firstChild.idx;
	}
}, setFocus:function () {
	var index = this.currentSelectIndex;
	try {
		var x = this.findTdElement(index);
		x.style.backgroundColor = "#D5F1FF";
	}
	catch (e) {
	}
}, changeUsernameSelect:function () {
	var userInput = this.usernameInputElement.value;
	if (userInput.trim() == "") {
		this.domainSelectElement.style.display = "none";
	} else {
		var username = "", hostname = "";
		var pos;
		if ((pos = userInput.indexOf("@")) < 0) {
			username = userInput;
			hostname = "";
		} else {
			username = userInput.substr(0, pos);
			hostname = userInput.substr(pos + 1, userInput.length);
		}
		var usernames = [];
		if (hostname == "") {
			for (var i = 0; i < this.domainArray.length; ++i) {
				usernames.push(username + "@" + this.domainArray[i]);
			}
		} else {
			for (var i = 0; i < this.domainArray.length; ++i) {
				if (this.domainArray[i].indexOf(hostname) == 0) {
					usernames.push(username + "@" + this.domainArray[i]);
				}
			}
		}
		if (usernames.length > 0) {
			//this.currentSelectIndex = 0 ;
			this.domainSelectElement.style.left = this.usernameInputElementX + "px";
			this.domainSelectElement.style.top = (this.usernameInputElementY + this.usernameInputElement.offsetHeight) + "px";
			this.domainSelectElement.style.zIndex = "100000";
			this.domainSelectElement.style.paddingRight = "0";
			this.domainSelectElement.style.paddingLeft = "0";
			this.domainSelectElement.style.paddingTop = "0";
			this.domainSelectElement.style.paddingBottom = "0";
			this.domainSelectElement.style.backgroundColor = "white";
			this.domainSelectElement.style.display = "block";
			var myTable = document.createElement("TABLE");
			myTable.width = "100%";
			myTable.cellSpacing = 0;
			myTable.cellPadding = 3;
			var tbody = document.createElement("TBODY");
			myTable.appendChild(tbody);
			for (var i = 0; i < usernames.length; ++i) {
				var tr = document.createElement("TR");
				var td = document.createElement("TD");
				td.nowrap = "true";
				td.align = "left";
				td.innerHTML = usernames[i];
				td.idx = i;
				td.onmouseover = function () {
					Passport.clearFocus();
					Passport.currentSelectIndex = this.idx;
					Passport.setFocus();
					this.style.cursor = "hand";
				};
				td.onmouseout = function () {
				};
				td.onclick = function () {
					Passport.doSelect();
				};
				tr.appendChild(td);
				tbody.appendChild(tr);
			}
			this.usernameListElement.innerHTML = "";
			this.usernameListElement.appendChild(myTable);
			this.setFocus();
		} else {
			this.domainSelectElement.style.display = "none";
			this.currentSelectIndex = -1;
		}
	}
}, doSelect:function () {
	this.domainSelectElement.style.display = "none";
	if (this.usernameInputElement.value.trim() == "") {
		return;
	}
	var currentUsernameTd = this.findTdElement(this.currentSelectIndex);
	if (currentUsernameTd) {
		this.usernameInputElement.value = currentUsernameTd.innerHTML;
	}
}};

Passport.bind();
var msg_myphotofolder = msg_photo_b;
var msg_myphotoes = msg_photo_b + 1;
var msg_myphoto = msg_photo_b + 2;

addMsg(msg_myphotofolder, [procMyPhotoFolder]);
addMsg(msg_myphotoes, [procMyPhotoes]);
addMsg(msg_myphoto, [procMyPhoto]);

var msg_removephoto = msg_photo_b + 3;
var msg_setasportrait = msg_photo_b + 4;
addMsgRange(msg_removephoto, msg_setasportrait + 1, [procPhotoOp]);
function PhotoesView(){
	this.onrefresh = function(infoes){
		global.OtherPhotoes = infoes;
		procPoint('myPhoto0', 'mainpoint', global);	
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

var myPhotoes = new InfoData();
myPhotoes.register(new PhotoesView());


function FolderesView(){
	this.onrefresh = function(infoes){
		global.AlbumFolderBeanes = infoes;
		procPoint('myPhoto', 'mainpoint', global);	
	}

	this.onchange = function(item){}

	this.ondelete = function(item){}
}

var myFolderes = new InfoData();
myFolderes.register(new FolderesView());


function procMyPhotoFolder(msg){
	checkNavigate('mm_setCenter');
	var ajax = new AjaxWrap(null);
	ajax.openText('getmyalbumfolder.do', true);
}


function procMyPhotoes(msg){
	checkNavigate('mm_setCenter');
	var ajax = new AjaxWrap(null);
	ajax.openText("showmyphotos.do?val=" + msg.fid, true);
}

function procMyPhoto(msg){
	checkNavigate('mm_setCenter');
	global.cur_photo = msg.pid;
	global.OtherPhotoes = myPhotoes.info;
	procPoint('myPhoto00', 'mainpoint', global);
}

function fillPhotoName(){
	var folder = getElementByNameP("photoup", "photo").value;
	var nm = getElementByNameP("photoup", "name");
	
	var begin = folder.lastIndexOf("\\") + 1;
	var end = folder.lastIndexOf(".");
	end = (end==-1)?folder.length:end;
	
	nm.value = folder.substr(begin,end-begin);
}

function procPhotoOp(msg){
	switch(msg.MSG){
		case msg_removephoto:
			openLayerCall("removephoto.do?ids=" + msg.pid);
			break;
		case msg_setasportrait:
			openLayerCall("setportrait.do?id=" + msg.pid);
			break;
	}
}

function showPhotoRight(folderID){
	global.setRightID = folderID;
	showMiddleLayer("photoset");
}

function photo_upload(folderID){
	global.uploadFolderID = folderID;
	showMiddleLayer("photoUpload");
}

function deletePhoto(msg) {
	openLayerCall("removephoto.do?ids=" + msg.id);
}
global.questiones = [{pb:"如果男朋友为了事业而没有什么时间陪你，你会觉得：",ans:["非常能谅解","偶尔会生气","绝对受不了"]},
{pb:"购物时，假如没遇到自己喜欢的东西，你会：",ans:["随便找个东西买了","没有就不买呗","不买，但心里很窝火"]},
{pb:"你觉得一个人逛街购物的滋味？",ans:["很不舒服","不一定，看心情","就喜欢一个人逛"]},
{pb:"你是为了什么才努力工作的？",ans:["金钱","成就感","地位"]},
{pb:"你觉得真正的爱情会因为遥远的距离而变淡吗？",ans:["绝对不会","时间长就会","不好说"]},
{pb:"当你有不开心的事，你会怎样？",ans:["喝闷酒","找人倾诉","做锻炼宣泄"]},
{pb:"你的情人犯错时，你的基本态度是？",ans:["包容","不依不饶","看情况"]},
{pb:"你自认是个守信用的人吗？",ans:["是的","偶尔会失信","不讲信用"]},
{pb:"自己做主的事，结果做错了，你会觉得：",ans:["难过，追悔莫及","振作，吸取教训","忘记，孰能无过"]},
{pb:"你对男人没有主见有什么看法？",ans:["无所谓，性格问题","不能忍受","非常喜欢"]},
{pb:"假设逢年过节要加班而没办法陪女朋友，你会：",ans:["平时尽量弥补","她应该体谅我","叫她自己安排活动"]},
{pb:"假如你的男朋友逢年过节便要加班，没法陪你，你能做到自得其乐吗？",ans:["可以，我会自己安排","不一定，看心情","不行，我一定要男友陪"]},
{pb:"在路上遇到看似很可怜的乞丐，你会：",ans:["理都不理","看情况，不一定给钱","绝对会给钱"]},
{pb:"你最喜欢以下哪个品牌的手机？",ans:["诺基亚","摩托罗拉","西门子"]},
{pb:"爱情与事业冲突的时候，你如何选择？",ans:["爱情","事业","都不要"]},
{pb:"你认为女孩子的可人之处在于：",ans:["美丽的外貌","良好的自身修养","懂得爱人与被爱"]},
{pb:"你满意自己的现状吗？",ans:["很满意","一般　","不尽人意"]},
{pb:"如果只能选一样，你会选：",ans:["出众的外表","过人的头脑","强大的权势"]},
{pb:"你喜欢什么样的活动方式？",ans:["新潮刺激","安静有趣　","无所谓，看心情"]},
{pb:"面包和爱情哪个重要？",ans:["面包　","爱情　　","一半一半"]},
{pb:"你相信一见钟情吗？",ans:["相信","不相信","没想过这个问题"]},
{pb:"你觉得暗恋的感觉…",ans:["很美妙","非常痛苦　","没暗恋过"]},
{pb:"你最需要什么样的朋友？",ans:["聊友","亲密朋友","爱人"]},
{pb:"如果我不太爱说话，你会主动打破僵局吗？",ans:["会尽量找话来讲　","不会刻意，自然些好","你不说话，那我也不说"]},
{pb:"你是个做事认真的人吗？",ans:["是的","不是","视情况而定"]},
{pb:"当你想一个人的时候你会怎么做？",ans:["什么都不做","打电话找他聊天，但是不告诉他","不管发信也好，电话也好，都要告诉他"]},
{pb:"你希望我爱上你以后，走在马路上为你系鞋带吗？",ans:["希望","不","无所谓"]},
{pb:"你觉得爱一个人需要理由吗？",ans:["需要","不需要","没想过"]},
{pb:"你平时的着装看重的是什么？",ans:["价位，越贵越好","重在舒适","讲究的式样"]},
{pb:"你觉得自己属于以下哪类着装类型？",ans:["高雅淑女型","职业干练型","时尚风情型"]},
{pb:"你认为下面哪个词最贴近自己的特质？",ans:["活泼可爱","美丽大方","温柔体贴"]},
{pb:"你认为人生在世，最重要的是什么？",ans:["快乐","地位","财富"]},
{pb:"你认为男人具备的最可贵的品质是：",ans:["有上进心","有责任感","百折不挠"]},
{pb:"你的抽烟习惯是：",ans:["从不抽烟","偶尔抽，看心情","抽得很凶"]},
{pb:"对于你的异性伴侣某些异想天开的生活建议，你会：",ans:["完全欣赏","偶尔陪着疯","懒得搭理"]},
{pb:"你认为维持两个人之间关系的最主要因素是？",ans:["物质基础","志趣相投","充分的交流"]},
{pb:"对于自己的将来，你：",ans:["有很好的规划","先尽力做好眼前的","没有考虑过"]},
{pb:"如果你的女朋友很喜欢交朋友，你的态度是：",ans:["给予信任，由得她去","和她一起建立朋友圈","不满，不支持"]},
{pb:"你对“吃醋”的解释贴近以下哪种？",ans:["因为爱","因为小气","因为自尊"]},
{pb:"你喜欢送女朋友什么样的小礼物？",ans:["鲜花","小饰品","新奇的小玩意"]},
{pb:"你觉得自己是个很善于和别人沟通的人吗？",ans:["是的，我很健谈","看情况","不，我很内向"]},
{pb:"以下类型的电影，你最喜欢看的是：",ans:["美国大片","港产片","国产电影"]},
{pb:"关于男女之间，你认为：",ans:["性和爱不能分离","性和爱可以清楚划分","搞不清楚"]},
{pb:"如果要拿某种食物做比喻，你觉得自己的性格象以下哪种？",ans:["热情的麻辣烫","清爽的水果沙拉","实在的白米饭"]},
{pb:"如果见面后发现对对方没有感觉，你会：",ans:["直接讲明","礼貌敷衍","态度恶劣"]},
{pb:"你是什么样性格的人？",ans:["开朗活泼　","沉默寡言","宜动宜静"]},
{pb:"你是什么样的发型？",ans:["长发过肩","中发","短头发"]},
{pb:"你的身高是？（问女士）",ans:["160厘米以下","160—165厘米","165厘米以上"]},
{pb:"你的身高是？（问男士）",ans:["170厘米以下","170—175厘米","175厘米以上"]},
{pb:"你的体型是：",ans:["纤细","匀称","略胖"]},
{pb:"你的学历为？",ans:["大专及以下","本科","本科以上"]},
{pb:"你目前的薪资状况？",ans:["2000—3000","3000—5000","5000以上"]},
{pb:"你喜欢听什么类型的音乐？",ans:["古典音乐","流行歌曲","摇滚乐"]},
{pb:"你喜欢跳的舞是：",ans:["Disco","交谊舞","视心情而定"]},
{pb:"你平时的爱好是什么？",ans:["看电影","看小说　","听音乐"]},
{pb:"你喜欢唱歌吗？",ans:["喜欢之极　","看心情","非常不喜欢"]},
{pb:"你喜欢看的电影是什么类型？",ans:["恐怖片","爱情片","科幻片"]},
{pb:"如果有足够的时间和金钱，你会：",ans:["去旅游　","疯狂购物","在家歇着"]},
{pb:"你喜欢吃的菜，偏向于什么口味？",ans:["清淡的","口味重的","无所谓"]},
{pb:"吃火锅，你偏爱以下哪类？",ans:["肉类","蔬菜类","海鲜类"]},
{pb:"中餐和洋快餐，你偏好哪种？",ans:["中餐","洋快餐","看情况"]},
{pb:"对于西餐，你是什么态度：",ans:["非常不喜欢　","尚能接受","很喜欢"]},
{pb:"吃饭的时候，你会为我夹菜吗？",ans:["会","不会","看情况"]},
{pb:"你会喝酒吗？",ans:["偶尔喝一点啤酒","不会喝酒","酒量还不错"]},
{pb:"你喜欢什么类型的酒吧？",ans:["安静温馨的","热闹激情的","看心情"]},
{pb:"你喜欢在酒吧静静地听乐队的演唱吗？",ans:["不喜欢","很喜欢","看心情"]},
{pb:"咖啡、茶、可乐，平时你最喜欢哪种？",ans:["咖啡","茶　　","可乐"]},
{pb:"你最喜欢喝哪种果汁？",ans:["西瓜汁","橙汁","苹果汁"]},
{pb:"水果与巧克力相比，你会选择哪样？",ans:["水果","巧克力","都要"]},
{pb:"你喜欢什么样的旅行方式？",ans:["独自一人","二人世界","拉帮结伙"]},
{pb:"逛书店和逛商场，你宁可选择哪个？",ans:["书店","商场","看情况"]},
{pb:"情人的休闲方式，你觉得哪种最好？",ans:["聊聊天","看电影","出去游玩"]},
{pb:"以下球类你最喜欢哪一种？",ans:["羽毛球","网球","乒乓球"]},
{pb:"你比较喜欢什么样的棋牌类活动？",ans:["纸牌","麻将","象棋"]},
{pb:"你喜欢什么颜色的玫瑰？",ans:["红色","白色","黄色"]},
{pb:"如果将自己比作一种花，你是以下哪一种？",ans:["带刺的玫瑰","芬芳的百合","淡淡的菊花"]},
{pb:"金庸的射雕三部曲，你最喜欢哪一部？",ans:["射雕英雄传","神雕侠侣","倚天屠龙记"]},
{pb:"你喜欢的约会场所是：",ans:["饭店　","咖啡厅","酒吧"]},
{pb:"我们说话时，你会看着我的哪里？",ans:["眼睛","手势","不看我"]},
{pb:"你对女士抽烟怎么看？",ans:["可以接受","坚决反对","无所谓"]},
{pb:"你对AA制有什么看法？",ans:["很好，很公平　","当然是男士付帐　","无所谓"]},
{pb:"如果让你给自己打分，你打多少分？",ans:["满分100","85分","60分"]},
{pb:"你会为你真心所爱的人放弃一切吗？",ans:["会，毫不犹豫","绝对不会","不一定"]},
{pb:"如果你深爱的人弃你而去，你会觉得？",ans:["痛不欲生","恨之入骨","曾经拥有就足够"]},
{pb:"假设你现在已经有情人了，以前的情人回头来找你，你会：",ans:["过去的就过去了","看情况和感觉","做普通朋友无妨"]},
{pb:"你对网络情缘的态度",ans:["非常认真","玩一玩罢了","看感觉"]},
{pb:"你对女士擦香水持什么样的态度？",ans:["非常喜欢","无所谓","极度厌恶"]},
{pb:"你对男士擦香水有什么看法？",ans:["娘娘腔","有涵养","无所谓"]},
{pb:"以下的几种自然景色，你喜欢的是：",ans:["碧海蓝天","葱郁青山","无垠荒漠"]},
{pb:"遇到一个人，你觉得就是你的梦中情人，你会？",ans:["不顾一切大胆示爱","保持矜持，等待时机","傻掉，不敢有所举动"]},
{pb:"交朋友时，你最重视的是：",ans:["外貌","真诚","投缘"]},
{pb:"你对未婚同居的态度是：",ans:["很好，乐于尝试","无所谓","坚决反对"]},
{pb:"你觉得你是个富有激情的人吗？",ans:["不是，我很冷静","看情况","总是激情澎湃"]},
{pb:"你喜欢的女孩类型是：",ans:["贤妻良母型","时尚辣妹型","小鸟依人型"]}];


function showQuestion(pg){
	var qt = document.getElementById("qtable");
	var sps = qt.getElementsByTagName("span");
	for(var i = 0; i < sps.length; ++i){
		sps[i].style.display = (sps[i].id=="qspan" + pg) ? "" : "none";
	}
	
	var chks = document.getElementsByName("checkquestion");
	for(var i = 0; i < chks.length; ++i){
		chks[i].checked = false;
	}
}

function choosQuestion(){
	var chks = document.getElementsByName("checkquestion");
	var ind = -1
	for(var i = 0; i < chks.length; ++i){
		if(chks[i].checked)
			ind = chks[i].value;
	}
	
	if(ind != -1){
		var qs = parseInt(document.getElementById("hdtxt").innerText);
		var qname = "ask[" + qs + "]";
		var qq = document.getElementsByName(qname);
		if(qq && qq[0]){
			qq[0].value = global.questiones[ind].pb;
			for(var i = 0; i < global.questiones[ind].ans.length; ++i){
				var asname = "answer[" + (qs * 3 + i) + "]";
				var as = document.getElementsByName(asname)[0];
				as.value = global.questiones[ind].ans[i];
			}
		}
	}
	closeMiddleLayer();
}

function showQuestionPage(index){
	global.qqq = index;
	showMiddleLayer("question");
}

var msg_searchperson=msg_search;
var msg_idxuser = msg_search + 1;
var msg_scsearch = msg_search + 2;
var msg_scprvdatesearch = msg_search + 3;
var msg_highsearchperson = msg_search + 4;


addMsg(msg_idxuser, [procIndexuser]);
addMsg(msg_scsearch,[procScsearch]);
addMsg(msg_searchperson, [procSearchPerson]);
addMsg(msg_highsearchperson, [procHighSearchPerson]);
addMsg(msg_scprvdatesearch, [procPrvDateSearchPerson]);

global.searchType=0;	//0为简单搜索,1为高级搜索
function procSearchPerson(msg){
	var queryString = formToRequestString('searchPersonForm');
	if(msg.fromother)  queryString = formToSearchString('highSearchPersonForm');
	if(queryString==null)  queryString = global.searchPsStr;
	if(queryString==null && msg.age){
		var ageEdge=[[18,25],[26,35],[36,45],[45,100]];
		queryString="ageBegin="+ageEdge[msg.age-1][0]+"&ageEnd="+ageEdge[msg.age-1][1]+"&sex="+msg.sex+"&province="+msg.province+"&city="+msg.city;
	}
	if(queryString==null){
		queryString='province='+global.gUInfo.embracerProvince+'&city='+global.gUInfo.embracerCity;
		queryString+='&age='+ageselReg3(global.gUInfo)+'&ageBegin='+global.gUInfo.embracerAgeBegin;
		queryString+='&ageEnd='+global.gUInfo.embracerAgeEnd+'&sex='+global.gUInfo.embracerSex;
	}
	
	global.searchPsStr = queryString;
	
	var spc = getCookie(myInfo.info.id + "searchperson");
	if (spc && spc.indexOf("&height") != -1) {
		setCookie(myInfo.info.id + "searchperson", queryString + spc.substr(spc.indexOf("&height")), "/", 10000);
	} else {
		setCookie(myInfo.info.id + "searchperson", queryString, "/", 10000);
	}
	//alert(getCookie(myInfo.info.id + "searchperson") + "\n\n" + queryString);
	
	queryString += "&from="+(msg.from-1)*9 + "&count=9"; 
	global.searchType=0;
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchperson.do", queryString, true);
}
function procHighSearchPerson(msg){
	var queryString = formToRequestString('highSearchPersonForm');
	if(msg.fromother)  queryString = formToSearchString('searchPersonForm');
	if(queryString==null)  queryString = global.highSearchPsStr;
	if(queryString==null){
		queryString='province='+global.gUInfo.embracerProvince+'&city='+global.gUInfo.embracerCity;
		queryString+='&age='+ageselReg3(global.gUInfo)+'&ageBegin='+global.gUInfo.embracerAgeBegin;
		queryString+='&ageEnd='+global.gUInfo.embracerAgeEnd+'&sex='+global.gUInfo.embracerSex;
	}
	global.highSearchPsStr = queryString;
	
	var spc = getCookie(myInfo.info.id + "searchperson");
	if (msg.fromother && spc && spc.indexOf("&height") != -1) {
		queryString += spc.substr(spc.indexOf("&height"));
	}
	setCookie(myInfo.info.id + "searchperson", queryString, "/", 10000);
	//alert(getCookie(myInfo.info.id + "searchperson") + "\n\n" + queryString);
	
	queryString += "&from="+(msg.from-1)*9 + "&count=9"; 
	global.searchType=1;
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchperson.do", queryString, true);
}
function formToSearchString(formname)
{
	var queryString='';
	var form_obj = document.getElementById(formname);
	if(form_obj==null) return null;
	queryString='province='+form_obj.province.value+'&city='+form_obj.city.value;
	queryString+='&age='+form_obj.age.value+'&ageBegin='+form_obj.ageBegin.value;
	queryString+='&ageEnd='+form_obj.ageEnd.value+'&sex='+form_obj.sex.value;
	queryString+='&marriage='+form_obj.marriage.value+'&aim='+form_obj.aim.value;
	return queryString;
}
function searchChatPerson(){
	var queryString = global.searchPsStr;
	if(queryString==null){
		//queryString='province='+global.gUInfo.embracerProvince+'&city='+global.gUInfo.embracerCity;
		queryString+='&age='+ageselReg3(global.gUInfo)+'&ageBegin='+global.gUInfo.embracerAgeBegin;
		queryString+='&ageEnd='+global.gUInfo.embracerAgeEnd+'&sex='+global.gUInfo.embracerSex;
	}
	queryString += "&from=0&count=9"; 
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchperson.do", queryString, true);
}
function procPrvDateSearchPerson(msg){
	var searchPsStr = formToRequestString('searchPersonForm');
	if(searchPsStr!=null) global.searchPsStr = searchPsStr;
	var queryString = global.searchPsStr;
	if(queryString==null){
		queryString='province='+global.gUInfo.embracerProvince+'&city='+global.gUInfo.embracerCity;
		queryString+='&age='+ageselReg3(global.gUInfo)+'&ageBegin='+global.gUInfo.embracerAgeBegin;
		queryString+='&ageEnd='+global.gUInfo.embracerAgeEnd+'&sex='+global.gUInfo.embracerSex;
	}
	queryString += "&from="+(msg.from-1)*9 + "&count=9"; 
	var ajax = new AjaxWrap(null);
	ajax.postFormText("searchprvdateperson.do", queryString, true);

}

function CmpSearchPersion(left, right){
	return left.id == right.id;
}

var searchPerson = new ArrayInfoData(CmpSearchPersion);



function searchPersonView(){
	this.onrefresh = function(infoes){
		global['searchPersons'] = infoes;
		checkNavigate('mm_myFriend');
		procPoint('searchPersonPage', 'mainpoint', global);
	
	}
}
searchPerson.register(new searchPersonView());
function regetFilter(stask){
	global['sFilter'] = stask.pop();
	global['sFilter'].total = stask.pop();
	var sfAge = getMyCookieValue("searchperson", "age");
	var sfAgeBegin = getMyCookieValue("searchperson", "ageBegin");
	var sfAgeEnd = getMyCookieValue("searchperson", "ageEnd");
	var sfSex = getMyCookieValue("searchperson", "sex");
	var sfProvince = getMyCookieValue("searchperson", "province");
	var sfCity = getMyCookieValue("searchperson", "city");
	var sfMarriage = getMyCookieValue("searchperson", "marriage");
	var sfAim = getMyCookieValue("searchperson", "aim");
	if (sfAge) global.sFilter.age = sfAge;
	if (sfAgeBegin) global.sFilter.ageBegin = sfAgeBegin;
	if (sfAgeEnd) global.sFilter.ageEnd = sfAgeEnd;
	if (sfSex) global.sFilter.sex = sfSex;
	if (sfProvince) global.sFilter.province = sfProvince;
	if (sfCity) global.sFilter.city = sfCity;
	if (sfMarriage) global.sFilter.marriage = sfMarriage;
	if (sfAim) global.sFilter.aim = sfAim;
}

global.renderSearchPersondPage = function(pb,msg){
	if(msg==null)  msg = msg_search;
	pb.current=parseInt(pb.from/9)+1;
	pb.per=parseInt(pb.count);
	pb.total=parseInt(pb.total);
	return renderPageDiv(pb,"sendMessage(%0,{from:%p})",[msg]);
}
function scRegetFilter(stask) 
{
	global.sFilter = stask.pop();
	global.scpb = stask.pop();
	global.scpb.type = stask.pop();
}

var shortcutSearchPerson = new ArrayInfoData(CmpSearchPersion);
function shortcutSearchPersonView(){
	this.onrefresh = function(infoes){
		global['searchPersons'] = infoes;
		checkNavigate('mm_myFriend');
		procPoint('shortcutSearchperson', 'mainpoint', global);
	
	}
}
shortcutSearchPerson.register(new shortcutSearchPersonView());

function renderShortcutSearchPersondPage(pb){
	return renderPageDiv(pb,"sendMessage(msg_scsearch,{type:%0,page:%p})",[pb.type]);
}


function procScsearch(msg) 
{
	if(!msg.type)
		msg.type=1;
	if(!msg.page)
		msg.page =1;
	var ajax = new AjaxWrap(null);
	ajax.openText("searchshotcutuser.do?type=" + msg.type + "&page=" + msg.page , true);		
}


var idxuser = new ArrayInfoData();
function idxuserView() {
	this.onrefresh = function(infoes){
		global['cPersons'] = infoes;		
		procPoint('indexPage','mainpoint',global);
		var tditem = document.getElementById("idxtd1");
		tditem.className = "main_r_0" + (global.idxuserType == 5 ? 1 : global.idxuserType) + (global.idxuserType == 5 && global.gUInfo.vipBalance >= 0 ? "_vip" : "");
		for(i=1;i<5;i++) {
			var subtd = document.getElementById("idxstd"+i);
			if(i==global.idxuserType)
				subtd.className = "main_r_zi";
			else
				subtd.className = "a";				
			
		}
	}
}
idxuser.register(new idxuserView);

function procIndexuser(msg) {
	if(!msg.type)
		msg.type=1;
	if(!msg.page)
		msg.page =1;
	global.idxuserType = msg.type;		
	var ajax = new AjaxWrap(null);
	ajax.openText("searchusidx.do?type=" + msg.type + "&page=" + msg.page , true);		
}

var prvDateSearchPerson = new ArrayInfoData(CmpSearchPersion);
function prvDateSearchPersonView(){
	this.onrefresh = function(infoes){
		global['searchPersons'] = infoes;
		checkNavigate('mm_myFriend');
		procPoint('listprvdater', 'mainpoint', global);
	
	}
}
prvDateSearchPerson.register(new prvDateSearchPersonView());
var browserCanBlend = (true);
var transitions = "progid:DXImageTransform.Microsoft.Fade(duration=1)";
var arrPreload = new Array();
var imageSrcArray = new Array();
var imageLittleSrcArray = new Array();
var imageNameArray =new Array();
var SHOWINGSTRING='第<FONT color=#5295f2>%slideNum</FONT>/%slideTotal张';
var _PRELOADRANGE = 6;		//缩略图数量var _PREVIEW_WIDTH = 70;	//缩略图的宽度
var curImg = 0;				//当前图片的index
var numImgs = 0;			//总照片数
var begImg  = 0;			//初始化的图片的index
var firstframeindex  = -1;	//缩略图左边第一张的index
var inittimer  = null;		//用于首次打开时显示图片

function scalePhoto(imgId, width, height) {
    var img = document.getElementById(imgId);

    if (img != null) {
        var imgWidth = img.width;
        var imgHeight = img.height;
        if (imgWidth == 0)
        {
            img.width = width;
        }
        if (imgHeight == 0) {

            img.height = height;
        }
        if (imgWidth > width && imgHeight > height) {
            //both image's width and height are larger than required one
            var widthRate = imgWidth / width;
            var heightRate = imgHeight / height;
            if (widthRate > heightRate) {
                //use width to retrieve the image
                img.width = width;
                img.height = imgHeight * (width / imgWidth);
            } else {
                img.height = height;
                img.width = imgWidth * (height / imgHeight);
            }
        }
        else if (imgWidth > width) {
            //the image width lg than the required width
            img.width = width;
            img.height = imgHeight * (width / imgWidth);
        }
        else if (imgHeight > height) {
            //the image height lg than the required
            img.height = height;
            img.width = imgWidth * (height / imgHeight);
        }
    }
}

function replaceNum(myinput, token, newstr)
{
    var input = myinput;
    var output = input;
    var idx = output.indexOf(token);
    if (idx > -1)
	{
		output = input.substring(0, idx);
		output += newstr;
		output += input.substr(idx+token.length);
    }
    return output;
}

function preloadRange(intPic,intRange) {
	var divStr = "";

	for (var i=intPic; i<intPic+intRange&&i<numImgs; i++) {
		arrPreload[i] = new Image();
		arrPreload[i].src = imageSrcArray[i];
	}

	var strIn = "";
	var k = 0;
	for (i=intPic; i<intPic+intRange; i++) {
		j = i;
		var strA = "";
		var nextImg = curImg;
		if(j<numImgs && j>=0){
			strA = "<td width=\"80\"><table border=\"0\" cellspacing=\"3\" "+GetBorder(j,curImg)+"><tr><td align=center>"+
			"<a href='javascript:changeSlide("+j+")'><img id="+j+" width="+_PREVIEW_WIDTH+" height="+_PREVIEW_WIDTH+" border=0 src='"+
			imageLittleSrcArray[j]+"'></a></td></tr></table></td>";
		}
 		divStr += strA;
	}
	document.getElementById("div1").innerHTML = "<table><tr>"+divStr+"</tr></table>";
	return true;
}

function GetBorder(i,j)
{
	if(i==j)  return " bgcolor=\"#FFCC00\" ";
	return " bgcolor=\"#FFFFFF\" onmouseover=\"this.style.backgroundColor='#ffcc00'\" onmouseout=\"this.style.backgroundColor=''\"";

}

function changeSlide(n)
{
	if(inittimer!=null)  {window.clearInterval(inittimer);inittimer=null;}
    if (document.all)
	{
		/* transistion effects */
		if (browserCanBlend)
		{
			document.all.imgp.style.filter=transitions;
			document.all.imgp.filters[0].Apply();
		}else{
    		document.all.imgp.style.filter="blendTrans(duration=1)";
    		document.all.imgp.filters.blendTrans.Apply();
    	}
    }
	curImg = n;

    //点击查看图片详细信息的地方（需要修改）
    var htmlCont = "" ;
    if (imageSrcArray.length>0) {
		htmlCont ="<center><a href=\""+imageSrcArray[curImg]+"\" target=\"_blank\">" +
			"<img id='js_image' onload='scalePhoto(this.id,500,400);' onerror=\" alert('图片出错');\"  src=\"" + imageSrcArray[curImg] + "\"";
		htmlCont += " border=0 class=uimg ></a></center>";
  	}

    //pnumLine：显示几多张图片及现在是第几张图片    var pnumLine = "<span >" + replaceNum(replaceNum(SHOWINGSTRING, "%slideNum", eval(curImg+1)),"%slideTotal", numImgs) + "</span >";
    document.getElementById("pnumDiv").innerHTML = pnumLine;
    //pnumLine：显示几多张图片及现在是第几张图片    //document.getElementById("pnameDiv").innerHTML = imageNameArray[curImg];
    //htmlCont: 图片显示内容及点击连接    document.getElementById("imgp").innerHTML = htmlCont;

    if (document.all){
    // 用当前图片filter方式运行
		document.all.imgp.filters[0].Play();
    }

    //一开始预计图片位置    if(curImg<=firstframeindex)  firstframeindex--;
    if(curImg<firstframeindex)  firstframeindex=curImg;
    if(curImg>=firstframeindex+_PRELOADRANGE-1)  firstframeindex++;
    if(curImg>firstframeindex+_PRELOADRANGE-1)  firstframeindex=numImgs-_PRELOADRANGE;
    if(firstframeindex>=numImgs-_PRELOADRANGE+1)  firstframeindex = numImgs-_PRELOADRANGE;
    if(firstframeindex<0)  firstframeindex=0;
    preloadRange(firstframeindex,_PRELOADRANGE);
}

function forward()
{
	var nextFrame = curImg+1;
	if (nextFrame >= numImgs){
		nextFrame = 0;
	}
	changeSlide(nextFrame);
}

function rewind()
{
	var nextFrame = curImg-1;
	if (nextFrame < 0){
		nextFrame = numImgs-1;
	}
	changeSlide(nextFrame);
}

function navforward()
{
    firstframeindex++;
    if(firstframeindex>numImgs-_PRELOADRANGE)  firstframeindex = numImgs-_PRELOADRANGE;
    if(firstframeindex<0)  firstframeindex=0;
    preloadRange(firstframeindex,_PRELOADRANGE);
}

function navrewind()
{
    firstframeindex--;
    if(firstframeindex<0)  firstframeindex=0;
    preloadRange(firstframeindex,_PRELOADRANGE);
}

function initalbum(photo)
{
    imageSrcArray = new Array();
    imageLittleSrcArray = new Array();
    imageNameArray =new Array();
	//begImg = 0;
    numImgs=0
	if(photo==null)  return;
    numImgs = photo.length;
	for(i=0;i<photo.length;i++){
        imageSrcArray[i] = photo[i].url
        imageLittleSrcArray[i] = photo[i].littleUrl
        imageNameArray[i] = photo[i].name
	}

	curImg = begImg;
	firstframeindex = curImg-Math.floor((_PRELOADRANGE-1)/2);
    if (curImg < 0 || curImg > numImgs - 1)
    	  curImg = numImgs - 1;
	if (imageSrcArray.length>0);{
		inittimer=window.setInterval('changeSlide(curImg)',30);
    }
}

/********************ajax operations******************************/
function UFolderesView(){
	this.onrefresh = function(infoes){
		global["albuminfolist"] = infoes;
		procPoint('albumslideshow', 'mainpoint', global);
	}
	this.onchange = function(item){}
	this.ondelete = function(item){}
}
var uFolderes = new InfoData();
uFolderes.register(new UFolderesView());
function cAlbumBackParam(stask){
	global.album_currentid = parseInt(stask.pop());
	begImg = parseInt(stask.pop());
}
function procAlbumShowFolder(id,beginid,folderid){
		var ajax = new AjaxWrap(null);
		ajax.openText("getalbumfolder.do?uid=" + id+"&beginid=" + beginid+"&folderid=" + folderid, true);
}
 smileArray =new Array(':)',':D',';)',':O',':P',':}',':@',':S',':$',':(',':\'(',':|','(Z)',':B','(BO)','(R)',':Q','(!)','(S)','(V)','(?)','(X)','(P)','(-)','(-.-)',':;','(SS)','(@)','(%)','(##)','(YY)','(][)','(--)','(~~)','(**)','(@@)','(\'\')','(%%)','(AA)','(SY)','(SMO)','(hit','(busy','(cry','(DD)','(i$)','(GK)','(desk','(bey'); //total=49
  function showPic(str){
	 var source=str;
	 var i,len,st,picName,picPath,inStr,repStr;
	 inStr="<img src=images/face/11.gif>";
	 while((st=source.indexOf(":&#39;("))!=-1){
			if(st==0)
               source=inStr+source.substring(st+7,source.length);
            else
			source=source.substring(0,st)+inStr+source.substring(st+7,source.length);
	 }
	 inStr="<img src='images/face/32.gif'>";
	 while((st=source.indexOf("(&gt;&lt;)"))!=-1){
			if(st==0)
               source=inStr+source.substring(st+11,source.length);
            else
			source=source.substring(0,st)+inStr+source.substring(st+11,source.length);
	 }
	 inStr="<img src='images/face/37.gif'>";
	 while((st=source.indexOf("(&#39;&#39;)"))!=-1){
			if(st==0)
               source=inStr+source.substring(st+12,source.length);
            else
			source=source.substring(0,st)+inStr+source.substring(st+12,source.length);
	 }  
	 inStr="<br>";
	 while((st=source.indexOf("&lt; BR&gt;"))!=-1){
			if(st==0)
               source=inStr+source.substring(st+11,source.length);
            else
			source=source.substring(0,st)+inStr+source.substring(st+11,source.length);
	 } 
     for(i=0;i<smileArray.length;i++) {
	    while((st=source.indexOf(smileArray[i]))>=0)
		{
		   	if(i<9) picName='0'+(i+1)+'.gif';
			else picName=(i+1)+'.gif';
			picPath='/images/face/'+picName;
            inStr="<img src='"+picPath+"'>";
			if(st==0)
               source=inStr+source.substring(st+smileArray[i].length,source.length);
            else			   source=source.substring(0,st)+inStr+source.substring(st+smileArray[i].length,source.length);
		}
	 }
	 return source;
  }
    function showIconSpan(){
	   var isTrue= document.all.iconSpan.style.visibility;
       if(isTrue=="visible")
	     document.all.iconSpan.style.visibility="hidden";
	   else 
	     document.all.iconSpan.style.visibility="visible";
	}

function changeImage(obj,path){
      if(path.length==12)
        document.all.gif[obj-1].src="images/"+path;
	  else
	    document.all.gif[obj-1].src="images/"+path;
}


function AddText(NewCode) {
	var obj = document.getElementById('inputarea');
	obj.value += NewCode;
	obj.focus();
}

function insertAtCaret (textEl, text){
        if (textEl.createTextRange && textEl.caretPos){
                var caretPos = textEl.caretPos;
                caretPos.text += caretPos.text.charAt(caretPos.text.length - 2) == ' ' ? text + ' ' : text;
        } else if(textEl) {
                textEl.value += text;
        } else {
        	textEl.value = text;
        }
}

function border(smile){
	if(smile.className=="td1"){
		smile.className="td2";
	}else{
		smile.className="td1";
	}
}
/////////////////////////在线聊天/////////////////////////////
global.chatmsgs = {};
global.chatitem = $H();
global.comingreq = $H();
global.hiddentalk = $H();
global.lastlogintime = 0;
global.mylastrec = $H();
global.hasNewChatMsg = false; 
function chatreqCallBack(stask){
	global.newchat = stask.pop();
	global.chatreq = {};
	global.chatres = $H();
	var newchatmsgs = stask.pop();
	global.lastlogintime = stask.pop();
	for(i=0;i<global.newchat.length;i++) {		
		if(!global.chatitem[global.newchat[i].id] && global.newchat[i].sender!=global.gUInfo.id) 
			global.comingreq[global.newchat[i].id] = global.newchat[i];

		if(global.newchat[i].action==1 && global.newchat[i].receiver!=global.gUInfo.id) {
			if(global.chatitem[global.newchat[i].id] && global.chatitem[global.newchat[i].id].action!=1)
				showRefuseReq(global.newchat[i]);
		}			
		if(global.newchat[i].action==4) {
			if(global.chatitem[global.newchat[i].id] && global.chatitem[global.newchat[i].id].action!=4 && global.chatitem[global.newchat[i].id].action!=0) {
				var rcvdBox = $(global.newchat[i].id+"_rcvd");
				if(rcvdBox){
					rcvdBox.innerHTML = rcvdBox.innerHTML+"<span style='color:#ED467E'>系统提示:<br>对不起，对方已经断开和您的交谈连接或者已经下线！</span><br>";	
					Form.disable( global.newchat[i].id+"_chatform" );
					$(global.newchat[i].id+"_sendbox").className = "chatdisable";
					$(global.newchat[i].id+"_tdb").bgColor="#F2F2F2"
					$(global.newchat[i].id+"_simg").src = "images/ct_send2.gif";
				}
			}
		}
		global.chatitem[global.newchat[i].id] = global.newchat[i];
		//refresh hiddentalk
		if(global.hiddentalk[global.newchat[i].id]) {
			var hidcount = global.hiddentalk[global.newchat[i].id].newcount;
			global.hiddentalk[global.newchat[i].id] = global.newchat[i];
			global.hiddentalk[global.newchat[i].id].newcount = hidcount;
		}
		if(global.newchat[i].sender!=global.gUInfo.id && global.newchat[i].action==0){
			global.chatreq[global.newchat[i].id] = global.newchat[i];
		}else if(global.newchat[i].sender==global.gUInfo.id && global.newchat[i].action==2){
			global.chatres[global.newchat[i].id] = global.newchat[i];
		}

	}
	showComingReq();
	
	global.chatres.keys().each(function(cid,idx) {  
		choiceChat(cid,3);
		$(cid+"_rcvd").innerHTML = $(cid+"_rcvd").innerHTML + "<span style='color:#ED467E'>系统提示:<br>对方同意了您的交谈请求，连接成功！在交谈过程中，请不要刷新页面、退出登录或关闭浏览器，如果要断开和对方交谈，直接关闭该窗口或点击终止交谈.<br></span>";
		Form.enable( cid+"_chatform" );
		$(cid+"_sendbox").className = "chatenable";
		$(cid+"_tdb").bgColor="#FFFFFF"		
		$(cid+"_simg").src = "images/ct_send.gif";	
		
	} )

	global.hasNewChatMsg = false;
	for(i=0;i<newchatmsgs.length;i++) {
		var chatid = newchatmsgs[i].chatreq.id;
		var chatmsg = newchatmsgs[i].chatmsg;
		var dated = new Date();
		global.mylastrec[chatid] = dated.getTime();
		if(global.chatmsgs[chatid]) {
			var clen = global.chatmsgs[chatid].length;
			for(j=0;j<chatmsg.length;j++) {
				global.chatmsgs[chatid][clen++] = chatmsg[j];
			}			
		}else {			
			//新的交谈开始
			global.chatmsgs[chatid] = chatmsg;
			if(!$(chatid + '_im')) {
				if(global.gUInfo.id == newchatmsgs[i].chatreq.sender)
					createIMWindow(newchatmsgs[i].chatreq,chatid,newchatmsgs[i].rnick);
				else
					createIMWindow(newchatmsgs[i].chatreq,chatid,newchatmsgs[i].snick);	
			}		
		}
		if(global.hiddentalk[chatid]) {
			global.hiddentalk[chatid].newcount = global.hiddentalk[chatid].newcount+1;
		}
		refreshChatwin(newchatmsgs[i].chatreq,chatmsg);
		global.hasNewChatMsg = true;
	}	
	if(checkLastRecInt==0) 
		checkLastRecInt = window.setInterval('checkLastRec()',6000);
	refreshHiddenTalk();
	flashNewMsg();
}
function refreshChatwin(chatitem,talkmsg) {
	var str = "";
	for(i=0;i<talkmsg.length;i++) {
		var shownick = "";
		if(talkmsg[i].sender==chatitem.sender) shownick =chatitem.snick;
		else shownick = chatitem.rnick;
		str += "<span style='color:#999999'>"+shownick+"说: ("+talkmsg[i].timestr+")</span><br>"+talkmsg[i].content+"<br>";
	}
	var rcvdBox = $(chatitem.id+"_rcvd");
	if(rcvdBox)
		rcvdBox.innerHTML = rcvdBox.innerHTML+str.replace(/\\n/g,"<br>");
	scrollToBottom(chatitem.id + "_rcvd");		
}
var loadChatreqTipsInt =0 ;
function loadChatreqTips(){
	var at = new AjaxWrap(chatreqCallBack);
	at.openText("checkchatreq.do?time="+global.lastlogintime, true);
	loadChatreqTipsInt=window.setTimeout("loadChatreqTips()", 1000*6);
}
function sendchat(name) {
	var winName = name;
	if($(winName+"_sendBox").value.length > 0) {
		$(winName+"_sendBox").value = globalEmit($(winName+"_sendBox").value);
		var queryString =	formToRequestString(winName+"_chatform");
		queryString += "chatid="+global.chatitem[name].id+"&receiver=";
		if(global.chatitem[name].sender!=global.gUInfo.id) queryString+=global.chatitem[name].sender;
		else queryString+=global.chatitem[name].receiver;		
		var ajax = new AjaxWrap(null);
		ajax.postFormText("sendchatmsg.do", queryString, true);	
		
		var sBox = $(winName + '_sendBox').value;
		$(winName+"_sendBox").value = '';
		$(winName+"_sendBox").focus();
		var sentText = globalEmit(sBox).replace(/\\n/g,"<br>");
		var rcvdBox = $(winName+"_rcvd");
		var Stamp = new Date(); var h = parseInt(Stamp.getHours()); var m = parseInt(Stamp.getMinutes()); var s = parseInt(Stamp.getSeconds());
		var month = parseInt(Stamp.getMonth())+1;var day= parseInt(Stamp.getDate());var year = String(Stamp.getYear());
		if(h<10) h="0"+h;if(m<10) m="0"+m; if(s<10) s="0"+s;if(month<10) month = "0"+month; if(day<10) day = "0"+day;
		var datestr = year+"-"+month+"-"+day+" "+h+":"+m+":"+s;
		rcvdBox.innerHTML = rcvdBox.innerHTML + "<span style='color:#999999'>"+global.gUInfo.nick+"说： (" +datestr+")</span><br>"+sentText+"<br>";
		scrollToBottom(winName+"_rcvd");		
	}
}
var checkLastRecInt =0 ;
function checkLastRec() {
	var dd = new Date();
	var nowtime = dd.getTime();
	var hasctip = $H();
	global.mylastrec.keys().each(function(item,nouse) {		
		if(nowtime - global.mylastrec[item]>=300000){
			var rcvdBox = $(item+"_rcvd");			
			if(rcvdBox) {
				rcvdBox.innerHTML = rcvdBox.innerHTML + "<span style='color:#ED467E'>系统提示:<br>对方已经有5分钟没有回复您的信息了，可能忙碌或者已经走开了.<br></span>";
			}
			hasctip[item] = item;
		}
		
	} )	
	hasctip.keys().each(function(item,nouse) {
		delete global.mylastrec[item];
	} )	
}
function choiceChat(id,action){	
	var at = new AjaxWrap(null);
	at.openText("choicechat.do?id="+id+"&action="+action, true);
	delete global.comingreq[id];	
}
function doAfterAcceptChat(stask) {
	var chatitem = stask.pop();
	createIMWindow(chatitem,chatitem.id,"");
	var rcvdBox = $(chatitem.id+"_rcvd");
	if(rcvdBox) 
		rcvdBox.innerHTML = rcvdBox.innerHTML + "<span style='color:#ED467E'>系统提示:<br>连接成功,你现在可以和对方交谈了.在交谈过程中，请不要刷新页面、退出登录或关闭浏览器，如果要断开和对方交谈，直接关闭该窗口或点击终止交谈.</span><br>";
		
}
function sendPreChat(uid){
	var at = new AjaxWrap(null);
	at.openText("prechatpay.do?id="+uid+"&time="+global.lastlogintime, true);
}
function sendChatRequest(uid){
	var talking = false;
	global.chatitem.values().each(function(item,nouse) {  
		if( ((item.sender==global.gUInfo.id && item.receiver==uid) || (item.receiver==global.gUInfo.id && item.sender==uid) ) && (item.action==0 || item.action==3 || item.action==2) ){
			talking = true;
		}
	} )	
	if(!talking) {
		var at = new AjaxWrap(null);
		at.openText("sendchatreq.do?id="+uid, true);
	}else {
		var tmp = global.gTemplates.get("hasothertalk");
		openWindowWrapNoMask(function(){
			return tmp.process(global);
		});			
		
	}		
}
function sendChatRequestStask(stask){
	var uid = stask.pop();
	var talking = false;
	global.chatitem.values().each(function(item,nouse) {  
		if( ((item.sender==global.gUInfo.id && item.receiver==uid) || (item.receiver==global.gUInfo.id && item.sender==uid) ) && (item.action==0 || item.action==3 || item.action==2) ){
			talking = true;
		}
	} )	
	if(!talking) {
		var at = new AjaxWrap(null);
		at.openText("sendchatreq.do?id="+uid, true);
	}else {
		var tmp = global.gTemplates.get("hasothertalk");
		openWindowWrapNoMask(function(){
			return tmp.process(global);
		});			
		
	}
}
function doAfterSendchatReq(stask) {
	var chatreq = stask.pop();
	global.chatitem[chatreq.id] = chatreq;
 	createIMWindow(chatreq,chatreq.id,"");
 	$(chatreq.id+"_rcvd").innerHTML = $(chatreq.id+"_rcvd").innerHTML + "<span style='color:#ED467E'>系统提示:<br>您已经向"+chatreq.rnick+"发送了交谈请求，等待对方回应...</span><br>"; 	
	Form.disable(chatreq.id+"_chatform" );
	$(chatreq.id+"_sendbox").className = "chatdisable";
	$(chatreq.id+"_tdb").bgColor="#F2F2F2"
	$(chatreq.id+"_simg").src = "images/ct_send2.gif";	
 	setTimeout( "checkTalkExpire("+chatreq.id+","+chatreq.receiver+")",60000);
}
function checkTalkExpire(id,uid) {
	if(global.chatitem[id].action==0) {
		choiceChat(id,4);
		var rcvdBox = $(id+"_rcvd");		
		if(rcvdBox)
			rcvdBox.innerHTML = rcvdBox.innerHTML+ "<span style='color:#ED467E'>系统提示：<br>对不起，对方没有回应，连接超时！<a href='javascript:ChatClose("+id+");sendPreChat("+uid+")'>重新发送请求</a><br></span>";		
	}
}
function showPreChat(stask) {
	global.ChatRec = stask.pop();
	showMiddleLayerNoMask("prechatpay");	
	var mid = document.getElementById("middleLayer");
	mid.style.zIndex = maxzidx++;
}
var fixComReqIntv = 0;
function showComingReq() {	
	var newcoming = $H();
	global.comingreq.values().each(function(item,nouse) {  
		if(global.chatitem[item.id].action==0) 
			newcoming[item.id] = item;
	} )	
	global.comingreq = newcoming;
	var tiplay = document.getElementById("chattipLay");
	if(global.comingreq.values().length==0) {
		 tiplay.style.display = 'none';	
	}else {
	    tiplay.innerHTML = global.gTemplates.get("chatchoice").process(global);	
 		tiplay.style.left = browserWidth()-290;
		tiplay.style.top = browserHeight() - 140 - 100* (global.comingreq.keys().length-1);
	    tiplay.style.display = '';		    
    }
    if(fixComReqIntv==0)
		fixComReqIntv = window.setInterval('fixComingReqPos()',50);
       
}
function fixComingReqPos() {

		var tiplay = document.getElementById("chattipLay");
		if(global.comingreq.values().length==0) {
			 tiplay.style.display = 'none';	
			  window.clearInterval(fixComReqIntv);
			  fixComReqIntv =0;
		}
		tiplay.style.left = browserWidth()-290;
		tiplay.style.top = browserHeight() - 140 - 100* (global.comingreq.keys().length-1);
        var top = parseInt(tiplay.style.top,10);
        var currTop = document.body.scrollTop + browserHeight()-140- 100* (global.comingreq.keys().length-1);
        var offset = 0;
        if(top!=currTop) {
           offset = Math.ceil(currTop - top);
        }
        tiplay.style.top = top+offset;
}
function fixHiddenTalk() {
		var tiplay = document.getElementById("hiddentalk");
		if(global.hiddentalk.keys().length==0) {
			 tiplay.style.display = 'none';	
			 window.clearInterval(fixhidtalkIntv);
			 fixhidtalkIntv = 0;
		}
		tiplay.style.top = browserHeight() - 110 - 52* (global.hiddentalk.keys().length-1);
        var top = parseInt(tiplay.style.top,10);
        var currTop = document.body.scrollTop + browserHeight() - 110 - 52* (global.hiddentalk.keys().length-1);
        var offset = 0;
        if(top!=currTop) {
           offset = Math.ceil(currTop - top);
        }
        tiplay.style.top = top+offset;
}
var fixhidtalkIntv = 0;
function ChatHidden(id){ 
	$(id+"_im").style.display = 'none';
	global.hiddentalk[id] = global.chatitem[id];
	global.hiddentalk[id].newcount=0;
	if(global.hiddentalk.values().length>0){
	    $("hiddentalk").innerHTML = global.gTemplates.get("hiddentalktp").process(global);
		$("hiddentalk").style.display = '';
	}
	if(fixhidtalkIntv==0)
		fixhidtalkIntv = window.setInterval('fixHiddenTalk()',50);
}
function closeComingReq() {
	var tiplay = document.getElementById("chattipLay");
	tiplay.style.display = 'none';	
}
function showRefuseReq(req) {
	global.chatid = req.id;
	$(req.id+"_rcvd").innerHTML = $(req.id+"_rcvd").innerHTML + "<span style='color:#ED467E'>系统提示:<br>很遗憾，"+req.rnick+"拒绝了您的交谈请求，或许是您资料不完善，没有照片，您可以先留言联系.<br></span>";
}
function showHiddenTalk(id){
	delete global.hiddentalk[id];
	var win = $(id+"_im")
	win.style.display = '';
	$("hiddentalk").innerHTML = global.gTemplates.get("hiddentalktp").process(global);
//		$("hiddentalk").style.display = "none";
	var top = parseInt(win.style.top,10);
	var currTop = document.body.scrollTop + 21;
	var offset = 0;
	if(top!=currTop) {
	   offset = Math.ceil(currTop - top);
	}
	win.style.top = top+offset + rand(100); 	
	win.style.left = 200+rand(100);
	win.style.zIndex=maxzidx++;
	scrollToBottom(id + "_rcvd");
}
function refreshHiddenTalk(){
	if(global.hiddentalk.values().length>0) {
    	var hidlay = $("hiddentalk");
    	hidlay.innerHTML = global.gTemplates.get("hiddentalktp").process(global);
    	hidlay.style.display = '';
    }
}
var maxzidx = 500;
function gs(d){var t=$(d);if (t){return t.style;}else{return null;}}
function gs2(d,a){
    if (d.currentStyle){
      var curVal=d.currentStyle[a]
    }else{
      var curVal=document.defaultView.getComputedStyle(d, null)[a]
    }
    return curVal;
  }
function ChatClose(id){ 
	var conclose = true;
	if(!global.chatitem[id] || (global.chatitem[id].action!=4 && global.chatitem[id].action!=1) ) {
		if(confirm("你正在和对方交谈,确定终止交谈吗?") ){ 			
		}else 
			conclose = false;		
	}
	if(conclose) {
		choiceChat(id,4);
		delete global.hiddentalk[id];
		if(global.hiddentalk.values().length>0){		
	   	    Element.update("hiddentalk",global.gTemplates.get("hiddentalktp").process(global));   	    
		}
		$(id+"_im").style.display= 'none';
		Element.remove(id+"_im");
	}
}
function chatCloseNoCf(id){ 
	choiceChat(id,4);
	delete global.hiddentalk[id];
	if(global.hiddentalk.values().length>0){		
   	    Element.update("hiddentalk",global.gTemplates.get("hiddentalktp").process(global));   	    
	}
	$(id+"_im").style.display= 'none';
}
function checkChattextLen(id){
	var ele = $(id+"_sendbox");
	if(ele.value.length>=200){
		alert("每次发送的内容不能超过200字.");
		ele.value = ele.value.substr(0,199);
	}
}
function clearMyChat() {
	var at = new AjaxWrap(null);
	at.openText("clearmychat.do", true);
}
  if  (document.getElementById){
    (
      function(){       
      
        var dragok = false;
        var y,x,d,dy,dx;
        function move(e)
        {
          if (!e) e = window.event;
          if (dragok){
            d.style.left = dx + e.clientX - x + "px";
            d.style.top  = dy + e.clientY - y + "px";
            return false;
          }
        }
		function down(e){
			if (!e) e = window.event;
			var temp = (typeof e.target != "undefined")?e.target:e.srcElement;
			var textreg = /_sendbox/;
			var sendflag  = false;
			if(textreg.test(temp.id)) sendflag = true;
			if(temp.tagName != "HTML"|"BODY" && temp.tagName!="DIV") {
				while(temp.parentNode != null && temp.tagName!="DIV") {
					temp = temp.parentNode;
				}
			}
			var reg1 = /_im/ ;
			var reg2 = /_rcvd/;
			var regbo = reg1.test(temp.id);
			var regbo2 = reg2.test(temp.id);
			var winid = 0;
			if (regbo || regbo2){
				if(regbo && !sendflag) {
					temp.style.zIndex=maxzidx++;         
					dragok = true;
					d = temp;
					dx = parseInt(gs2(temp,"left"))|0;
					dy = parseInt(gs2(temp,"top"))|0;
					x = e.clientX;
					y = e.clientY;
					document.onmousemove = move;
				} 
				else {
					var tx = $(temp.id.replace(/_rcvd/,'')+"_im");
					if(tx)
						tx.style.zIndex=maxzidx++;
					else temp.style.zIndex=maxzidx++;         
				}				
				return false;		
			}
		}
        function up(){
          dragok = false;
          if(document.onmousemove)
	          document.onmousemove = null;
        }
        document.onmousedown = down;
        document.onmouseup = up;

      }
    )();
  }
  
function createIMWindow(chatitem,name, imTitle) {
	var win = document.createElement("div");
    win.setAttribute('id', name+"_im");
	win.className = "dragclass";	
	global.cid = name;
	if(global.gUInfo.id == chatitem.sender)
		global.talkuser = chatitem.recInfo;
	else
		global.talkuser = chatitem.senderInfo;
	
	win.style.display = '';
	win.style.position = 'absolute';
	win.style.left = 200+rand(100);
	win.style.top = "20px";	
	win.style.width = "472px";
	win.style.height = "284px";		
	win.style.zIndex = maxzidx++;
	win.innerHTML = global.gTemplates.get("chatmsgtp").process(global);
	var objBody = document.getElementsByTagName("body").item(0);
	objBody.insertBefore(win,null);	
	
	var top = parseInt(win.style.top,10);
	var currTop = document.body.scrollTop + 21;
	var offset = 0;
	if(top!=currTop) {
	   offset = Math.ceil(currTop - top);
	}
	win.style.top = top+offset + rand(100); 	
}
function scrollToBottom(id) {
   $(id).scrollTop = $(id).scrollHeight - $(id).clientHeight;
}
function browserWidth() {
   if (self.innerWidth) {
      return self.innerWidth;
   } else if (document.documentElement && document.documentElement.clientWidth) {
      return document.documentElement.clientWidth;
   } else if (document.body) {
      return document.body.clientWidth;
   }   
   return 630;
}

function browserHeight() {
   if (self.innerWidth) {
      return self.innerHeight;
   } else if (document.documentElement && document.documentElement.clientWidth) {
      return document.documentElement.clientHeight;
   } else if (document.body) {
      return document.body.clientHeight;
   }
   return 470;
}
function keyHandler(e, name) {
   var asc = document.all ? e.keyCode : e.which;
   if(asc == 13 && !e.altKey && !e.ctrlKey && !e.shiftKey){
      sendchat(name);
   	  return false;
   }
   return true;
}
function showNoMoney4Chat() {
		showRWrap('您的余额不足，不能进行此操作', "您的帐户余额不足20个金币，不能进行此次操作，请尽快充值。<br><input type='button' value='账户充值' class='anniu' onclick='closeResult();closeLayer();sendMessage(msg_chargepage)'> <a href='javascript:closeResult();sendMessage(msg_helpjiaotan)'>什么是在线交谈？</a>", 0);
}
function rand(number) {
　　　　return Math.ceil(Math.random()*number);
}
//闪烁消息提示
var FlashTimeOut = 0;
var fnm	= 0;
function flashNewMsg(){
	for(var i=0;i<global.hiddentalk.values().length;i++){
		global.hasNewChatMsg |= (global.hiddentalk.values()[i].newcount>0);
	}
	if(global.hasNewChatMsg){
		if(fnm%2==0){
			document.title="有新消息";
		}else{
			document.title="网易佳人有约－同城约会，寻找真爱";
		}
		fnm++;
		window.clearTimeout(FlashTimeOut);
		FlashTimeOut=setTimeout("flashNewMsg()",500);
	}else{
		document.title="网易佳人有约－同城约会，寻找真爱";
	}
}
var uInfoCallBack = new BaseCall("uinfo", "UInfo");
var answerCallBack = new BaseCall("answerPage", "answerBean");
var resultCallBack = new BaseCall("resultPage", "answerBean");
var commentCallBack = new BaseCall("comment", "comment");
var opinionCallBack = new BaseCall("echo", "echo");
var datingCallBack = new BaseCall("datingDetail", "dateBean");
var friendMessageCallBack = new BaseCall("message", "messageBean");

var certificaions = [{id:'IDCert', name:'有效期内的身份证明', content:'身份证、护照、军官证、驾驶证、回乡证、台胞证', type:0},
					 {id:'marriageCert', name:'婚育证明', content:'户口簿', type:1},
					 {id:'jobCert', name:'工作证明', content:'工作证/公司营业执照', type:2},
					 {id:'schoolCert', name:'学历证明', content:'学历证书（包括在读证明或学生证）', type:3},
					 {id:'incomeCert', name:'工资证明', content:'工资单（或收入证明）', type:4},
					 {id:'realtyCert', name:'房产证明', content:'房产证、购房合同或按揭合同', type:5},
					 {id:'cameraCert', name:'视频认证', content:'在线拍照', type:7},
					 {id:'carNoCert', name:'车牌证明', content:'行驶证', type:8}
					 ];

global.checkTips = function(tips){
	return tips.message != 0 || tips.qiubo != 0 || tips.datingReq != 0 || tips.datingRes!=0 || tips.datingCom!=0;
}
function setphotoRight(){
}
global.renderFriendDesc = function(desc){
	switch(desc){
	case 1:
		return "对方向你发送了消息";
		break;
	case 2:
		return "对方向你发送了秋波";
		break;
	case 3:
		return "对方向你发送了约会请求";
		break;
	case 4:
		return "对方请求交换联系方式";
		break;
	default:
	 	return "";
	}
}
function callAjax(url, callback){
	var ajax = new AjaxWrap(callback);
	ajax.openText(url, true);
}
global.commentDating = function(did, eid){
	callAjax("getcommentitem.do?did=" + did + "&eid=" + eid, commentCallBack.getCallBack());
}
global.showOpinion = function(did, eid){
	callAjax("getopinion.do?did=" + did + "&eid=" + eid,
		 opinionCallBack.getCallBack());
}
global.convLevel = function(level){
	switch(parseInt(level)){
	case 1:
		return "有缘人";
	case 2:
		return "好友";
	case 3:
		return "密友";
	default:
		return "陌生人";
	}
}
global.openLayerCall = function(doc, url){
	var ajax = new AjaxWrap(layerCallBack(doc));
	ajax.openText(url, true);
}
global.addFriend = function(id){
	return "addfriend.do?uid=" + id;
}
global.applyDating = function(tp, to, n){
	global.appDating = {type:tp, id:to, nick:n};
	procPoint('newDating','mainpoint',global);
}
global.contact = function(tid, to, n){
	openWindowWrap(function(){
		global.contactObj = {nick:n, id:to};
		return global.gTemplates.get(tid).process(global);
	});
}
global.showAnswer = function(did, eid){
	callAjax("getanswer.do?did=" + did + "&eid=" + eid,
	 answerCallBack.getCallBack());
}
showAnswerResult = function(did, eid){
	callAjax("getanswer.do?did=" + did + "&eid=" + eid,
	 resultCallBack.getCallBack());
}
global.register = function(){
	openWindowWrap(function(){
		return global.gTemplates.get("reg").process(global);
	});
}
function getOptionValue(name){
	var op = document.getElementsByName(name)[0];
	if(op.selectedIndex != -1){
		return name + "=" + op.options[op.selectedIndex].value;
	}else{
		return name + "=-1";
	}
}
function renderPrev(cur, prevString){
	if(cur > 1){
		return "<a href=\"javascript:" + prevString +"\">&lt;&lt;</a>";
	}else{
		return "";
	}
}
function renderNext(bfull, nextString){
	if(bfull){
		return "<a href=\"javascript:" + nextString + "\">&gt;&gt;</a>";
	}else{
		return "";
	}

}
function getNameOringin(name){
	var regx = /([a-zA-Z]*)([0-9]*)/g;

	var rb = regx.exec(name);

	if(result != null){
		return rb[1];
	}else{
		return null;
	}
}
function layerCallBack(doc){
	return function(stask){
		var tmp = global.gTemplates.get("result");
		if(tmp == null){
			alert(templateId + " can't be getted");
		}else{
			showResult(stask);
		}
	};
}
function changeCertRadio(id, certify){
	if(certify == 0){
		var dn = document.getElementById('radioDiv');
		if(dn){
			dn.parentNode.removeChild(dn);
		}
		var tb = document.getElementById(id);
		var next = tb.nextSibling;
		var parent = tb.parentNode;
		var divNode = document.createElement('div')
		divNode.id = 'radioDiv';
		global.item = getCert(id);
		for(var i = 0; i < certificaions.length; ++i){
			var ee = document.getElementById(certificaions[i].id);
			if(ee.id == id){
				ee.style.display = "none";
			}else{
				ee.style.display = "";
			}
		}
		if(global.item)
			divNode.innerHTML = global.gTemplates.get('certConfirm').process(global);

		if(next == null){
			parent.appendChild(divNode);
		}else{
			parent.insertBefore(divNode, next);
		}
	}
}
function uploadCert(stask){
	var id = stask.pop();
	var dn = document.getElementById('radioDiv');
	if(dn){
		dn.parentNode.removeChild(dn);
	}
	var tb = document.getElementById(id);
	var next = tb.nextSibling;
	var parent = tb.parentNode;
	var divNode = document.createElement('div')
	divNode.id = 'radioDiv';
	var item = getCert(id);
	for(var i = 0; i < certificaions.length; ++i){
			var ee = document.getElementById(certificaions[i].id);
			if(ee.id == id){
				ee.style.display = "none";
			}else{
				ee.style.display = "";
			}
	}
	if(item)
		divNode.innerHTML = global.gTemplates.get('certUpload').process(item);

	if(next == null){
		parent.appendChild(divNode);
	}else{
		parent.insertBefore(divNode, next);
	}
}
function getCertConst(id){
	return global.cert[id];
}
function getCert(id){
	for(var i = 0; i < certificaions.length; ++i){
		if(certificaions[i].id == id)
			return certificaions[i];
	}
	return null;
}
global.getfix = function(phone, type){
	var exp = /([0-9]+)-([0-9]+)/;

	var res = exp.exec(phone);

	if(res != null){
		return res[type];
	}
	return "";
}
function sendSugguest(formname){
	var params = formToRequestString(formname);
	var ajax = new AjaxWrap(layerCallBack(document));
	ajax.postFormText("sendsugguest.do", params, true);
}
function getPageDiv(stask){
	var st = stask.pop();
	global['commendDiv'] = st;
	global['sdateFilter'] = stask.pop();
}
function checkChange(name, tid, itemName, vavle){
	var rs = document.getElementsByName(name);
	for(var i = 0; i < rs.length; ++i){
		if(rs[i].checked){
			if(rs[i].value > vavle){
				document.getElementById(tid).style.display = "block";
			}else{
				document.getElementById(tid).style.display = "none";
				document.getElementsByName(itemName)[0].value = "";
			}
		}
	}
}
function checkReality(){
	checkChange("reality", "realityTable", "realityItem", 2);
}
function checkSatisfaction(){
	checkChange("satisfaction", "safetyTable", "safetifyItem", 2);
}
function showModifyEmail(){
	showMiddleLayer("reemail");
}
function showModifyMobile(){
    if(document.getElementsByName("contact")[0]){
		dating_contact = document.getElementsByName("contact")[0].value;
		if(!dating_contact)  dating_contact="";
	}
	showMiddleLayer("remobile")
}
function showModifyMobileNew(){

	procPoint("reauditphone", 'regpoint', global);
}
function doAfterReAuditPhone() {
	closeMiddleLayer();
	sendMessage(msg_reg5);
}

function showModifyMobileRemind(){
	showMiddleLayer("mobileremind")
}
function showModifyEmailStep2(stask){
	global.ne = stask.pop();
	showMiddleLayer("emailcode");
}
function showModifyMobileStep2(stask){
	global.nm = stask.pop();
	global.msg = stask.pop();
	showMiddleLayer("auditmobilecode");
}
function showModifyMobileStepChinaMobile(stask){
	global.nm = stask.pop();
	global.code = stask.pop();
	showMiddleLayer("auditmobilecode_chinamobile");
}
function showModifyMobileStep400(stask){
	global.nm = stask.pop();
	showMiddleLayer("auditmobilecode_400");
}
function resendEmail(){
	var params = formToRequestString("ecform");
	var ajax = new AjaxWrap(null);
	ajax.postFormText("rvemail.do", params, true);
}
function resendMobile(){
	var params = formToRequestString("mcform");
	var ajax = new AjaxWrap(null);
	ajax.postFormText("rvmobile.do", params, true);
}
function firstSendEmail(){
	var params = formToRequestString("ecform");
	var ajax = new AjaxWrap(null);
	ajax.postFormText("regvalidateemail.do", params, true);
}
function firstSendMobile(){
	var params = formToRequestString("mcform");
	var ajax = new AjaxWrap(null);
	ajax.postFormText("regvalidatemobile.do", params, true);
}
function refreshEmail(stask){
	closeMiddleLayer();
	document.getElementById('mdemail').innerText = stask.pop();
}
function refreshMobile(stask){
	closeMiddleLayer();
	var newmobile = stask.pop();
	if(document.getElementById('mdmobile'))  document.getElementById('mdmobile').innerText = newmobile;
	if(document.getElementsByName('contact')[0])  document.getElementsByName('contact')[0].value = newmobile;
	global.gUInfo.mobileNo=newmobile;
}
function refreshMobileRemind(stask){
	closeMiddleLayer();
}
function setPage(stask){
 	var name = stask.pop();
 	global[name] = stask.pop();
}
function deleteApply(did){
	var ajax = new AjaxWrap(null);
	ajax.openText("deleteapply.do?did=" + did, true);
}
function showApplyInfo(did){
	callAjax("getapplyinfo.do?did=" + did, datingCallBack.getCallBack());
}
function isResponser(resp){
	for(var i = 0; i < resp.length; ++i){
		if(resp[i].id == global.gUInfo.id){
			return true;
		}
	}
	return false;
}

function renderTipsTd(tips)
{
	var tc = tips.tipsNum;
	var cc = 5 - tc;
	var ret = "";
	for(i=0;i<cc;i++) {
		ret+= "<td width='110' align='right'></td>";
	}
	return ret;
}
function checkntCard(){
	var cardno = $("cardNo");
	var cardpa = $("cardPass");
	if(cardno.value != "" && isNaN(cardno.value)) {
		alert("请输入正确的卡号");
		return false;
	}
	if(cardpa.value != "" && isNaN(cardpa.value)) {
		alert("请输入正确的密码");
		return false;
	}
	if(cardpa.value!="" && cardpa.value!="") {
		var cform = $("paycardform");
		cform.action = "http://pay.163.com/servlet/controller?operation=dofastfillvalue&ursName="+global.gUInfo.account+"&url=http%3A%2F%2Fidate.163.com%2Fdousercharge.jsp%3Fpaytype=paycard%26amount%3D"+ $("pamount").value;
	}
	return 	checkCardRadio();
}
function checkCardRadio()
{
	var chkbox = document.getElementsByName('amount');
	var nodes = $A(chkbox);
	var rdnodes = nodes.select(function(node)
	{
	return node.checked;
	});
	if(rdnodes.length>0)
		return true;
	else {
		alert("请选择要充值的面额");
		return false;
	}
}
function checkMyPoint(point) {
	$("npointrmdiv").innerHTML = "请稍候,正在查询您的网易通行证帐户余额......";
	$("cardboxInput").style.display = 'none';
	$("pamount").value = point;
	var ajax = new AjaxWrap(null);
	ajax.openText("checkmynpoint.do?id="+point, true);
}
function doAfterChecknPoint(stask){
	var mypoint = parseInt(stask.pop());
	var paypoint = parseInt(stask.pop());
	var showcardBox = true;
	if(mypoint>=paypoint)
		showcardBox = false;
	else showcardBox = true;
	var remaindiv = $("npointrmdiv");
	remaindiv.innerHTML = "您的通行证帐户余额是<span style=\"font-size:16px;color:#ff0033\">"+mypoint+"</span>点";
	if(showcardBox) {
		var box = $("cardboxInput");
		if(box) {
			box.style.display = '';
		}
		var needpoint = paypoint - mypoint;
		remaindiv.innerHTML = remaindiv.innerHTML+ "，您还需要充入<span style=\"font-size:16px;color:#ff0033\">"+needpoint+"</span>点。请购买对应点数的网易充值一卡通充值。<br>";
	}
}
