/*
Copyright (c) 2009, Swati Raju. All rights reserved.
Author: Swati Raju
version: 1.0.0
*/
var Y = YAHOO;
var yud = YAHOO.util.Dom;
var yue = YAHOO.util.Event;
var yua = YAHOO.util.Anim;
Y.namespace("LBF");
Y.namespace("LBF.products");

/**
    * LBF products
    *
    * @module LBF products
    * @title LBF products
    * @namespace YAHOO.LBF.products
    * @requires YAHOO, dom, event
    */
Y.LBF.products = function() {
    var hideArrow = function(e){
        var oRelatedTarget = yue.getRelatedTarget(e);
        if (oRelatedTarget == this || !yud.isAncestor(this, oRelatedTarget)){
            var arrow = yud.getElementsByClassName("arrow", "div", this);
            var myAnim = new yua(arrow[0], { 
                right: { to: -141 },
                opacity: {to: 0}  
            }, .30, YAHOO.util.Easing.easeOut);
            myAnim.animate();
        }
     };
     
     var showArrow = function(e){
         var arrow = yud.getElementsByClassName("arrow", "div", this);
         var myAnim = new yua(arrow[0], { 
                right: { to: 0 },
                opacity: {to: 1}  
            }, .30, YAHOO.util.Easing.easeOut);
         myAnim.animate(); 
     };
     var showSpeech = function(e){
           yud.setStyle("speech", "display", "block");
            var myAnim = new yua("speech", { 
                opacity: { to: 1 }  
            }, .5, YAHOO.util.Easing.easeOut); 
            myAnim.animate();
        };
        var hideSpeech = function(e){
             var oRelatedTarget = yue.getRelatedTarget(e);
             if (oRelatedTarget != yud.get("speech") && !yud.isAncestor( yud.get("speech"), oRelatedTarget)){
                  var myAnim = new yua("speech", { 
                     opacity: { to: 0 }  
                  }, .5, YAHOO.util.Easing.easeOut);
                  var done = function(){
                      yud.setStyle("speech", "display", "none");
                  } 
                  myAnim.onComplete.subscribe(done);
                  myAnim.animate();
             }
         };
        var doNothing = function(e){
               yue.preventDefault(e);
        };
     
    return{
        /**
        * init page
        *
        * @method init
        * @param
        * @returns
        */
        init: function() {
            var grid = yud.get("mod-grid");
            var pA = yud.getElementsByClassName("prod", "a", grid);
            yue.on(pA, "mouseover", showArrow);
            yue.on(pA, "mouseout", hideArrow);
            if (body_class != "ie"){  
                yue.on("dog-talk", "mouseover", showSpeech, null, false);
                yue.on("dog-talk", "mouseout", hideSpeech, null, false);
            }
            yue.on("dog-talk", "click", doNothing, null, false);
        }
    };
}();
Y.LBF.products.init();