var sportteryHash = new Hash();// 存放选择的选项
var TICKET_MAX_BETUNITS = 10000;
var TICKET_MAX_BETUNITS_ERR_MSG = '单张彩票的注数不能超过'+TICKET_MAX_BETUNITS+'注';
var TICKET_MAX_BETCOST = TICKET_MAX_BETUNITS * 2;
var TICKET_MAX_MULTIPLE = 99;
var MAX_MULTIPLE = 10000;
var selectedClass = 'fb_bgorg01 cursor';
var unselectedClass = 'fb_pvllgreen01 cursor';
var currentselectedClass = 'fb_pvddorg01 cursor';
var betMoney = 2;
var MAX_BETUNITS_ERR = false;
var COST_REGEX = /^\d+(\.(\d{1,2})?0*)?$/;

if (maxMatchs == null) {
	alert('本玩法最大的场次数未设置！');
}

function checkTicketMaxUnits(betUnits){
	if(betUnits > TICKET_MAX_BETUNITS)
		throw TICKET_MAX_BETUNITS_ERR_MSG;
}

function getInitForm() {
	if (window.INIT_FORM == null) {
		window.INIT_FORM = $('initform');
	}
	return window.INIT_FORM;
}

function getHashKey(intTime, lineId) {
	var lineIdStr = '' + lineId;
	while (lineIdStr.length < 3) {
		lineIdStr = '0' + lineIdStr;
	}
	var strKey = intTime + lineIdStr;
	return parseInt(strKey, 10);
}

// ==========================================================================

// 更新注数
function updateBetUnits(betUnits) {
	var initForm = getInitForm();

	initForm.elements["betUnits"].value = betUnits;

	initForm.getElements('span[_name$=scheme_betUnits]').each( function(item) {
		item.innerHTML = betUnits;
	});

	updateBetCost();
}

function updateBetCost() {
	var initForm = getInitForm();

	var multiple = initForm.elements["multiple"].value;
	if (multiple == "" || !/^\d/.test(multiple)) {
		multiple = 0;
	}

	var betUnits = initForm.elements["betUnits"].value;
	if (betUnits == "" || !/^\d/.test(betUnits)) {
		betUnits = 0;
	}

	var betCost = betUnits * multiple * betMoney;
	initForm.elements["betCost"].value = betCost;

	initForm.getElements('span[_name$=scheme_betCost]').each( function(item) {
		item.innerHTML = betCost;
	});
	
	var rs = countUnitsAndTicket();
	updateTicket(rs.ticket);
	
	calInvestment();
}

function updateTicket(ticket){
	var initForm = getInitForm();
	initForm.getElement('span[_name="scheme_ticket"]').innerHTML = ticket;
	initForm.elements["ticketNum"].value = ticket;
}

function checkMultipleOnBlur(el){
	if(!/^\d/.test(el.value) || el.value <= 0){
		el.value = 1;
		chgMultiple(el);
	}else if(el.value > MAX_MULTIPLE){
		el.value = MAX_MULTIPLE;
		chgMultiple(el);
	}
}

function chgMultiple(obj) {
	var multiple = obj.value;
	var initForm = getInitForm();
	if (multiple <= 0)
		multiple = 1;

	if (obj.name == 'multiple') {
		initForm.getElements('input[_name="multiple"]').each( function(item) {
			item.value = multiple;
		});
	} else {
		initForm.elements['multiple'].value = multiple;
	}
	initForm.getElements('span[_name="scheme_multiple"]').each( function(item) {
		item.innerHTML = multiple;
	});
	
	updateBetCost();
	prizeforcast();
}

function chgSecretType(el) {
	var initForm = getInitForm();
	var arr = initForm.elements['secretType'];
	if (!arr.length)
		arr = [ arr ];

	var tempObj;
	for ( var i = 0, len = arr.length; i < len; i++) {
		tempObj = initForm.getElement('label[for=' + arr[i].id + ']');
		tempObj.className = (el.id == arr[i].id) ? 'rebboldchar' : '';
	}
}

// ==========================================================================
function checkSchemeForm() {
	if(MAX_BETUNITS_ERR){
		throw TICKET_MAX_BETUNITS_ERR_MSG;
	}
	
	var initForm = getInitForm();
	var betCost = initForm.elements['betCost'].value;
	var betUnits = initForm.elements['betUnits'].value;
	var checkedProtocol = $('betzc_protocol').checked;
	// 检查投注场次是否为空
	var items = sportteryHash.getKeys().length;
	if (items <= 0) {
		throw "请选择投注场次";
	}
	// 检查过关方式是否选中
	var passTypeEl = initForm.getElement('input[name=passType][type=radio][checked]');
	if (null == passTypeEl) {
		throw "请选择过关方式";
	}
	// 检查倍数是否大于0小于100
	var multiple = initForm.elements['multiple'].value;
	// 检查倍数是否为数字
	if (!/^\d+$/.test(multiple)) {
		throw "倍数必须为数字！";
	}
	if (multiple > MAX_MULTIPLE || multiple <= 0) {
		throw ("倍投数数值在1-" + MAX_MULTIPLE + "之间");
	}
	// 检查是否同意协议
	if (!checkedProtocol) {
		throw "您必须同意盈彩网代购协议才能正常发起";
	}
	if (betUnits <= 0) {
		throw "投注注数必须大于0";
	}
	if (betCost <= 0) {
		throw "投注金额必须大于0";
	}
	if(betCost != betMoney * multiple * betUnits){
		window.alert("方案金额不正确！");
		return false;
	}
	
	var isShare = initForm.getElement('input[type="radio"][name="saleType"][value="SHARE"]').checked;
	if(isShare){	// ~合买相关验证 ========================================
		// 验证认购
		var joinCostObj = initForm.elements["joinCost"];
		var joinCost = joinCostObj.value; 
		if(joinCost == ""){
			joinCostObj.focus();
			throw "认购金额不能为空";
		}else if(!COST_REGEX.test(joinCost)){
			joinCostObj.focus();
			throw "认购金额必须为数字，并且最多允许两位小数";
		}else{
			joinCost = new Number(joinCost).round(2);// 保留两位小数
		}
		if(joinCost > betCost){
			joinCostObj.focus();
			throw "认购金额不能大于方案金额";
		}
		var organigerMinJoinCost = betCost * 0.01;
		if(joinCost < organigerMinJoinCost){
			joinCostObj.focus();
			throw "发起人至少要认购1%（即" + organigerMinJoinCost + "元或以上）";
		}
		
		// 最低认购金额
		var tempObj;
		tempObj = initForm.elements["minJoinCost"];
		var minJoinCost = tempObj.value;
		if(minJoinCost != ""){
			if(!COST_REGEX.test(minJoinCost)){
				tempObj.focus();
				throw "最低认购金额必须为数字，并且最多允许两位小数";
			}
			minJoinCost = new Number(minJoinCost).round(2);//保留两位小数
			if(minJoinCost > betCost){
				tempObj.focus();
				throw "最低认购金额不能大于方案金额";
			}
			if(joinCost < minJoinCost){
				joinCostObj.focus();
				throw "认购金额必须大于或等于最低认购金额，即" + minJoinCost + "元";
			}
			var remainCost = betCost - joinCost;
			if (minJoinCost > remainCost) {
				tempObj.value = '';
				joinCostObj.value = '';
				throw "您设置的最低认购金额为" + minJoinCost+ "元，而剩余可认购金额只有" + remainCost + "元，请重新设置";
			}
		}
		
		// 验证保底
		tempObj = initForm.elements["baodiCost"];
		var baodiCost = tempObj.value; 
		if(baodiCost == ""){
			baodiCost = 0;
		} else if(!/^\d/.test(baodiCost)){
			tempObj.focus();
			throw "保底金额必须为数字，并且最多允许两位小数";
		} else {
			baodiCost = new Number(baodiCost).round(2);// 保留两位小数
		}
		if(baodiCost > betCost){
			tempObj.focus();
			throw "保底金额不能大于方案金额";
		}
		if(baodiCost > 0 && baodiCost < minJoinCost){
			tempObj.focus();
			throw "保底金额必须大于或等于最低认购金额，即" + minJoinCost + "元";
		}
		if(baodiCost + joinCost > betCost){
			tempObj.focus();
			throw "认购金额和保底金额的总和不能大于方案金额";
		}
		
		tempObj = initForm.elements["allowJoinType"];
		if(!tempObj.disabled && tempObj.value == 'PassworldAllow'){
			tempObj = initForm.elements["schemeJoinPwd"];
			if(tempObj.value == ''){
				window.alert("加入密码不能为空！");
				tempObj.focus();
				return false;
			}
			var pwdLen = tempObj.value.length;
			if(pwdLen < 6 || pwdLen > 20){
				window.alert("加入密码长度不能小于6位或大于20位！");
				tempObj.focus();
				tempObj.select();
				return false;
			}
		}
	}
}

function getConfirmMsg() {
	var temp = '';
	temp += '彩种平台：竞彩足彩\r\n';
	var schemeType = "过关投注";
	var betCost = getInitForm().elements['betCost'].value;
	if (isSinglePass()) {
		schemeType = "单关投注";
	}
	temp += '方案类型：' + schemeType + '\r\n';
	temp += '方案金额：' + betCost + '元\r\n\r\n';

	temp += '本次提交将扣除您' + betCost + "元。您是否确认提交?";
	return temp;
}

function prizeForecast() {
	var initForm = getInitForm();
	
	// 检查投注场次是否为空
	var items = sportteryHash.getKeys().length;
	if (items <= 0) {
		alert("请选择投注场次");
		return ;
	}
	// 检查过关方式是否选中
	var passTypeEl = initForm.getElement('input[name=passType][type=radio][checked]');
	if (null == passTypeEl) {
		alert("请选择过关方式");
		return ;
	}
	// 检查倍数是否大于0小于100
	var multiple = initForm.elements['multiple'].value;
	// 检查倍数是否为数字
	if (!/^\d+$/.test(multiple)) {
		alert("倍数必须为数字");
		return ;
	}
	
	var actionUrl = initForm.action;
	var target = initForm.target;
	initForm.action = actionUrl.replace(/![a-zA-Z]+./ig, '!prizeForecast4Init.');
	initForm.target = '_blank';
	initForm.submit();
	initForm.action = actionUrl;
	initForm.target = target;
}

function generateReqToken(){
	return new Date().getTime() + Math.random();
};

function submitForm() {
	try {
		checkSchemeForm();
	} catch (e) {
		if (typeof e == 'string')
			alert(e);
		else
			alert(e.message);
		return;
	}

	var initForm = getInitForm();
	var isShare = initForm.getElement('input[type="radio"][name="saleType"][value="SHARE"]').checked;
	var heightpx = 0;
	if(checkSysFirefox()){
		heightpx = isShare?445:368;
	}else{
		heightpx = isShare?460:373;
	}
	$S.auth( {
		id :'initForm',
		cover :true,
		skin :'chinaway',
		fn :function() {
			var usermoneyObj = $('isNeedUpdateId');
		    if(usermoneyObj!=null)
		    	getUserMoney();
	    	var timestr = $('selected_scheme_endtime').get('text');
			$floater({
				height:heightpx,
				width:538,
				src: Betzc.base+'/html/sporttery/schemeconfirm.html?noCache='+new Date().getTime(),
				title:'盈彩网<span style="color:#794E4F;font-size:12px;">&nbsp;&nbsp;本方案截止时间：<span style="color:#CC0000;">'+timestr+'</span></span>',
				cover:true,
				beforeClose:function(){
				}
			});
		}
	});
}
function doSubmitForm(childobj){
	var submitDiv = childobj.document.getElementById('childsubmit_divid');
	var waitingDiv = childobj.document.getElementById('childsubmitwaiting_divid');
	var fn = function() {
		var initForm = getInitForm();
		
		if(initForm.elements['request_token'] == null){
			initForm.adopt(new Element('input',{
				'type':'hidden',
				'name':'request_token',
				'value':generateReqToken()
			}));
		}
		
		var formActionUrl = initForm.get('action');
		initForm.set('action', formActionUrl.replace(/![a-zA-Z]+./ig, '!init.'));
		initForm.set('target', null);
		initForm.set('send', {
			method :'post',
			onRequest : function(instance) {
				submitDiv.style.display = 'none';
				waitingDiv.style.display = '';
			},
			onSuccess : function(responseText, responseXML) {
				if (isJsonString(responseText)) {
					var jsonObj = JSON.decode(responseText);
			    	if(jsonObj.success=='true'){
			    		window._tipsHandle.close();
						$floater({
							height:200,
							width:548,
							src:Betzc.base+'/scheme!showSumbitScheme.action?schemeNum='+jsonObj.schemeNum+'&platformkey='+jsonObj.platformkey,
							title:"盈彩网",
							cover:true,
							beforeClose:function(){
							}
						});
			    	}else{
						if (jsonObj.msg) {
							if (jsonObj.msg.indexOf('充值') != -1) {
								if (window.confirm(jsonObj.msg)) {
									window.open('http://www.betzc.com/member/finance/pay!payPer.action');
								}
							}else if(jsonObj.msg == '根据竞彩官方销售时间限制，周一至周五销售时间为：早上9:00至晚上11:00，周六、日销售时间为：早上9:00至第二天早上1:00。'){
								showSaleTimeLimitMsg(jsonObj.msg);
							}else if(jsonObj.msg == '您投注的方案票数超过我们的截止时间前的出票数量，请减少票数或选择普通过关投注，不便之处请谅解。'){
								showCannotPrintMsg(jsonObj.msg);
							} else {
								window.alert(jsonObj.msg);
							}
						} else {
							window.alert(responseText);
						}
			    	}
				} else {
					$('container').innerHTML = responseText;
					window.location.hash = "#A0";
				}
				var usermoneyObj = $('isNeedUpdateId');
			    if(usermoneyObj!=null){
			    	getUserMoney();
			    }
			},
			onFailure : function(instance) {
				alert('网络故障，更新失败！');
			},
			onComplete:function(){
				var request_token_el = initForm.elements['request_token'];
				if(request_token_el != null){
					request_token_el.value = generateReqToken();
				}
				waitingDiv.style.display = 'none';
				submitDiv.style.display = '';
			}
		}).send();
	};
	if (typeof $S == 'object') {
		$S.auth( {
			id :'initForm',
			cover :true,
			skin :'chinaway',
			fn :fn
		});
	} else {
		fn();
	}
}
// ==========================================================================
// 点击选项的处理函数
function clickItem(intTime, lineId, itemIndex, event) {
	var str = intTime + '_' + lineId;

	var tdEl = document.getElementById('td_' + str + '_' + itemIndex);
	var chkEl = document.getElementById('chk_' + str + '_' + itemIndex);
	var checked = !(tdEl.className == selectedClass);

	if (checked) {
		var key = getHashKey(intTime, lineId);
		if (!sportteryHash.has(key)){
			var maxSize = isSinglePass()?window.maxMatchs:window.multipleMaxMatchs;
			if(sportteryHash.getKeys().length >= maxSize){
				alert('最多只能选择' + maxSize + '场赛事');
				if (chkEl != null) {
					chkEl.checked = false;
				}
				return;
			}
		}
	}
	tdEl.className = checked ? selectedClass : unselectedClass;
	if (chkEl != null) {
		if (event != null) {
			var e = new Event(event);
			e.stopPropagation();
			if (e.target.id != chkEl.id)
				chkEl.checked = !chkEl.checked;
		} else {
			chkEl.checked = !chkEl.checked;
		}
	}
	handleItemChg(intTime, lineId, itemIndex, checked);
	displayOption();
	countBetUnits();
	prizeforcast();
}

function handleItemChg(intTime, lineId, itemIndex, checked) {
	var r = handleItemChgFn(intTime, lineId, itemIndex, checked);
	if (rowItemValues != null) {
		var str = intTime + '_' + lineId;
		var key = getHashKey(intTime, lineId);
		if (sportteryHash.has(key)) {
			var obj = sportteryHash.get(key);
			for ( var i = 0; i < rowItemValues.length; i++) {
				var rowVal = rowItemValues[i];
				document.getElementById('bao_' + i + '_' + str).checked = (obj.value & rowVal) == rowVal;
			}
		} else {
			for ( var i = 0; i < rowItemValues.length; i++) {
				document.getElementById('bao_' + i + '_' + str).checked = false;
			}
		}
	}
	
	var display = r != 0;
	if(!isSinglePass() && sportteryHash.getKeys().length > window.maxMatchs){
		chg2MultiplePass();
		display = true; 
	}
	
	if (display)
		displayPassType();
}

function handleItemChgFn(intTime, lineId, itemIndex, checked) {
	var key = getHashKey(intTime, lineId);
	if (sportteryHash.has(key)) {
		var obj = sportteryHash.get(key);
		var v = 1 << itemIndex;
		if (checked == true) {
			obj.value |= v;
			obj.count += 1;
			return 0;
		} else {
			obj.value ^= v;
			if (obj.value == 0) {
				removeFromHash(key);
				return -1;
			} else {
				obj.count -= 1;
				return 0;
			}
		}
	} else if (checked == true) {
		var str = intTime + '_' + lineId;
		sportteryHash.set(key, {
			intTime :intTime,
			lineId :lineId,
			home :document.getElementById('td_h_' + str).innerHTML,
			guest :document.getElementById('td_g_' + str).innerHTML,
			value :1 << itemIndex,
			count :1,
			dan :false
		});
		return 1;
	}
}

function removeFromHash(key){
	sportteryHash.erase(key);
	var danArr = [];
	var size = 0;
	var undanSize = 0;
	sportteryHash.each(function(item){
		size++;
		if(item.dan == true)
			danArr.push(item);
		else
			undanSize++;
	});
	var danSize = danArr.length;
	if(danSize > 0 && (size <= 2 || danSize > (size - 1))){
		danArr.each(function(item){
			item.dan = false;
		});
		danSize = 0;
	}
	var cannotAddDan = danSize >= window.maxMatchs || danSize >= (size-1);
	var c = (danSize > 1 && cannotAddDan)?(danSize-1):danSize;
	displayMohuShedan(c, danSize, undanSize);
}

// 清除一场的选择
function deleteLine(intTime, lineId) {
	var key = getHashKey(intTime, lineId);
	if (sportteryHash.has(key)) {
		var str = intTime + '_' + lineId;
		var obj = sportteryHash.get(key);

		var v = obj.value;
		var k = 0;
		while (v > 0) {
			var a = 1 << k;
			if ((v & a) > 0) {
				var chkEl = document.getElementById('chk_' + str + '_' + k);
				if (chkEl != null)
					chkEl.checked = false;

				document.getElementById('td_' + str + '_' + k).className = unselectedClass;
				v ^= a;
			}
			k++;
			if (k > 31)
				throw '数据异常';
		}

		for ( var i = 0; i < rowItemValues.length; i++) {
			document.getElementById('bao_' + i + '_' + str).checked = false;
		}

		removeFromHash(key);
		displayOption();
		displayPassType();
		countBetUnits();
	}
}

function deleteAllLine() {
	var keys = sportteryHash.getKeys();
	sportteryHash.each( function(obj) {
		var str = obj.intTime + '_' + obj.lineId;
		var v = obj.value;
		var k = 0;
		while (v > 0) {
			var a = 1 << k;
			if ((v & a) > 0) {
				var chkEl = document.getElementById('chk_' + str + '_' + k);
				if (chkEl != null)
					chkEl.checked = false;

				document.getElementById('td_' + str + '_' + k).className = unselectedClass;
				v ^= a;
			}
			k++;
			if (k > 31)
				throw '数据异常';
		}

		for ( var i = 0; i < rowItemValues.length; i++) {
			document.getElementById('bao_' + i + '_' + str).checked = false;
		}
	});
	sportteryHash.empty();
	displayOption();
	displayPassType();
	countBetUnits();
	prizeforcast();
}

function rowBatch(intTime, lineId, rowIndex, event) {
	var str = intTime + '_' + lineId;
	var baoEl = document.getElementById('bao_' + rowIndex + '_' + str);
	if (event != null) {
		var e = new Event(event);
		if (e.target.id != baoEl.id)
			baoEl.checked = !baoEl.checked;
	}
	var key = getHashKey(intTime, lineId);
	if (baoEl.checked && !sportteryHash.has(key)) {
		var maxSize = isSinglePass()?window.maxMatchs:window.multipleMaxMatchs;
		if (sportteryHash.getKeys().length >= maxSize) {
			alert('最多只能选择' + maxSize + '场赛事');
			baoEl.checked = !baoEl.checked;
			return;
		}
	}
	var rowVal = rowItemValues[rowIndex];
	rowSelected(intTime, lineId, rowVal, baoEl.checked);
	prizeforcast();
};

function rowSelected(intTime, lineId, rowVal, checked) {
	var str = intTime + '_' + lineId;
	var tdClassName = checked ? selectedClass : unselectedClass;
	var k = 0;
	var chgCount = 0;
	for ( var p in OptionItem) {
		if ((rowVal & (1 << k)) > 0) {
			var tdEl = document.getElementById('td_' + str + '_' + k);
			if (tdEl.className != tdClassName) {
				tdEl.className = tdClassName;
				var chkEl = document.getElementById('chk_' + str + '_' + k);
				if (chkEl != null)
					chkEl.checked = checked;
				var r = handleItemChgFn(intTime, lineId, k, checked);
				chgCount += r;
			}
		}
		k++;
	}
	displayOption();
	
	var single = isSinglePass();
	if (single) {
		displayPassType();
		countBetUnits();
	} else {
		var chg = chgCount != 0;
		if(sportteryHash.getKeys().length > window.maxMatchs){
			chg2MultiplePass();
			chg = true; 
		}
		if (chg) {
			displayPassType();
			countBetUnits();
		} else {
			countBetUnits();
		}
	}
	
	prizeforcast();
}

function getItemHtml(obj, index, canAddDan) {
	var str = obj.intTime + '_' + obj.lineId;
	var lineIdStr = document.getElementById('lineIdStr_' + str).innerHTML;
	var homeTeam = document.getElementById('td_h_' + str).innerHTML;
	var guestTeam = document.getElementById('td_g_' + str).innerHTML;

	var html = '';
	html += '<tr _intTime="'+obj.intTime+'" _lineId="'+obj.lineId+'" _group="selectedTr" class="' + ((index % 2 == 0) ? 'lc_t_td02' : 'lc_t_td03') + '">';
	html += '  <td height="25"><img src="http://s1.betzc.com/2011/liuchengyouhua/images/lc_close.gif" onclick="deleteLine(' + obj.intTime + ',' + obj.lineId
	+ ');">' + lineIdStr + '</td>';
	html += '  <td>' + homeTeam + '</td>';
	// 让球
	var concedeEl = document.getElementById('td_c_' + str);
	if (concedeEl != null) {
		html += '  <td>' + concedeEl.innerHTML + '</td>';
	}
	html += '  <td>' + guestTeam + '</td>';

	html += '  <td>';
	html += '    <input type="hidden" name="matchItems[' + index + '].intTime" value="' + obj.intTime + '" />';
	html += '    <input type="hidden" name="matchItems[' + index + '].lineId" value="' + obj.lineId + '" />';
	var k = 0;
	var pos = 0;
	var tempplayType = getInitForm().getElement('input[name=playType][type=hidden]').value;
	for ( var p in OptionItem) {
		if ((obj.value & (1 << k)) > 0) {
			var item = OptionItem[p];
			var tempclickItemId = 'clickItem_'+obj.intTime+'_'+obj.lineId+'_'+k;
			html += '<input id="'+tempclickItemId+'" type="checkbox" style="display:none;" checked="checked" name="matchItems[' + index + '].options[' + pos
					+ '].value" value="' + item.value + '" onclick="clickItem(' + obj.intTime + ',' + obj.lineId + ','
					+ k + ',event);" />';
			html += '<label onclick="clickItemAlink(\''+tempclickItemId+'\');">';
			html += '<a href="#" class="lc_sfp" ';
			if(tempplayType=='SINGLE_SCORE'){
				html += ' style="width:52px;" ';
			}else{
				html += ' style="width:27px;" ';
			}
			html += '  onclick="return false;">'+item.text+'</a></label>';
			var awardEl = document.getElementById('award_' + str + '_' + k);
			var award = (awardEl != null) ? awardEl.innerHTML : '0.00';
			html += '<input type="hidden" _group="award" name="matchItems[' + index + '].options[' + pos + '].award" value="' + award
					+ '" />';
			pos++;
			if(pos>0 && pos%6==0){
				html += '';
			}
		}
		k++;
	}
	html += '  </td>';
	if(!isSinglePass()){
		var isDan = obj.dan == true;
		var checkStr = isDan?'checked="checked"':'';
		var disabledStr = (isDan || canAddDan)?'':'disabled="disabled"';
		html += '  <td><input '+checkStr+' '+disabledStr+' type="checkbox" _group="shedan" name="matchItems[' + index + '].shedan" value="true" onclick="clickShedan(this,' + obj.intTime + ',' + obj.lineId+');"  /></td>';
	}
	html += '</tr>';
	return html;
}

function clickItemAlink(clickItemId) {
  $(clickItemId).onclick();
}

function displayOption() {
	var colspan = 5;
	var html = '';
	
    html += '<table width="100%" cellspacing="0" cellpadding="0" border="0" class="lc_tb1">';
	html += ' <tbody id="option_table">';
	html += '   <tr class="lc_t_td01">';
	html += '     <td width="40" height="25">编号</td>';
	html += '     <td width="95" align="center">主队</td>';
  	var headConcedeEl = document.getElementById('head_concede');
	if (headConcedeEl != null) {
		html += ' <td width="40">让球</td>';
		colspan += 1;
	}
	html += '     <td width="95">客队</td>';
	html += '     <td>投注选项</td>';
	if(!isSinglePass()){
		html += ' <td width="35">设胆</td>';
		colspan += 1;
	}
	html += '   </tr>';
	
	var danSize = 0;
	sportteryHash.each( function(value, key, hash) {
		if(value.dan == true)
			danSize++;
	});
	
	var schemeendtimeobj = $('selected_scheme_endtime');
	schemeendtimeobj.set('text','--');

	var keys = sportteryHash.getKeys();
	keys.sort(asc);
	var size = keys.length;
	var canAddDan = size > 2 && danSize < window.maxMatchs && danSize < (size-1);
	for ( var i = 0; i < size; i++) {
		var obj = sportteryHash.get(keys[i]);
		html += getItemHtml(obj, i, canAddDan);
		if(i==0){
			var tempmatchtd = $('scheme_endtime_'+obj.intTime+'_'+obj.lineId);
			schemeendtimeobj.set('text',tempmatchtd.get('etime'));
		}
	}

	html += '  </tbody>';
	html += '</table>';
	document.getElementById('td_selected').innerHTML = html;
}

function isSinglePass() {
	return document.getElementById('passModeEl').value == 'SINGLE';
}

/**
 * 更新过关方式显示
 */
function displayPassType() {
	var el = document.getElementById('pass_container');
	var seletedMatchCount = sportteryHash.getKeys().length;
	var single = isSinglePass();
	var multiplePass = !single && isMultiplePass();
	var maxSize = (single || !multiplePass)?window.maxMatchs:window.multipleMaxMatchs;
	if (!single && seletedMatchCount < 2) {
		el.innerHTML = '最少选择两场以上赛事';
		return;
	} else if (seletedMatchCount == 0) {
		el.innerHTML = '&nbsp;';
		return;
	} else if (seletedMatchCount > maxSize) {
		el.innerHTML = '<font color="red">最多只能选择' + maxSize + '场赛事</font>';
		return;
	}
	
	var passTypeEl = getInitForm().getElement('input[name=passType][type=radio][checked]');
	
	var html = '';
	if (single) {// 单关
		var type = passTypeHash.get('P1');

		html += '<li><SPAN class=boldchar>' + type.text + '</SPAN><input type="radio" value="' + type.key
				+ '" name="passType" checked="checked" style="display:none" /></li>';
	} else {
		var typeArr = PassTypeUtil.getPassTypeArr(seletedMatchCount);
		if(multiplePass){// 多选过关
			var danSize = 0;
			var undanSize = 0;
			sportteryHash.each( function(value, key, hash) {
				if(value.dan == true)
					danSize++;
				else 
					undanSize++;
			});
			var danMaxHit = danSize;
			var danMinHit = getDanMinHit();
			if(danMinHit == null)
				danMinHit = danSize;
			typeArr = PassTypeUtil.getMultiplePassTypeArr(seletedMatchCount);
			for ( var i = 0, len = typeArr.length; i < len; i++) {
				var type = typeArr[i];
				var inputId = 'passType_' + type.key;
				var disabledStr;
				var colorStyle;
				if((danSize > 0 && type.matchCount == seletedMatchCount) || (type.matchCount <= danMinHit) || type.matchCount < danMaxHit || (danMinHit+undanSize<type.matchCount)){
					disabledStr = 'disabled="disabled"';
					colorStyle = 'style="color:gray"';
				}else{
					disabledStr = '';
					colorStyle = 'style="color:#333333"';
				}
				html += '<li><input '+disabledStr+' type="radio" id="' + inputId + '" value="' + type.key
						+ '" name="passType" onclick="chgPassType(this);"><label for="' + inputId + '" '+colorStyle+'>' + type.text
						+ '</label></li>';
			}
		}else{// 普通过关
			typeArr = PassTypeUtil.getPassTypeArr(seletedMatchCount);
			for ( var i = 0, len = typeArr.length; i < len; i++) {
				var type = typeArr[i];
				var inputId = 'passType_' + type.key;
				html += '<li><input type="radio" id="' + inputId + '" value="' + type.key
						+ '" name="passType" onclick="chgPassType(this);"><label style="color:#333333;" for="' + inputId + '" >' + type.text
						+ '</label></li>';
			}
		}
	}
	el.innerHTML = html;

	if(!single && passTypeEl != null){
		passTypeEl = document.getElementById(passTypeEl.id);
		if(passTypeEl != null && passTypeEl.disabled == false){
			passTypeEl.checked = true;
			var tempObj = el.getElement('label[for='+passTypeEl.id+']');
			tempObj.style.color = '#FF0000';
		}	
	}
	
	updatePassTypeText();
}

/**
 * 切换过关方式
 * 
 * @param obj
 */
function chgPassType(obj) {
	var divtempobj = $('pass_container');
	// 更变对应label的颜色
	var tempObj;
	divtempobj.getElements('input[type=radio][name=passType]').each(function(item,index){
		tempObj = divtempobj.getElement('label[for='+item.id+']');
		tempObj.style.color = item.checked?'#FF0000':'#333333';
	});
	updatePassTypeText();
	countBetUnits();
	prizeforcast();
}

function updatePassTypeText() {
	var initForm = getInitForm();
	var passTypeEl = initForm.getElement('input[name=passType][type=radio][checked]');
	var text = '';
	if (passTypeEl != null) {
		var passType = passTypeHash.get(passTypeEl.value);
		text = passType.text;
	}
	document.getElementById('passTypeText').innerHTML = text;
}

function countBetUnits() {
	var initForm = getInitForm();
	try{
		var rs = countUnitsAndTicket();
		updateBetUnits(rs.betUnits);
		
		MAX_BETUNITS_ERR = false;
		initForm.getElements('span[_name="scheme_errmsg"]').setStyle('display','none');
		initForm.getElements('span[_name="scheme_msg"]').setStyle('display','');
	}catch(e){
		MAX_BETUNITS_ERR = true;
		if(e != TICKET_MAX_BETUNITS_ERR_MSG){
			throw e;
		}else{
			initForm.getElements('span[_name="scheme_msg"]').setStyle('display','none');
			initForm.getElements('span[_name="scheme_errmsg"]').each(function(el){
				el.innerHTML = TICKET_MAX_BETUNITS_ERR_MSG;
				el.setStyle('display','');
			});
		}
		return;
	}
}

function prizeforcast() {
	// 判断过关方式有没有选
	var passTypeEl = getInitForm().getElement('input[name=passType][type=radio][checked]');
	var prizeEl = $('prizeForecast');
	if (null == passTypeEl) {
		prizeEl.innerHTML = '0~0元';
		return
	}
	// 判断投注选项是否存在
	var items = sportteryHash.getKeys().length;
	if (items <= 0) {
		prizeEl.innerHTML = '0~0元';
		return
	}
	var passType = passTypeHash.get(passTypeEl.value);
	var minPass = passType.passMatchs[0];
	var maxPass = passType.passMatchs[passType.passMatchs.length - 1];
	
	var multiplePass = isMultiplePass();
	
	// 取出所有的奖金数组
	var minArr = [];
	var maxArr = [];
	var danMinArr = [];
	var danMaxArr = [];
	var minAward;
	var maxAward;
	var tempAward = 0.0;
	$('option_table').getElements('tr[_group=selectedTr]').each( function(trItem) {
		var tempArr = [];
		trItem.getElements('input[type=hidden][_group=award]').each( function(award) {
			tempAward = award.value.toFloat() * 1;
			tempArr.push(tempAward);
		});
		tempArr.sort(asc);
		
		if(multiplePass){
			var intTime = trItem.get('_intTime').toInt();
			var lineId =  trItem.get('_lineId').toInt();
			var key = getHashKey(intTime, lineId);
			if(sportteryHash.get(key).dan == true){
				danMinArr.push(tempArr[0]);
				danMaxArr.push(tempArr[tempArr.length - 1]);
			}else{
				minArr.push(tempArr[0]);
				maxArr.push(tempArr[tempArr.length - 1]);
			}
		}else{
			minArr.push(tempArr[0]);
			maxArr.push(tempArr[tempArr.length - 1]);
		}
	});
	if (minArr.length != maxArr.length) {
		alert("数据出错，请联系客服人员");
		prizeEl.innerHTML = '0~0元';
		return;
	}
	minArr.sort(asc);
	maxArr.sort(desc);
	if (isSinglePass()) {
		minAward = roundPrize(minArr[0]);
		maxAward = 0;
		for (var i = 0; i < minArr.length; i++) {
			maxAward += roundPrize(maxArr[i]);
		}
	}else if(isMultiplePass()){
		var pass = minPass;
		var danSize = danMinArr.length;
		var undanSize = minArr.length;
		danMinArr.sort(asc);

		var danMinHit = getDanMinHit();
		if(danMinHit == null)
			danMinHit = danSize;
		
		minAward = 1;
		for ( var i = 0; i < danMinHit; i++) {
			minAward *= danMinArr[i];
		}
		var min_arr = [];
		for ( var i = danMinHit; i < danSize; i++) {
			min_arr.push(danMinArr[i]);
		}
		min_arr = min_arr.concat(minArr);
		min_arr.sort(asc);
		var len = pass - danMinHit;
		for(var i=0;i<len;i++){
			minAward *= min_arr[i];
		}
		minAward *= 2;
		minAward = roundPrize(minAward);

		maxAward = 0;
		var countMaxFn = function(dan){
			C3(danSize, dan, function(comb1, n1, m1) {
				var award = 1;
				var pos = 0;
				for ( var k = 0; k < n1; k++) {
					if (comb1[k] == true) {
						award *= danMaxArr[k];
						pos++;
						if (pos == m1)
							break;
					}
				}
				C3(undanSize, pass-m1, function(comb2, n2, m2) {
					var award2 = award;
					var pos2 = 0;
					for ( var k2 = 0; k2 < n2; k2++) {
						if (comb2[k2] == true) {
							award2 *= maxArr[k2];
							pos2++;
							if (pos2 == m2)
								break;
						}
					}
					award2 *= 2;
					award2 = roundPrize(award2);
					maxAward += award2;
				});
			});
		};
		for(var dan=danMinHit;dan <= danSize;dan++){
			countMaxFn(dan);
		}
	} else {
		minAward = 1;
		for (var i = 0; i < minPass; i++) {
			minAward *= minArr[i];
		}
		minAward *= 2;
		minAward = roundPrize(minAward);
		
		maxAward = 0;
		for ( var i = 0; i < passType.passMatchs.length; i++) {
			C3(maxArr.length, passType.passMatchs[i], function(comb, n, m) {
				var award = 1;
				var pos = 0;
				for ( var k = 0; k < n; k++) {
					if (comb[k] == true) {
						award *= maxArr[k];
						pos++;
						if (pos == m)
							break;
					}
				}
				award *= 2;
				award = roundPrize(award);
				maxAward += award;
			});
		}
	}
	// 算出来的最大最小奖金开始进行计算
	var multiple = getInitForm().elements['multiple'].value;
	minAward *= multiple;
	maxAward *= multiple;
	prizeEl.innerHTML = "" + minAward.round(2) + "~" + maxAward.round(2) + "元。";
}

function chgSchemeType(el){
	if(el.value == 'NORMAL'){
		$('option_table').getElements('input[_group="shedan"]').each( function(item) {
			item.checked = false;
			item.disabled = false;
		});
		sportteryHash.each( function(value, key, hash) {
			value.dan = false;
		});
		document.getElementById('mohu_div').style.display = 'none';
		document.getElementById('mohu_span').innerHTML = '';
		
		document.getElementById('label_schemeType_NORMAL').className = 'rebboldchar';
		document.getElementById('label_schemeType_MULTIPLE').className = 'boldchar';
	}else{
		document.getElementById('label_schemeType_NORMAL').className = 'boldchar';
		document.getElementById('label_schemeType_MULTIPLE').className = 'rebboldchar';
	}
	displayPassType();
	countBetUnits();
	prizeforcast();
}

function clickShedan(el,intTime,lineId){
	var key = getHashKey(intTime, lineId);
	sportteryHash.get(key).dan = el.checked;
	if(el.checked && !isMultiplePass()){
		chg2MultiplePass();
	}
	
	var danSize = 0;
	var undanSize = 0;
	var size = 0;
	sportteryHash.each( function(value, key, hash) {
		size++;
		if(value.dan == true)
			danSize++;
		else
			undanSize++;
	});
	var cannotAddDan = danSize >= window.maxMatchs || danSize >= (size-1);
	$('option_table').getElements('input[_group="shedan"]').each( function(item) {
		if(cannotAddDan){
			if(!item.checked)
				item.disabled = true;
		}else{
			if(item.disabled)
				item.disabled = false;
		}
	});

	var c = (danSize > 1 && cannotAddDan)?(danSize-1):danSize;
	displayMohuShedan(c, danSize, undanSize);
	displayPassType();
	countBetUnits();
	prizeforcast();
}

function isMultiplePass() {
	var obj = document.getElementById('schemeType_MULTIPLE');
	return obj != null && obj.checked;
}

function chg2MultiplePass(){
	var el = document.getElementById('schemeType_MULTIPLE');
	el.checked = true;
	if(el.value == 'NORMAL'){
		$('option_table').getElements('input[_group="shedan"]').each( function(item) {
			item.checked = false;
			item.disabled = false;
		});
		sportteryHash.each( function(value, key, hash) {
			value.dan = false;
		});
		document.getElementById('mohu_div').style.display = 'none';
		document.getElementById('mohu_span').innerHTML = '';
		
		document.getElementById('label_schemeType_NORMAL').className = 'rebboldchar';
		document.getElementById('label_schemeType_MULTIPLE').className = 'boldchar';
	}else{
		document.getElementById('label_schemeType_NORMAL').className = 'boldchar';
		document.getElementById('label_schemeType_MULTIPLE').className = 'rebboldchar';
	}
}

function displayMohuShedan(c, danSize, undanSize){
	if(c > 0){
		var minPass = danSize;
		var min = minPass - undanSize;
		if(min <= 0)
			min = 1;
		var html = '<select id="select_danMinHit" name="danMinHit" onchange="chgDanMinHit(this);">';
		for(var i=c;i>=min;i--){
			html += '<option value="'+i+'">至少对'+i+'场</option>';
		}
		html += '</select>';
		document.getElementById('mohu_div').style.display = '';
		document.getElementById('mohu_span').innerHTML = html;
	}else{
		document.getElementById('mohu_div').style.display = 'none';
		document.getElementById('mohu_span').innerHTML = '';
	}
}

function getDanMinHit(){
	var obj = document.getElementById('select_danMinHit');
	if(obj != null && obj.value != null){
		return obj.value.toInt();
	}
	return null;
}

function chgDanMinHit(el){
	displayPassType();
	countBetUnits();
	prizeforcast();
}

function countUnitsAndTicket(){
	var allBetUnits = 0;
	var allTicket = 0;
	var initForm = getInitForm();
	var passTypeEl = initForm.getElement('input[name=passType][type=radio][checked]');
	if (passTypeEl != null) {
		var passType = passTypeHash.get(passTypeEl.value);
		
		var multiple = initForm.elements["multiple"].value;
		if (multiple == "" || !/^\d/.test(multiple)) {
			multiple = 0;
		}else{
			multiple = multiple.toInt();
		}

		var danBets = [];
		var unDanBets = [];
		var keys = sportteryHash.getKeys();
		keys.sort(asc);
		keys.each(function(key){
			var value = sportteryHash.get(key);
			if(value.dan == true)
				danBets.push(value.count);
			else
				unDanBets.push(value.count);
		});
		var danSize = danBets.length;
		var unDanSize = unDanBets.length;
		var size = danSize + unDanSize;
		
		if(isMultiplePass()){
			if(danSize > 0){
				var needs = passType.matchCount;
				var danMinHit = getDanMinHit();
				if(danMinHit == null)
					danMinHit = danSize;
				for(var danHit=danMinHit;danHit<=danSize;danHit++){
					C3(danSize, danHit, function(comb1, n1, m1) {
						var betArr = [];
						for (var i = 0; i < comb1.length; i++) {
							if (comb1[i]) 
								betArr.push(danBets[i]);
						}
						C3(unDanSize, needs - m1, function(comb2, n2, m2) {
							var betArr2 = $A(betArr);
							for (var i = 0; i < comb2.length; i++) {
								if (comb2[i])
									betArr2.push(unDanBets[i]);
							}
							var betUnits = countSimpleUnitFn(betArr2, passType.passMatchs);
							allBetUnits += betUnits;
							var multArr = splitMultiple(betUnits,multiple);
							if(multArr != null){
								allTicket += multArr.length;
							}
						});
					});
				}
			}else{
				var allBetArr = unDanBets;
				var callback = function(comb, m, pt){
					var betArr = [];
					for (var i = 0; i < comb.length; i++) {
						if (comb[i]) {
							betArr.push(allBetArr[i]);
						}
					}
					var betUnits = countSimpleUnitFn(betArr, pt.passMatchs);
					allBetUnits += betUnits;
					var multArr = splitMultiple(betUnits,multiple);
					if(multArr != null){
						allTicket += multArr.length;
					}
				};
				var maxMatchSize = window.maxMatchs;
				splitTicket(size, passType.matchCount, maxMatchSize, callback);
			}
		}else{
			var betUnits = countSimpleUnitFn(unDanBets, passType.passMatchs);
			allBetUnits += betUnits;
			var multArr = splitMultiple(betUnits, multiple);
			if(multArr != null){
				allTicket += multArr.length;
			}
		}
	}
	
	return {
		betUnits : allBetUnits,
		ticket : allTicket
	};
}

function countSimpleUnitFn(betArr, passArr){
	var betUnits = 0;
	var fn = function(comb, m){
		var units = 1;
		var c = 0;
		for (var i = 0; i < comb.length; i++) {
			if (comb[i]) {
				units *= betArr[i];
				checkTicketMaxUnits(units);
				c++;
				if (c == m || units == 0)
					break;
			}
		}
		betUnits += units;
		checkTicketMaxUnits(betUnits);
	};
	passArr.each(function(pass){
		C3(betArr.length,pass,fn);
	});
	return betUnits;
}

function splitMultiple(betUnits,multiple){
	if (betUnits <= 0 || multiple <= 0)
		return null;
	
	var betCostPerMul = betUnits * 2;
	var ticketMaxMultiple = Math.floor(TICKET_MAX_BETCOST / betCostPerMul);
	if (ticketMaxMultiple > TICKET_MAX_MULTIPLE) {
		ticketMaxMultiple = TICKET_MAX_MULTIPLE;
	}
	var mulArr = [];
	while (multiple > ticketMaxMultiple) {
		mulArr.push(ticketMaxMultiple);
		multiple -= ticketMaxMultiple;
	}
	if (multiple > 0)
		mulArr.push(multiple);
	return mulArr;
}

function showCannotPrintMsg(msg) {
	if (J != null && J.dialog != null) {
		var getUrl = function(url) {
			var str = window.location.href;
			str = str.replace('http\:\/\/', '');
			var p = str.indexOf('\/');
			if (p > 0) {
				str = str.substr(0, p);
			}
			var fullUrl = 'http://' + str + Betzc.base;
			if (url.indexOf('\/') != 0) {
				fullUrl += '/';
			}
			fullUrl += url;
			return fullUrl;
		};
		J.dialog.get( {
			id :'cannotPrintMsg',
			title :'盈彩网',
			skin :'chinaway',
			cover :true,
			nofoot :true,
			width:440,
			height :210,
			link : getUrl('/html/cannotprint/cannotprint.html')
		});
	} else {
		alert(msg);
	}
}

function countSameFn(comb1, comb2){
	var count = 0;
	for (var i = 0; i < comb1.length; i++) {
		if (comb1[i] && comb2[i])
			count++;
	}
	return count;
};

function splitTicket(matchSize, pass, maxMatchSize, callback){
	var maxSame = pass - 1;
	var passTypeArr = PassTypeUtil.findPassTypes(pass, maxMatchSize);
	Array.sort(function(pt1,pt2){
		if (pt1.matchCount > pt2.matchCount)
			return 1;
		else if (pt1.matchCount < pt2.matchCount)
			return -1;
		return 0;
	});
	
	var checkArr = [];
	var checkFn = function(newComb){
		for ( var i = 0; i < checkArr.length; i++) {
			var comb = checkArr[i];
			var same = countSameFn(newComb, comb);
			if (same > maxSame)
				return false;
		}
		return true;
	};
	
	for (var i = passTypeArr.length - 1; i > -1; i--) {
		var pt = passTypeArr[i];
		C3(matchSize, pt.matchCount, function(comb, n, m){
			var combClone = $A(comb);
			var chk = checkFn(combClone);
			if (chk) {
				checkArr.push(combClone);
				callback(combClone, m, pt);
			}
		});
	}
}

function itemOnmouseover(obj){
	if(obj.className==selectedClass){
		return;
	}
	obj.className = currentselectedClass;
}

function itemOnmouseout(obj){
	if(obj.className==selectedClass){
		return;
	}
	obj.className = unselectedClass;
}

function tofilter() {
	var initForm = getInitForm();
	var selectCount = sportteryHash.getKeys().length;
	if(isSinglePass()){
		alert('在线过滤只支持过关投注');
		return false;
	}else if(selectCount == 0){
		alert('请选择投注场次');
		return false;
	}else if(selectCount < 2){
		alert('请选择两场或以上赛事进行过滤');
		return false;
	}
	var formActionUrl = initForm.get('action');
	initForm.set('action', formActionUrl.replace(/![a-zA-Z]+./ig, '!editFilter.'));
	initForm.set('target', '_blank');
    return true;
}

function roundPrize(prize){
	var prizeStr = prize+'';
	var p = prizeStr.indexOf('.');
	var len = prizeStr.length;
	if(p >=0 && len-p > 3){
		var p1Str = prizeStr.substring(0, p+3);
		var p2Str = prizeStr.substring(p+3, p+4);
		var p = parseFloat(p1Str);
		var p2 = parseInt(p2Str,10);
		if(p2 > 5){
			p += 0.01;
		}
		return p;
	}else{
		return prize;
	}
}

function childwinopentarget(url){
	window._tipsHandle.close();
	window.open(url,'_blank');
}

function userloginsp(){
	$S.auth( {
		id :'initForm',
		cover :true,
		skin :'chinaway',
		fn :function() {
			   var usermoneyObj = $('isNeedUpdateId');
		       if(usermoneyObj!=null){
		    	   getUserMoney();
		       }
		}
	});
}

function getUserMoney(){
   var usermoneyUrl = Betzc.base + '/user!userMoney.action';
   var req = new Request({
	 	 url: usermoneyUrl,
	     method:'get' ,
	     onSuccess: function(responseText) {
			if(isJsonString(responseText)){
	    		var jsonObj = JSON.decode(responseText);
				if(jsonObj.success){
					$('isNeedUpdateId').setProperty('text',jsonObj.msg+'元');
					$('isNeedUpdateSpanId').setStyle('display', '');
				}
	    	}
	     }
	 }).send();
}

function checkSysFirefox(){
	var isFirefox = false;
	try{
	    var Sys = {};
	    var ua = navigator.userAgent.toLowerCase();
	    var s;
	    (s = ua.match(/msie ([\d.]+)/)) ? Sys.ie = s[1] :
	    (s = ua.match(/firefox\/([\d.]+)/)) ? Sys.firefox = s[1] :
	    (s = ua.match(/chrome\/([\d.]+)/)) ? Sys.chrome = s[1] :
	    (s = ua.match(/opera.([\d.]+)/)) ? Sys.opera = s[1] :
	    (s = ua.match(/version\/([\d.]+).*safari/)) ? Sys.safari = s[1] : 0;
	    isFirefox = Sys.firefox;
	}catch(e){
		isFirefox = false;
	}
	return isFirefox;
}

function chgSaleType(el){
	var isShare = el.value == 'SHARE';
	var shareTrArr = ['tr_minJoinCost','tr_joinCost','tr_baodiCost'];
	var selfTrArr = [];
	
	var initForm = getInitForm();
    var arr = initForm.elements['saleType'];
	if(!arr.length) arr = [arr];
	for(var i=0,labelEl,saleTypeEl,len=arr.length;i<len;i++){
		saleTypeEl = arr[i];
		labelEl = document.getElementById('label_'+saleTypeEl.value);
		if(labelEl != null){
			labelEl.className = (el.value == saleTypeEl.value)?'font14char redboldchar':'font14char boldchar';
		}
	}
	
	var isShare = initForm.getElement('input[name="saleType"][value="SHARE"]').checked;
	var memberOpenEl = initForm.getElement('span[id="span_secretType_MemberOpen"]');
	if(isShare == false){
		var memberSecretTypeEl = initForm.getElement('input[name="secretType"][value="MemberOpen"]');
		if(memberSecretTypeEl.checked){
			var openSecretTypeEl = initForm.getElement('input[name="secretType"][value="Open"]');
			openSecretTypeEl.fireEvent('click');
			openSecretTypeEl.checked=true;
		}
		memberOpenEl.style.display = 'none';
	}else{
		memberOpenEl.style.display = '';
	}
	
	chgShow(shareTrArr,isShare);
	chgShow(selfTrArr,!isShare);
	
	initForm.elements['friendIds'].disabled = !isShare;
	
	if(isShare){
		calInvestment();
	}

	var usermoneyObj = $('isNeedUpdateId');
	if(usermoneyObj != null){
		getUserMoney();
	}
}

function chgShow(arr,show){
	if(arr != null && arr.length > 0 && show != null){
		var initForm = getInitForm();
		var tempTrObj;
		var tempArr;
		for(var i=0,len=arr.length;i<len;i++){
			tempTrObj = initForm.getElement('tr[_name='+arr[i]+']');
			if(tempTrObj){
				tempTrObj.style.display = show?'':'none';
				chgDisabled(tempTrObj,['input','select','textarea'],show);
			}
		}
	}
}

function chgDisabled(parentObj,tagNameArr,able){
	if(parentObj != null && tagNameArr != null && able != null){
		var tempArr;
		for(var i=0,len=tagNameArr.length;i<len;i++){
			tempArr = parentObj.getElementsByTagName(tagNameArr[i]);
			if(tempArr != null){
				if(!tempArr.length){
					tempArr = [tempArr];
				}
				var tempObj;
				for(var j=0;j<tempArr.length;j++){
					tempObj = tempArr[j];
					if(tagNameArr[i] == 'select' && tempObj.style){
						tempObj.style.display = able?'':'none';
					}
					tempObj.disabled = able?false:true;
				}
			}
		}
	}
}

function getUserMoney(){
	var usermoneyUrl = Betzc.base + '/user!userMoney.action';
	var req = new Request({
		url: usermoneyUrl,
		method:'get' ,
		onSuccess: function(responseText) {
			if(isJsonString(responseText)){
	    		var jsonObj = JSON.decode(responseText);
				if(jsonObj.success){
					$('isNeedUpdateId').setProperty('text',jsonObj.msg+'元');
					$('isNeedUpdateSpanId').setStyle('display', '');
				}
	    	}
		}
	}).send();
}

function calInvestment(){
	var initForm = getInitForm();
	var betCost = initForm.elements['betCost'].value;
	if(!/^\d/.test(betCost)){
		betCost = 0;
		initForm.elements['betCost'].value = betCost;
	}
	
	if(betCost > 0){
		var obj;
		// 认购
		obj = initForm.elements['joinCost'];
		var joinCost = obj.value; 
		if(!COST_REGEX.test(joinCost)){
			joinCost = 0;
			obj.value = "";
		}else{
			joinCost = new Number(joinCost).round(2);// 保留两位小数
		}
		var investment_percent = ((joinCost*100/betCost)).toFixed(2);
		initForm.getElement('span[_name=investment_percent]').innerHTML = investment_percent;
		
		// 保底
		obj = initForm.elements['baodiCost'];
		var baodiCost = initForm.elements['baodiCost'].value; 
		if(!COST_REGEX.test(baodiCost)){
			baodiCost = 0;
			initForm.elements['baodiCost'].value = '';
		}else {
			baodiCost = new Number(baodiCost).round(2);// 保留两位小数
		}
		var baodi_percent = ((baodiCost*100/betCost)).toFixed(2);
		initForm.getElement('span[_name=baodi_percent]').innerHTML = baodi_percent;
	}else{
		initForm.getElement('span[_name=investment_percent]').innerHTML = '0';
		initForm.getElement('span[_name=baodi_percent]').innerHTML = '0';
	}
}

function chgAllowJoinType(el){
	var initForm = getInitForm();
	var spanObj = initForm.getElement('span[_name=span_schemeJoinPwd]');
	if(spanObj != null){
		var schemeJoinPwd = initForm.elements["schemeJoinPwd"];
		schemeJoinPwd.value = "";
		if(el.value == "PassworldAllow"){
			spanObj.style.display = "";
			initForm.elements["schemeJoinPwd"].disabled = false;
			schemeJoinPwd.focus();
		}else{
			spanObj.style.display = "none";
			initForm.elements["schemeJoinPwd"].disabled = true;
		}
	}
}
