// upper case di un field
function maiuscolo(fieldID) {
temp = document.getElementById(fieldID).value; 
if ( (temp != null) && (temp != '') ) {
document.getElementById(fieldID).value = temp.toUpperCase();
}	
}
function iniziali(fieldID) {
temp = document.getElementById(fieldID).value;
if ( (temp != null) && (temp != '') ) {
document.getElementById(fieldID).value = temp.charAt(0).toUpperCase() + temp.substring(1);
}
}
var multiEntryMap = {};
var multiChoiceMap = {};
function removeRow(unitID, rowID){
var lastIndex = multiEntryMap[unitID + 'LastIndex'];
var maxSize = parseInt(multiEntryMap[unitID + 'MaxSize']);
var lastID = unitID + '[' + lastIndex + ']'; 
var row = document.getElementById(rowID);
var ds = document.getElementById(unitID + 'DataSize');
var size = parseInt(ds.getAttribute('value')); 
if(size > 1){
row.parentNode.removeChild(row);
size--;
ds.setAttribute('value', size); 
if(lastID == rowID){
lastIndex--;
lastID = unitID + '[' + lastIndex + ']'; 
while(document.getElementById(lastID) == null){
lastIndex--;
lastID = unitID + '[' + lastIndex + ']'; 
}
} 
}
if (size < maxSize) {
var addLink = document.getElementById(unitID + '_add');
if (addLink) {
addLink.style.display='';
}
}
multiEntryMap[unitID + 'LastIndex'] = lastIndex;
};
function addRow(unitID){
var lastIndex = multiEntryMap[unitID + 'LastIndex'];
var maxSize = parseInt(multiEntryMap[unitID + 'MaxSize']);
var lastRowId = unitID + '[' + lastIndex + ']';
var lastRow = document.getElementById(lastRowId);
if (!lastRow) {
lastIndex = 0
lastRowId = unitID + '[0]';
lastRow = document.getElementById(lastRowId);
}
var mainDiv = document.getElementById(unitID);
var newRowId = unitID + '[' + ++lastIndex + ']';
var temp = lastRow.cloneNode(true);
while(temp.innerHTML.indexOf(lastRowId) > 0){
temp.innerHTML = temp.innerHTML.replace(lastRowId, newRowId);
}
//var newDiv = document.createElement('div');
temp.setAttribute('id',newRowId);
/*while(temp.innerHTML.indexOf("selected") > 0){
temp.innerHTML = temp.innerHTML.replace("selected", "");
}*/
lastRow.parentNode.appendChild(temp);
//newDiv.innerHTML = temp;
//temp.evalScripts.bind(temp).defer();
var ds = document.getElementById(unitID + 'DataSize');
var size = parseInt(ds.getAttribute('value')) + 1;
ds.setAttribute('value',size);
if(size >= 2){
var delLink = document.getElementById(newRowId + '_del');
if (delLink) {
delLink.style.display='block';
}
}
if (size >= maxSize) {
var addLink = document.getElementById(unitID + '_add');
if (addLink) {
addLink.style.display='none';
}
}
var inputs = document.getElementsByTagName('input'); 
if(inputs != null){
for(var i=0; i < inputs.length; i++){
var input = inputs.item(i);
var name = input.getAttribute('name');
var type = input.getAttribute('type');
if(name!= null && name.indexOf(newRowId) > -1 && type != "radio" && type != "checkbox"){
input.setAttribute('value','');
}
if(name!= null && name.indexOf(newRowId) > -1 && (type == "radio" || type == "checkbox")){
input.checked = false;
}
if(name!= null && name.indexOf(newRowId) > -1 && $(input).hasClass("hasDatepicker")) {
$(input).removeClass("hasDatepicker");
$(input).datepicker();
}
}
}
var textareas = document.getElementsByTagName('textarea'); 
if(textareas != null){
for(var i=0; i < textareas.length; i++){
var textarea = textareas.item(i);
var name = textarea.getAttribute('name');
if(name!= null && name.indexOf(newRowId) > -1 ){
textarea.setAttribute('value','');
textarea.innerHTML='';
}
}
}
//create cascade select
var selects = document.getElementsByTagName('select'); 
if(selects != null){
for(var i=0; i < selects.length; i++){
var select = selects.item(i);
var name = select.getAttribute('name');
if(name!= null && name.indexOf(newRowId) > -1 ){
select.selectedIndex = 0;
}
if(name!= null && name.indexOf(lastRowId) > -1 ){
if (select.hasCascade != undefined) {
var startIndex = name.indexOf("(") + 1;
var endIndex = name.indexOf(")");
var selectId = "[id='" + newRowId + ".value(" + name.substring(startIndex, endIndex) + ")']";
var masterSelect = "[id='" + newRowId + ".value(" + select.hasCascade + ")']";
$(selectId).cascade(masterSelect,{	
list: cascadeList,	
template: commonSelectTemplate,
match: commonSelectMatch 
});
$(selectId)[0].hasCascade = select.hasCascade;
$(masterSelect).change();
}
}
}
}
multiEntryMap[unitID + 'LastIndex'] = lastIndex;
};
function checkFieldVisibility(caller, id, value) {
var current = $('#'+caller).val();
if (current == value) {
$('li#'+id).css('visibility', 'visible');
} else {
$('li#'+id).css('visibility', 'hidden');
}
};
function commonSelectTemplate(item) {
return "<option value='" + item.Value + "'>" + item.Text + "</option>"; 
};
function commonSelectMatch(selectedValue) {
return this.When == selectedValue; 
};
