	var progress_interval = null;
	var cron_count = 0;
	

	function openPlayer(url) {
		
		if (typeof url == 'object')
			url = url.attr('href');
					
		return ! openPopUp(url, 730, 545, true);
	}


	function openMessenger(url) {
		
		if (typeof url == 'object')
			url = url.attr('href');		
		
		return ! openPopUp(url, 550, 330, true);
	}
	
	
	function openInlinebox(url, width, height, type) {
		
		if (typeof url == 'object')
			url = url.attr('href');
		
		if (! type)
			type = 'ajax';
			
		if (! width)
			width = 'auto';
			
		if (! height)
			height = 'auto';
		else
			height = height + 20;
		
		$.fancybox({
			'type': type,
	//		'autoDimensions' : false,
			'overlayShow': false, 
			'href': url,  
			'padding' : 0,
			'width': width, 
			'height': height, 
			'transitionIn': 'none', 
			'transitionOut': 'none',
			'enableEscapeButton': false,
			'onComplete' : function() {
					$('#inline_popup form input[type=submit]').focus();
					$('#inline_popup form').ajaxForm({
						target: '#fancybox-content div', 
						success: showResponse
					});
			}
		});
		
		
		
		
		return false;
	}

	function showResponse(responseText, statusText, xhr, $form) {
		$('#inline_popup').ready(function() {
			var test = $('#inline_popup .success_message a.load_content');
			var redirect_to;

			if (test.attr('href'))
				redirect_to = test.attr('href');
			else if (test.html())
				redirect_to = document.location.href;
			
			
			if (redirect_to) {
				$.fancybox.close();
				load_content(redirect_to);
			} 
			else {
				$('#inline_popup form').ajaxForm({
					target: '#inline_popup', 
					success: showResponse
				});				
			}
		});	
	}


	function openPopUp(url, width, height, backvalue) {
		var winname;
		var startx = Math.round((screen.width-width)/2) - 10;
		var starty = Math.round((screen.height-height)/2) - 20;

		d = new Date;

		winname = window.open(url,"Window" + d.getTime(),"width=" + width + ",height=" + height + ",status=no,toolbar=no,menubar=no,resizable=yes,scrollbars=no,screenX=" + startx + ",left=" + startx + ",screenY=" + starty + ",top=" + starty + " "); 

		if (! winname) {
			openInlinebox(url, width, height, 'iframe');
		}
		
		if (backvalue)		
			return true;

	}   


	function calc_file_size(size) {
		if (size <= 1024)
			return size + ' b';
		if (size <= 1048576)
			return (size / 1024).toFixed(1) + ' kB';
		else
			return (size / 1048576).toFixed(2) + ' MB';		
	}
	

	function progressbar(uuid) {
		$.ajax({
			url: 		'/progress',
			type: 		"GET",
			data: 		({"X-Progress-ID": uuid}),
			dataType: 	"json",
			timeout: 	5000,
			success: 	function(response){
				if (response) {
					$('#progressbar_message').html('Upload gestartet... ' + calc_file_size(response.received) + ' / ' + calc_file_size(response.size));	
	
					if (response.state == 'done' || response.state == 'uploading') {
						w = Math.ceil(298 * response.received / response.size);
						$('#progressbar').animate({ width: w }, 500);
						$('#progressbar_percent').html(Math.ceil(100 * response.received / response.size) + '%');
					}
					
					if (response.state == 'error') {
						//window.clearTimeout(interval);
//						$('#progressbar_message').html('Fehler aufgetreten!');
					}
	
					else if (response.state == 'done' || response.received == response.size) {
						window.clearTimeout(interval);
						$('#progressbar_message').html('Umrechnung...');						
					}
				}
			},
			error: 		function(html_result){ $('#progressbar_div').hide(); }
		});
	}

	
	function SwapBoxHeader(name) { 
		var status = $('#' + name).css('display');

		if (status == 'none')
			$('#' + name).slideDown(200);
		else
			$('#' + name).slideUp(200);		
		
		set_cookie(name + '_off', (status == 'none'?0:1));
	}
	

	function set_cookie (name, value)	{
		var c = name + "=" + escape(value);
		var days = 60;
		
		var today = new Date();
		var expiry = new Date(today.getTime() + days * 1000 * 60 * 60 * 24);
		c += ";expires=" + expiry.toGMTString();
		
		document.cookie = c + ";path=/";
	}


	function load_content(url, content_div) {
		var scrollto;
		
		if (! content_div)
			content_div = 'content';
		
		if (typeof url == 'object')
			url = url.attr('href');
			
		if (url.indexOf("#")) {
		
			var splitted_url = url.split("#");
			url 	 = splitted_url[0];
			scrollto = splitted_url[1];
			
		}

		$.get(url, {ajax_load: 1}, function(data) { 
	
			$('#' + content_div).html(data); 
			
			if (scrollto)
				$.scrollTo('#' + scrollto, 800); 

			
			if (window.reload_js)
				reload_js();
				
		});
		
		return false;
	}


	function browserCron_ajax(session_id) {

 		$.ajax({
			url: 		'/account/refresh',
			type: 		"GET",
			data: 		({ident: cron_count}),
			dataType: 	"json",
			timeout: 	5000,
			success: 	function(response){ 

				if (response) {
					if (response.notifier)
						for (var i = 0; i < response.notifier.length; i++) {
							
							if (response.notifier[i].type == 'mail')
								openPopUp("/account/mailbox/infowindow?mail_id=" + response.notifier[i].id, 420, 90);
			
							if (response.notifier[i].type == 'friend')
								openPopUp("/account/community/friends/infowindow?friend_id=" + response.notifier[i].id, 350, 90);						
						
							if (response.notifier[i].type == 'im')
								openMessenger('/account/messenger/?toid=' + response.notifier[i].id);						
						}
	
	
	
					if (response.friend_im_sent) {
						if (response.friend_im) {
							var new_content = '';
							for (var i = 0; i < response.friend_im.length; i++) 
								new_content += '<a href="/account/messenger/?toid=' + response.friend_im[i].id + '" onclick="return openMessenger($(this))" class="nowrap"><img src="' + response.friend_im[i].position_addon + '" class="icons_position ' + response.friend_im[i].position_class + '" /> ' + decodeURIComponent(response.friend_im[i].nick) + '</a>';
							$('#mom_im').html(new_content);
						} 
						else
							$('#mom_im').html('<p>Keine Freunde online.</p><a href="/online/"><img src="/_.gif" class="icons_friend friend_add_icon" alt="Neue Freunde finden" /> Neue Freunde finden</a>');
					}
				}
			}
					
   		});
		
		cron_count++;
		
	}		
		

	function closeThisWindow() {
		setTimeout("window.close();", 1000);
	}	
	
	
	$('HTML').addClass('JS'); 	
	
