
function sendAction(field, action, item)
{
	if (action != 'login') showMessage("working...", 0);

	var params = {};	
	params[gadgets.io.RequestParameters.CONTENT_TYPE] =  gadgets.io.ContentType.JSON;
	var url = root_url + "action/" + action + "?uid=" + window.fluffy.viewerId + "&item=" + item;

	gadgets.io.makeRequest(url, 
		function(obj){
			hideMessage();

			document.getElementById('credits').innerHTML = obj.data.credits;
			document.getElementById('points').innerHTML = obj.data.points;
			document.getElementById('happiness').innerHTML = obj.data.happiness;
            if (obj.data.message2 && obj.data.message2 != '') { 
                document.getElementById('skyMessage2').innerHTML = obj.data.message2; 
            }

			if (obj.data.image && obj.data.image != '') {
				document.getElementById('cloudImage').src = obj.data.image;
			}
			if (obj.data.image2) {
				setTimeout("document.getElementById('cloudImage').src = '" + obj.data.image2 + "'", 3000);
			}
			if (obj.data.message != '') {
				showMessage(obj.data.message, 5000);
			}
			if (obj.data.gifts != '') {
                displayGifts(obj.data.gifts);
			}
       	}
		, params);

}



function showMessage(message, time)
{
	if (!message || message == '') return;

	var m = document.getElementById('skyMessage');
	m.innerHTML = message;
	m.style.display = "block";

	if (time)
		setTimeout("hideMessage()", time);
}

function hideMessage()
{
	var m = document.getElementById('skyMessage');
	m.style.display = "none";
}


function loadProfile(owner)
{
	var params = {};
	params[opensocial.DataRequest.PeopleRequestFields.PROFILE_DETAILS] = [
		opensocial.Person.Field.THUMBNAIL_URL
	];

	var req = opensocial.newDataRequest();
	req.add(req.newFetchPersonRequest("VIEWER", params), "viewer_profile");
	req.send(loadProfileResponse);


//	var req = opensocial.newDataRequest();
//	var ids = [6221];
//	req.add(req.newFetchPeopleRequest(ids), 'people');
	req.send(loadProfileResponse);
//	document.getElementById('debug').innerHTML = "end loadProfileResponse";


//var idspec = opensocial.newIdSpec({ "userId" : "OWNER", "groupId" : "FRIENDS" });
//	var req = opensocial.newDataRequest();
	//req.add(req.newFetchPersonRequest("OWNER"), "get_owner");
//	req.add(req.newFetchPeopleRequest(idspec), "get_friends");
// req.send(response);

}


function loadProfileResponse(data)
{
//	document.getElementById('debug').innerHTML = "in loadProfileResponse";

	var viewer = data.get("viewer_profile").getData();
	//var aboutme = viewer.getField(opensocial.Person.Field.ABOUT_ME);
	//var status = viewer.getField(opensocial.Person.Field.STATUS);
	var img = viewer.getField(opensocial.Person.Field.THUMBNAIL_URL);
	var name = viewer.getDisplayName();

	document.getElementById('profileImage').src = img;
	document.getElementById('profileName').innerHTML = name;



//	var p = dataResponse.get('people').getData();
//	p.each(function(person) {  // this throws an error
//    alert(person.getDisplayName());
//  });

//	owner = data.get('viewer').getData();

//	ownerId = viewer.getField(opensocial.Person.Field.ID); 
}


function pageStartupSky()
{
	//document.getElementById('debug').innerHTML = "sky loaded";
	if (window.fluffy.loggedin){
		sendAction(null, "info", 0);
	}
	else {
		sendAction(null, "login", 0);
 	}

	loadProfile(123);
    window.fluffy.loggedin = true;
}

function loadGifts()
{
	var params = {};	params[gadgets.io.RequestParameters.CONTENT_TYPE] =  gadgets.io.ContentType.JSON;
	var url = root_url + "action/getgifts?uid=" + window.fluffy.viewerId;

	gadgets.io.makeRequest(url, 
		function(obj){
            var gifts = obj.data.gifts;
            
            document.getElementById('debug').innerHTML = gifts.length;
       	}
		, params);

}


function displayGifts(gifts)
{
    for (var i=0; i < gifts.length; i++) {
        var gift = gifts[i];

        // select random x,y
        var x = Math.floor(120*Math.random())
        var y = Math.floor(200*Math.random())

        // Insert image
        var img = document.createElement("img");
        img.style.position = "absolute";
        img.style.left = x;
        img.style.top = y;
        img.src = IMAGES_ROOT_URL + gift;
        document.getElementById('sky').appendChild(img);
    }

}
