var Dom = YAHOO.util.Dom;
Dom.hide = function(el) { Dom.setStyle(el,'display','none'); };
Dom.show = function(el) { Dom.setStyle(el,'display','block'); }
var E = YAHOO.util.Event;
var Connect = YAHOO.util.Connect;
var Dialog = YAHOO.widget.Dialog;
var SlideDirections = {Prev: 0, Next: 1};
var wlProdSelected = 0;
var nToText = ['one','two','three','four','five','six','seven','eight','nine','ten'];
var wlSlideDelay = 30 * 1000;
var wlSlideTimer; 

function wadSignup() {
	var email = Dom.get('wad_email');
	var zip = Dom.get('wad_zip');

	if (Dom.hasClass(email,'default_text') || Dom.hasClass(zip,'default_text')) {
		alert('Please enter both an email address and a zip code.');
		return;
	}

	var callback = {
		success: blogWadSignupOk,
		failure: blogWadSignupFailed
	}	

	var tx = Connect.asyncRequest('GET','/wp-content/plugins/wineaccess/wineaccess_ajax.php?action=wad_signup&email=' + email.value + '&zip=' + zip.value, callback, null);
}

function blogWadSignupOk() {
	// signupDialog is defined in next.js
	signupDialog.show();	

	wadSignupOk();

	Dom.get('wad_email').value = '';
	Dom.get('wad_zip').value = '';
}

function blogWadSignupFailed(resp) {
	// signupDialog is defined in next.js
	signupDialog.show();	

	wadSignupFailed(resp);
}

function sidebarInit() {
}

function toggleChildren(catId) {
	var toggle = $('toggle_for_' + catId);
	var child_list = $('children_of_' + catId);
	if (!toggle.hasClassName('active')) {
		// display list of children, if it exists
		if (child_list) {
			Effect.Appear(child_list, { duration: 0.3} );
		}
		toggle.addClassName('active');
	} else {
		// hide list of children, if it exists
		if (child_list) {
			Effect.Fade(child_list, { duration: 0.3} );
		}
		toggle.removeClassName('active');
	}
}


function moreComments(productId) {
	$('short_comments_for_' + productId).hide();
	Effect.Appear('comments_for_' + productId);
}

function wlSlide(direction) {
	// check to see if we're already executing a fade
	var fxQueue = Effect.Queues.get('wl');
	if (fxQueue.size() > 0) {
		return;
	}

	var dotsEl = $('wl_dots');

	if (nWlProducts <= 1) {
		return;
	}

	if (direction == SlideDirections.Next) {
		var wlProdToSelect = (wlProdSelected+1) % nWlProducts;
	} else {
		if (wlProdSelected == 0) {
			var wlProdToSelect = nWlProducts - 1;
		} else {
			var wlProdToSelect = wlProdSelected - 1;
		}
	}
	
	dotsEl.removeClassName(nToText[wlProdSelected]);
	Effect.Fade('wl_product_' + wlProdSelected, {queue: {scope: 'wl'}});
	dotsEl.addClassName(nToText[wlProdToSelect]);
	Effect.Appear('wl_product_' + wlProdToSelect, {queue: {scope: 'wl'}});

	wlProdSelected = wlProdToSelect;
}

function initWlSlide() {
	Event.observe('wl_prev_btn', 'click', function() {
		wlSlide(SlideDirections.Prev);
	});
	Event.observe('wl_next_btn', 'click', function() {
		wlSlide(SlideDirections.Next);
	});

	wlSlideTimer = setInterval('wlSlide(SlideDirections.Next)', wlSlideDelay);
}
