var bandwidth_checker = function()
{
	var start_time = 0;
	var stop_time = 0;
	var image_filename = '/images/bandwidth/bwtest.png';
	var image_filesize = 146227;
	var connection_speed = 0;
	var retries = 0;
	var do_retries = 1;
	var in_test = 0;
	var done = 0;

	var start = function(total_retries)
	{
		if (in_test == 1) return;
		done = 0;

		if ($.cookie('bandwidth') != null)
		{
			connection_speed = $.cookie('bandwidth');
			done = 1;
			if ($('#bandwidth_result').length > 0)
			{
				$('#bandwidth_result').html(connection_speed);
			}
			return;
		}

		if ($('#bandwidth_check').length <= 0)
		{
			done = 1;
			return;
		}

		in_test = 1;
		do_retries = total_retries;
		$('#bandwidth_check').empty();
		start_time = (new Date()).getTime();
		$('#bandwidth_check').html('<img src="' + image_filename + '?time=' + start_time + '&rand=' + Math.random() + '" onload="bandwidth_checker.stop();" />');
	};

	var delete_cookie = function()
	{
		$.cookie('bandwidth', null, { expires: -10, path: '/' });
	}

	var reset = function()
	{
		retries = 0;
		connection_speed = 0;
	};

	var stop = function()
	{
		stop_time = (new Date()).getTime();

		if (start_time == stop_time) stop_time = start_time + 1;
		//connection_speed = ((connection_speed * retries) + (image_filesize / (stop_time - start_time))) / (retries + 1);
		new_connection_speed = (image_filesize * 1000) / (stop_time - start_time);
		new_connection_speed /= 1024;
		connection_speed = ((connection_speed * retries) + (new_connection_speed)) / (retries + 1);

		if ($('#bandwidth_result').length > 0)
		{
			$('#bandwidth_result').html(connection_speed + ':' + start_time + ':' + stop_time);
		}

		++retries;
		in_test = 0;
		if (do_retries > 0)
		{
			this.start(do_retries - 1);
		}
		else
		{
			done = 1;
			$.cookie("bandwidth", connection_speed, { path: '/' });
		}
	};

	var is_done = function()
	{
		return done;
	};

	var get_bandwidth = function()
	{
		return connection_speed;
	};

	return {
		start: start,
		stop: stop,
		reset: reset,
		is_done: is_done,
		get_bandwidth: get_bandwidth,
		delete_cookie: delete_cookie
	};
}();



function show_buy_error(price, money)
{
	$('.no_money_template .user_deposit_value').html(money);
	$('.no_money_template .movie_price').html(price);
	var newHtml = $('.no_money_template').html();

	$.fn.colorbox({
		html: newHtml,
		width: '470px',
		open: true
	});
	$('#cboxTopCenter').html('');
}

function buy_wmv_scene(movie_id, codec_id, price, form)
{
	$.ajax({
		url: 'ajax_buy_content.html?movie_id=' + movie_id + '&codec_id=' + codec_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 0)
			{
				show_buy_error(price, data.money);
			}
			else
			{
        			form.submit();
			}
		}
	});
	return false;

}

function ajax_buy_content(movie_id, codec_id, price, url)
{
	$.ajax({
		url: 'ajax_buy_content.html?movie_id=' + movie_id + '&codec_id=' + codec_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 0)
			{
				show_buy_error(price, data.money);
			}
			else
			{
        			window.location = url;
			}
		}
	});
	return false;

}

function ajax_buy_content_landing(movie_id, codec_id, price, url)
{
	$.ajax({
		url: '../ajax_buy_content.html?movie_id=' + movie_id + '&codec_id=' + codec_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 0)
			{
				show_buy_error(price, data.money);
			}
			else
			{
        			window.location = url;
			}
		}
	});
	return false;

}

function show_flash_free_movie(filename, movie_hard_text)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.fn.colorbox({
		html: "<a id='flowplayer_content' style='width: 100%; height: 300px; display: block;'></a><div style='margin-top:10px;'><div style='margin: 0 auto;' class='buttonrotoverlaywide'><a class='buttonredss' href='/welcome/SoubrettesServicesTrainees-148511m.html'>" + movie_hard_text +"</a></div></div>",
        width: '470px',
		height: '400px',
		open: true,
		onComplete:function() {
			$f(
				'flowplayer_content',
				'/javascripts/flowplayer.commercial-3.2.2.swf',
				{
					key : player_key,
					canvas:
					{
						backgroundGradient: "none",
						backgroundColor: "#000000"
					},
					clip:
					{
						scaling: 'fit',
						provider: 'rtmp',
						autoPlay: 'true',
						url: filename,
						connectionArgs: [true]
					},
					plugins:
					{
						controls: conf.skins.schwarzrot,
						rtmp:
						{
							url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
							netConnectionUrl: 'rtmp://fms.blitzeis.com/free_movies'
						}
					}
				}
			);
		}
	});
	return false;
}

function show_flash_free_movie_abgedreht(filename, movie_hard_text)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.fn.colorbox({
		html: "<a id='flowplayer_content' style='width: 100%; height: 300px; display: block;'></a><div style='margin-top:10px;'><div style='margin: 0 auto;' class='buttonrotoverlaywide'><a class='buttonredss' href='/welcome/abgedreht/Abgedreht-DiePorno-WGStaffel1-161464m.html?pay_action=inpayment'>" + movie_hard_text +"</a></div></div>",
        width: '470px',
		height: '400px',
		open: true,
		onComplete:function() {
			$f(
				'flowplayer_content',
				'/javascripts/flowplayer.commercial-3.2.2.swf',
				{
					key : player_key,
					canvas:
					{
						backgroundGradient: "none",
						backgroundColor: "#000000"
					},
					clip:
					{
						scaling: 'fit',
						provider: 'rtmp',
						autoPlay: 'true',
						url: filename,
						connectionArgs: [true]
					},
					plugins:
					{
						controls: conf.skins.schwarzrot,
						rtmp:
						{
							url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
							netConnectionUrl: 'rtmp://fms.blitzeis.com/free_movies'
						}
					}
				}
			);
		}
	});
	return false;
}

function show_flash_free_movie_member(filename, movie_hard_text, link)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.fn.colorbox({
		html: "<a id='flowplayer_content' style='width: 100%; height: 300px; display: block;'></a><div style='margin-top:10px;'><div style='margin: 0 auto;' class='buttonrotoverlaywide'><a class='buttonredss' href='/member/" + link +".html'>" + movie_hard_text +"</a></div></div>",
        width: '470px',
		height: '400px',
		open: true,
		onComplete:function() {
			$f(
				'flowplayer_content',
				'/javascripts/flowplayer.commercial-3.2.2.swf',
				{
					key : player_key,
					canvas:
					{
						backgroundGradient: "none",
						backgroundColor: "#000000"
					},
					clip:
					{
						scaling: 'fit',
						provider: 'rtmp',
						autoPlay: 'true',
						url: filename,
						connectionArgs: [true]
					},
					plugins:
					{
						controls: conf.skins.schwarzrot,
						rtmp:
						{
							url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
							netConnectionUrl: 'rtmp://fms.blitzeis.com/free_movies'
						}
					}
				}
			);
		}
	});
	return false;
}

function show_flash_trailer(trailer_link)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.fn.colorbox({
		html: "<a id='flowplayer_content' style='width: 100%; height: 100%; display: block;'></a>",
		width: '470px',
		height: '400px',
		open: true,
		onComplete:function() {
			$f(
				'flowplayer_content',
				'/javascripts/flowplayer.commercial-3.2.2.swf',
				{  
					key : player_key,
					canvas:
					{
						backgroundGradient: "none",
						backgroundColor: "#000000"
					},
					clip:
					{
						scaling: 'fit',
						autoPlay: 'true',
						provider: 'rtmp',
						url: trailer_link.replace(/.flv/, '')
					},
					plugins: 
					{   // load one or more plugins 
						controls: conf.skins.schwarzrot,
						rtmp:
						{
							url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
							netConnectionUrl: 'rtmp://fms.blitzeis.com/trailer'
						}
					}
				}
			);
		}
		
	});
	return false;
}

function show_flash_trailer_scene(trailer_link, flash_filename, title, movie_id, user_id, partner_id, scene_pay_text, scene_price)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.fn.colorbox({
		html: "<a id='flowplayer_content' style='width: 100%; height: 300px; display: block;'></a><div><div style='margin: 0 auto;' class='buttonrotoverlay'><a class='buttonredss' href='" + flash_filename + "'  onclick='$(\"#cboxTopCenter\").html(\"" + title + "\");return show_flash_movie(" + movie_id + ", "+ user_id +", "+ partner_id +");'>" + scene_pay_text +" ("+ scene_price +") </a></div></div>",
		width: '470px',
		height: '400px',
		open: true,
		onComplete:function() {
			$f(
				'flowplayer_content',
				'/javascripts/flowplayer.commercial-3.2.2.swf',
				{  
					key : player_key,
					canvas:
					{
						backgroundGradient: "none",
						backgroundColor: "#000000"
					},
					clip : {
						scaling: 'fit',
						autoPlay: false
					},
					clip:
					{
						scaling: 'fit',
						autoPlay: 'true',
						provider: 'rtmp',
						url: trailer_link.replace(/.flv/, '')
					},
					// the first clip overrides the scaling property
					// playlist: [ {url: trailer_link}, 'images/movieonplayer.jpg'],
					plugins:
					{            
						// load one or more plugins
						controls: conf.skins.schwarzrot,
						rtmp:
						{
							url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
							netConnectionUrl: 'rtmp://fms.blitzeis.com/trailer'
						}
					}
				}
			);
		}
	});
	return false;
}

function show_flash_bonuscontent(movie_id, user_id, partner_id, content_id, filename)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	$.ajax({
		url: 'ajax_bonuscontent_player.html?movie_id=' + movie_id + '&content_id=' + content_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 1)
			{
				$.fn.colorbox({
					html: "<a id='flowplayer_content' style='width: 100%; height: 100%; display: block;'></a>",
					width: '470px',
					height: '400px',
					open: true,
					onComplete:function() {
						$f(
							'flowplayer_content',
							'/javascripts/flowplayer.commercial-3.2.2.swf',
							{  
								key : player_key,
								canvas:
								{
									backgroundGradient: "none",
									backgroundColor: "#000000"
								},
								clip:
								{
									scaling: 'fit',
									provider: 'rtmp',
									autoPlay: 'true',
									url: filename,
									connectionArgs: [
										true,
										user_id,
										partner_id,
										data.content_id,
										data.token,
										filename,
										'bonus'
									]
								},
								plugins:
								{
									controls: conf.skins.schwarzrot,
									rtmp:
									{
										url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
										netConnectionUrl: 'rtmp://fms.blitzeis.com/bonuscontent'
									}
								}
							}
						);
					}
				});	
			}
		}
	});
	return false;
}

function show_flash_movie(movie_id, user_id, partner_id)
{
	bandwidth_checker.start(3);
	setTimeout(function() { show_flash_movie_wait_callback(movie_id, user_id, partner_id); }, 250);
	return false;
}

function show_flash_movie_wait_callback(movie_id, user_id, partner_id)
{
	if (bandwidth_checker.is_done())
	{
		bandwidth = bandwidth_checker.get_bandwidth();
		if (bandwidth < 200)
		{
			show_flash_movie_for_codec(movie_id, user_id, partner_id, 80);
		}
		else
		{
			show_flash_movie_for_codec(movie_id, user_id, partner_id, 65);
		}
	}
	else
	{
		setTimeout(function() { show_flash_movie_wait_callback(movie_id, user_id, partner_id); }, 250);
	}
	return false;
}

function show_flash_movie_for_codec(movie_id, user_id, partner_id, codec_id)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	if (codec_id == undefined) codec_id = 65;

	$.ajax({
		url: 'ajax_flash_player.html?movie_id=' + movie_id + '&codec_id=' + codec_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 0)
			{
				show_buy_error(data.price, data.money);
			}
			else
			{
				$.fn.colorbox({
					html: "<a id='flowplayer_content' style='width: 100%; height: 100%; display: block;'></a>",
					width: '470px',
					height: '400px',
					open: true,
					onComplete:function() {
						$f(
							'flowplayer_content',
							'/javascripts/flowplayer.commercial-3.2.2.swf',
							{  
								key : player_key,
								canvas:
								{
									backgroundGradient: "none",
									backgroundColor: "#000000"
								},
								clip:
								{
									scaling: 'fit',
									provider: 'rtmp',
									autoPlay: 'true',
									url: data.filename,
									connectionArgs: [
										true,
										user_id,
										partner_id,
										data.content_id,
										data.token
									]
								},
								plugins:
								{
									controls: conf.skins.schwarzrot,
									rtmp:
									{
										url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
										netConnectionUrl: 'rtmp://fms.blitzeis.com/movieon4'
									}
								}
							}
						);
					}
				});
			}
		}
	});
	return false;
}


function show_flash_movie_landing(movie_id, user_id, partner_id)
{
	bandwidth_checker.start(3);
	setTimeout(function() { show_flash_movie_wait_callback_landing(movie_id, user_id, partner_id); }, 250);
	return false;
}

function show_flash_movie_wait_callback_landing(movie_id, user_id, partner_id)
{
	if (bandwidth_checker.is_done())
	{
		bandwidth = bandwidth_checker.get_bandwidth();
		if (bandwidth < 200)
		{
			show_flash_movie_for_codec_landing(movie_id, user_id, partner_id, 80);
		}
		else
		{
			show_flash_movie_for_codec_landing(movie_id, user_id, partner_id, 65);
		}
	}
	else
	{
		setTimeout(function() { show_flash_movie_wait_callback(movie_id, user_id, partner_id); }, 250);
	}
	return false;
}

function show_flash_movie_for_codec_landing(movie_id, user_id, partner_id, codec_id)
{
	player_key = '#@191ce8b092f64fffa54';
	if (typeof flowplayer_key != undefined)
	{
		player_key = flowplayer_key;
	}

	if (codec_id == undefined) codec_id = 65;

	$.ajax({
		url: '../ajax_flash_player.html?movie_id=' + movie_id + '&codec_id=' + codec_id,
		dataType: 'json',
		success: function (data)
		{
			if (data == null) return;

			if (data.status == 0)
			{
				show_buy_error(data.price, data.money);
			}
			else
			{
				$.fn.colorbox({
					html: "<a id='flowplayer_content' style='width: 100%; height: 100%; display: block;'></a>",
					width: '470px',
					height: '400px',
					open: true,
					onComplete:function() {
						$f(
							'flowplayer_content',
							'/javascripts/flowplayer.commercial-3.2.2.swf',
							{  
								key : player_key,
								canvas:
								{
									backgroundGradient: "none",
									backgroundColor: "#000000"
								},
								clip:
								{
									scaling: 'fit',
									provider: 'rtmp',
									autoPlay: 'true',
									url: data.filename,
									connectionArgs: [
										true,
										user_id,
										partner_id,
										data.content_id,
										data.token
									]
								},
								plugins:
								{
									controls: conf.skins.schwarzrot,
									rtmp:
									{
										url: '/javascripts/flowplayer.rtmp-3.1.3.swf',
										netConnectionUrl: 'rtmp://fms.blitzeis.com/movieon4'
									}
								}
							}
						);
					}
				});
			}
		}
	});
	return false;
}

