function initializeComments(){
  observeComments();
  showFirstCommentOnly();
  hideRatedUsers();
  fetchWhoRated();
  FileItems.init();
  stopSearchFileItems();
  initAnswerOptions();
  prepareCommentTabs();
  //prepareTabs();
}

function playVideo(event){
    var d = event.findElement().tagName
    //alert(d)
    var element = event.findElement();
    var href = element.href || element.up('a.video_link').href;
    //alert(href)
    new Ajax.Request(href, {
			 method: 'get',
			 evalScripts: true,
			 onLoading: showLoadingContent,			 
			 onComplete: function(response){
         hideLoadingContent();
         //mainPlayer.innerHTML = response.responseText,
         //reloadować listę videocastów 
         $('video_list_right').innerHTML = response.responseJSON.videos; 
         mainPlayer.innerHTML = response.responseJSON.html,
         initializeComments();
         $$('a.video_link').each(function(link){observeVideoLink(link);});
         $(document).title = response.responseJSON.title
			 }
		     });
    event.stop();
    mainPlayer.scrollTo();
}




function showFirstCommentOnly(){
    if(mainPlayer){
	var comments;
	if($('comment_box')){
	    comments = $('comment_box').select('li.comment');
	    comments.each(function(comment, i){
			      if(i != 0)
				  comment.hide();
			  });
	    
	}
    }
    
}

function showAllComments(event)
{
    if($('comment_box'))
	$('comment_box').select('li.comment').invoke('show');
    event.stop();
    event.findElement().remove();
}


function observeComments(){
    if($('show_all_comments')){
	    $('show_all_comments').observe('click', showAllComments);
    }
   
}

function playVideoFromImage(){
     new Ajax.Updater(mainPlayer, event.findElement().up(1).href, {
			  method: 'get',
			  evalScripts: true,
			  onLoading: showLoadingContent(),
			  onComplete: function(){
			      hideLoadingContent();
			      initializeComments();
			  }
		      });
    event.stop();
    mainPlayer.scrollTo();
    //window.location.hash = "main_player";
}

function observeVideoLink(link){
    link.observe('click', playVideo);
   // link.down(1).observe('click', playVideoFromImage);
}

function showMorePictures(event){
    $('more_pictures').show();
    $('show_more_pictures').remove();
    event.stop();
}

function showGallery(event){
    new Ajax.Updater('current_gallery', 
		     event.findElement().href,
		     {
			 method: 'get',
			 onLoading: showLoadingContent(),
			 onComplete: function(){
			     hideLoadingContent();
			     observeMorePictures();
			     observeShowGallery();
			 }
		     }
		    );     
    event.stop();
    window.location.hash = "main_gallery";
}

function observeMorePictures(){
    if($('more_pictures')){
	$('more_pictures').hide();
	$('show_more_pictures').observe('click', showMorePictures);
    }

}

function observeShowGallery(){
    $$('a.show_gallery').each(function(l){l.observe('click', showGallery);});
}


function moreVideos(e){
    var videos = $('video_main_list').childElements();
    for(i= 0; i < videos.size(); i++){
	videos[i].show();
    }
    $('more_videos').hide();
    $('less_videos').show();
    e.stop();
}

function lessVideos(e){
    var videos = $('video_main_list').childElements();
    var initialSize = 6;
    for(i= 0; i < videos.size(); i++){
	if(i < initialSize)
	    videos[i].show();
	else
	    videos[i].hide();
    }
    $('more_videos').show();
    $('less_videos').hide();
    e.stop();
    e.stop();
}

function initVideoList(){
    $('more_videos').hide();
    $('less_videos').hide();
    $('more_videos').observe('click', moreVideos);
    $('less_videos').observe('click', lessVideos);
    var initialSize = 6;
    var videos = $('video_main_list').childElements();
    for(i= initialSize;  i < videos.size(); i++){
	videos[i].hide();
    }
    if(videos.size() > initialSize){
	$('more_videos').show();
        $('less_videos').hide();
    }
    
}

function initializeVideoRelation(){
    
    observeShowGallery();
    observeMorePictures();
    initVideoList();
    

    $$('a.video_link').each(function(link){observeVideoLink(link);});
    mainPlayer = $('main_player_container');
    observeComments();
    showFirstCommentOnly();
}
document.observe('dom:loaded', initializeVideoRelation);
