﻿
function varDump(v, values, lookFor)
{
	if (values == null)
		values = false;
	if (lookFor == null)
		lookFor = "";
	lookFor = new RegExp(lookFor, "i");
	var s = "";
	for (var k in v)
	{
		if (!lookFor.exec(k))
			continue;
		s += k + (values ? "=" + v[k] : "") + ", ";
	}
	return s;
}
var __DEBUG__ = true;
function log(s)
{
	if (!__DEBUG__) return;
	if (typeof (console) != "undefined")
		console.log(s);
	else
	{
		if ($("divLog") == null)
		{
			var divLog = document.createElement("div");
			divLog.id = "divLog";
			divLog.style.position = "absolute";
			divLog.style.color = "Red";
			divLog.style.right = "0px";
			divLog.style.width = "300px";
			divLog.style.backgroundColor = "#eeeeee";
			divLog.style.fontSize = "12px";
			document.body.insertBefore(divLog, document.body.childNodes[0]);
		}
		$("divLog").innerHTML += s + "<br/>";
	}
}

function debug_add(elem)
{
	return "<" + elem.tagName + "> id = " + elem.id + ", class = " + elem.className;
}
function debug(e, info)
{
	s = "";
	if (info)
		s += "info: " + info;
	if (e.toElement)
		s += "\r\ntoElement: " + debug_add(e.toElement);
	if (e.srcElement)
		s += "\r\nsrcElement: " + debug_add(e.srcElement);
	if (e.fromElement)
		s += "\r\nfromElement: " + debug_add(e.fromElement);
	if (e.target)
		s += "\r\ntarget: " + debug_add(e.target);
	if (e.currentTarget)
		s += "\r\ncurrentTarget: " + debug_add(e.currentTarget);
	if (e.originalTarget)
		s += "\r\noriginalTarget: " + debug_add(e.originalTarget);
	if (e.explicitOriginalTarget)
		s += "\r\nexplicitOriginalTarget: " + debug_add(e.explicitOriginalTarget);
	alert(s);
}