// JavaScript Document
function setUpload(elemento){
	
	new AjaxUpload('#'+elemento, {
		/*
		folder   ==>  il percorso diupload del file
		maxsize  ==>  il peso massimo del file (è settato in un attributo ref di uno span con classe js_maxsize)
		*/
		
		action: BASE_URL +'uploads.php?maxsize='+$(".js_maxsize[ref='"+$('#'+elemento).attr("ref")+"']").text(),
		name: 'myfile',
		
		
		onSubmit : function(file, response) {
			var accepted_extensions = $(".js_accepted_extensions").text().split(",");
			if ($(".js_accepted_extensions_"+$("#"+elemento).attr("ref"))) { 
				var accepted_extensions = $(".js_accepted_extensions_"+$("#"+elemento).attr("ref")).text().split(",");
			}
			
			
			var extension = (/[.]/.exec(file)) ? /[^.]+$/.exec(file) : undefined;
			var i;
			for(i=0;i<extension.length;i++) {
					extension[i] = extension[i].toLowerCase();
			}
			if (!in_array(extension, accepted_extensions)) {
				//openMessage('Errore', 'Il tipo di file non &egrave; accettato per questo campo.');
				BlockUI("Attenzione",'Il tipo di file non &egrave; accettato per questo campo.');
				return false;
			}
			LoadingBlockUI();
			//$('#loading_'+elemento).css("display","block"); 
		},
		
		
		onComplete : function(file, response){
			$.unblockUI();
			if (response.substr(0,5) != "error") {
				
				if ($("#upload_info_"+$('#'+elemento).attr("ref")).html().length > 0) {
					deleteFile($('#'+elemento).attr("ref"));
					
					$("#upload_info_"+$('#'+elemento).attr("ref")).html("");
					$("#"+$('#'+elemento).attr("ref")).val("");
				}
				
				file = response;
				
				$("#"+$('#'+elemento).attr("ref")).val(file);
				
				
				var extension = (/[.]/.exec(file)) ? /[^.]+$/.exec(file) : undefined;
				
				if (in_array(extension,['png','jpg','jpeg','bmp','gif'])) {
					$("#upload_info_"+$('#'+elemento).attr("ref")).append('<img src="'+BASE_URL +'uploads/temp/'+file+'" width="100" style="border:1px solid #000;"><br>');
					$("#upload_info_"+$('#'+elemento).attr("ref")).append("<span class='delete_file' ref='"+$('#'+elemento).attr("ref")+"' id='delete_"+$('#'+elemento).attr("ref")+"' file='"+file+"'>Elimina</span>");
				} else {
					$("#upload_info_"+$('#'+elemento).attr("ref")).append('Contenuto caricato correttamente.<br>Compila i campi e clicca su Invia per inserirlo definitivamente.<br>');
					$("#upload_info_"+$('#'+elemento).attr("ref")).append("<span class='delete_file testo_bold testo_blu btn' ref='"+$('#'+elemento).attr("ref")+"' id='delete_"+$('#'+elemento).attr("ref")+"' file='"+file+"'>Elimina Contenuto</span>");
				}
				
				
				
				setDeleteFile();
				
			} else {
				
				//openMessage('Errore', response.replace("error",""));
				BlockUI("Attenzione",response.replace("error",""));
				
			}
		}
		
		
	});	
}


function in_array (needle, haystack, argStrict) {
    var key = '', strict = !!argStrict;
 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {
                return true;
            }
        }
    } else {
        for (key in haystack) {
            if (haystack[key] == needle) {
                return true;
            }
        }
    }
    return false;
}


function setDeleteFile(){
	$(".delete_file").each(function (i) {
		var ref = $(this).attr("ref");
		$(this).click(function() {
			deleteFile(ref, 'elimina');
		});
	});
}

function deleteFile(ref, elimina_sfoglia) {
	$.ajax({
		type: "POST",
		url: BASE_URL +'remove.file.php',
		data: 'file='+$("#"+ref).val(),
		success: function(msg) {
			if(elimina_sfoglia == 'elimina'){
				$("#upload_info_"+ref).html("");
				$("#"+ref).val("");
			}
		}
	});		
}
