var allowed_files_ext = new Array("*.doc;*.docx;*.xls;*.xlsx;*.ppt;*.pptx;*.pdf");
var allowed_files_desc = new Array("Word, Excel, PowerPoint, PDF Files");
var base_href = 'http://www.pdfconverter.com/conversion/';
var jobq = [];

jQuery(document).ready(function() {
	jQuery('#choose-file').uploadify({
		'uploader'  : base_href+'js/uploadify.swf?v2',
		'script'    : base_href+'upload2.php',
		'cancelImg' : 'http://www.pdfconverter.com/images/pdfconverter/cancel.png',
		'buttonImg' : 'http://www.pdfconverter.com/images/pdfconverter/button-choose-file.png',
		'width'     : 116,
		'height'    : 46,
		'buttonText'  : 'SELECT FILE',
		'multi'		: false,
		'rollover'	: true,
		'wmode'		: 'transparent',
		'queueSizeLimit' : 1,
//	    'fileExt'     : allowed_files_ext,
//	    'fileDesc'    : allowed_files_desc,
//	    'sizeLimit'   : 2097152,
	    'onOpen' : function(event, ID, fileObj, response, data) {
			jQuery.fancybox({
				'href' : '#choose-fileQueue',
				'type': 'inline',
				'overlayColor': '#333',
				'overlayOpacity': '0.9',
				'showCloseButton': false,
				'onStart': function() {
					jQuery('#choose-fileQueue').show();
				}
			});
	    },
		'onComplete' : function(event, ID, fileObj, response, data) {
			jQuery('#choose-fileQueue').html('<p>Your file has been succesfully uploaded.</p><p>You will soon receive an e-mail with the download link to your converted file.</p>');
			setTimeout(function() {
				jQuery.fancybox.close();
				jQuery('#choose-fileQueue').html('');
				jQuery('#choose-fileQueue').hide();
			}, 7000);
		}
	});
	
	jQuery('.start').live("click", function() {
		var conv_type = jQuery("#conv_type").val();
		var user_email = jQuery("#your-email").val();
		var emailReg = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/;
		var file = jQuery(".fileName").text();
		if (!file) {
			alert('Please choose file to upload');
			return false;
		}
		if (conv_type == '-1') {
			alert('Please select conversion type');
			return false;
		}
		if( (user_email != '') & (emailReg.test(user_email)) ) {
			jQuery('#choose-file').uploadifySettings('scriptData', {'convtype':conv_type, 'useremail':user_email});
			jQuery('#choose-file').uploadifyUpload();
		} else {
			alert('Please type your E-mail address');
		}
		return false;
	});
});

function check_pending_jobs() {
	jQuery('.pending-job').each(
		function(index) {
			var nretries = 0;
			var pjob = jQuery(this).attr('jobid');
			
			if(jobq.length > 0 && jQuery.inArray(pjob, jobq) != -1) {
				return false;
			} else {
				jobq.push(pjob);
			}
			var checkingJob = setInterval(
					function () {
						nretries++;
						jQuery.ajax({
						   type: 'POST',
						   url: base_href+"upload2.php",
						   data: 'dc=1&cj='+pjob+'&cpj='+checkingJob,
						   success: function(msg) {
							   var msgp = jQuery.parseJSON(msg);
							   if(msgp.status == 1 && msgp != null && msgp.output != '') {
								   clearInterval(checkingJob); 
							   }
						   }
						 });
						
						if(nretries > 50) {
							clearInterval(checkingJob);
						}
					},
					10000
				); 
			sleep(2112);
		}
	);
}

function sleep(ms) {
	var date = new Date();
	var curDate = null;
	do { curDate = new Date(); }
	while(curDate-date < ms);
} 

setInterval('check_pending_jobs()', 10000);
