/*********
* Javascript for file upload demo
* Copyright (C) Tomas Larsson 2006
* http://tomas.epineer.se/

* Licence:
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.mozilla.org/MPL/
* 
* Software distributed under this License is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*/
var uploads_in_progress = 0;
var sids = {};


function checkextension(filename){
	//var filename = document.getElementById('myfile').value;

	var extensions = new Array("mp4","flv","mpeg", "wmv", "mov", "mpg", 'zip', 'mp3', 'mp4', 'jpg', 'jpeg');
	var fileext = filename.substring(filename.lastIndexOf('.')+1);

	for (var loop = 0; loop <extensions.length; loop++)
	{
		if (fileext.toLowerCase() == extensions[loop])return 1;	
	}
	return 0;
}

function beginUpload(ul,sid,frm) {		
if(uploads_in_progress > 0) {
		alert("File upload in progress. Please wait until upload finishes and try again.");
	} else {
		document.getElementById("btnupload").style.display="none";
		if(checkextension(ul.value)){
			ul.form.submit();
			sids[ul.name] = sid;
			uploads_in_progress = uploads_in_progress + 1;
			var pb = $(ul.name + "_progress");
			Element.show(pb.parentNode);
			new Ajax.PeriodicalUpdater({},'src/thirdParty/uploader/fileprogress.php',{'decay': 2,'frequency' : 0.5,'method': 'post','parameters': 'sid=' + sid,'onSuccess' : function(request){updateProgress(pb,request, frm)},'onFailure':function(request){updateFailure(pb,request)}})
		}else{
			alert('invalid file type');
		}
	}
}

function updateProgress(pb,req, frm) {

	var percent = parseInt(req.responseText);
//alert('percent::'+percent);
	if(!percent) percent = 0;
	pb.style.width = percent + "%";
	if(percent >= 100) {
		var inp_id = pb.id.replace("_progress","");
		if(sids[inp_id]) {
			uploads_in_progress = uploads_in_progress - 1;
			var inp = $(inp_id);
			if(inp) {
				inp.value = sids[inp_id];
			}
			 submitUpload(document.imageUpload);//submit form imageupload!!! 
		}
		Element.hide(pb.parentNode);
		sids[inp_id] = false;
		
		//frm.submit();
	}
}

function updateFailure(pb,req) {
	var mes = req.responseText;
	pb.style.width=0;
	alert(mes);
	uploads_in_progress = uploads_in_progress - 1;
}
 
function submitUpload(frm) {
	if(uploads_in_progress > 0) {
		alert("File upload in progress. Please wait until upload finishes and try again.");
	} else {
		frm.submit();
	}/**/
}