var current_tooltip = '';

function create_tooltip(evt, id, title, src) {
	var evt = evt || window.event;
	var obj = evt.target || evt.srcElement;
	if (evt && obj) {
		var position = get_element_position(obj);
		if (position && src) {
			var tooltip = document.createElement('div');
			tooltip.setAttribute('id', id + '_tooltip');
			tooltip.innerHTML = '<table width=300px><tr><td align=left><b>' + title + '</b></td><td align=right><a href="#" onclick="hide_tooltip(\'' + id + '\'); return false">закрыть</a></td></tr></table><iframe src="' + src + '" border="1" frameborder="0">';
			tooltip.style.position = 'absolute';
			tooltip.style.borderStyle = 'solid';
			tooltip.style.borderWidth = '1px';
			tooltip.style.backgroundColor = '#FFFFCC';

			tooltip.style.top = (obj.offsetHeight + position.top + 5) + 'px';
			tooltip.style.left = (position.left - 10) + 'px';
			document.getElementsByTagName('body')[0].appendChild(tooltip);
			return tooltip;
		}
	}
	return false;
}

function show_tooltip(evt, id, title, src) {
	var ele = document.getElementById(id + '_tooltip');
	if (!ele && !(ele = create_tooltip(evt, id, title, src))) {
		return false;
	}
	if (current_tooltip != id) {
		hide_tooltip(current_tooltip);
	}
	if (ele.style.display == 'block') {
		ele.style.display = 'none';
		current_tooltip = '';
	} else {
		ele.style.display = 'block';
		current_tooltip = id;
	}
	return true;
}

function hide_tooltip(id) {
	var ele = document.getElementById(id + '_tooltip');
	if (ele) ele.style.display = 'none';
}


function get_element_position(obj) {
	var offset_left = 0;
	var offset_top = 0;
	while (obj) {
		offset_left += obj.offsetLeft;
		offset_top += obj.offsetTop;
		obj = obj.offsetParent;
	}
	return {
		left:offset_left,
		top:offset_top
	}
}