function populateElement(selector, defvalue) {
    $(selector).each(function() {
        if($.trim(this.value) == "") {
            this.value = defvalue;
        }
    });
  
    $(selector).focus(function() {
        if(this.value == defvalue) {
            this.value = "";
        }
    });
    
    $(selector).blur(function() {
        if($.trim(this.value) == "") {
            this.value = defvalue;
        }
    });
 }


var timeout         = 500;
var closetimer		= 0;
var ddmenuitem      = 0;

function jsddm_open()
{	jsddm_canceltimer();
    jsddm_close();
    var a = $(this).find('a:eq(0)');
    var p = a.position();
    ddmenuitem = $(this).find('ul:eq(0)').css({'visibility': 'visible'})
    ddmenuitem.css({'left': (p.left+a.outerWidth(false)-ddmenuitem.outerWidth(false))+'px', 'top': (p.top+a.outerHeight(true)-1)+'px'});}

function jsddm_close()
{	if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}

function jsddm_timer()
{	closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{	if(closetimer)
    {	window.clearTimeout(closetimer);
	closetimer = null;}}

function addToCart(e)
{
	var loader = $("#cart-loader-wrapper");
	if(!loader.length > 0){
		loader = jQuery("<div class='cart-loader' id='cart-loader-wrapper'><img src='/images/loading.gif' id='cart-loader-img'/><div id='cart-loader-text'>The book is being added to the cart. Please wait...</div></div>");
	}else{
		loader.find('#cart-loader-img').attr('src', '/images/loading.gif');
		loader.find('#cart-loader-text').text('The book is being added to the cart. Please wait...');
	}
	var id = e.target.id.substring(3);
	var qty = $("#qty-"+id).attr("value");
	if(qty == undefined){
		qty = 1;
	}
	var src = $(e.target);
	loader.find('#cart-loader-text');
	
	loader.appendTo(src.parent().get(0));
	loader.css({'top' : (src.position().top - 20)+'px', 'left': src.position().left+'px'});
	$.getJSON("/shop/cart/add.html",{id:id, qty: qty}, addToCartDone);
	loader.fadeIn(300);
	return false;
}

function addToCartDone(data){
	var loader = $("#cart-loader-wrapper");
	if(data.success){
		$("#cart-items").text(data.count);
		$("#cart-amount").text(data.total);
		loader.find('#cart-loader-img').attr('src', '/images/loaded.gif');
		loader.find('#cart-loader-text').text('The book has been added to the cart.');	
	}else{
		loader.find('#cart-loader-img').attr('src', '');
		loader.find('#cart-loader-text').text('Could not add the book to the cart.');
	}
	loader.animate({opacity: 1.0}, 3000).fadeOut(1000);
}
$(document).ready(function()
{
    populateElement('#search', 'Search by ISBN, title, author, etc...');
    $('.sort-by').bind('mouseover', jsddm_open);
    $('.sort-by').bind('mouseout',  jsddm_timer);
    $('.btn-cart').bind('click', addToCart);
});
    

document.onclick = jsddm_close;
