<!--//
var base_url 			=	"http://www.techsww.com/social_networking_apps/youtube_plus/friendster/";
var page_load_indicator	=	"<div style=\"float:left;margin-top:5px;\">" +	
							"<img src=\"http://www.techsww.com/testing/images/ajax-loader.gif\" />" + 
							"</div>";
var 	viewer_id 		  	=	null,
      	g_is_owner			=	null;


function init()
{
	// get application ID
	application_id	=	gadgets.util.getUrlParameters()["gadgetId"];
			
	// get User's personal information
	var req			=	opensocial.newDataRequest();
	var params		=	{};
	params[opensocial.DataRequest.PROFILE_DETAILS]		=	opensocial.Person.Field.THUMBNAIL_URL;
	params[opensocial.DataRequest.PROFILE_DETAILS]		=	opensocial.Person.Field.PROFILE_URL;
	req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.VIEWER), 'viewer');
	req.add(req.newFetchPersonRequest(opensocial.DataRequest.PersonId.OWNER), 'owner');						
	req.send(init_response);
}
function init_response(dataResponse)
{
	var viewer			=	dataResponse.get('viewer');
	var owner			=	dataResponse.get('owner');	
	if(!owner.hadError())
	{
		viewer_id			=	owner.getData().getId();
	}	
	else
	{
		document.getElementById("main_profile").innerHTML	=	"Can't find profile owner's ID. Please try again later.";
	}
	
	if(viewer.hadError())
	{
		g_is_owner			=	false;
	}
	else
	{
		g_is_owner			=	viewer.getData().isOwner();	
	}
	renderProfilePage();
}




function renderProfilePage()
{
	var params				=	{};
	var data				=	
	{
		owner_id:			viewer_id,
		page_name:	     	"render_profile"
	};
	var url												=	base_url + "code.php";				
	postdata 								     	 	=	gadgets.io.encodeValues(data);
	params[gadgets.io.RequestParameters.METHOD]			=	gadgets.io.MethodType.POST;
	params[gadgets.io.RequestParameters.POST_DATA]		=	postdata;
	makeCachedRequest(	url,	renderProfilePageResponse,	params,	1);
}
var g_player_id = null; 
function renderProfilePageResponse(response)
{
	var	msg	=	trim(response.text);
         if(msg == "false")
         {
         	document.getElementById("main_profile").innerHTML	=	"Profile owner hasn't set a profile video yet.";
                return;
        }
        var params	= { allowScriptAccess: "always" };
    	var atts 	=     { id: "myytplayer" };	
	swfobject.embedSWF(	"http://www.youtube.com/v/" + msg + "&enablejsapi=1&autoplay=0&playerapiid=ytplayer", 
      					"main_profile", 
					    400,		300, 
					    "8",		
						null,		null, 
					   params,		atts);
	g_player_id		=	document.getElementById('myytplayer');	 
	renderProfileFavorites();	
	gadgets.window.adjustHeight();	
}



function renderProfileFavorites()
{
	var params			     =	{};
	var is_owner_val		=	g_is_owner	== false	?	"false"	:	"true";
	var data				=	
	{
		page_name:	    "show_favorite_videos_in_profile",
		is_owner:		is_owner_val		
	};
	var url												=	base_url + "code_secure.php";				
	postdata 										 	=	gadgets.io.encodeValues(data);
	params[gadgets.io.RequestParameters.AUTHORIZATION] 	=	gadgets.io.AuthorizationType.SIGNED;
	params[gadgets.io.RequestParameters.METHOD]			=	gadgets.io.MethodType.POST;
	params[gadgets.io.RequestParameters.POST_DATA]	    =	postdata;
	makeCachedRequest(	url,	renderProfileFavoritesResponse,	params,	1);	
}
function renderProfileFavoritesResponse(response)
{ 
	var	msg	=	trim(response.text);
	if(msg == "false")
	{
		document.getElementById("favs_profile").innerHTML	=	"";
		return;
	}	
	document.getElementById("favs_profile").innerHTML		=	msg;
	gadgets.window.adjustHeight();
}





function playVideo(video_id)
{
	if(g_player_id != null)
	{
		stopVideo();
		clearVideo();
		document.getElementById("main_profile_cover").innerHTML	=	"";
		document.getElementById("main_profile_cover").innerHTML	=	"<div id=\"main_profile\"></div>\n";
		g_player_id	=	null;
	}
    var params	=		{ allowScriptAccess: "always" };
    var atts 	=		{ id: "myytplayer" };	
	swfobject.embedSWF(	"http://www.youtube.com/v/" + video_id + "&enablejsapi=1&autoplay=0&playerapiid=ytplayer", 
      					"main_profile", 
					    400, 
					    300, 
					    "8", 
					   null, null, 
					   params, 
					   atts);
	g_player_id		=	document.getElementById('myytplayer');						   
	gadgets.window.adjustHeight();	
}

function stopVideo()
{
	if(g_player_id	!=	null)	
	{
		g_player_id.stopVideo();
	}
}
function clearVideo()
{
	if(g_player_id	!=	null)	
	{
		g_player_id.clearVideo();
		g_player_id	=	null;
	}
}		



/**************************  Library **********************/		

		function makeCachedRequest(url, callback, params, refreshInterval) 
		{
			var ts = new Date().getTime();
			var sep = "?";
			if (refreshInterval && refreshInterval > 0) 
			{
				ts = Math.floor(ts / (refreshInterval * 1000));
			}
			if (url.indexOf("?") > -1) 
			{
    			sep = "&";
			}
			url = [ url, sep, "nocache=", ts ].join("");
			gadgets.io.makeRequest(url, callback, params);
		};		

		// Pass the string as argument (value) to the function below.
		function RightTrim( value ) 
		{ 
			var re = /((\s*\S+)*)\s*/; 
			return value.replace(re, "$1");
		}

		// Pass the string as argument (value) to the function below.
		function LeftTrim( value ) 
		{	
			var re = /\s*((\S+\s*)*)/;
			return value.replace(re, "$1");
		}

		// Removes leading and ending whitespaces 
		// The string to be processed as an argument (value) to the function below.
		function trim( value ) 
		{ 
			return LeftTrim(RightTrim(value));
		}



//-->