
/* --->> PlayList <<--- */
initPlayList = function() {
	var ContainerObj = $('VideoPlayList');
	var PlayListUrl = 'index.cfm?fuseaction=video.allVideoPlayList';
	ShowPlayListLoading();
	FetchPlayList(ContainerObj,PlayListUrl);
}

InitAllVideosTab = function() {
	var ContainerObj = $('VideoPlayList');
	var PlayListUrl = 'index.cfm?fuseaction=video.allVideoPlayList';
	activateTab('allvideos');
	ShowPlayListLoading();
	FetchPlayList(ContainerObj,PlayListUrl);
}

InitCategoryTab = function() {
	var ContainerObj = $('VideoPlayList');
	var PlayListUrl = 'index.cfm?fuseaction=video.initCategoryPlayList';
	activateTab('Category');
	ShowPlayListLoading();
	FetchPlayList(ContainerObj,PlayListUrl);
}

activateTab = function(activeTab) {
	var activeTabObj = activeTab;
	if ( activeTab == 'Category' ) {
		$('VideoCategoryTab').removeClassName('inactive');
		$('VideoCategoryTab').addClassName('active');
		$('AllVideoTab').removeClassName('active');
		$('AllVideoTab').addClassName('inactive');	
	} else if ( activeTab == 'allvideos' ) { 
		$('AllVideoTab').removeClassName('inactive');
		$('AllVideoTab').addClassName('active');
		$('VideoCategoryTab').removeClassName('active');
		$('VideoCategoryTab').addClassName('inactive');
	}
}

ShowPlayListLoading = function() {
	var ContainerObj = $('VideoPlayList');
	var LoadingString = '<div id="PlayListLoading"><div class="LoadingImage"><img src="images/mediacenter/large_loader_playlist.gif"></div><div class="LoadingMessage">loading playlist....</div></div>';
		ContainerObj.innerHTML = LoadingString;
}

ShowCategoryPlayListLoading = function() {
	var ContainerObj = $('CategoryVideoContainer');
	var LoadingString = '<div id="PlayListLoading"><div class="LoadingImage"><img src="images/mediacenter/large_loader_playlist.gif"></div><div class="LoadingMessage">loading playlist....</div></div>';
		ContainerObj.innerHTML = LoadingString;
}

FetchPlayList = function(obj,fetchUrl) {
	var _ajaxObject;
	var _containerObj = obj;
	var _ajaxUrl = fetchUrl;
	var pars = 'containerObj=' + obj;
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', parameters: pars, onSuccess: _FetchPlayListSuccess, onFailure: _FetchPlayListFailed });
}

_FetchPlayListSuccess = function(originalRequest) {
	var requestObj = originalRequest;
	var ContainerObj = $('VideoPlayList');
		ContainerObj.innerHTML = originalRequest.responseText;
		originalRequest.responseText.evalScripts();
}

_FetchPlayListFailed = function(originalRequest) { alert('FetchPlayListFailed'); }

fetchCategoryPlayList = function(fetchUrl) { 
	var _ajaxObject;
	var _ajaxUrl = fetchUrl;
		ShowCategoryPlayListLoading();
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', onSuccess: _fetchCategoryPlayListSuccess, onFailure: _fetchCategoryPlayListFailed });

}

_fetchCategoryPlayListSuccess = function(originalRequest) {
	var requestObj = originalRequest;
	var ContainerObj = $('CategoryVideoContainer');
		ContainerObj.innerHTML = originalRequest.responseText;
		originalRequest.responseText.evalScripts();
}

_fetchCategoryPlayListFailed = function(originalRequest) { alert('fetchCategoryPlayListFailed'); }

_resizeCategoryList = function() {
	var ContainerObj = $('VideoDetailsContainer');
	var AjaxedContainerObj = $('CategoryListObject');
	var ContainerHeight = AjaxedContainerObj.getHeight();
	
	if ( ContainerHeight > 225 ) {
		new Effect.Morph('CategoryListContainer', { style: { height: ContainerHeight + 'px' }, duration: 0.1 });
		new Effect.Morph('CategoryVideoContainer', { style: { height: ContainerHeight + 'px' }, duration: 0.1 });
		new Effect.Morph('CategoryPlaylistWrapper', { style: { height: ContainerHeight + 'px' }, duration: 0.1 });
		new Effect.Morph('PlayListContainer', { style: { height: ContainerHeight + 'px' }, duration: 0.4 });		
	}
}



/* --->> Featured Video <<--- */
initFeaturedVideo = function() {
	var FeaturedVideoUrl = 'index.cfm?fuseaction=video.featuredVideos';	
	ShowFeaturedVideoLoading();
	FetchFeaturedVideo(FeaturedVideoUrl);
}

ShowFeaturedVideoLoading = function() {
	var ContainerObj = $('FeaturedVideoDetailsContainer');
	var LoadingString = '<div id="FeaturedVideoLoading"><div class="LoadingImage"><img src="images/mediacenter/small_loader_featured.gif"></div><div class="LoadingMessage">loading videos....</div></div>';
		ContainerObj.innerHTML = LoadingString;
}

FetchFeaturedVideo = function(fetchUrl) {
	var _ajaxObject;
	var _ajaxUrl = fetchUrl;
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', onSuccess: _FetchFeaturedVideoSuccess, onFailure: _FetchFeaturedVideoFailed });
}

_FetchFeaturedVideoSuccess = function(originalRequest) {
	var requestObj = originalRequest;
	var ContainerObj = $('FeaturedVideoDetailsContainer');
		ContainerObj.innerHTML = originalRequest.responseText;
		originalRequest.responseText.evalScripts();
		_resizeFeaturedVideo();
}

_FetchFeaturedVideoFailed = function(originalRequest) { alert('FetchVideoPlayerFailed'); }

_resizeFeaturedVideo = function() {
	var ContainerObj = $('FeaturedVideoDetailsContainer');
	var AjaxedContainerObj = $('FeaturedVideoObject');
	var ContainerHeight = AjaxedContainerObj.getHeight();
	new Effect.Morph('FeaturedVideoDetailsContainer', {
  		style: {
    		height: ContainerHeight + 'px'
  		}, 
  		duration: 0.4
	});
}

/* --->> Video Player Functions <<--- */
initVideoPlayer = function() {
	var initVideoPlayerUrl = 'index.cfm?fuseaction=video.initVideoPlayer';	
	ShowVideoPlayerLoading();
	ShowVideoDetailsLoading();
	FetchVideoPlayerInit(initVideoPlayerUrl);
}

initPlayVideo = function(fetchPlayerUrl,fetchDetailsUrl) {
	ShowVideoPlayerLoading();
	ShowVideoDetailsLoading();
	FetchVideoPlayer(fetchPlayerUrl);
	FetchVideoDetails(fetchDetailsUrl);
}

ShowVideoPlayerLoading = function() {
	var ContainerObj = $('SlideShowProContainer');
	var LoadingString = '<div id="VideoPlayerLoading"><div class="LoadingImage"><img src="images/mediacenter/large_loader_videoplayer.gif"></div><div class="LoadingMessage">loading player....</div></div>';
		ContainerObj.innerHTML = LoadingString;	
}

ShowVideoDetailsLoading = function() {
	var ContainerObj = $('VideoDetailsContainer');
	var LoadingString = '<div id="VideoDetailsLoading"><div class="LoadingImage"><img src="images/mediacenter/small_loader_details.gif"></div><div class="LoadingMessage">loading details....</div></div>';
		ContainerObj.innerHTML = LoadingString;	
}

/* --->> Video Player Container Functions <<--- */
FetchVideoPlayerInit = function(fetchPlayerUrl) {
	var _ajaxObject;
	var _ajaxUrl = fetchPlayerUrl;
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', onSuccess: _FetchVideoPlayerInitSuccess, onFailure: _FetchVideoPlayerInitFailed });
}

_FetchVideoPlayerInitSuccess = function(originalRequest) {
	var requestObj = originalRequest;
		originalRequest.responseText.evalScripts();
}

_FetchVideoPlayerInitFailed = function(originalRequest) { alert('FetchVideoPlayerFailed'); }


FetchVideoPlayer = function(fetchPlayerUrl) {
	var _ajaxObject;
	var _ajaxUrl = fetchPlayerUrl;
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', onSuccess: _FetchVideoPlayerSuccess, onFailure: _FetchVideoPlayerFailed });
}

_FetchVideoPlayerSuccess = function(originalRequest) {
	var requestObj = originalRequest;
	var ContainerObj = $('SlideShowProContainer');
		ContainerObj.innerHTML = originalRequest.responseText;
		originalRequest.responseText.evalScripts();
}

_FetchVideoPlayerFailed = function(originalRequest) { alert('FetchVideoPlayerFailed'); }

/* --->> Video Details Container Functions <<--- */
FetchVideoDetails = function(fetchDetailsUrl) {
	var _ajaxObject;
	var _ajaxUrl = fetchDetailsUrl;
		_ajaxObject = new Ajax.Request(_ajaxUrl,{method: 'get', onSuccess: _FetchVideoDetailsSuccess, onFailure: _FetchVideoDetailsFailed });
}

_FetchVideoDetailsSuccess = function(originalRequest) {
	var requestObj = originalRequest;
	var ContainerObj = $('VideoDetailsContainer');
		ContainerObj.innerHTML = originalRequest.responseText;
		originalRequest.responseText.evalScripts();
		_resizeVideoDetails();
		
}

_FetchVideoDetailsFailed = function(originalRequest) { alert('FetchVideoDetailsFailed'); }

_resizeVideoDetails = function() {
	var ContainerObj = $('VideoDetailsContainer');
	var AjaxedContainerObj = $('VideoDetailsObject');
	var ContainerHeight = AjaxedContainerObj.getHeight();
	new Effect.Morph('VideoDetailsContainer', {
  		style: {
    		height: ContainerHeight + 'px'
  		}, 
  		duration: 0.4
	});
}









































/* --->> OnLoad Events <<--- */
Event.observe(window, 'load', initVideoPlayer );
Event.observe(window, 'load', initFeaturedVideo );
Event.observe(window, 'load', initPlayList );

