var count       = 0;
var uploads     = 0;
var max_uploads = 0;
var max_files   = 0;
var userfiles   = 0;
//var container = document.getElementById('filemanager');
function deletefile(file, ele, number, files){
	if(confirm("Are you sure?")){
		//alert(ele);
		//document.getElementById('delete').value = file;
		//document.getElementById('task').value = "delete";
		ele.elements['delete'].value = file;
		ele.elements['fileupload_task'].value = 'delete';
		uploadfile(ele, number, files);
	}
}

function uploadfile(ele, number, files){
	//alert(document.getElementById('destino').value);
	max_uploads = number;
	max_files   = files;
	//userfiles = document.getElementById('userfiles').value;
	userfiles = ele.elements['userfiles'].value;
	var msgs = new Array();
	msgs['delete'] = 'DELETING';
	msgs['upload'] = 'UPLOADING';
	var task = ele.elements['fileupload_task'].value;
	var path;
	if(task == 'upload'){
		path = ele.elements['file'].value;
		if(str = path.match(/.+(?:\/|\\)(.+)/)){
			path = str[1];
		}
		uploads++;
	}
	if(task == 'delete'){
		path = document.getElementById('delete').value;
	}
	var container = document.getElementById('fileupload_tasks');
	//var row = document.createElement('tr');
	
	var row = container.insertRow(-1);
	row.id = "uploading_" + count;
	row.className = "list";
	var cell = row.insertCell(0);
	cell.width = "40%";
	var cell2 = row.insertCell(1);
	cell2.innerHTML = "<i><b>" + msgs[task] + "</b>: Please, wait</i>";
	cell.innerHTML = '<div id="loader_text_' + count + '" style="float: left">' + path +'</div>';
	var cell1 = row.insertCell(2);
	cell1.innerHTML = '<div style="float:right;"><img src="plugins/content/file_upload/images/loader.gif" id="loader_' + count + '"/></div>';
	var div = document.createElement('div');
	div.setAttribute("width", 0);
	div.setAttribute("height", 0);
	div.name = "div_" + count;
	div.id = "div_" + count;
	div.innerHTML = '<iframe width="0" height="0" style="display:none" name="' + 'iframe_' + count + '"></iframe>'; 
	document.getElementById('loaders').appendChild(div);
	ele.target = "iframe_" + count;
	document.getElementById('count').value = count;
	
	count++;
	
	ele.submit();
	ele.reset();
	setinputfile();
	ele.elements['fileupload_task'].value = '';
}

function removeloader(i, err){
	var loader = document.getElementById("uploading_" + i);
	var loader_img = document.getElementById('loader_' + i);
	loader.deleteCell(1);
		switch(err){
			case 1: 
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>FAILED</b>: The File could not be uploaded</i>";
				loader_img.src = "plugins/content/file_upload/images/warning.png";
				uploads--;
				break;
			case 2:
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>FAILED</b>: Type not valid</i>";
				loader_img.src = "plugins/content/file_upload/images/warning.png";
				uploads--;
				break;
			case 3:
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>FAILED</b>: File size exceeded</i>";
				loader_img.src = "plugins/content/file_upload/images/warning.png";
				uploads--;
				break;
			case 4:
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>FAILED</b>: A file with the same name already exists</i>";
				loader_img.src = "plugins/content/file_upload/images/warning.png";
				uploads--;
				break;	
			case 5: 
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>SUCCESS</b>: The file was deleted</i>";
				loader_img.src = "plugins/content/file_upload/images/ok.png";
				//document.getElementById('userfiles').value--;
				userfiles--;
				document.getElementById('userfiles').value = userfiles;
				break;	
			default:
				var cell = loader.insertCell(1);
				cell.innerHTML = "<i><b>SUCCESS</b></i>";
				loader_img.src = "plugins/content/file_upload/images/ok.png";
				//document.getElementById('userfiles').value++;
				userfiles++;
				document.getElementById('userfiles').value = userfiles;
				uploads--;
		}
	loader.onclick = function(){
		var container = document.getElementById('fileupload_tasks');
		container.deleteRow(this.index);
	}
	
	setinputfile();
}

function setinputfile(){
	//alert(uploads + ", " + userfiles + ", " + document.getElementById('userfiles').value);
	var inputfile = document.getElementById('file_field');
	//alert(uploads + userfiles);
	//alert(max_files);
	if(uploads >= max_uploads){
		inputfile.disabled = true;
	}else{
		if((1*uploads + 1*userfiles) >= max_files){
			inputfile.disabled = true;
		}else{
			inputfile.disabled = false;
		}
	}
}

function appendfile(output, file_icon, file_size){
	var table = document.getElementById("file_list");
	var row = table.insertRow(-1);
	row.className = "list";
	var cell = row.insertCell(0);
	//cell.width = "40%";
	cell.innerHTML = '<div style="float: left;">' + file_icon + ' ' + output + '</div>';
	var cell1 = row.insertCell(1);
	cell1.innerHTML = file_size;
	var cell2 = row.insertCell(2);
	cell2.innerHTML = '<div style="float: right;"><a href="javascript: deletefile(\'' + output + '\', document.getElementById(\'file_upload_form\'), ' + max_uploads + ', ' + max_files + ');"><img src="plugins/content/file_upload/images/remove.png" class="icons" /></a><a href="#"><img src="plugins/content/file_upload/images/download.png" class="icons" /></a></div>';
	//document.getElementById('loaders').removeChild(document.getElementById("div_" + i));
}

function removefile(output){
	var table = document.getElementById("file_list");
	//alert(output);
	for(var i = 0; i < table.getElementsByTagName('tr').length	; i++){
		//alert(table.rows[i].cells[0].innerHTML);
		var regex = "/.+" + output + "/.+";
		var str;
		if(str = table.rows[i].cells[0].innerHTML.match(output)){
			table.deleteRow(i);
		}
	}
	//document.getElementById('loaders').removeChild(document.getElementById("div_" + i));
}

function deleteframe(i){
	document.getElementById('loaders').removeChild(document.getElementById("div_" + i));	
}

