/**
 * Disable form submit with keyboard
 */
function disableEnterSubmit(evt) {
	var evt = (evt) ? evt : ((event) ? event : null);
	var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
	if ((evt.keyCode == 13) && (node.type=="text")) {
		return false;
	}
}

document.onkeypress = disableEnterSubmit;

/**
 * onLoad listeners
 */
window.onloadListeners=new Array();
window.onloadListenerParams=new Array();

/**
 * Add onLoad listener
 */
window.addOnLoadListener = function (listener, params) {
	var listenerLength = window.onloadListeners.length;
	window.onloadListeners[listenerLength] = listener;
	window.onloadListenerParams[listenerLength] = params;
}

/**
 * Call onLoad functions
 */
window.onload=function(){
	for(var i=0; i<window.onloadListeners.length; i++) {
		func = window.onloadListeners[i];
		params = window.onloadListenerParams[i];
		
		if (typeof func == "function") {
			func.call();
		}
	}
}

/**
 * Clear form field status object
 */
var clearFields = {
	'offerForm' : {
		'solution_other' : {'status' : false}
	}
}

/**
 * Clear form field
 */
function clearFormField(eObj) {
	var formName = eObj.form.name;
	var cObj = clearFields[formName][eObj.name];

	if (typeof(cObj) == 'object' && !cObj.status && typeof(eObj) == 'object') {
		switch (eObj.tagName.toLowerCase()) {
			case 'input' :
				switch (eObj.type) {
					case 'checkbox':
					case 'radio':
						eObj.checked = false;
						break;
					default:
						eObj.value = '';
				}
				break;
			case 'textarea' :
				eObj.value = '';
				break;
			case 'select':
				eObj.selectedIndex = -1;
				break;
		}
		cObj.status = true;
	}
}

/**
 * Clear error message
 */
function clearError(obj) {
	if (typeof(obj) == 'object') {
		objName = obj.name;
	} else {
		objName = obj;
	}
	eObjParams = FormValidatorOptions.errorObjParams;
	eObjName = eObjParams.prefix + objName.sub(/\[/, '_').sub(/\]/, '_') + eObjParams.postfix;
	if ($(eObjName)) {
		$(eObjName).innerHTML = '<!-- -->';
	}
}

