// forms.js

// clearInputContents
function clearInputContents(question, ids) {
	var answer = confirm (question);
	if(answer){
		inputs = document.getElementsByTagName("input");
		for(i=0;i<inputs.length;i++){
			input = inputs[i];
			for(j=0; j < ids.length; j++) {
				if(input.id.match(new RegExp(":"+ids[j]+"$"))) {
					input.value="";
					continue;
				}
			}
		}
	}
	return false;
}

function clearInputContentsFromWizard(question, itemName) {
	var answer = confirm (question);
	if(answer){
		var inputs = document.getElementsByTagName("input");
		for(var i=0; i<inputs.length; i++) {
			var input = inputs[i];
			if(input.value == itemName) { // am gasit itemName
				var infoFieldInput = input.parentNode.nextSibling.firstChild;
				var entityIdFieldInput = infoFieldInput.parentNode.nextSibling.firstChild;
				infoFieldInput.value="";
				entityIdFieldInput.value="";
			}
		}
	}
	return false;
}

function openDocument(urlStr, infoField, entityIdField, el) {
	myWin = window.open(urlStr + '&infoField=' + infoField + '&entityIdField=' + entityIdField + '&el=' + el + '&reloadBean=true',
		'entitySearchListWindow','width=400,height=200,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}

function openSearchList(urlStr, infoField, entityIdField, propName, relatedHiddenId, relatedEntityProperty) {
	//alert("openSearchList");
	var entityName = "$$myEntityName$$";
	myWin = window.open(urlStr + '&infoField=' + infoField + '&entityIdField=' + entityIdField + 
		'&propName=' + propName + '&entityName=' + entityName  + '&reloadBean=true&isWebReport=false',
		'entitySearchListWindow','width=725,height=580,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}

function openSearchListForWebReports(urlStr, infoField, infoFieldHidden, entityIdField, propName, relatedHiddenId, relatedEntityProperty) {
	var entityName = "$$myEntityName$$";
	myWin = window.open(urlStr + '&infoField=' + infoField + '&infoFieldHidden=' + infoFieldHidden + '&entityIdField=' + entityIdField + 
		'&propName=' + propName + '&entityName=' + entityName  + '&reloadBean=true&isWebReport=true',
		'webReportSearchListWindow','width=725,height=580,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}

function openSearchListForRelated(urlStr, infoField, entityIdField, propName, relatedHiddenId, relatedEntityProperty, array) {
	//alert("openSearchListForRelated");
	var entityName = "$$myEntityName$$";
	var anum=/^\d+$/;
	var relatedInstanceId =  null;
	if (relatedHiddenId != null) {
		if (anum.test(relatedHiddenId)) {
			relatedInstanceId = relatedHiddenId;
		} else { 
			var elem = getElementByNameAndId("input", relatedHiddenId);
			if(elem != null && ""!=elem.value)
				relatedInstanceId = elem.value;
		}
	}
	var props = "";
	if (array != null) {
		for (var i=0; i<array.length; i++) {
			var pName = array[i];
			var elem = getElementByNameAndId("input", pName);
			props = props + "&" + pName + "=" + elem.value;
		}
	}
	var url = urlStr + '&infoField=' + infoField + '&entityIdField=' + entityIdField + '&propName=' + propName + '&entityName=' + entityName;
	if (relatedInstanceId != null) {
		url = url + '&relatedInstanceId=' + relatedInstanceId + '&relatedEntityProperty=' + relatedEntityProperty;
	}
	url = url + props;
	url = url + '&reloadBean=true';
	myWin = window.open(url, 'entitySearchListWindow','width=725,height=580,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}

function openSearchListFromFilter(urlStr, infoField, entityIdField, entityName) {
	var propName = "$$myPropName$$";
	myWin = window.open(urlStr + '&infoField=' + infoField + '&entityIdField=' + entityIdField + '&entityName=' + entityName + '&propName=' + propName + '&reloadBean=true', 
		'entitySearchListWindow','width=725,height=580,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}

function openSearchListFromWizard(urlStr, entityName, itemName) {
	//alert("openSearchListFromWizard");
	var propName = "$$myPropName$$";
	var infoField, entityIdField;
	/* caut infoField si entityIdField ca fiind imediat dupa itemName */
	var inputs = document.getElementsByTagName("input");
	for(var i=0; i<inputs.length; i++) {
		var input = inputs[i];
		if(input.value == itemName) { // am gasit itemName
			var infoFieldInput = input.parentNode.nextSibling.firstChild;
			//alert("infoFieldInput: "+infoFieldInput);
			infoField = infoFieldInput.id;
			//alert("infoField: "+infoField);
			var entityIdFieldInput = infoFieldInput.parentNode.nextSibling.firstChild;
			entityIdField = entityIdFieldInput.id;
		}
	}
	myWin = window.open(urlStr + '&infoField=' + infoField + '&entityIdField=' + entityIdField + '&entityName=' + entityName + '&propName=' + propName + '&reloadBean=true', 
		'entitySearchListWindow','width=725,height=580,toolbar=no, location=no,directories=no,status=yes,menubar=no,scrollbars=yes,copyhistory=no,resizable=yes,modal=yes');
	if(myWin != null) {
		myWin.focus();
	}
}


function addMultiSelection(valueId, labelId, multiSelectionId) {
alert("valueId: " + valueId + "\nlabelId: " + labelId);
	var multiSelection = getElementByNameAndId("select", multiSelectionId);
	var prefix = multiSelection.id;
	prefix = prefix.replace(/[^\:]+$/, "");
	var inputValue = document.getElementById(prefix + valueId);
	var inputLabel = document.getElementById(prefix + labelId);
	multiSelection.options[multiSelection.length] = new Option(inputLabel.value, inputValue.value);
}

function deleteMultiSelection(multiSelectionId) {
	alert("deleteMultiSelection: " + multiSelectionId);
}

function clearComponent(id) {
	var component = getElementByNameAndId("input", id);
	if(component == null) {
		component = getElementByNameAndId("select", id);
	}
	// alert("Clear: " + id);
	if(component != null) {
		component.value = "";
	}
}

function transferLookup(srcId, destId) {
	var srcInput = getElementByNameAndId("select", srcId);
	var destInput = getElementByNameAndId("input", destId);
	// alert("Value: "+srcInput.options[srcInput.selectedIndex].text);
	destInput.value = srcInput.options[srcInput.selectedIndex].text;
}

function openDeleteEntitiesWindow() {
	// alert('Stergem entitatile selectate pe nodul curent');
	var urlStr = "../faces/context/entityDeleteList.jsp";
	myWin = window.open(urlStr, "entityDeleteListWindow", "width=725,height=640,toolbar=no,location=no,directories=no,status=yes,menubar=no," + 
		"scrollbars=yes,copyhistory=no,resizable=yes,modal=yes");
	if(myWin != null) {
		myWin.focus();
	}
}
