var facebookUserId = 23902627;
var image_url = "http://www.you-deserve-one.com/image.php?url=";
flash = {
	getFlashMovieObject:function() {
		if (window.document["flash_holder"]) {
			return window.document["flash_holder"];
		}
		if (navigator.appName.indexOf("Microsoft Internet")==-1) {
			if (document.embeds && document.embeds["flash_holder"]) {
				return document.embeds["flash_holder"]; 
			} else { 
				return document.getElementById("flash_holder");
			}
		}
	},

	setUser:function(userInfo) {
		flash.getFlashMovieObject().loadUser(userInfo);
	},
	
	doLogin:function() {
		flash.getFlashMovieObject().loadLogin(true);
	},
	
	getFbuserFriends:function(friends) {
		flash.getFlashMovieObject().loadFbuserFriends(friends);
	},
	
	getFriendImage:function(image) {
		flash.getFlashMovieObject().loadFriendImage(image_url+image);
	}
}

facebook = {
	doLogin:function() {
		FB.Connect.requireSession(function() {
			flash.doLogin();
		});
	},
	
	getFbuser:function() {
	    FB.ensureInit(function() {
	        FB.Facebook.get_sessionWaitable().waitUntilReady(function () {
	            FB.Facebook.apiClient.users_getLoggedInUser(function(result) { 
	                facebookUserId = result;
	                FB.Facebook.apiClient.users_getInfo(facebookUserId, ['first_name', 'last_name', 'current_location', 'sex', 'pic_square'], function(data) {
	                	flash.setUser(data[0]);
	                });
	            });
	        });
	    });
	},
	
	getFriendImage:function(friend) {
		var friend_id = friend;
		FB.ensureInit(function(friend) {
	        FB.Facebook.get_sessionWaitable().waitUntilReady(function (friend) {
	        	friends = new Array();
	        	friends.push(friend_id);
	        	FB.Facebook.apiClient.users_getInfo(friends, ['pic_big'], function(data) {
	        		//window.open(data[0].pic_big);
	        		flash.getFriendImage(data[0].pic_big);
	        	});
	        });
		});
	},
	
	getFbuserFriends:function() {
		FB.ensureInit(function() {
			FB.Facebook.get_sessionWaitable().waitUntilReady(function () {
	        	FB.Facebook.apiClient.fql_query("SELECT uid FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1="+facebookUserId+") ORDER BY first_name ASC", function(result) {
	                var friend_data = new Array();
	        		var friends = "";
	                var friend_array = new Array();
	                for (i=0; i<result.length; i++) {
	                    friend_array.push(result[i].uid);
	                }
	                
	                FB.Facebook.apiClient.users_getInfo(friend_array, ['first_name', 'last_name', 'pic_square', 'pic_big'], function(data) {
	                    for (i=0; i<data.length; i++) {
	                    	var user = new Object();
	                        var picture = data[i].pic_square;
	                        if (picture == "" || picture == null) {
	                            picture = "http://you-deserve-one.pcna.stg.tribalddb.com/images/silhouette_small.gif";
	                        }
	                        data[i].pic_square = picture;
	                        
	                        user.pic_square = picture;
	                        user.uid = data[i].uid;
	                        user.first_name = data[i].first_name;
	                        user.last_name = data[i].last_name;
	                        
	                        friend_data.push(user);
	                    }
	                    
	                    flash.getFbuserFriends(friend_data);
	                    
	                });
	            });
			});
		});
	},
	
	publishStream:function() {
		FB.ensureInit(function() {
	        FB.Facebook.get_sessionWaitable().waitUntilReady(function () {
	        	var attachment = 
	        	{'name':'starbucks',
	             'description':'I love starbucks',
	             'href':'http://www.starbucks.com',
	           	 'media':
	       		    [{'type':'image',
	           		  'src':'http://hicharles.files.wordpress.com/2007/12/date-frappuccino.jpg',
	       			  'href':'http://www.starbucks.com'}]
	       		};
	            FB.Connect.streamPublish("", attachment);
	        });
	    });
	},
	
	sendNotification:function(toId) {
		var toId = new Array();
		toId.push(toId);
		FB.ensureInit(function() {
	        FB.Facebook.get_sessionWaitable().waitUntilReady(function () {
	        	FB.Facebook.apiClient.notifications_send(toId, 'Test notification content: <a href="http://www.starbucks.com">Starbucks</a>', function(result) {
	        		document.getElementById('notification_result').innerHTML = "Notification sent to user_id: "+result;
	        	});
	        });
	    });
	}
};