function inputHelper() {
	var checkInputs = function() {
		for (var i = 0; i < input.length; i++) {
			if(input[i].value != '' && input[i].value != input[i].title) {
				input[i]['X-compl-obj'].style.display = 'none';
			}
		}
	}
	var input = new Array;
	var inp = document.getElementsByTagName('input');
	var x = 0;
	for (var x = 0; x < inp.length; x++) {
		if((inp[x].type == 'text' || inp[x].type == 'password') && inp[x].title) {
			input.push(inp[x]);
		}
	}
	for (var i = 0; i < input.length; i++) {
		var helper = document.createElement('div');
		helper.innerHTML = input[i].title;
		helper.className = 'cLightGrey';
		helper.style.position = 'absolute';
		var in_pos = absPosition(input[i]);
		helper.style.left = in_pos.x + 'px';
		helper.style.top = in_pos.y + 'px';
		helper.style.margin = '1px'; //inputs border
		helper.style.width = input[i].offsetWidth + 'px';
		helper.style.background = input[i].style.background;
		helper.style.cursor = 'text';
		helper['X-compl-obj'] = input[i];
		input[i]['X-compl-obj'] = helper;
		input[i].parentNode.insertBefore(helper, input[i]);
		var p_top = Math.round((input[i].offsetHeight - helper.offsetHeight) / 2);
		var p_bottom = input[i].offsetHeight - helper.offsetHeight - p_top;
		helper.style.paddingTop = p_top + 'px';
		helper.style.paddingBottom = p_bottom + 'px';

		if(input[i].value == '' || input[i].value == input[i].title) {
			helper.style.display = 'block';
		} else {
			helper.style.display = 'none';
		}
		addHandler(input[i], 'blur', function(e) {
			var targ = getEventTarget(e);
			if(targ.value == '') {
				targ['X-compl-obj'].style.display = 'block';
			}
		}, false);
		addHandler(input[i], 'focus', function(e) {
			var targ = getEventTarget(e);
			if(targ.value == '') {
				targ['X-compl-obj'].style.display = 'none';
			}
		}, false);
		addHandler(helper, 'click', function(e) {
			var targ = getEventTarget(e);
			targ.style.display = 'none';
			targ['X-compl-obj'].focus();
		}, false);
		if(window.ActiveXObject) { // IE
			addHandler(input[i], 'propertychange', checkInputs, false);
		} else if(window.opera) { // Opera
			addHandler(input[i], 'DOMControlValueChanged', checkInputs, false);
		}
	}
	if(!window.ActiveXObject && !window.opera) { // No luck, use ugly method
		setInterval(function(){checkInputs()}, 100);
	}
}
try {
	gJsReady({'name': 'input_helper'});
} catch (e) {};