// 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: 'uploads.php?section='+$("#"+$("#"+elemento).attr("ref")).attr("rel")+'&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.');
				return false;
			}
			
			$('#loading_'+elemento).css("display","block"); 
		},
		
		
		onComplete : function(file, response){
			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;
				
				openMessage('Upload file', "Contenuto caricato correttamente.");
				//$("#upload_info_"+$('#'+elemento).attr("ref")).append('Contenuto caricato correttamente.');
				
			} else {
				openMessage('Errore', 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: 'remove.file.php',
		data: 'file='+$("#"+ref).val(),
		success: function(msg) {
			if(elimina_sfoglia == 'elimina'){
				$("#upload_info_"+ref).html("");
				$("#"+ref).val("");
			}
		}
	});		
}
