/*
IMPORTANT ADVISE
The following code is protected by copyright 
 *  (c) 2009 Davide Rolando
except for the functions that don't contain the notice:
	// Copyright © 2009 Davide Rolando//

Thus you can't use any of the copyright protected code 
without first obtaining written permission. 
Please email  webmaster@subsedit.com to obtain written consent.
*/
	
	var jreq_aim = 'resources_convert/convert_f.php';
	
	function showResponse(originalRequest){
		
		jslog.info("Request: " + originalRequest); //jslog;
		
		var t = eval(originalRequest);
		//alert('t zero : '+t[0]);
		switch(t[0]){
		case 'pslided':
			//reportLog(t[1]);
			//addLog('', false);
			
			
			//addLog('', false);
			
			jslog.info("progr_slide " + t[1]); //jslog
			//jslog.info("Converted " + t[4]); //jslog


			if(t[1] == 1){
				reportLog("Subtitles successfully slided");
				document.simpledown.submit();
			} else {
				reportLog("Some error...");			
			}
		break;
		default:
			return false;
		break;
		}
	}
	
	function delay_progressive(){
		//upload subs
		var valsh = uploadsubs('microdvd', 10000, 'convert');
		
		jslog.debug("Upload " + valsh); //jslog
		
		//delay request
		$.ajax({
			type: "POST",
			url: jreq_aim,
			data: ({
				jreq: 'microdvd',
				what: valsh
			}),
			success: showResponse
		});		
	}
	

//sliders

	$(function() {
		$("#mmm1").slider({
			value:0,
			min: 0,
			max: 990,
			step: 10,
			slide: function(event, ui) {
				//$("#mse_delay").val(ui.value);
				var timestamp = toTimestamp($("#mm1").slider("value"),$("#ss1").slider("value"),ui.value);
				$("#delay1").val(timestamp);
			},
			change: function(event, ui) {
				//$("#mse_delay").val(ui.value);
				var timestamp = toTimestamp($("#mm1").slider("value"),$("#ss1").slider("value"),ui.value);
				$("#delay1").val(timestamp);				
				var old = $("#old1").val();
				var thissec = toSeconds($("#delay1").val(),$('#delay_sign1').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				jslog.debug(String(eval(Number(old) + Number(thissec))));
				$('#new1').val(ntc);
			}
		});
		$("#ss1").slider({
			value:0,
			min: 0,
			max: 59,
			step: 1,
			slide: function(event, ui) {
				//$("#sec_delay").val(ui.value);
				var timestamp = toTimestamp($("#mm1").slider("value"),ui.value,$("#mmm1").slider("value"));
				$("#delay1").val(timestamp);
			},
			change: function(event, ui) {
				//$("#sec_delay").val(ui.value);
				var timestamp = toTimestamp($("#mm1").slider("value"),ui.value,$("#mmm1").slider("value"));
				$("#delay1").val(timestamp);
				var old = $("#old1").val();
				var thissec = toSeconds($("#delay1").val(),$('#delay_sign1').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				$('#new1').val(ntc);
			}
		});
		$("#mm1").slider({
			value:0,
			min: 0,
			max: 59,
			step: 1,
			slide: function(event, ui) {
				//$("#min_delay").val(ui.value);
				var timestamp = toTimestamp(ui.value,$("#ss1").slider("value"),$("#mmm1").slider("value"));
				$("#delay1").val(timestamp);
			},
			change: function(event, ui) {
				//$("#min_delay").val(ui.value);
				var timestamp = toTimestamp(ui.value,$("#ss1").slider("value"),$("#mmm1").slider("value"));
				$("#delay1").val(timestamp);
				var old = $("#old1").val();
				var thissec = toSeconds($("#delay1").val(),$('#delay_sign1').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				$('#new1').val(ntc);			
			}
		});

		$("#mmm2").slider({
			value: 0,
			min: 0,
			max: 990,
			step: 10,
			slide: function(event, ui) {
				//$("#mse_delay").val(ui.value);
				var timestamp = toTimestamp($("#mm2").slider("value"),$("#ss2").slider("value"),ui.value);
				$("#delay2").val(timestamp);
			},
			change: function(event, ui) { 
				var timestamp = toTimestamp($("#mm2").slider("value"),$("#ss2").slider("value"),ui.value);
				$("#delay2").val(timestamp);
				var old = $("#old2").val();
				var thissec = toSeconds($("#delay2").val(),$('#delay_sign2').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				$('#new2').val(ntc);
			}

		});
		$("#ss2").slider({
			value:0,
			min: 0,
			max: 59,
			step: 1,
			slide: function(event, ui) {
				var timestamp = toTimestamp($("#mm2").slider("value"),ui.value,$("#mmm2").slider("value"));
				$("#delay2").val(timestamp);
			},
			change: function(event, ui) { 
				var timestamp = toTimestamp($("#mm2").slider("value"),ui.value,$("#mmm2").slider("value"));
				$("#delay2").val(timestamp);
				var old = $("#old2").val();
				var thissec = toSeconds($("#delay2").val(),$('#delay_sign2').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				$('#new2').val(ntc);
			}
		});
		$("#mm2").slider({
			value:0,
			min: 0,
			max: 59,
			step: 1,
			slide: function(event, ui) {
				var timestamp = toTimestamp(ui.value,$("#ss2").slider("value"),$("#mmm2").slider("value"));
				$("#delay2").val(timestamp);
			},
			change: function(event, ui) { 
				var timestamp = toTimestamp(ui.value,$("#ss2").slider("value"),$("#mmm2").slider("value"));
				$("#delay2").val(timestamp);
				var old = $("#old2").val();
				var thissec = toSeconds($("#delay2").val(),$('#delay_sign2').html());
				var ntc = toTimeCode(String(eval(Number(old) + Number(thissec))));
				$('#new2').val(ntc);
			}
		});

	/*
	$("#mm1").slider({ value: 0 });
	$("#ss1").slider({ value: 1 });
	$("#mmm1").slider({ value: 250 });
	$("#mm2").slider({ value: 0 });
	$("#ss2").slider({ value: 1 });
	$("#mmm2").slider({ value: 200 });
	*/
	//jslog.debug($("#mmm1").slider('option', 'value'));

	var timestamp = toTimestamp($("#mm1").slider("value"),$("#ss1").slider("value"),$("#mmm1").slider("value"));
	$("#delay1").val(timestamp);

	var timestamp = toTimestamp($("#mm2").slider("value"),$("#ss2").slider("value"),$("#mmm2").slider("value"));
	//var timestamp = '00:00:00,000'
	$("#delay2").val(timestamp);

	});
	

	
	var subarr = Array();
		
	$('#import_subs').click(function(){
		//$('#mmm2').slider( 'value' , 500 );
		//$('#ss2').slider( 'value' , 32 );
		//$('#mm2').slider( 'value' , 12 );
		
		var testing =  uploadsubs('source', '10000', 'progressive');
			var r = eval(testing);
			var acapo = "\n#\n";
			
			$('#t1').val('1');
			$('#s1').val(r[3]);
			$('#new1').val(r[2]);
			
			$('#t2').val(r[1]);
			$('#s2').val(r[5]);
			$('#new2').val(r[4]);
			
			$('#old1').val(r[6]);
			$('#old2').val(r[7]);
			subarr = eval(r[8]);
			jslog.info("ERRE 8: " +r[8]);
			jslog.info("subarr : " +subarr.length);
			//$('#tempp').val(r.join(acapo));
			
			return false;
	});

	function subsel(n){
		if(typeof(subarr.length) != 'number' || subarr.length < 1){
			alert("Please click IMPORT");
			return false;
		}
		var num = parseInt($('#t'+n).val());
		if(isNaN(num)){
			alert("Use only numeric selectors");
			return false;
		}
		if(num < 1){num = 1;}		
		if(num > subarr.length){num = subarr.length}
		$('#t'+n).val(num);
		var index = eval(num-1);
			$('#t'+n).val(num);
			$('#s'+n).val(subarr[index][1]);
			$('#old'+n).val(subarr[index][0]);
			$('#new'+n).val(toTimeCode(subarr[index][0]));
			
		return true;		
	}
	
	$('#run_progressive_delay').click(function(){
		//1|00:02:10,040|1000|02:06:09,059
	if(!(subsel(1) && subsel(2))){return false;}
		if($('#check1').is(':checked') && $('#check2').is(':checked')){
			var settings = Array(
							$('#t1').val(),
							$('#new1').val(),
							$('#t2').val(),
							$('#new2').val()
						 );
		
			//$('#tempp').val(settings.join("|"));
		
			var timegaps = settings.join("|");
			//return alert("OK");
				$.ajax({
				type: "POST",
				url: "resources/subscore.php",
				data: ({
					action: 'pslide',
					settings: timegaps
				}),
				success: showResponse
				});
		} else {
			alert("Set timecodes and confirm both of them");
		}
	});

	var timer = '';
	function source_changed(){
		return false;
		clearTimeout(timer);
		//$('#settings').hide();$('#import').show();
		reportLog("Timer : " + timer);
		timer = setTimeout( function(){
				up_progressive();
			}, 2000 );
	}

	function up_progressive(){
		reportLog("Updating...");
		//upload subs
		var valsh = uploadsubs('source', 10000, 'progressive');
		jslog.info("Fine Importazione:" + valsh);
	}

//corners
$('#header').corner();
$('#container').corner();
$('#footer').corner();
$('#reportLog').corner();

