var notice={
	clear:function(tid)
	{
		$(tid).each(function(f)
		{
			if ($(this).css("display")!="none")
			{
				$(this).fadeOut(800)
			}
		})
	},
	
	ad:function(ad_msg)
	{
		var str = '<div id="ads">' + ad_msg + '</div>';
		$('h1').after(str);
	},
	
	input_tip:function(tip_msg)
	{
		var msgs = tip_msg.split("|||");
		var first='';
		for (var x1=0; x1<msgs.length; x1++)
		{
			var rets = msgs[x1].split(";;");
			 if (first=='') first = rets[0];
			$('#'+rets[0]).after("<span class='tip'>"+rets[1]+"</span>");
		}
		$('#'+first).focus();
	},
	
	display_tip:function(tip_msg)
	{
		var msgs = tip_msg.split("|||");
		var str = '<div id="tips"><ul>';
		for (var x1=0; x1<msgs.length; x1++)
		{
			str += '<li>'+msgs[x1]+'</li>';
		}
		str += '</ul></div>';
		$('h1').after(str);
		setTimeout("notice.clear('#tips')", 8000);
	}
};

var survey={
	bind:function(action, args)
	{	
		if (args != undefined)
		{
			eval("var args="+args);
		}
		
		if (args.step == '1')
			survey.quest_append(args.gender, args.age);

		$("#quest_form").bind('submit', function(){
			if (survey.validate(args.rules) != false)
			{
				if (args.answers != undefined)
				{
					$(this).append('<input type="hidden" name="answers" value="'+args.answers+'" />');
				}

				$(this).attr('action', action);				
				return true;
			}
			return false;
		});
	},
	quest_append:function(gender, age)
	{
		var htm='';
		if (gender == undefined)
		{
			htm += '<div class="field">你的性别：<select id="gender" name="gender">';
			htm += '<option selected="selected"></option><option value="female">女</option><option value="male">男</option>';
			htm += '</select></div>';
		}
		if (age == undefined)
		{
			htm += '<div class="field">你的年龄：&nbsp;<input id="age" class="text" type="text" name="age" size="2" maxlength="2" /></div>';
		}

		$("#quest_append").append(htm);
	},	
	validate:function(rules)
	{
		eval("var rules="+rules);
		if (survey.valid_checkbox(rules.checkbox)
			&& survey.valid_radio(rules.radio)
			&& survey.valid_gender() && survey.valid_age())
		{
			return true;
		}
		return false;
	},	
	valid_radio:function(rule)
	{
		if ($("#qlist .q :radio").val() != undefined)
		{
			var len = $("#qlist .q").length;
			if ($("#qlist .q :radio[checked='true']").length < len)
			{
				for (x1=1; x1<=len; x1++)
				{
					if ($("#q_"+x1+" :radio[checked='true']").val()==undefined)
					{
						alert('第 '+x1+' 项没有选择');
						$("#q_"+x1+" input:first").focus();
						return false;
					}
				}
			}
		}
		return true;
	},
	valid_checkbox:function(rule)
	{
		if ($("#qlist .q :checkbox").val() != undefined)
		{
			var kk = rule.split(',');
			var clen = $("#qlist .q :checkbox[checked='true']").length;
			if (kk[1] == '==')
			{
				if (clen < kk[0])
				{
					alert("你还需再选 "+(kk[0]-clen)+" 项答案");
					return false;
				}
				if (clen > kk[0])
				{
					alert("你只能选 "+ kk[0] +" 项答案，请去掉 "+(clen-kk[0])+" 项");
					return false;
				}
			}
			else if (kk[1] == '>=')
			{
				if (clen < kk[0])
				{
					alert('你选择的项太少，请至少再选 '+(kk[0]-clen)+' 项');
					return false;
				}
			}
		}
		return true;
	},	
	valid_gender:function()
	{
		if ($("select[name='gender']") != undefined)	
		{
			if ($("select[name='gender'] option:selected").val()=='')
			{		
				alert("请选择性别");
				return false;
			}
		}
		return true;
	},
	valid_age:function()
	{		
		if ($(":input[name='age']").val() != undefined)
		{
			if ($(":input[name='age']").val() == '')
			{
				alert("请输入年龄");
				return false;
			}
		}
		return true;
	}
};

$(document).ready(function(){
	$("a[jsclick]").each(function(){
		$(this).attr('href', $(this).attr('jsclick'));
	});
});


