var vmu = new Object();

vmu.hostname = 'http://'+location.host;

vmu.port = location.port;

vmu.setup = function()
    {        
	
		if($('ITS_older'))
			Event.observe('ITS_older','click',vmu.ITS.older);
			
		if($('ITS_newer'))
			Event.observe('ITS_newer','click',vmu.ITS.newer);

    }
	
vmu.search = function(){
	
    if($j('#keyword').val() == "Search StudioV") {
      alert("Please enter a search term.");
      return;
    }
     
    var search = encodeURIComponent($j('#keyword').val());
    
	self.location = "/search/results/value/"+search;
}
	
vmu.deleteComment = function(media_id, id,author)
	{
			comfirmDelete = confirm('Are you sure you want to delete this comment?  It cannot be undone.');
			
			if(comfirmDelete)
				{
					new Ajax.Request(
							'/ajax/deletecomment/id/'+id,
							{
								onComplete: function()
									{
										vmu.scrollComments.page = 1;
										vmu.scrollComments.setUpArrowOff();           
										new Ajax.Updater
											(
												'media_comments',
												'/subcontent/updatecomments',
												{
													method: 'post',
													postBody: 'media_id='+media_id,
													onComplete: function() {
														if(parseInt($('commentsPageLimit').innerHTML) > 1) {
														  vmu.scrollComments.setDownArrowOn();
														  $('comments_header_downarrow_anch').href = 'javascript:vmu.scrollComments.older(' + media_id + ')';
														}
														else {
														  vmu.scrollComments.setDownArrowOff();
														  $('comments_header_downarrow_anch').href = 'javascript:void(0)';
														}
													  }
												}
											);
									}
							}
						);
				}
	}	
	
vmu.deleteTag = function(media_id, id, author)
	{
			comfirmDelete = confirm('Are you sure you want to delete this tag?  It cannot be undone!');
			
			if(comfirmDelete)
				{
					new Ajax.Request(
							'/ajax/deletetag/id/'+id,
							{
								onComplete: function()
									{
                    vmu.scrollTags.page = 1;
                    vmu.scrollTags.setUpArrowOff();
										new Ajax.Updater
											(
												'media_tags',
												'/subcontent/updatetags',
												{
													method: 'post',
													postBody: 'media_id='+media_id,
                          onComplete: function() {
                            if(parseInt($('tagsPageLimit').innerHTML) > 1) {
                              vmu.scrollTags.setDownArrowOn();
                              $('tags_header_downarrow_anch').href = 'javascript:vmu.scrollTags.older(' + media_id + ')';
                            }
                            else {
                              vmu.scrollTags.setDownArrowOff();
                              $('tags_header_downarrow_anch').href = 'javascript:void(0)';
                            }
                          }
												}
											);
									}
							}
						);
				} 
	}
    
vmu.loadPopup = function(url, trigger,media_id)
    {
		if($j('#chart_select')){
			$j('#chart_select').hide();
		}
		vmu.media_id = media_id;
        new Ajax.Request(url,
          {
            method:'post',
			postBody: 'media_id='+media_id,
            onSuccess: trigger,
			onComplete: function()
				{
					leftPos = Position.positionedOffset($('doc'))[0];
					
					if (window.pageYOffset)
				        ScrollTop = window.pageYOffset;

				    else
				        ScrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;

					var height = pageHeight();
					
					$('fade').setStyle({height: height +'px'});
					$('popup').setStyle({left: (leftPos+138)+'px'});
					$('popup').setStyle({top: (ScrollTop+50)+'px'});
										
				}
          });   
              
                        
    }
  
function pageHeight() {
    return self.innerHeight || (document.documentElement.clientHeight || document.body.clientHeight);
}
	

vmu.login = function(callback)
    {
        new Ajax.Request('/profile/signin?noredirect=1',
          {
            method:'post',
            postBody: Form.serialize($('signin_form_popup')),
            onSuccess: callback 
          }); 
	
	
	   // jQuery.ajax({type:'POST', url: '/profile/signin?noredirect=1', postBody: Form.serialize(jQuery('#signin_form_popup')), success: callback});
    }
	
vmu.deliver =
	 {
		start: function(media_id)
			{
			vmu.media_id = media_id;
	        new Ajax.Request('/studio/purchase',
	          {
	            method:'post',
	            postBody: 'media_id='+media_id,
	            onSuccess: function(returnObj, media_id)
					{
						vmu.deliver.end(returnObj, media_id);
					}
	          });   
			},
		end: function(returnObj, media_id)
			{
				if(returnObj.responseText ==1)
					{
						$('deliver_message').innerHTML = '<br />Alright! A message has just been sent to your phone! Look for a VMU pop up message on your phone and follow the link to download your content.';
					}
				else if (returnObj.responseText ==2)
					{
						$('deliver_message').innerHTML = '<br />Your account is low on funds.  You should top it up.<br /> <br /><a href="https://www.virginmobileusa.com/myvirginmobile/topup.do" target="_blank"><img src="/images/topup_button.gif" /></a> <a href="#" onclick="vmu.deliver.start('+vmu.media_id+');return false"><img src="/images/retry_button.gif" /></a>';
					}
				else
					{
						$('deliver_message').innerHTML = '<br />There was a problem with the transaction.  Please contact your Virgin Mobile USA rep.';
					}
			}
}
    
vmu.reportAbuse = 
{
	submit: function(form)
		{
	        new Ajax.Request('/ajax/reportcontent',
	          {
	            method:'post',
	            postBody: Form.serialize(form),
	            onSuccess: function(responseObj)
					{
						form.innerHTML = responseObj.responseText;
					}
	          });  
		  
			return false;
		}
}
	
vmu.handleLogin = function(payload, trigger)
{

    //$('popup').innerHTML = payload.responseText;
    $j('#popup').html(payload.responseText);

    //Event.observe('signin_close','click',vmu.loginClose);
    $j('#signin_close').bind('click', vmu.loginClose);

    var triggerFunc = trigger;
    
    Event.observe(  $j('#signin_form_popup'),
                    'submit',
                    function(event)
                        {
                            vmu.login
                                (
                                    function(payload)
                                        {
                                        		//all is ok
                                            if(payload.responseText == 1)
                                                {
                                                    triggerFunc();
                                                }
																						//login failure
                                            else if(payload.responseText == 100)
                                                {
                                                    alert('Please enter your phone number and Account PIN (vKey) to sign in');
                                                }
                                            //login blocked
                                            else if(payload.responseText == 104)
                                                {
                                                  Element.hide('popup');
                                                  
                                                  Element.hide('fade');
                                                  
                                                  document.location.reload();
                                                
                                                  return false;
                                                }
                                            //not sure what this does
                                             else if(payload.responseText == 200)
                                                {
                                                    alert('Your VMU Account is not current. Please check your account at http://www.virginmobileusa.com and top up if required.');
                                                }
                                              else if(payload.responseText == 201)
                                                {
                                                    alert('We are temporarily unable to authenticate your PIN. Please try again later.');
                                                }
                                          else
                                                {
                                                    $j('#popup').html(payload.responseText);
                                        	        //jQuery('#popup').html(payload.responseText);
                                                }
                                        }
                                ) 
                            
                            Event.stop(event);
                        }
                );

}

vmu.loginClose = function()
{	
	if($j('#chart_select')){
		$j('#chart_select').show();
	}	
    Element.hide('popup');    
    Element.hide('fade');
    
	return false;
}

vmu.help = {    
    setup: function(payload)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.help.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    
                    vmu.help.closeObserver = vmu.help.hide.bindAsEventListener(vmu.help);
                    
                    Event.observe('help_close','click',vmu.help.closeObserver);
                }
            
            Element.show('fade');
            
            Element.show('popup');
        },
    show: function(event)
        {
            vmu.loadPopup(
                '/subcontent/help',
                function(payload)
                    {
                        vmu.help.setup(payload);
                    }
                );          
                 
            Event.stop(event); 
        },
    hide: function(event)
        {
            Event.stopObserving('help_close','click',vmu.help.closeObserver);
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            Event.stop(event);
        }
}


vmu.ITS = {
	page:1,
	older: function(event)
		{
			vmu.ITS.page++;
			vmu.ITS.reload();
			
			Event.stop(event);
		},
	newer: function(event)
		{
			if(vmu.ITS.page != 1)
				{
					vmu.ITS.page--;
					vmu.ITS.reload();
				}		
			
			Event.stop(event);
		},
	reload: function()
		{
			if(vmu.ITS.page == 1)
				Element.hide('ITS_newer');
			else
				Element.show('ITS_newer');
				
			new Ajax.Updater
				(
					'ITS_Everyone',
					'/subcontent/itseveryone?time=' + new  Date().getTime(),
					{
						method: 'post',
						postBody: 'page='+vmu.ITS.page
					}
				);
				
			new Ajax.Updater
				(
					'ITS_You',
					'/subcontent/itsyou?time=' + new  Date().getTime(),
					{
						method: 'post',
						postBody: 'page='+vmu.ITS.page
					}
				);
		}
}

vmu.changeSharing = 
{
	process: function(media_id)
		{
			Element.show('change_sharing_loading');
			Element.hide('change_sharing');
			
			if($('shareStatus_public').checked)
				{
					new Ajax.Request
						(
							'/ajax/makepublic',
							{
								method: 'post',
								postBody: 'media_id='+media_id,
								onComplete: function(responseObj)
									{
										$('media_status_message').innerHTML = responseObj.responseText;
									}
							}
						);
				}
			else
				{
					new Ajax.Request
						(
							'/ajax/makeprivate',
							{
								method: 'post',
								postBody: 'media_id='+media_id,
								onComplete: function(responseObj)
									{
										$('media_status_message').innerHTML = responseObj.responseText;
									}
							}
						);
				}
			/*new Ajax.Request
				(
					'/ajax/makePublic',
					{
						method: 'post',
						postBody: 'media_id='+media_id,
						onComplete: function()
							{
								location.reload();
							}
					}
				); */
		}
}

vmu.makePublic = 
{
	submit: function(media_id)
		{	
			new Ajax.Request
				(
					'/ajax/makepublic',
					{
						method: 'post',
						postBody: 'media_id='+media_id,
						onComplete: function()
							{
								location.reload();
							}
					}
				);
		}
}

vmu.shareMedia = {    
    setup: function(payload)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.shareMedia.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.shareMedia.closeObserver = vmu.shareMedia.hide.bindAsEventListener(vmu.shareMedia);
                    
                    Event.observe('shareit_close','click',vmu.shareMedia.closeObserver);
                }
                    
            Element.show('fade');
            
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            
            Element.show('popup');
        },
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/share',
                function(payload)
                    {
                        vmu.shareMedia.setup(payload);
                    },
				media_id
                );
        },
    hide: function(event)
        {
            Event.stopObserving('shareit_close','click',vmu.shareMedia.closeObserver);
            
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
			
            location.reload();
			
            //Element.hide('popup');
            
            //Element.hide('fade');
            
            Event.stop(event);
        }
}

vmu.appealMedia = {    
    setup: function(payload)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.appealMedia.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.appealMedia.closeObserver = vmu.appealMedia.hide.bindAsEventListener(vmu.appealMedia);
                    
                    Event.observe('appealit_close','click',vmu.appealMedia.closeObserver);
                }
                    
            Element.show('fade');
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            Element.show('popup');
        },
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/appeal',
                function(payload)
                    {
                        vmu.appealMedia.setup(payload);
                    },
				media_id
                );
        },
    hide: function(event)
        {
            Event.stopObserving('appealit_close','click',vmu.appealMedia.closeObserver);
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
			location.reload();
			
            //Element.hide('popup');
            
            //Element.hide('fade');
            
            Event.stop(event);
        }
}

vmu.favoriteMedia = {    
    setup: function(payload)
        {		
	
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.favoriteMedia.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.favoriteMedia.closeObserver = vmu.favoriteMedia.hide.bindAsEventListener(vmu.favoriteMedia);
                    
                    Event.observe('favorite_close','click',vmu.favoriteMedia.closeObserver);
                }
            
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            
            Element.show('fade');
            
            Element.show('popup');
        },
	mouseover: function(media_id)
		{
        	//jQuery('#mini_action_text_'+media_id).html('<img src="/images/likeit_text.gif" />');
        	$j('#favimg_'+media_id).attr('src', '/images/mini_favorite_black.gif');
		},
	mouseout: function(media_id)
		{
			//jQuery('#mini_action_text_'+media_id).html('');		
			$j('#favimg_'+media_id).attr('src', '/images/mini_favorite.gif');
		},
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/favorite',
                function(payload)
                    {
                        vmu.favoriteMedia.setup(payload);
                    },
				media_id
                );
        },
    hide: function(event)
        {
            Event.stopObserving('favorite_close','click',vmu.favoriteMedia.closeObserver);
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
            Event.stop(event);
        },
	submit: function(object, media_id)
		{
			object.src = '/images/ajax-loader.gif';
			
			new Ajax.Request
				(
					'/ajax/addfavorite',
					{
						method: 'post',
						postBody: 'media_id='+media_id,
						onComplete: function(returnObj)
							{
								if(returnObj.responseText.substring(0,4) == '0100')
									{
										Element.hide(object);
										$('popup_message').innerHTML = '<br /> Favorite Successfully Added!!';
									}
								else
									{
										Element.hide(object);
										$('popup_message').innerHTML = '<br />Hmm we seem to have had a problem.  Please try again later.';
									}
							}
					}
				);
		}
}

vmu.loadPreview = function(media_id,media_type) {
	if(media_type == '1') {
		swfObject = new SWFObject('/flash/imageLoader.swf', 'mixer', '80', '88', '8.0.0', '');
		swfObject.addVariable('imagePath','http://'+location.host+'/wallpapers/preview/mediaId/'+media_id);
		swfObject.addVariable('exitURL','http://'+location.host+'/studio/preview/wallpaper/'+media_id);
		swfObject.addParam('quality','high');
		swfObject.write('media_preview');
	} else if (media_type == '2') {
		swfObject = new SWFObject('/flash/large_preview.swf', 'mixer', '80', '88', '8.0.0', '');
		swfObject.addVariable('soundurl','http://'+location.host+'/ringtones/preview/mediaId/'+media_id);
		swfObject.addVariable('exitURL','http://'+location.host+'/studio/preview/wallpaper/'+media_id);
		swfObject.addParam('quality','high');
		swfObject.write('media_preview');
	} else if (media_type=='3') {
		elementId='media_preview'
		var n = (typeof elementId == 'string') ? document.getElementById(elementId) : elementId;
		n.innerHTML='<a href="/studio/preview/screensaver/'+media_id+'"><img height="88" width="80" src="/screensavers/preview/mediaId/'+media_id+'" border="0" alt="" /></a>';
	}	
}

vmu.sendMedia = {    
    setup: function(payload)
        {     
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
            {
                vmu.handleLogin(payload, function(){vmu.sendMedia.show();});                  
            }
            else
            {
            	            	
                //$('popup').innerHTML = payload.responseText;
        	    $j('#popup').html(payload.responseText);	            	
        	                
		        vmu.loadPreview($j('#media_id').html(),$j('#media_type').html());
              	        
                vmu.sendMedia.closeObserver = vmu.sendMedia.hide.bindAsEventListener(vmu.sendMedia);
                
                //Event.observe('sendit_close','click',vmu.sendMedia.closeObserver);
                $j('#sendit_close').click(vmu.sendMedia.closeObserver);
                
            }
            //Element.show('fade');
            $j('#fade').show();
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            //Element.show('popup');
            $j('#popup').show();
        },
	mouseover: function(media_id)
		{
		    //jQuery('#mini_action_text_'+media_id).html('<img src="/images/getit_text.gif" />');
        	$j('#sendimg_'+media_id).attr('src', '/images/mini_send_black.gif');
		},
	mouseout: function(media_id)
		{
			//jQuery('#mini_action_text_'+media_id).html('');		
			$j('#sendimg_'+media_id).attr('src', '/images/mini_send.gif');
		},
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
							
            vmu.loadPopup(
                '/subcontent/send',
                function(payload)
                    {
                        vmu.sendMedia.setup(payload);
                    },
				media_id
                );
        },
    hide: function(event)
        {
            Event.stopObserving('sendit_close','click',vmu.sendMedia.closeObserver);
            
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            Event.stop(event);
        }
}

vmu.deleteMedia = 
{
	prompt: function(media_id, media_title)
		{
			comfirmDelete = confirm('Are you sure you want to delete \''+media_title+'\'?  It cannot be undone!');
			
			if(comfirmDelete)
				{
					new Ajax.Request
						(
							'/ajax/deletemedia',
							{
								method: 'post',
								postBody: 'media_id='+media_id,
								onComplete: function()
									{
										location.reload();
									}
							}
						);
				}
		},
  mouseover: function(media_id)
		{
			$('mini_action_text_'+media_id).innerHTML = '<img src=\'/images/status_delete.gif\' />';
		},
	mouseout: function(media_id)
		{
			$('mini_action_text_'+media_id).innerHTML = '';		
		}
}

vmu.statusText = {
  mouseover: function(media_id, innerText) {
    $('mini_action_text_'+media_id).innerHTML = innerText;
  },
  mouseout: function(media_id) {
    $('mini_action_text_'+media_id).innerHTML = '';
  }
}

vmu.reportMedia = {    
    setup: function(payload,media_id)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.reportMedia.show(media_id);});                  
                
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.reportMedia.closeObserver = vmu.reportMedia.hide.bindAsEventListener(vmu.sendMedia);
                    
                    Event.observe('reportcontent_close','click',vmu.reportMedia.closeObserver);
                }
            Element.show('fade');
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            Element.show('popup');
        },
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/reportcontent',
                function(payload)
                    {
                        vmu.reportMedia.setup(payload,media_id);
                    },
				media_id
                );
        },
    hide: function(event)
        {
            Event.stopObserving('reportcontent_close','click',vmu.reportMedia.closeObserver);
            
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            Event.stop(event);
        }
}

vmu.rateMedia = {
    currentRating: 0,
    closeObserver: null,
    starObserver: null,
    setup: function(payload)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.rateMedia.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.rateMedia.closeObserver = vmu.rateMedia.hide.bindAsEventListener(vmu.rateMedia);
                    
                    Event.observe('rateit_close','click',vmu.rateMedia.closeObserver);
                    
					if($('rate_0')) 
						{
	                    for(i=0;i<=10;i++)
	                        {
	                            Event.observe('rate_'+i,'mouseover',function(event){vmu.rateMedia.startHover(event);});
	                            Event.observe('rate_'+i,'click',function(event){vmu.rateMedia.starClick(event);});
	                        }
					}
                }
           
            Element.show('fade');
            
            if($j('#chart_select')){
        		$j('#chart_select').hide();
        	}
            
            Element.show('popup');
        },
	mouseover: function(media_id)
		{
        	//jQuery('#mini_action_text_'+media_id).html('<img src="/images/rateit_text.gif" />');
        	$j('#rateimg_'+media_id).attr('src', '/images/mini_rate_black.gif');
		},
	mouseout: function(media_id)
		{
			//jQuery('#mini_action_text_'+media_id).html('');
			$j('#rateimg_'+media_id).attr('src', '/images/mini_rate.gif');
		
		},
    startHover: function(event)
        {            
            parentId = Event.element(event).parentNode.id.substring(5);
            vmu.rateMedia.currentRating = parentId/2;
            $('current_rating').innerHTML = vmu.rateMedia.currentRating;
            vmu.rateMedia.clearStars();
            if(parentId == 0) return false;
            for(i=1;i<=parentId;i++)
                {                    
                    if(i % 2)
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_left_full.gif';
                        }
                    else
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_right_full.gif';
                        }
                }
        },
    endHover: function(event)
        {
            Event.element(event).src = '/images/cast_vote_left_empty.gif';
        },
    starClick: function(event)
        {
            Event.stop(event);
			return false;
        },
    clearStars: function()
        {
            for(i=1;i<=10;i++)
                {                    
                    if(i % 2)
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_left_empty.gif';
                        }
                    else
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_right_empty.gif';
                        }
                }  
        },
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/rate',
                function(payload)
                    {
                        vmu.rateMedia.setup(payload);
                    },
				media_id
                );          
        },
    hide: function(event)
        {
            Event.stopObserving('rateit_close','click',vmu.rateMedia.closeObserver);
            
            if($j('#chart_select')){
        		$j('#chart_select').show();
        	}
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            Event.stop(event);
        },
	submit: function(object, media_id)
		{
			object.src = '/images/ajax-loader.gif';
			
			new Ajax.Request
				(
					'/ajax/ratemedia',
					{
						method: 'post',
						postBody: 'media_id='+media_id+'&rate='+vmu.rateMedia.currentRating,
						onComplete: function(returnObj)
							{
								if(returnObj.responseText.substring(0,4) == '0100')
									{
										Element.hide(object);
										$('popup_message').innerHTML = '<br /> Rating Successfully Added!!';
									}
								else
									{
										alert(returnObj.responseText);
										Element.hide(object);
										$('popup_message').innerHTML = '<br />Hmm we seem to have had a problem.  Please try again later.';
									}
							}
					}
				);
		}
}

vmu.commentMedia = {
	submit: function(media_id)
		{
			new Ajax.Request
				(
					'/ajax/addcomment',
					{
						method: 'post',
						postBody: 'media_id='+media_id+'&'+Form.serialize($('add_comment')),
						onComplete: function(returnObj)
							{
								if(returnObj.responseText.substring(0,4) == '0100')
									{
										vmu.scrollComments.page = 1;
										vmu.scrollComments.setUpArrowOff();                    
										new Ajax.Updater
											(
												'media_comments',
												'/subcontent/updatecomments',
												{
													method: 'post',
													postBody: 'media_id='+media_id,
													onComplete: function() {
														if(parseInt($('commentsPageLimit').innerHTML) > 1) {
															vmu.scrollComments.setDownArrowOn();
															$('comments_header_downarrow_anch').href = 'javascript:vmu.scrollComments.older(' + media_id + ')';
														}
													}
												}
											);                    
										$('add_comment').reset();			
									}
								else
									{
										if(returnObj.responseText.substring(22) == 'banned word')
											{
												$('add_comment_error_msg').innerHTML = 'Our system has detected improper language.';
											}
									}
							}
					}
				);        
		}
}

vmu.scrollComments = {
  page: 1,
  older: function(media_id){
    pageLimit = $('commentsPageLimit').innerHTML;    
    if(this.page == pageLimit) {
      return;
    }
    else {
      this.page++;
      this.setUpArrowOn();
      if(this.page == pageLimit) {
        this.setDownArrowOff();
      }
    }
    //vmu.scrollComments.showSpinnerHideList();
    new Ajax.Updater(
      'media_comments',
      '/ajax/scrollcomments/id/' + media_id + '/page/' + this.page,
      {
        method: 'post'//,
        //onComplete: function() {
        //  vmu.scrollComments.showListHideSpinner();
        //}
      }
    );
  },
  newer: function(media_id){    
    if(this.page == 1) {
      return;
    }
    else {
      this.page--;
      this.setDownArrowOn();
      if(this.page == 1) {
        this.setUpArrowOff();
      }
    }
    //vmu.scrollComments.showSpinnerHideList();
    new Ajax.Updater(
      'media_comments',
      '/ajax/scrollcomments/id/' + media_id + '/page/' + this.page,
      {
        method: 'post'//,
        //onComplete: function() {
        //  vmu.scrollComments.showListHideSpinner();
        //}
      }
    );
  },
  setUpArrowOn: function() {
    $('comments_header_uparrow').src = "/images/scroll_up_on.gif";
    $j('#comments_header_uparrow_anch').mouseout(function(){
		   $j('#comments_header_uparrow').attr('src', '/images/scroll_up_on.gif');
	    });
  },
  setUpArrowOff: function() {
    $('comments_header_uparrow').src = "/images/scroll_up_off.gif";
    $j('#comments_header_uparrow_anch').mouseout(function(){
	    $j('#comments_header_uparrow').attr('src', '/images/scroll_up_off.gif');
	});
  },
  setDownArrowOn:  function() {
    $('comments_header_downarrow').src = "/images/scroll_down_on.gif";
    $j('#comments_header_downarrow_anch').mouseout(function(){
	    $j('#comments_header_downarrow').attr('src', '/images/scroll_up_off.gif');
	});
  },
  setDownArrowOff:  function() {
    $('comments_header_downarrow').src = "/images/scroll_down_off.gif";
    $j('#comments_header_downarrow_anch').mouseout(function(){
	    $j('#comments_header_uparrow').attr('src', '/images/scroll_up_off.gif');
	});
  },
  showSpinnerHideList: function() {
    Element.hide('media_comments');
    Element.show('comments_spinner');
  },
  showListHideSpinner: function() {
    Element.hide('comments_spinner');
    Element.show('media_comments');
  }
}

vmu.scrollTags = {
  page: 1,
  older: function(media_id){
    pageLimit = $('tagsPageLimit').innerHTML;    
    if(this.page == pageLimit) {
      return;
    }
    else {
      this.page++;
      this.setUpArrowOn();
      if(this.page == pageLimit) {
        this.setDownArrowOff();
      }
    }
    new Ajax.Updater(
      'media_tags',
      '/ajax/scrolltags/id/' + media_id + '/page/' + this.page,
      {
        method: 'post'
      }
    );
  },
  newer: function(media_id){    
    if(this.page == 1) {
      return;
    }
    else {
      this.page--;
      this.setDownArrowOn();
      if(this.page == 1) {
        this.setUpArrowOff();
      }
    }
    new Ajax.Updater(
      'media_tags',
      '/ajax/scrolltags/id/' + media_id + '/page/' + this.page,
      {
        method: 'post'
      }
    );
  },
  setUpArrowOn: function() {
    $('tags_header_uparrow').src = "/images/scroll_up_on.gif";
    $j('#tags_header_uparrow_anch').mouseout(function(){
		   $j('#tags_header_uparrow').attr('src', '/images/scroll_up_on.gif');
	    });
  },
  setUpArrowOff: function() {
    $('tags_header_uparrow').src = "/images/scroll_up_off.gif";
    $j('#tags_header_uparrow_anch').mouseout(function(){
		   $j('#tags_header_uparrow').attr('src', '/images/scroll_up_off.gif');
	    });
  },
  setDownArrowOn:  function() {
    $('tags_header_downarrow').src = "/images/scroll_down_on.gif";
    $j('#tags_header_downarrow_anch').mouseout(function(){
		   $j('#tags_header_downarrow').attr('src', '/images/scroll_down_on.gif');
	    });
  },
  setDownArrowOff:  function() {
    $('tags_header_downarrow').src = "/images/scroll_down_off.gif";
    $j('#tags_header_downarrow_anch').mouseout(function(){
		   $j('#tags_header_downarrow').attr('src', '/images/scroll_down_off.gif');
	    });
  }
}

vmu.scrollCreations = {
  page: 1,
  older: function(user_id,media_id){
    pageLimit = $('creationsPageLimit').innerHTML;    
    if(this.page == pageLimit) {
      return;
    }
    else {
      this.page++;
      this.setUpArrowOn();
      if(this.page == pageLimit) {
        this.setDownArrowOff();
      }
    }
    vmu.scrollCreations.showSpinnerHideList();
    new Ajax.Updater(
      'media_more_mixed',
      '/ajax/scrollcreations/id/' + user_id + '/page/' + this.page + '/media/' + media_id,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollCreations.createSWFIcons();
          vmu.scrollCreations.showListHideSpinner();
        }
      }
    );
  },
  newer: function(user_id,media_id){    
    if(this.page == 1) {
      return;
    }
    else {
      this.page--;
      this.setDownArrowOn();
      if(this.page == 1) {
        this.setUpArrowOff();
      }
    }
    vmu.scrollCreations.showSpinnerHideList();
    new Ajax.Updater(
      'media_more_mixed',
      '/ajax/scrollcreations/id/' + user_id + '/page/' + this.page + '/media/' + media_id,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollCreations.createSWFIcons();
          vmu.scrollCreations.showListHideSpinner();
        }
      }
    );
  },
  setUpArrowOn: function() {
    $('creations_header_uparrow').src = "/images/scroll_up_on.gif";
    $j('#creations_header_uparrow_anch').mouseout(function(){
		   $j('#creations_header_uparrow').attr('src', '/images/scroll_up_on.gif');
	    });
  },
  setUpArrowOff: function() {
    $('creations_header_uparrow').src = "/images/scroll_up_off.gif";
    $j('#creations_header_uparrow_anch').mouseout(function(){
		   $j('#creations_header_uparrow').attr('src', '/images/scroll_up_off.gif');
	    });
  },
  setDownArrowOn:  function() {
    $('creations_header_downarrow').src = "/images/scroll_down_on.gif";
    $j('#creations_header_downarrow_anch').mouseout(function(){
		   $j('#creations_header_downarrow').attr('src', '/images/scroll_down_on.gif');
	    });
  },
  setDownArrowOff:  function() {
    $('creations_header_downarrow').src = "/images/scroll_down_off.gif";
    $j('#creations_header_downarrow_anch').mouseout(function(){
		   $j('#creations_header_downarrow').attr('src', '/images/scroll_down_off.gif');
	    });
  },
  createSWFIcons: function() {
    
    var mediaTypeSpans = $('media_more_mixed').getElementsByClassName('js_media_type');
    var mediaTypes = new Array();
    for(i=0;i<mediaTypeSpans.length;i++) {
      mediaTypes[i] = mediaTypeSpans[i].innerHTML;
    }
    
    var serverNameSpans = $('media_more_mixed').getElementsByClassName('js_server_name');
    var serverNames = new Array();
    for(i=0;i<serverNameSpans.length;i++) {
      serverNames[i] = serverNameSpans[i].innerHTML;
    }
    
    var mediaURLPathSpans = $('media_more_mixed').getElementsByClassName('js_media_url_path');
    var mediaURLPaths = new Array();
    for(i=0;i<mediaURLPathSpans.length;i++) {
      mediaURLPaths[i] = mediaURLPathSpans[i].innerHTML;
    }
    
    var mediaIdSpans = $('media_more_mixed').getElementsByClassName('js_media_id');
    var mediaIds = new Array();
    for(i=0;i<mediaIdSpans.length;i++) {
      mediaIds[i] = mediaIdSpans[i].innerHTML;
    }
    
    var containerIdSpans = $('media_more_mixed').getElementsByClassName('js_container_id');
    var containerIds = new Array();
    for(i=0;i<containerIdSpans.length;i++) {
      containerIds[i] = containerIdSpans[i].innerHTML;
    }
    
    for(j=0;j<mediaTypes.length;j++) {
      if(mediaTypes[j]==1) {
        swfObject = new SWFObject("/flash/imageLoader.swf", "mixer", "60", "66", "8.0.0", "");
		swfObject.addVariable('imagePath','http://'+location.host+'/wallpapers/preview/mediaId/'+mediaIds[j]);
		swfObject.addVariable('exitURL','http://'+location.host+'/studio/preview/wallpaper/'+mediaIds[j]);
	      swfObject.addParam("quality","high");
			  swfObject.addParam("wmode","transparent");
			  swfObject.write(containerIds[j]);
      }
      else if(mediaTypes[j]==2) {
        swfObject = new SWFObject("/flash/large_preview.swf", "mixer", "60", "66", "8.0.0", "");
				swfObject.addVariable('soundurl','http://'+location.host+'/ringtones/preview/mediaId/'+mediaIds[j]);
				swfObject.addVariable('exitURL','http://'+location.host+'/studio/preview/wallpaper/'+mediaIds[j]);
	      swfObject.addParam("quality","high");
			  swfObject.addParam("wmode","transparent");
			  swfObject.write(containerIds[j]);
      } else if(mediaTypes[j]==3) {
				elementId=containerIds[j];
				var n = (typeof elementId == 'string') ? document.getElementById(elementId) : elementId;
				n.innerHTML='<a href="/studio/preview/screensaver/'+mediaIds[j]+'"><img height="66" width="60" src="/screensavers/preview/mediaId/'+mediaIds[j]+'" border="0" alt="" /></a>';      
      }
    }    
  },
  showSpinnerHideList: function() {
    Element.hide('media_more_mixed');
    Element.show('moremedia_spinner');
  },
  showListHideSpinner: function() {
    Element.hide('moremedia_spinner');
    Element.show('media_more_mixed');
  }
}

vmu.scrollRecentEvents = {
  page: 1,
  pageLimit: 20,
  older: function() {
    if(this.page == this.pageLimit) {
      return;
    }
    else {
      this.page++;
      this.setUpArrowOn();
      if(this.page == this.pageLimit) {
        this.setDownArrowOff();
      }
    }
        
    vmu.scrollRecentEvents.showSpinnerHideList();  
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/' + this.page);    
    /*new Ajax.Updater(
      'recent_activity_list_ul',
      '/ajax/scrollrecentevents/page/' + this.page,
      {
        method: 'post',
        onComplete: function() {
    	  alert('calling show...');
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  },
  newer: function() {
    if(this.page == 1) {
      return;
    }
    else {
      this.page--;
      this.setDownArrowOn();
      if(this.page == 1) {
        this.setUpArrowOff();
      }
    }
    vmu.scrollRecentEvents.showSpinnerHideList();
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/' + this.page);  
    /*new Ajax.Updater(
      'recent_activity_list',
      '/ajax/scrollrecentevents/page/' + this.page,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  },
  myOlder: function(userId) {
    userEventsLimit = $('user_events_limit').innerHTML;
    if(this.page == userEventsLimit) {
      return;
    }
    else {
      this.page++;
      this.setUpArrowOn();
      if(this.page == userEventsLimit) {
        this.setDownArrowOff();
      }
    }
    vmu.scrollRecentEvents.showSpinnerHideList();
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/' + this.page + '/userId/' + userId);  
    /*new Ajax.Updater(
      'recent_activity_list',
      '/ajax/scrollrecentevents/page/' + this.page + '/userId/' + userId,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  },
  myNewer: function(userId) {
    if(this.page == 1) {
      return;
    }
    else {
      this.page--;
      this.setDownArrowOn();
      if(this.page == 1) {
        this.setUpArrowOff();
      }
    }
    vmu.scrollRecentEvents.showSpinnerHideList();
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/' + this.page + '/userId/' + userId); 
    /*new Ajax.Updater(
      'recent_activity_list_ul',
      '/ajax/scrollrecentevents/page/' + this.page + '/userId/' + userId,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  },
  setUpArrowOn: function() {
	  $j('#recent_activity_header_uparrow').attr('src', "/images/scroll_up_on.gif");
	  $j('#recent_activity_header_uparrow_anch').mouseout(function(){
		   $j('#recent_activity_header_uparrow').attr('src', '/images/scroll_up_on.gif');
	    });
  },
  setUpArrowOff: function() {
	  $j('#recent_activity_header_uparrow').attr('src', "/images/scroll_up_off.gif");
	  $j('#recent_activity_header_uparrow_anch').mouseout(function(){
		   $j('#recent_activity_header_uparrow').attr('src', '/images/scroll_up_off.gif');
	    });
  },
  setDownArrowOn:  function() {
	  $j('#recent_activity_header_downarrow').attr('src', "/images/scroll_down_on.gif");
	  $j('#recent_activity_header_downarrow_anch').mouseout(function(){
		   $j('#recent_activity_header_downarrow_anch').attr('src', '/images/scroll_down_on.gif');
	    });
  },
  setDownArrowOff:  function() {
	$j('#recent_activity_header_downarrow').attr('src',"/images/scroll_down_off.gif");
	$j('#recent_activity_header_downarrow_anch').mouseout(function(){
		   $j('#recent_activity_header_downarrow_anch').attr('src', '/images/scroll_down_off.gif');
	    });
  },
  showSpinnerHideList: function() {
	$j('#recent_activity_list_ul').hide(); 
    $j('#spinner').show();
  },
  showListHideSpinner: function() {
	$j('#spinner').hide();
    $j('#recent_activity_list_ul').show();
  }
}

vmu.toggleRecentEvents = {
  mine: function(userId) {
    $j('#viewall_recent_activity').attr('src', "/images/viewall_off.gif");
    $j('#viewmine_recent_activity').attr('src', "/images/viewmine_on.gif");
    $j('#recent_activity_header_downarrow_anch').attr('href',"javascript:vmu.scrollRecentEvents.myOlder("+userId+");)");
    $j('#recent_activity_header_uparrow_anch').attr('href', "javascript:vmu.scrollRecentEvents.myNewer("+userId+");");
    vmu.scrollRecentEvents.page = 1;
    vmu.scrollRecentEvents.setUpArrowOff();
    vmu.scrollRecentEvents.setDownArrowOn();
    vmu.scrollRecentEvents.showSpinnerHideList();
    
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/1' + '/userId/' + userId); 
   /* new Ajax.Updater(
      'recent_activity_list',
      '/ajax/scrollrecentevents/page/1' + '/userId/' + userId,
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  },
  all: function() {
	  $j('#viewall_recent_activity').attr('src', "/images/viewall_on.gif");
	  $j('#viewmine_recent_activity').attr('src' , "/images/viewmine_off.gif");
	  $j('#recent_activity_header_downarrow_anch').attr('href', "javascript:vmu.scrollRecentEvents.older();");
	  $j('#recent_activity_header_uparrow_anch').attr('href', "javascript:vmu.scrollRecentEvents.newer();");
    vmu.scrollRecentEvents.page = 1;
    vmu.scrollRecentEvents.setUpArrowOff();
    vmu.scrollRecentEvents.setDownArrowOn();
    vmu.scrollRecentEvents.showSpinnerHideList();
    
    $j('#recent_activity_list_ul').load('/ajax/scrollrecentevents/page/1'); 
    /*new Ajax.Updater(
      'recent_activity_list',
      '/ajax/scrollrecentevents/page/1',
      {
        method: 'post',
        onComplete: function() {
          vmu.scrollRecentEvents.showListHideSpinner();
        }
      }
    );*/
    vmu.scrollRecentEvents.showListHideSpinner();
  }
}

//to de deprecated in favour of deleteUpload
vmu.deactivateImage = function(imageId) {
  confirmDelete = confirm("Are you sure you want to delete this image?");
  
  if(confirmDelete) {
    new Ajax.Updater(
      'studio_MYUPLOADS',
      '/ajax/deactivateimage/imageId/' + imageId,
      {
        method: 'post'
      }
    );
  }
  else {
    return;
  }
}

vmu.deleteUpload = function(uploadId) {
  confirmDelete = confirm("Are you sure you want to delete this image?");
  
  if(confirmDelete) {
    new Ajax.Updater(
      'studio_MYUPLOADS',
      '/myfiles/delete/image/' + uploadId,
      {
        method: 'post'
      }
    );
  }
  else {
    return;
  }
}

vmu.tagMedia = {
	submit: function(media_id)
		{
			$('add_tag_error_msg').innerHTML = '';
			new Ajax.Request
				(
					'/ajax/addtag',
					{
						method: 'post',
						postBody: 'media_id='+media_id+'&'+Form.serialize($('add_tag')),
						onComplete: function(returnObj)
							{
								if(returnObj.responseText.substring(0,4) == '0100')
									{
                    vmu.scrollTags.page = 1;
                    vmu.scrollTags.setUpArrowOff();
										new Ajax.Updater
											(
												'media_tags',
												'/subcontent/updatetags',
												{
													method: 'post',
													postBody: 'media_id='+media_id,
                          onComplete: function() {
                            if(parseInt($('tagsPageLimit').innerHTML) > 1) {
                              vmu.scrollTags.setDownArrowOn();
                              $('tags_header_downarrow_anch').href = 'javascript:vmu.scrollTags.older(' + media_id + ')';
                            }
                          }
												}
											);
											
										$('add_tag').reset();			
									}
								else
									{
										if(returnObj.responseText.substring(22) == 'banned word')
											{
												$('add_tag_error_msg').innerHTML = 'Our system has detected improper language.';
											}
										else if(returnObj.responseText.substring(55,64) == 'Duplicate')
											{
												$('add_tag_error_msg').innerHTML = 'Sorry.  This media already has that tag.';
											}
									}
							}
					}
				);
		}
}


vmu.help = function()
	{
		window.open('/help','StudioVHelp','width=680,height=500');
		
		return false;
	}
vmu.toc = function()
	{
		window.open('/help/terms_noindex','StudioVHelp','width=490,height=500,scrollbars=1');
		
		return false;
	}
Event.observe(window,'load',vmu.setup);

/***************************
 * begin carousel functions*
 ***************************/
function getLeftTargetPos(elemId) {
	return (parseInt(document.getElementById(elemId).style.left)) + 480;
}

function getRightTargetPos(elemId) {
	return (parseInt(document.getElementById(elemId).style.left)) - 480;
}

function moveCrslLeft(targetPos, crslId, anchId) {
	crsl = document.getElementById(crslId);
	currentPos = parseInt(crsl.style.left);
	anch = document.getElementById(anchId);
    anchOppositeId = anchId.replace("left" , "right");
	anchOpposite = document.getElementById(anchOppositeId);
	anch.setAttribute("href", "javascript: void(0);");
    anchOpposite.setAttribute("href", "javascript:void(0);");
      
    rightArrow = document.getElementById(anchOppositeId + "Img");
    rightArrow.setAttribute("src", "/images/scroll_right_on.gif");
	

	if (currentPos == 0) {
		anch.setAttribute("href", "javascript:moveCrslLeft(getLeftTargetPos('" + crslId + "'), '" + crslId + "', '" + anchId + "');");
		anchOpposite.setAttribute("href", "javascript:moveCrslRight(getRightTargetPos('" + crslId + "'), '" + crslId + "', '" + anchOppositeId + "');");
		leftArrow = document.getElementById(anchId + "Img");
	    leftArrow.setAttribute("src", "/images/scroll_left_off.gif");	
        return;
	}
	
	change = Math.abs(targetPos) - Math.abs(currentPos);
	newPos = currentPos - Math.floor((change/2));
	crsl.style.left = newPos + "px";
	
	function m() {
		moveCrslLeft(targetPos, crslId, anchId);
	}
	
	if(currentPos == targetPos) {
		clearTimeout(timer);
		anch.setAttribute("href", "javascript:moveCrslLeft(getLeftTargetPos('" + crslId + "'), '" + crslId + "', '" + anchId + "');");
		anchOpposite.setAttribute("href", "javascript:moveCrslRight(getRightTargetPos('" + crslId + "'), '" + crslId + "', '" + anchOppositeId + "');");
    return;
	}
	
	timer = setTimeout(m,100);
}

function moveCrslRight(targetPos, crslId, anchId) {
	crsl = document.getElementById(crslId);
	currentPos = parseInt(crsl.style.left);
	anch = document.getElementById(anchId);
    anchOppositeId = anchId.replace("right" , "left");
	anchOpposite = document.getElementById(anchOppositeId);
	anch.setAttribute("href", "javascript: void(0);");
    anchOpposite.setAttribute("href", "javascript:void(0);");
  
    leftArrow = document.getElementById(anchOppositeId + "Img");
    leftArrow.setAttribute("src", "/images/scroll_left_on.gif");
	    
	//each image block here is 96px wide
	//we're moving 3 images off the viewer at a time, and we have a total of 9 images
	//so there are 3 different sets that can be viewed; we stop at the last set of 3
	//so currentPos = -576, or 96 x 6
	if (currentPos == -960) { 
		anch.setAttribute("href", "javascript:moveCrslRight(getRightTargetPos('" + crslId + "'), '" + crslId + "', '" + anchId + "');");
		anchOpposite.setAttribute("href", "javascript:moveCrslLeft(getLeftTargetPos('" + crslId + "'), '" + crslId + "', '" + anchOppositeId + "');");
        rightArrow = document.getElementById(anchId + "Img");
        rightArrow.setAttribute("src", "/images/scroll_right_off.gif");
              
        return;
	} 
	
	change = Math.abs(targetPos) - Math.abs(currentPos);
	newPos = currentPos - Math.ceil((change/2));
	crsl.style.left = newPos + "px";
	
	function m() {
		moveCrslRight(targetPos, crslId, anchId);
	}
	
	if(currentPos == targetPos) {
		clearTimeout(timer);
		anch.setAttribute("href", "javascript:moveCrslRight(getRightTargetPos('" + crslId + "'), '" + crslId + "', '" + anchId + "');");
		anchOpposite.setAttribute("href", "javascript:moveCrslLeft(getLeftTargetPos('" + crslId + "'), '" + crslId + "', '" + anchOppositeId + "');");
    return;
	}
	
	timer = setTimeout(m,100);
}

/*************************
 * end carousel functions*
 *************************/
 
 
 vmu.rateThumb = {
    currentRating: 0,
    closeObserver: null,
    starObserver: null,
    setup: function(payload)
        {
            if(payload.getResponseHeader("Screen") == 'LoginPrompt')
                {
                    vmu.handleLogin(payload, function(){vmu.rateThumb.show();}); 
                }
            else
                {
                    $('popup').innerHTML = payload.responseText;
                    vmu.loadPreview($('media_id').innerHTML,$('media_type').innerHTML);
                    vmu.rateThumb.closeObserver = vmu.rateThumb.hide.bindAsEventListener(vmu.rateThumb);
                    
                    Event.observe('rateit_close','click',vmu.rateThumb.closeObserver);
                    
					if($('rate_0')) 
						{
	                    for(i=0;i<=10;i++)
	                        {
	                            Event.observe('rate_'+i,'mouseover',function(event){vmu.rateThumb.startHover(event);});
	                            Event.observe('rate_'+i,'click',function(event){vmu.rateThumb.starClick(event);});
	                        }
					}
                }
           
            Element.show('fade');
            
            Element.show('popup');
        },
	mouseover: function(media_id)
		{
			$('mini_action_text_'+media_id).innerHTML = '<img src="/images/rateit_text.gif" />';
		},
	mouseout: function(media_id)
		{
			$('mini_action_text_'+media_id).innerHTML = '';
		
		},
    startHover: function(event)
        {            
            parentId = Event.element(event).parentNode.id.substring(5);
            vmu.rateThumb.currentRating = parentId/2;
            $('current_rating').innerHTML = vmu.rateThumb.currentRating;
            vmu.rateThumb.clearStars();
            if(parentId == 0) return false;
            for(i=1;i<=parentId;i++)
                {                    
                    if(i % 2)
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_left_full.gif';
                        }
                    else
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_right_full.gif';
                        }
                }
        },
    endHover: function(event)
        {
            Event.element(event).src = '/images/cast_vote_left_empty.gif';
        },
    starClick: function(event)
        {
            Event.stop(event);
			return false;
        },
    clearStars: function()
        {
            for(i=1;i<=10;i++)
                {                    
                    if(i % 2)
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_left_empty.gif';
                        }
                    else
                        {
                            $('rate_'+i).childNodes[0].src = '/images/cast_vote_right_empty.gif';
                        }
                }  
        },
    show: function(media_id)
        {
			if(!media_id)
					media_id = vmu.media_id;
					
            vmu.loadPopup(
                '/subcontent/thumbrate',
                function(payload)
                    {
                        vmu.rateThumb.setup(payload);
                    },
				media_id
                );          
        },
    hide: function(event)
        {
            Event.stopObserving('rateit_close','click',vmu.rateThumb.closeObserver);
            
            Element.hide('popup');
            
            Element.hide('fade');
            
            Event.stop(event);
			
			document.location.reload();
        },
	submit: function(media_id, rating)
		{
			//object.src = '/images/ajax-loader.gif';
			
			new Ajax.Request
				(
					'/ajax/ratemedia',
					{
						method: 'post',
						postBody: 'media_id='+media_id+'&rate='+rating,
						onComplete: function(returnObj)
							{
								if(returnObj.responseText.substring(0,4) == '0100')
									{
										Element.hide('thumbs');
										Element.hide('statmessage');
										$('popup_message').innerHTML = '<br /> Great! We got your vote. Won\'t be long before we add it to the results!';
									}
								else
									{
										alert(returnObj.responseText);
										Element.hide('thumbs');
										Element.hide('statmessage');
										$('popup_message').innerHTML = '<br />Hmm we seem to have had a problem.  Please try again later.';
									}
							}
					}
				);
		}
}
