function addInput(container, inputType, inputName, inputCssClass, inputWidth, currentNumberInput){
    var type;
    var id;
	var name;
    var style;
	
    var number = parseInt(currentNumberInput.value) + 1;
	currentNumberInput.value = number;
    
    type = document.createAttribute('type');
    type.value = inputType;
    
    id = document.createAttribute('id');
    id.value = inputName + '[' + number + ']';
	
	name = document.createAttribute('name');
	name.value = id.value;
    
    var newInput = document.createElement('input');
    newInput.attributes.setNamedItem(type);
    newInput.attributes.setNamedItem(id);
	newInput.attributes.setNamedItem(name);
    newInput.className = inputCssClass;
    
    if (inputWidth > 0) {
        newInput.style.width = inputWidth;
    }
    
    id = document.createAttribute('id');
    id.value = 'div_' + inputName + number;
    
    var newDiv = document.createElement('div');
    newDiv.attributes.setNamedItem(id);
    newDiv.appendChild(newInput);
    newDiv.style.marginBottom = 5;
    
    container.appendChild(newDiv);
}

function verifyUploadedFiles(objForm, arrExtensions, alertsTextArray){
    var inputs = objForm.elements;
    var strFilePath = '';
    var strExtensions = new Array();
    var arrTmp = new Array();
	
	// komunikaty w zaleznosci od ilosci przesylanych plikow
	var infos = alertsTextArray;
	
	if(!infos){
		infos = new Array('Nieprawidłowy format pliku. Proszę wybrać plik z takim rozszerzeniem: ', 'Nieprawidłowe formaty plików. Proszę wybrać pliki z takimi rozszerzeniami: ');
	}
	
    // poszukiwanie pol typu 'file'
    for (var i = 0; i < inputs.length; i++) {
        if (inputs[i].type == 'file') {
            strFilePath = inputs[i].value;
            
            if (strFilePath != '') {
                arrTmp = strFilePath.split(".");
                strExtensions.push(arrTmp[arrTmp.length - 1].toLowerCase());
            }
        }
    }
    
    var allowedExtension;
    var extensions = '';
	var text = '';
	
    // sprawdzanie przesylanych plikow, a konkretnie ich rozszerzen
    for (var i = 0; i < strExtensions.length; i++) {
        allowedExtension = false;
        
        for (var j = 0; j < arrExtensions.length; j++) {
            if (strExtensions[i] == arrExtensions[j]) {
                allowedExtension = true;
                break;
            }
        }
        
        if (!allowedExtension) {
            // tworzenie stringa z dopuszczalnymi rozszerzeniami
            for (var k = 0; k < arrExtensions.length; k++) {
                if (k != 0) {
                    extensions += ", ";
                }
                
                extensions += arrExtensions[k];
            }
			
            // komunikaty
            if (strExtensions.length == 1) {
                // dla jednego pliku
				text = infos[0];
            }
            else {
                // dla wiecej niz jednego pliku
				text = infos[1];
            }
            
			alert(text + extensions);
            return false;
        }
    }
    
    return true;
}

function checkRequired(objForm, requiredFieldsNamesArray, alertText){
	if(!alertText){
		alertText = 'Proszę wypełnić wymagane pola.';
	}
	
	for(var i = 0; i < requiredFieldsNamesArray.length; i++){
		var inputName = requiredFieldsNamesArray[i];
		var input = objForm.elements[inputName];
		var value = input.value;
		
		if(value == ''){
			alert(alertText);
			input.focus();
			return false;
		}
	}
	
	return true;
}

function isValidEmail(emailInput, alertText){
	var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	
	if(!filter.test(emailInput.value)){
		alert(alertText);
		emailInput.focus();
		return false;
	}

	return true;
}

function addInput_OLD_VERSION(container, inputType, inputName, inputCssClass, inputWidth, currentNumberInput){
    var type;
    var id;
    var name;
    var style;
    
    var number = parseInt(currentNumberInput.value) + 1;
    currentNumberInput.value = number;
    
    type = document.createAttribute('type');
    type.value = inputType;
    
    id = document.createAttribute('id');
    id.value = inputName + '[' + number + ']';
    
    name = document.createAttribute('name');
    name.value = id.value;
    
    var newInput = document.createElement('input');
    newInput.attributes.setNamedItem(type);
    newInput.attributes.setNamedItem(id);
    newInput.attributes.setNamedItem(name);
    newInput.className = inputCssClass;
    
    if (inputWidth > 0) {
        newInput.style.width = inputWidth;
    }
    
    id = document.createAttribute('id');
    id.value = 'div_' + inputName + number;
    
    var newDiv = document.createElement('div');
    newDiv.attributes.setNamedItem(id);
    newDiv.appendChild(newInput);
    newDiv.style.marginBottom = 5;
    
    container.appendChild(newDiv);
}

function checkDecimalValue(fieldId, alertText){
	if(document.getElementById(fieldId).value.indexOf(',') > 0){
		alert(alertText);
		
		setTimeout('document.getElementById(\'' + fieldId + '\').focus();', 1);
		//document.getElementById(fieldId).focus(); // it doesn't work in firefox :/
	}
}

function checkPositiveValue(fieldId, alertText){
	var value = parseInt(document.getElementById(fieldId).value);
	
	if(value < 0){
		alert(alertText);
		
		setTimeout('document.getElementById(\'' + fieldId + '\').focus();', 1);
		//document.getElementById(fieldId).focus(); // it doesn't work in firefox :/
		
		return false;
	}
	
	return true;
}