﻿function defineHint(key,map){
	for(id in map){
		$(id).attr(key,map[id]);
	}
}

var Position=function(e){
	var offsetX=9;
	var offsetY=21;
	this.x = e.pageX + offsetX;
	this.y = e.pageY + offsetY;
}

function showHint(hint,object,key,e){
	
	if(object.attr(key)!=null && object.attr(key)!=""){
	
		var pos=new Position(e);
		
		hint.css({"left":pos.x,"top":pos.y});
		hint.html(object.attr(key));
		
		hint.css("width","");
		
		hint.show();
		
		if(hint.width()>300){
			hint.width("300px");
		}
	}
}

function hideHint(event){
	event.data.hint.hide();
}

/*function unbindShowHint(key){
	$("["+key+"]").unbind("mousemove",showHint);
	$("["+key+"]").unbind("mouseout",hideHint);
}*/

function bindShowHint(hint,key){
	
	/*unbindShowHint(key);
	$("["+key+"]").bind("mousemove",function(e){
		showHint(hint,$(this),key,e);
	});
	$("["+key+"]").bind("mouseout",{"hint":hint},hideHint);*/
	
	$("["+key+"]").live("mousemove",function(e){
		showHint(hint,$(this),key,e);
	});
	
	$("["+key+"]").live("mouseout",function(){
		hint.hide();
	});
}

function readyHintAction(id,key){
	
	var hint=$(id);
	
	var map={
		"#tipsClose":"关闭",
		"#queryButton":"点击查询课程",
		"#treeListTab":"切换到搜索结果页面",
		"#includedListTab":"切换到已勾选课程的页面",
		"#timeTableTab":"课程的上课时间",
		"#timeCubeTab":"限制将要查询的课程的上课时间<br>若不选择则无时间限制",
		"#detailRenderTab":"课程的详细信息",
		"#curricResultTab":"点击左下角 <b>排课</b> 按钮，结果将显示在这个界面",
		"#curric":"根据你勾选的课程排课",
		"#save":"保存你勾选的课程<br><u>正式选课请到教务处选课系统</u>",
		"#import":"导入你上次保存的课程",
		"#preview":"预览当前的课表<br>并生成课程快照",
		"#snapValue":"点击左边的<b>课表</b>按钮可产生课程预览的快照<br>您可以用该字符串和您的同学交流选课计划",
		"#viewSnap":"点击查看课程快照对应的课程信息",
		"#dialogBackground":"点击返回主界面",
		"#showHelpGeneral":"1.基本使用教程",
		"#showHelpTime":"2.按时间查询教程",
		"#login":"登录/退出"
	};
	
	defineHint(key,map);
	
	bindShowHint(hint,key);
}
