/** Video manipulation functions
 * 
 * @author Eric S, Eli
 * @requires swfobject.js
 */

// for video requests
var videoXhr;
var videoPlayerId = 'playerDiv';
var flashObj = null;

/** Loads video in video player box */
function loadVideo(url,memberId,videoId,width,height)
{
	if (!width || !height)
	{
		width = 450;
		height = 350;
	}
	// load the new flash object
	// use swfobject to create a new video
	if (flashObj == null)
	{
		flashObj = new SWFObject(url, 'videoFlashObj', width, height, "9", "#FFFFFF");
		flashObj.addParam('wmode','transparent');
		flashObj.write(videoPlayerId);
	}
	else
	{
		flashObj.setAttribute('swf',url);
		flashObj.write(videoPlayerId);
	}
	// Increase the view count
	if (memberId == false) return;
	var strUrl = '/people/listener_media.php?act=viewvid&member_id=' + memberId + '&file_id=' + videoId;
	if (typeof (videoXhr) == 'undefined' || videoXhr == null) videoXhr = new XHR();
	if (videoXhr.InProgress()) return;
	videoXhr.Get(strUrl,NullVoid);
}

function editVideoTitle(videoId)
{
	MessageBox.Prompt("Enter new title",editVideoTitleSend,videoId,128);
}
function editVideoTitleSend(title,videoId)
{
	if (typeof (videoXhr) == 'undefined' || videoXhr == null) videoXhr = new XHR();
	if (videoXhr.InProgress())
	{
		MessageBox.Alert("Request already in progress. Please try again in a few seconds.");
		return;
	}
	var postInfo = 'act=updvidtitle&vid_id='+videoId+'&title='+title;
	videoXhr.Post('listener.php',postInfo,editVideoTitleResult,videoId);
}
function editVideoTitleResult(responseText,videoId)
{
	var jsonObj = parseJson(responseText);
	if (jsonObj.error)
	{
		MessageBox.Alert(jsonObj.error);
		return;
	}
	if (typeof (jsonObj.newTitle) != 'undefined')
	{
		document.getElementById('video_title_'+videoId).innerHTML = jsonObj.newTitle;
	}
}
function deleteVideo(videoId)
{
	MessageBox.Confirm("Remove this video?",deleteVideoConfirm,videoId)
}
function deleteVideoConfirm(videoId)
{
	doPostBack('act=delvid&id='+videoId);
}