var movie_id = false;

window.addEvent('domready', init);

function init()
{
	window.addEvent('resize', on_resize);
	window.addEvent('scroll', on_scroll);
	
	$('surface').style.background = "url('/assets/images/deathstar_surface.png') no-repeat"; 
	
	$('logo').set('tween', { duration: 500, transition: Fx.Transitions.Cubic.easeOut });
	$('logo').setStyle('opacity', 0);
	$('logo').show();
	$('logo').tween('opacity', 1);
	
	on_resize();

	FB.Event.subscribe('auth.sessionChange', function(response) {
	    if (response.session) {
	    	if (getCookie('fblogin') == 1)
		    	window.location.reload();
	    } else {
	    	//alert('a user has logged out');
	    }
	});
}

function on_resize()
{
	surface_redraw();
	$('logo').setX(window.getWidth() / 2 - 150 / 2);
}

function on_scroll()
{
	surface_redraw();
}

function surface_redraw()
{
	var scroll_top		= window.getScrollTop();
	scroll_top			= scroll_top == NaN ? 0 : scroll_top;
	
	var scroll_height 	= window.getScrollHeight() == NaN ? 0 : window.getScrollHeight();
	var height 			= window.getHeight();
	
	if ($('surface').getHeight() < height)
		$('surface').setHeight(height);

	var y = (scroll_top.toInt() / (scroll_height.toInt() - height.toInt())) * 70

	if (!y || y == NaN)
		y = 0;
	
	$('surface').setStyle('backgroundPosition', (-(1421 - window.getWidth()) / 2) + 'px ' + (scroll_top + height - y - 120) + 'px');
}

function vimeo_login()
{
	location.href = '/login';
}

function add_scene_tag(scene_id)
{
	var str = prompt('Type a comma-separated list of tags');
	
	if (str != '')
	{
		new Request({ 
			url: '/ajax/scenes/add_scene_tags?id=' + scene_id + '&tags=' + encodeURIComponent(str), 
			onSuccess: function(json) {
	        	data = JSON.decode(json);
	        	if (data.success) {
					$('scene_tags_' + scene_id).set('html', data.html);
				}
			}
	    }).send();
    }
}

function add_chunk_tag(scene_id)
{
	var str = prompt('Type a comma-separated list of tags');
	
	if (str != '')
	{
		new Request({ 
			url: '/ajax/scenes/add_chunk_tags?id=' + scene_id + '&tags=' + encodeURIComponent(str), 
			onSuccess: function(json) {
				data = JSON.decode(json);
	        	if (data.success) {
					$('chunk_tags').set('html', data.html);
				}
			}
	    }).send();
    }
}

function delete_tag(type, id, tag_id)
{
	new Request({ 
		url: '/ajax/scenes/delete_tag?id=' + id + '&tag_id=' + tag_id + '&type=' + type,
		onSuccess: function(json) {
			data = JSON.decode(json);
        	if (data.success) {
				if (type == 'chunk')
					$('chunk_tags').set('html', data.html);
				else
					$('scene_tags_' + id).set('html', data.html);
			}
		}.bind(this)
    }).send();
}

function setCookie(name, value, days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	
	document.cookie = name + "=" + value + expires + "; path=/";
}

function getCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	
	for(var i = 0; i < ca.length; i++) {
		var c = ca[i];
		while (c.charAt(0) == ' ') c = c.substring(1, c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}


function on_fb_connect(perms)
{	
	new Request({
		url: '/accountapi/facebooksinglesignon',
		data: 'format=json',
		onComplete: function(data) 
		{
			json = JSON.decode(data);
			
			if (json.data)
			{
				set_text('first_name', json.data[0].first_name);
				set_text('last_name', json.data[0].last_name);
				set_text('email', json.data[0].email);
				set_text('username', json.data[0].first_name.toLowerCase() + json.data[0].last_name.toLowerCase());
			}
		}
	}).send();
}
