
	/*
	JS
	--------------------------------------------------------------------------------------------
	@site			sho.com/locknload
	@file			episodes.js
	@author			ncavanagh, jgallardo
	@modified		09.15.09	
	@desc			Sets up feffects for locknload episodes page
	@depend			prototype, scriptaculous
	@note			
	
	/* =:EpisodesUIHelp
	--------------------------------------------------------------------------------------------*/

var EpisodesUIHelp = function()
	{	
		// airings
		/*
		var _airingsDL;
		var _airingsURL = '/site/schedules/product-airings-json.do';
		var _airingsData;
		var _showMore;
		var _showLess;
		var _airingsMode = 'more';
		
		var MORE_AIRINGS_COUNT = 5;
		
		// photos
		var _photosURL = '/site/schedules/product-images-json.do';
		
		var _photoData;
		var _photos = [];
		var _base = 'http://www.sho.com';
		var _gallery;
		var MAX_WIDTH = 596; // 600 actual
		var MAX_HEIGHT = 396;// 400 actual*/
		
		// rate this
		var _ratethisURL = '/site/schedules/rate.do';
		var _params = window.location.search.toString();
		
		/* =:Startup
		  ---------------------------------------------------------------------------------------- */  	  
		function init()
		{	
			/*initAirings();*/
			setRatingHandlers();
			toggleMenu();
			//loadPhotos();
		}	 


		/* =:Ratings
		  ----------------------------------------------------------------------------------------*/
		function setRatingHandlers()
		{
			$('product-rating-stars').select('a').each( function(a){
				Event.observe(a, 'click', function(e){ Event.stop(e);
					submitRating( a.innerHTML );
				});
			});
		}
		
		function submitRating(r)
		{	
			$('product-rating').addClassName('loading');
			new Ajax.Request ( _ratethisURL+_params+'&rating='+r, {
				method:'get',
				onComplete: function( transport )
				{  
					var javabomb = transport.responseText.indexOf('java.lang.NullPointerException') == -1 ? false : true;
					if( transport.responseText !== undefined && transport.responseText !== "" && !javabomb )
					{	
						var result = transport.responseText.evalJSON().result;
						showResponse( result, r ); 
					}
					else
					{
						Dialogs.out( 'Sorry, A Java error has occured.<br />' + transport.responseText );
					}
					
					$('product-rating').removeClassName('loading');
				},
				onFailure: function()
				{
					Dialogs.out( 'A connection failure has occurred.' );
				}
			}); 
		}
		
		function showResponse( result, rating )
		{   
			switch( result ){
				case "ok":
					Dialogs.out( 'Your rating has been saved.' );
					break;
				
				case "notlogged":
				case "fail":  
					Dialogs.out( 'You must be logged in to rate a title.', [
						{ label:'cancel', onclick:'close' },
						{ label:'log in', onclick:SHO.Membership.login }
					]);
					break;
				
				case "duplicate":
					Dialogs.out( 'You cannot rate a title more than once.' );
					break;
					
			}
			
			var ratedwidth = (( rating / 5 ) * 100 ) +'%'
			$('product-rating').select('.current-rating')[0].setStyle({ width: ratedwidth });
		}
	}