// This file actually should be in /js/classes/personalheader
pkg('mdv.personalheader');

mdv.personalheader.PersonalHeader = function() {
	
	var nodes = {};
	var flashId = 'personalFlashHeader';
	var flashVars = {};
	var flashParams = {
		scale: 'noscale',
		menu: 'false',
		wmode: 'transparent',
		allowscriptaccess: 'samedomain'
	};
	var swfGeneral = '/swf/dashboardheaderstandalone.swf';
	var swfPersonal = '/swf/dashboardheader.swf';
	var swfFile = '';
	
	function init(root, variableName) {
		if(!root)
			return;
		
		nodes.root = root;
		nodes.personal = $('.personal', nodes.root);
			
		
		flashVars = {
			label: nodes.root.attr('m:username')
		};
		if(nodes.root.attr('m:personal') == 'true') {
			flashVars.jsmethod = variableName+'.anim()';
			swfFile = swfPersonal;
		}
		else {
			swfFile = swfGeneral;
		}
		
		embed();
	}
	
	function embed() {
		// Delay the embed to prevent framerate issues
		setTimeout(function() {
			window.swfobject.embedSWF(
				swfFile,
				flashId,
				"100%",
				"100%",
				"9",
				"false",
				serializeFlashVars(),
				flashParams,
				attributes
			);
		}, 300);
	}
	
	function serializeFlashVars() {
		return {
			userdata: encodeURI(JSON.stringify(flashVars))
		};
	}
	
	function anim() {
		nodes.personal.animate({
			top: '0%'
		}, {
			queue: false,
			duration: 600,
			easing: 'easeInOutExpo'
		});
		nodes.personal.animate({
			opacity: 1
		}, {
			queue: false,
			duration: 500,
			easing: 'linear'
		});
	}
	
	init.apply(this, arguments);
	
	return {
		anim: anim
	};
}
