// MegaConvertoMaticMarkII - Sam Cleaver (Beaver6813.com) v2.1.2
/*ChangeLog (Started at v2.1.2)
2.1.2 - Modified to take into account download re-tracing chance
2.1.3 - bringup function complete rewrite to save panel states/stability fixes
2.1.4 - Abort function updated
2.1.5 - Added html support to meter updates*/
$.ajaxSetup({
  cache: false
});
var adoc = 2;
function animatemeter(newVal,msg,html)
	{
	if(newVal==-1)
		conv_giveError();
	else
		{
		var newVal = 1 - (newVal / 100);
		var goVal = Math.round(201*newVal);
		var finalVal = 0 - goVal;
		if(html==1)
			$("#fetchbar-meter").html(msg);
		else
			$("#fetchbar-meter").text(msg);
		$("#fetchbar-meter").animate({
			backgroundPosition: finalVal+"px"
		  }, 1000, 'swing' );
	  	}
	}
function bringupfavs(bottom, startup, mode)
	{
	if(!$.cookie('conv_favbar'))
		{
		$.cookie('conv_favbar', 0,{ expires: 1 });
		}
	var showpanel = parseInt($.cookie('conv_favbar'));
	if((showpanel==0&&startup)||(showpanel==1&&!startup)||mode=='down')
		{
		var curheight = parseFloat($("#favouriteswrapper").css('height').replace('px',''));			
	 	$("#favouriteswrapper").animate({
        bottom: '-'+curheight+"px"
      }, 1000, 'swing' );
			if(!startup&&!mode)
				$.cookie('conv_favbar', 0,{ expires: 1 });
		}
	else if((showpanel==1&&startup)||(showpanel==0&&!startup)||'mode'=='up')
		{
		$("#favouriteswrapper").show();	
		$("#favouriteswrapper").animate({
        bottom: bottom+"px"
      }, 1000, 'swing' );
			if(!startup&&!mode)
				$.cookie('conv_favbar', 1,{ expires: 1 });
		}
			
		if(startup)
			$('#togglefav').bind("click", {bottom:bottom}, function () {
				bringupfavs(bottom,false,false);														
			});
		
	}
function bringupconv(bottom, startup, mode)
	{
	if(!$.cookie('conv_convbar'))
		{
		$.cookie('conv_convbar', 0,{ expires: 1 });
		}
	var showpanel = parseInt($.cookie('conv_convbar'));
	if((((showpanel==0&&startup)||(showpanel==1&&!startup))&&mode!='up')||mode=='down')
		{
		var curheight = parseFloat($("#conversionwrapper").css('height').replace('px',''));			
	 	$("#conversionwrapper").animate({
        bottom: '-'+curheight+"px"
      }, 1000, 'swing' );
			if(!startup&&!mode)
				$.cookie('conv_convbar', 0,{ expires: 1 });
		}
	else if((((showpanel==1&&startup)||(showpanel==0&&!startup))&&mode!='down')||'mode'=='up')
		{
		$("#conversionwrapper").show();	
		$("#conversionwrapper").animate({
        bottom: bottom+"px"
      }, 1000, 'swing' );
			if(!startup&&!mode)
				$.cookie('conv_convbar', 1,{ expires: 1 });
		}
			
		if(startup)
			$('#toggleconv').bind("click", {bottom:bottom}, function () {
				bringupconv(bottom,false,false);														
			});
		
	}
function conv_SwapAd(option)
    {
		if(option=='conv'||option=='preconv')
			bringupconv(27,false,'up');
        if(option=='conv')
            {
             /*   var api = $("#fetchbar-adverts").scrollable();

						api.getConf().loop = false;
						api.end();
*/
                $('#fetchbar-preconv').slideUp("slow");
				$('#fetchbar-adverts').slideUp("slow");
                $('#fetchbar-pbarcontainer').slideDown("slow");
            }
        else if(option=='ad')
            {
				
            /*  	var api = $("#fetchbar-adverts").scrollable();

						api.getConf().loop = false;
						api.end();
*/
				bringupconv(27,false,'down');
              $('#fetchbar-adverts').slideDown("slow");
              $('#fetchbar-pbarcontainer').slideUp("slow");
			  $('#fetchbar-preconv').slideUp("slow");


            }
		else
			{
				var curconv = parseInt($.cookie('conv_count'));
				if(((curconv % adoc)==0||isNaN(curconv))&&$('#fetchbar-preconv').length > 0)
				{
				$('#fetchbar-adverts').slideUp("slow");
                $('#fetchbar-pbarcontainer').slideUp("slow");
				$('#fetchbar-preconv').slideDown("slow");
				}
				else
				{
				if(isNaN(parseInt($.cookie('conv_count')))){var curcount=0;} else { curcount = parseInt($.cookie('conv_count'));} $.cookie('conv_count',(curcount + 1),{ expires: 1 });
				setTimeout("conv_queuecore()",2000);
				}

			}

    }
function conv_launchad()
	{
	win2=window.open($('#fetchbar-preconv a').attr('href'),"","width=800,height=510,scrollbars=1,resizable=1,toolbar=1,location=1,menubar=1,status=1,directories=0")
	win2.blur()
	window.focus()
	}
function conv_AddInitial()
	{
	if($.cookie('conv_current'))
        conv_SwapAd('conv');
	else if($.cookie('conv_queued'))
		conv_SwapAd('preconv');
	if($.cookie('conv_current'))
			{
			var conv_current = [];
			var conv_currentexisting = parsevidinfo($.cookie('conv_current'));
			$('#'+conv_currentexisting['Tracker']).parent().block({message: null});
			$('#'+conv_currentexisting['Tracker']).parent().draggable('disable');
			$('#currentvidimg').attr('src',conv_currentexisting['Thumb']);
			conv_monitorprocess();
			}
	if($.cookie('conv_queued'))
		{
		var conv_queued = [];

		var conv_queuedexisting = parsevidinfo($.cookie('conv_queued'));

		if($.cookie('conv_queued').length > 6)
		{
	if($('#conversionqueuewrap').css('display') == 'none')
			{
		$("#queuenotice").animate({
			marginTop: '10px'
			}, 200 );

			conv_sub_wrapperadj(21);
			$("#conversionwrapper").queue(function () {
			$('#conversionqueuewrap').show("blind", {}, 200);
			$(this).dequeue();
			});

		}
		}
		for(i in conv_queuedexisting)
		{
		initdata=parsevidinfo(conv_queuedexisting[i]);

		conv_sub_wrapperadj(39);
		$('#'+initdata['Tracker']).parent().block({message: null});
	  	$('#'+initdata['Tracker']).parent().draggable('disable');
 	  $("#conversionqueueinner").queue(function () {
			$("#queueorder").prepend('<li class="queuerow" style="display:none;overflow:hidden;" id="q'+initdata['Tracker']+'" ><img src="images/deletequeue_07.png" alt="Remove From Queue" class="removequeue" align="left" /><img align="left" src="'+initdata['Thumb']+'" alt="'+initdata['Title']+'" width="47" height="35" style="margin-top:1px;" /><div style="float:left;margin-left:8px;margin-top:5px;height:35px;width:61px;overflow:hidden;">'+initdata['Title']+'</div></li>');
				$("#q"+initdata['Tracker']).slideDown(500);
	  			$("#q"+initdata['Tracker']).effect("highlight", {}, 1500);
				$("#q"+initdata['Tracker']+" > .removequeue").bind("click", {tracker:initdata['Tracker']}, conv_RemoveQueue);
			   $(this).dequeue();
      });

		}
		}

	}
function conv_sub_wrapperadj(incr,mode)
	{
	if(!defined('newheightwrap')||isNaN(newheightinner))
		newheightwrap = parseFloat($("#conversionwrapper").css('height').replace('px',''))+incr;
	else
		newheightwrap = newheightwrap+incr;

	if(!defined('newheightinner')||isNaN(newheightinner))
		newheightinner = parseFloat($("#conversioninner").css('height').replace('px',''))+incr;
	else
		newheightinner = newheightinner+incr;

	if(mode==1)
		{
		newheightinner = 301;
		newheightwrap = 169;
		}

	$("#conversionwrapper").queue(function() {
	$("#conversionwrapper").animate({
        height: newheightwrap
      }, 500 );
	$(this).dequeue();
	});
	$("#conversioninner").queue(function() {
	$("#conversioninner").animate({

        height: newheightinner
      }, 500 );
	$(this).dequeue();
	});

	}
function conv_manualadd(searchdata)
	{
	queuedata = parsevidinfo(searchdata);
	myhandle = $('#'+queuedata['Tracker']).parent();
	myhandle.block({message: null});
	myhandle.draggable('disable');
	conv_AddQueue(queuedata);
	}
function conv_AddQueue(data)
	{
	queueitems = $('#queueorder').sortable('toArray');
	if(!defined('queueitems.length'))
		{
		$("#queueorder").sortable({});
		queueitems = $('#queueorder').sortable('toArray');
		}
    conv_SwapAd('conv');
	if(parseFloat(queueitems.length)<=4)
		{
	if($('#conversionqueuewrap').css('display') == 'none')
			{
					$("#queuenotice").animate({
			marginTop: '10px'
			}, 200 );

			conv_sub_wrapperadj(21);
			$("#conversionwrapper").queue(function () {
			$('#conversionqueuewrap').show("blind", {}, 200);
			$(this).dequeue();
			});

		}
		conv_sub_wrapperadj(39);
	  $("#conversionqueueinner").queue(function () {
			$("#queueorder").prepend('<li class="queuerow" style="display:none;overflow:hidden;" id="q'+data['Tracker']+'" ><img src="images/deletequeue_07.png" alt="Remove From Queue" class="removequeue" align="left" /><img align="left" src="'+unescape(data['Thumb'])+'" alt="'+data['Title']+'" width="47" height="35" style="margin-top:1px;" /><div style="float:left;margin-left:8px;margin-top:5px;height:35px;width:61px;overflow:hidden;">'+data['Title']+'</div></li>');
				$("#q"+data['Tracker']).slideDown(500);
	  			$("#q"+data['Tracker']).effect("highlight", {}, 1500);
				$("#q"+data['Tracker']+" > .removequeue").bind("click", {tracker:data['Tracker']}, conv_RemoveQueue);
	   $(this).dequeue();
      });
	if(!$.cookie('conv_queued'))
		{
		var conv_queued = [];
		}
	else
		{
		var conv_queued = [];
		var conv_queuedexisting = parsevidinfo($.cookie('conv_queued'));
		}
	for(i in conv_queuedexisting)
		{
		conv_queued.push(conv_queuedexisting[i]);
		}
	conv_queued.push(setvidinfo(data));
	$.cookie('conv_queued',setvidinfo(conv_queued),{ expires: 1 });
	if(!$.cookie('conv_current'))
			conv_SwapAd('preconv');
		}
	else
		alert("You can only have a maximum of 5 items in the queue.");
	}
function conv_RemoveQueue(tracker,startconv)
	{
	if(startconv!=1)
		tracker = tracker.data.tracker;
	$("#q"+tracker+" > img").unbind('click');
	if($.cookie('conv_queued'))
		{
		var conv_queued = [];
		var conv_queuedexisting = parsevidinfo($.cookie('conv_queued'));
		for(i in conv_queuedexisting)
		{
		if(substr_count(base64_decode(conv_queuedexisting[i]),tracker)>0)
			deletewhich = i;
		conv_queued.push(conv_queuedexisting[i]);
		}
		conv_queued.splice(deletewhich,1);
		if(conv_queued.length==0)
			$.cookie('conv_queued',null);
		else
			$.cookie('conv_queued',setvidinfo(conv_queued),{ expires: 1 });
		}
	mainbox = $("#"+tracker).parent();
	if(startconv!=1)
		{
		mainbox.unblock();
		mainbox.draggable('enable');
		}

	$("#q"+tracker).slideUp(500);
	$("#q"+tracker).queue(function() {
	conv_sub_wrapperadj(-39);
	$("#q"+tracker).remove();
	if(!$.cookie('conv_queued'))
		{
		if(startconv!=1&&!$.cookie('conv_current'))
            conv_SwapAd('ad');
	if($('#conversionqueuewrap').css('display') == 'block')
			{
			$("#queuenotice").animate({
			marginTop: '0'
			}, 200 );
			conv_sub_wrapperadj(-21,1);
			$('#conversionqueuewrap').hide("blind", {}, 200);


		}
		}
	$(this).dequeue();
	});

	}
function conv_queuecore()
	{
	conv_SwapAd('conv');
	if(!$.cookie('conv_current'))
	{
	queueitems = $('#queueorder').sortable('toArray');
	if(!defined('queueitems.length'))
		{
		$("#queueorder").sortable({});
		queueitems = $('#queueorder').sortable('toArray');
		}
	if(queueitems.length>0)
		{
		queueitems.reverse();
		tracker = queueitems[0].split('q');
		tracker = tracker[1];
		if($.cookie('conv_queued'))
		{
		var conv_queued = [];
		var conv_queuedexisting = parsevidinfo($.cookie('conv_queued'));
		for(i in conv_queuedexisting)
		{
		if(substr_count(base64_decode(conv_queuedexisting[i]),tracker)>0)
			selectwhich = i;
		conv_queued.push(conv_queuedexisting[i]);
		}
		conv_RemoveQueue(tracker,1);
		conv_beginprocess(conv_queuedexisting[selectwhich]);
		}
		}
	else
		alert("You have nothing to convert! Add something to the queue!");
	}
	else
		alert("Please wait till the current video has finished converting!");
	}
function conv_beginprocess(blockdata)
	{
	$('#fetchbar-meter').css('background','url(images/fillgauge_30.gif) no-repeat -201px');
	$.cookie('conv_current',blockdata,{ expires: 1 });
	convitem = parsevidinfo(blockdata);
	$('#currentvidimg').attr('src',unescape(convitem['Thumb']));
	animatemeter(10,'Authorising Dynamic Media Conversion...');
	//alert($.cookie('bbsessionhash'));
	$.ajax({
   			type: "GET",
			global: true,
   			url: "passinfo.php",
   			data: "RequestFile=seedgen.php&Module="+escape(convitem['Module'])+"&DLQuality="+escape(convitem['DLQuality'])+"&Title="+escape(convitem['Title'])+"&PlayerURL="+escape(convitem['PlayerURL']),
   			success: function(data){
			animatemeter(20,'Initiating DMC Engine...');
			var splitdata = data.split("|||");
			var Seed = splitdata[0];
			var FKey = splitdata[1];
				  	  $.ajax({
   			type: "GET",
			global: true,
   			url: "passinfo.php",
   			data: "RequestFile=s1.php&Module="+escape(convitem['Module'])+"&Title="+escape(convitem['Title'])+"&PlayerURL="+escape(convitem['PlayerURL'])+"&Key="+escape(convitem['Key'])+"&FKey="+escape(FKey)+"&Seed="+escape(Seed)+"&conv_current="+$.cookie('conv_current'),
   			beforeSend: function(data){

			}

 	});
			convitem['FKey'] = FKey;
			convitem['Seed'] = Seed;
			reblockdata = setvidinfo(convitem);
			$.cookie('conv_current',reblockdata,{ expires: 1 });
			setTimeout("conv_monitorprocess()",1000);
			}

 	});

	}
function conv_monitorprocess(returned)
	{
		if($.cookie('conv_current'))
		{
	convitem = parsevidinfo($.cookie('conv_current'));
	$.ajax({
   		type: "GET",
		global: true,
		url: "conversionstatus.php",
		data: "Seed="+convitem['Seed']+"&Fkey="+convitem['FKey'],
		success: function(data){
			var splitdata = data.split("|");
			var percent = splitdata[0];
			var message = splitdata[1];
			var delay = splitdata[2];
			if(percent=="SDLO")
				{
				if(returned!='undefined'&&returned!=null&&returned==1)
					{
					animatemeter(70,"Video Downloaded... Please Wait...");
					setTimeout("conv_monitorprocess(1)",1000);
					}
				else
					{
					convitem = parsevidinfo($.cookie('conv_current'));
					convitem['DLInfo'] = message;
					reblockdata = setvidinfo(convitem);
					$.cookie('conv_current',reblockdata,{ expires: 1 });
					animatemeter(5,"Downloading Video. Please Wait.");
					setTimeout("conv_monitordlprocess()",3000);
					}
				}
			else if(percent==100)
				{
				animatemeter(percent,message,1);
				conv_giveDownload();
				return;
				}
			else if(percent=="ERR")
				{
				conv_giveError();
				return;
				}
			else if(percent!=100&&percent!="ERR")
				{
				animatemeter(percent,message,1);
				if(!delay||delay<=700)delay=700;
				setTimeout("conv_monitorprocess()",delay);
				}
		},
		error: function()
			{
			conv_giveError();
			}
		});
		}
	}
function conv_monitordlprocess()
	{
	if($.cookie('conv_current'))
		{
	convitem = parsevidinfo($.cookie('conv_current'));
	$.ajax({
   		type: "GET",
		global: true,
		url: "passinfo.php",
		data: "RequestFile=getdlprogress.php&conv_current="+escape($.cookie('conv_current')),
		success: function(data){
			var percent = data;
			if(percent==100)
				{
				animatemeter(percent,"Video Downloaded... Please Wait...");
				setTimeout("conv_monitorprocess(1)",1000);
				}
			else if(percent=="ERR")
				{
				conv_giveError();
				return;
				}
			else if(percent!=100&&percent!="ERR")
				{
				if(!defined('previouspercent'))
					previouspercent = 0;
				if(previouspercent!=percent&&percent!=''&&percent!='RETRACK')
					{					
					animatemeter(percent,"Downloading Video... "+percent+"% Complete");
					previouspercent = percent;
					setTimeout("conv_monitordlprocess('"+convitem['DLInfo']+"')",5000);
					}
				else
					{
					if(percent=='RETRACK')
						$("#fetchbar-meter").text('Download Reallocated.. Tracing');
					setTimeout("conv_monitordlprocess('"+convitem['DLInfo']+"')",6000);
					}
					
				}
		},
		error: function()
			{
			conv_giveError()	;
			}
		});
		}
	}
function conv_giveError()
	{
	convitem = parsevidinfo($.cookie('conv_current'));
	$('#currentvidimg').attr('src','images/queueplaceholder_25.png');
	mainbox = $("#"+convitem['Tracker']).parent();
		mainbox.unblock();
		mainbox.draggable('enable');
	$.cookie('conv_current',null);
	$('#fetchbar-meter').css('background','url(images/fillgauge_31.png) no-repeat')	  ;
	animatemeter(100,"Internal error. Please try again later.");
	alert("An error has occured, the item has been removed from the queue and we'll convert the next item instead. (If you have one!)");
	if($.cookie('conv_queued'))
		conv_SwapAd('preconv');
	}
function conv_giveDownload()
	{
	convitem = parsevidinfo($.cookie('conv_current'));

	$('#fetchbar-meter').css('background','url(images/fillgauge_30.png) no-repeat')	;
	if($.cookie('conv_queued'))
		addontxt = ' &amp; Convert Next';
	else
		addontxt = '';
	animatemeter(100,"<a id='downloadnext' href='http://dmce.fetchmp3.com/s2.php?fkey="+convitem['FKey']+"' target='_blank' class='popupwindow' rel='windowFull'>Download"+addontxt+" &amp; View Sponsor</a> | <a id='twitterout' target='_blank' href='http://dmce.fetchmp3.com/tweetout.php?fkey="+convitem['FKey']+"'>Tweet!</a>",1);

		//$('#fetchbar-advertisement').html("<a target='_blank' href='"+$.cookie('fetchconv_advertisementurl')+"'>Visit Our Sponsor!</a>");
		//$('#fetchbar-advertisement').html("<a target='_blank' href='http://www.regcleanerscompared.info'>Speed Up Your PC! Stop Errors! Fix PC Problems!</a>");
		
		$(function()
		{
		$(".popupwindow").popupwindow(profiles);
		});

		$('#downloadnext').click(function(){
										  convitem = parsevidinfo($.cookie('conv_current'));
										  $('#currentvidimg').attr('src','images/queueplaceholder_25.png');
											mainbox = $("#"+convitem['Tracker']).parent();
											mainbox.unblock();
											mainbox.draggable('enable');
										  $.cookie('conv_current',null);
										  if($.cookie('conv_queued'))
										  		conv_SwapAd('preconv');
										  });

	}
function conv_abortCurrent()
	{
	var answer = confirm("Are you sure you want to abort converting this video?");
	if (answer){
	convitem = parsevidinfo($.cookie('conv_current'));
	$.get("passinfo.php", { fkey: convitem['FKey'], RequestFile: "abort.php" } );
	animatemeter(0,"",0);
	$('#currentvidimg').attr('src','images/queueplaceholder_25.png');
	mainbox = $("#"+convitem['Tracker']).parent();
			mainbox.unblock();
			mainbox.draggable('enable');
	  $.cookie('conv_current',null);
	  if($.cookie('conv_queued'))
			conv_SwapAd('preconv');
		else
            conv_SwapAd('ad');
	}
	}

