// JavaScript Document
var ready_function_run = false;
var searchInputActive = 0;
var commentPosition = 0;
var commentContent = "";
var navbar_reviews_list_count = 0;
function submitcart()
{
  document.submit_cart.submit();
}
var screenshotActive = 1;
var screenshotMax = 1;
var screenshotURLs=new Array(5);

function screenshotChange(setNumber){
screenshotActive = setNumber;
document.getElementById('screenshotImage').src=screenshotURLs[setNumber];
}

function screenshotNext(){
screenshotActive =screenshotActive+1;
	if(screenshotActive > screenshotMax){
		screenshotActive =1;
	}
screenshotChange(screenshotActive);
}

function screenshotPrev(){
screenshotActive =screenshotActive-1;
	if(screenshotActive < 1){
		screenshotActive =screenshotMax;
	}
screenshotChange(screenshotActive);
}

$(document).ready(function(){
    if (ready_function_run == true)
        return false;
    ready_function_run = true;
    sizeSidebar();
 screenshotChange(1);

    // Search bar features:
    $("#navbar_search_focus").click(function(){
        if(searchInputActive == 0){
            document.searchbar.q.focus();
        } else {
            document.searchbar.q.select();  
        }
    });
    $("#top_search").blur(function() {
        setTimeout("searchInputActive = 0",100);
    });
    $("#top_search").focus(function() {
		searchInputActive = 1;
    });
    $("#navbar_search_button").click(function(){
        document.searchbar.submit();
    });    

    $("#navbar_reviews").hover(
        function(){/*mouseover stuff*/ 
                   $("#navbar_reviews_list").show();
                   navbar_reviews_list_count++;
        },
        function(){/*mouseout stuff*/  
                   navbar_reviews_list_count--;
                  if (navbar_reviews_list_count == 0){
                      $("#navbar_reviews_list").hide();
                  }
        }
    );
    $("#navbar_reviews_active").hover(
        function(){/*mouseover stuff*/ 
                   $("#navbar_reviews_list").show();
                   navbar_reviews_list_count++;
        },
        function(){/*mouseout stuff*/  
                   navbar_reviews_list_count--;
                  if (navbar_reviews_list_count == 0){
                      $("#navbar_reviews_list").hide();
                  }
        }
    );    
    $("#navbar_reviews_list").hover(
        function(){/*mouseover stuff*/ 
                   $("#navbar_reviews_list").show();
                   navbar_reviews_list_count++;
        },
        function(){/*mouseout stuff*/ 
                   navbar_reviews_list_count--;
                  if (navbar_reviews_list_count == 0){
                      $("#navbar_reviews_list").hide();
                  }
        }
    );
    
    document.getElementById('navbar_search_img').style.width = "1px";
    document.getElementById('navbar_search_img').style.height = "1px";
    document.getElementById('navbar_search_img').style.overflow = "hidden";

// Uncomment the below for advanced start:
/*
 $("div.sortOptions").find("div.sortMoreButton").hide("");
 $("div.sortOptions").find("div.sortLessButton").show("");     
*/
// Otherwise, for basic start:
 $("div.sortOptions").find("div.sortMoreButton").show("");
 $("div.sortOptions").find("div.sortLessButton").hide("");     
 $("div.sortOptions").find("div#sortMoreBoxOut").hide("");   

// Hide our entry lists 
 $("div.sortOptions").find("div.sortEntryList:visible").hide("");  

// kid confidence sort code:
$("div#sortPlatform").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortPlatformList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortPlatformList").slideUp("fast"); 
});
$("div#sortAge").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortAgeList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortAgeList").slideUp("fast"); 
});
$("div#sortKC_Rating").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortKC_RatingList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortKC_RatingList").slideUp("fast"); 
});

// extended options:
$("div#sortESRB_Rating").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortESRB_RatingList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortESRB_RatingList").slideUp("fast"); 
});
$("div#sortGenre").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortGenreList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortGenreList").slideUp("fast"); 
});
$("div#sortDate").click(function(){
 $("div.sortOptions").find("div.sortEntryList").filter("#sortDateList").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortEntryList:visible").not("#sortDateList").slideUp("fast"); 
});


$("div.sortMoreLessButton").click(function(){
 $("div.sortOptions").find("div#sortMoreBoxOut").slideToggle("fast"); 
 $("div.sortOptions").find("div.sortMoreLessButton").toggle("");   
 $("div.sortOptions").find("div.sortEntryList:visible").hide("");  
});

// Book search:
$("#bookSearch").focus(function(){
    if(this.value=='Author/Title Search'){
        this.value=''
    }
});
$("#bookSearch").blur(function(){
    if(this.value==''){
        this.value='Author/Title Search'
    }
});

// Comment functions:
$("a#preview-inline-submit").click(function(){
    submitComment();
});
$("div.greybar-edge-ajaxLoad").click(function(){
  if(reloadAjCommentForm){
  	loadAjCommentForm();
  	reloadAjCommentForm = false;
  }
  $("div#memberComments").find("div#review-nr-comment-input").toggle(""); 
});

// commentPosition -- use commas to separate CSS sets
$("div.comment-close").click(function(){
  var commentBox = $("div#memberComments").find("div#review-nr-comment-input");    
  var commentState = commentBox.css("display"); // block or none
  commentBox.css({ top:"7px" }); 
// It is impossible to click on the lower titlebar, but the upper titlebar's close
// link has the same class:
//  if(commentPosition == 0 || commentState != "block"){
      commentBox.toggle("");
//  }
  if (commentPosition != 0 && commentContent != ""){
      $("div.review_comment_announce").before("<div class=\"review_comment_announce\">"+commentContent+"<\/div>").remove();  
  }
  commentPosition = 0;
  $("span.stuckTitle").before("<span class=\"stuckTitle\">Click Here<\/span>").remove();  
});
$("div.commentStuck-close").click(function(){
  var commentBox = $("div#memberComments").find("div#review-nr-comment-input");    
  var commentState = commentBox.css("display"); // block or none
  commentBox.css({ top:"-28px" }); 
  if(commentPosition == 1 || commentState != "block"){
      commentBox.toggle("");
  } 
  if (commentPosition == 0){
      commentContent = $("div.review_comment_announce").html();       
  }
  commentPosition = 1;
  
  $("div.review_comment_announce").before("<div class=\"review_comment_announce\">Tell us as much about where you are stuck as possible.<input type=\"hidden\" name=\"cctype\" value=\"1\" /><\/div>").remove();  
  if(commentBox.css("display") == "block")
      $("span.stuckTitle").before("<span class=\"stuckTitle\">Ask for help<\/span>").remove();
  else
      $("span.stuckTitle").before("<span class=\"stuckTitle\">Click Here<\/span>").remove();  
});

$("div.review-extra_email-form-button").click(function(){
	 $("div#review-extra_email-input").toggle(""); 
 });
 $("a.review-extra_email-form-button").click(function(){
	 $("div#review-extra_email-input").toggle(""); 
 });
 $("div#review-extra_email").click(function(){
	 $("div#review-extra_email-input").toggle(""); 
    $('#form_mailcount').ajaxSubmit(optMailcount);   
 }); 

 $("div.member_edit_clear").click(function(){
    clearMemberEditForm();
 }); 
 $("div.member_reg_reset").click(function(){
    clearMemberRegForm();
 }); 


    // form ajax bindings:
    if(document.getElementById('xpoll_form')){
          //$('#xpoll_form').ajaxForm(optAjPollVote);
        $('#xpoll_form').submit(function() { ajPollVote(); return false; });
        if(document.getElementById('xpoll_view_link')){
            $('#xpoll_view_form').submit(function() { ajPollResults(); return false; });
            $('#xpoll_view_link').click(function() { ajPollResults(); return false; });
        }
    }
    if(document.getElementById('form_bookmark')){
    $('#form_bookmark').ajaxForm(optBookmark); 
    $('#form_mailcount').ajaxForm(optMailcount); 
    $('#form_nominate').ajaxForm(optNominate); 
    $('#form_loadCommentForm').ajaxForm(optAjComment); 
//    $('#form_thumbrate').ajaxForm(optThumbrate); 
    $('#form_thumbrateRent').ajaxForm(optThumbrate); 
    $('#form_thumbrateBuy').ajaxForm(optThumbrate); 
    $('#form_thumbrateAvoid').ajaxForm(optThumbrate);
    }
    if(document.getElementById('nonreview-vote-buy')){
$("div#nonreview-vote-buy").click(function(){thumbBuy();});
$("div#nonreview-vote-rent").click(function(){thumbRent();});
$("div#nonreview-vote-avoid").click(function(){thumbAvoid();});
    }
    if(document.getElementById('nonreview-scorecard-vote-buy-text')){
$("div#nonreview-scorecard-vote-buy-text").click(function(){thumbBuy();});
$("div#nonreview-scorecard-vote-buy-text").click(function(){thumbAvoid();});
    }
// for non-pay pages
    if(document.getElementById('nonreview-vote-play')){
$("div#nonreview-vote-play").click(function(){thumbPlay();});
$("div#nonreview-vote-maybe").click(function(){thumbMaybe();});
$("div#nonreview-vote-avoidFree").click(function(){thumbAvoidFree();});
    }
// Amazon-page only: 
    if(document.getElementById('nonreview-scorecard-nominate')){
$("div#nonreview-scorecard-nominate").click(function(){nominatePage();});
    }
 
});


function submitcart()
{
  document.submit_cart.submit();
};
function submitComment()
{
    document.txpCommentInputForm.elements['submit'].click()
}
var screenshotActive = 1;
var reloadAjCommentForm = 1;
var screenshotMax = 1;
var screenshotURLs=new Array(5);
var eleID;

function changeImage(elementID, newImage){
eleID = document.getElementById(elementID);
if(eleID != null){
eleID.src=newImage;
}
}

function screenshotChange(setNumber){
screenshotActive = setNumber;
eleID = document.getElementById('screenshotImage');
if(eleID != null){
eleID.src=screenshotURLs[setNumber];
for (var n = 1; n <= screenshotMax; n++){
eleID = document.getElementById('greenbox-number-'+n);
if(eleID != null)
	eleID.style.backgroundImage="url(/interact/images/page/nonreview/greenbox/b"+n+".gif)";
}
eleID = document.getElementById('greenbox-number-'+setNumber);
if(eleID != null)
	eleID.style.backgroundImage="url(/interact/images/page/nonreview/greenbox/b"+setNumber+"a.gif)";
}
};

function screenshotNext(){
screenshotActive =screenshotActive+1;
	if(screenshotActive > screenshotMax){
		screenshotActive =1;
	}
screenshotChange(screenshotActive);
};

function screenshotPrev(){
screenshotActive =screenshotActive-1;
	if(screenshotActive < 1){
		screenshotActive =screenshotMax;
	}
screenshotChange(screenshotActive);
};
function printPage(){
window.print();
};
function emailPage(){
 $("div#review-extra_email-input").toggle(""); 
 $('#form_mailcount').ajaxSubmit(optMailcount);  
};
function nominatePage(){
 $('#form_nominate').ajaxSubmit(optNominate);  
  changeImage("nominate-icon", "/interact/images/page/nonreview/nominate-g.gif");
};
function thumbBuy(){
 $('#form_thumbrateBuy').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/buy.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/rent-g.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid-g.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-buy.gif");  
};
function thumbRent(){
 $('#form_thumbrateRent').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/buy-g.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/rent.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid-g.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-rent.gif");  
};
function thumbAvoid(){
 $('#form_thumbrateAvoid').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/buy-g.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/rent-g.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-avoid.gif");  
};
function thumbPlay(){
 $('#form_thumbrateBuy').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/play.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/maybe-g.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid-g.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-buy.gif");  
};
function thumbMaybe(){
 $('#form_thumbrateRent').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/play-g.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/maybe.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid-g.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-rent.gif");  
};
function thumbAvoidFree(){
 $('#form_thumbrateAvoid').ajaxSubmit(optThumbrate);  
 changeImage("ThumbBuyIcon", "/interact/images/page/nonreview/play-g.gif");
 changeImage("ThumbRentIcon", "/interact/images/page/nonreview/maybe-g.gif");
 changeImage("ThumbAvoidIcon", "/interact/images/page/nonreview/avoid.gif");
 $(".thisUserRating").setSrc("/interact/images/page/nonreview/s-avoid.gif");  
};
function ajPollPrevote(){   
   $(".xpoll_view_results").hide("");
   $("#pap_xpoll_submit").before("<div id=\"pap_xpoll_submit2\"><div class='wait'><table><tr><td><img src='/interact/CSS/script/indicator.gif'></td><td>Please wait...</td></tr></table><\/div><div class=\"wait2\"><\/div><\/div>").remove();
}
function ajPollVote(){
    optAjPollVote = { 
        beforeSubmit:  ajPollPrevote,
        target:        '#today_poll_text',   // target element(s) to be updated with server response
        url:           '/interact/xml?ajaxvote=1&poll='+$("#viewPollResults").val()+'&pap_xpoll_submit='+$("#viewPollResults").val()  // Override action attribue
	}
            $('#xpoll_form').ajaxSubmit(optAjPollVote); 
            return false; 
}
function ajPollResults(){
    optAjPollResults = { 
         beforeSubmit:  ajPollPrevote,
         target:        '#today_poll_text',   // target element(s) to be updated with server response
         url:           '/interact/xml?ajaxvote=1&poll='+$("#viewPollResults").val()+'&results='+$("#viewPollResults").val()  // Override action attribue
    }    
            $('#xpoll_view_form').ajaxSubmit(optAjPollResults); 
            return false; 
}
function bookmarkPage(url,title){
  if ((navigator.appName == "Microsoft Internet Explorer") && (parseInt(navigator.appVersion) >= 4)) {
  window.external.AddFavorite(url,title);
  } else if (navigator.appName == "Netscape") {
    window.sidebar.addPanel(title,url,"");
  } else {
    alert("Press CTRL-D (Netscape) or CTRL-T (Opera) to bookmark");
  }
    $('#form_bookmark').ajaxSubmit(optBookmark); 
}

// prepare the ajax form settings:
    var optBookmark = { 
        target:        '#disp_bookmark' //,  // target element(s) to be updated with server response 
	} 
    var optMailcount = { 
        target:        '#disp_mailcount'   // target element(s) to be updated with server response 
	} 
    var optThumbrate = { 
        target:        '#disp_thumbrate'   // target element(s) to be updated with server response 
	} 
    var optNominate = { 
        target:        '#nonreview-scorecard-text'   // target element(s) to be updated with server response 
	} 
    var optAjComment = { 
        target:        '#review-nr-comment-input'   // target element(s) to be updated with server response 
	}
    var optAjPollVote = { 
        beforeSubmit:  ajPollPrevote,
        target:        '#today_poll_text',   // target element(s) to be updated with server response
        url:           '/interact/xml?ajaxvote=1&poll=1&pap_xpoll_submit=1'  // Override action attribue
	}
    var optAjPollResults = { 
         beforeSubmit:  ajPollPrevote,
         target:        '#today_poll_text',   // target element(s) to be updated with server response
         url:           '/interact/xml?ajaxvote=1&poll=1&results=1'  // Override action attribue
    }    
// pre-submit callback 
function showRequest(formData, jqForm, options) { 
    var queryString = $.param(formData); 
    alert('About to submit: \n\n' + queryString); 
    return true; 
}    	

// To modify image source:
$.fn.setSrc = function(a)
{
return this.each(function()
{
$(this).attr("src",a);
});
}

function loadAjCommentForm(){
 $('#form_loadCommentForm').ajaxSubmit(optAjComment),
 $('#txpCommentInputForm').ajaxForm(optAjComment);  
};

function ajCommentFormPreview(){
 $('#txpCommentInputForm').ajaxSubmit(optAjComment);  
};

function ajCommentFormSubmit(){
 $('#txpCommentInputForm').ajaxSubmit(optAjComment);  
};

//function clearFormByID(formID){
  //document.getElementById(formID).reset();
function clearMemberEditForm(){
  document.member_edit_form.personal_interests.value = "";
  document.member_edit_form.kids_interests.value = "";
  document.member_edit_form.url.value = "";
  document.member_edit_form.favorite_books.value = "";
  document.member_edit_form.favorite_websites.value = "";
  document.member_edit_form.location.value = "";
  document.member_edit_form.statement.value = "";
  document.member_edit_form.imgfile.value = "";
  return true;
}

function clearMemberRegForm(){
    document.member_reg_form.email.value = "";
    document.member_reg_form.pq_userid.value = "";
    document.member_reg_form.pq_password.value = "";
    document.member_reg_form.password.value = "";
    document.member_reg_form.termagree.checked = false;
    document.member_reg_form.receive_newsletter.checked = false;
}
function playFLV(){
    if (flashMovie){
        flashMovie.playFLV();
    }
}
function getFlashMovieObject(movieName)
{
        if (document.getElementById) {
            flashMovie = document.getElementById(movieName);
            return flashMovie;
         }
  if (window.document[movieName]) 
  {
      return window.document[movieName];
  }
  if (navigator.appName.indexOf("Microsoft Internet")==-1)
  {
    if (document.embeds && document.embeds[movieName])
      return document.embeds[movieName]; 
  }
  else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
  {
    return document.getElementById(movieName);
  }
}

function callFlashPlayVideo() 
{
	var movie=getFlashMovieObject("kcnMovie");
        movie.playFLV();
}
function toggle_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'none')
e.style.display = 'block';
else
e.style.display = 'none';
}
function toggle_visibility2(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'block';
}
function hide_visibility(id) {
var e = document.getElementById(id);
if(e.style.display == 'block')
e.style.display = 'none';
else
e.style.display = 'none';
}
function callFlashPlayVideoHidePlay() 
{
        hide_visibility('videoFrameLink');
        hide_visibility('videoFramePlayOverlay');
	var movie=getFlashMovieObject("kcnMovie");
        movie.playFLV();
}


function sizeSidebar(){
   if(document.getElementById('sidebar-right') && document.getElementById('centerContent')){
    var maxy;
    var maxyright;
    var maxyleft;
    maxyright = document.getElementById('rightbar-items').offsetHeight;
    maxyleft = document.getElementById('leftbar-items').offsetHeight+20;
    if (maxyleft > maxyright){
        maxy = maxyleft;
    } else {
        maxy = maxyright;        
    }

    
    var maxy2;
    maxy2 = document.getElementById('centerContent').offsetHeight;
    if (maxy2 > maxy){
        document.getElementById('sidebar-right').style.height = maxy2+"px";
        document.getElementById('sidebar-left').style.height = maxy2+"px";
    } else {
        //document.getElementById('centerContent').style.height = maxy+"px";
        document.getElementById('sidebar-right').style.height = maxy+"px";
        document.getElementById('sidebar-left').style.height = maxy+"px";
    }
   } 
}
function clearText(thefield){
if (thefield.defaultValue==thefield.value)
thefield.value = ""
}
function restoreText(thefield){
if (''==thefield.value)
thefield.value = thefield.defaultValue
}


