var evntDiv;

function setYUI(arrReadMores, strOpen, strClose)
{

 if(strOpen == undefined)
 	strOpen = "&nbsp;...Read more";
 if(strClose == undefined)
 	strClose = "&nbsp;...Read less"

 	//##############################
YUI().use('anim', function(Y) {

    var len=arrReadMores.length;
    for(var i=0; i<len; i++) {
        setReadMore(arrReadMores[i][0], arrReadMores[i][1]);
    }

    function toggleRead(state, openDiv)
    {
        var elmt = document.getElementById(openDiv+"Open");
        if(state){
            elmt.innerHTML = strClose;
        }else{
            elmt.innerHTML = strOpen;
        }
        return true;
    }

    function setReadMore(div, divHeight){
        var contDiv = getPlug(div, divHeight);
        var contDivClick = getClick(contDiv, div);
        Y.one('#'+div+'Open').on('click', contDivClick);
        return true;
    }
    function getPlug(div, divHeight){
        var cont = Y.one('#'+div).plug(Y.Plugin.NodeFX, {
            to: { height: divHeight },
            from: {
                height: function(node) { // dynamic in case of change
                    return node.get('scrollHeight'); // get expanded height (offsetHeight may be zero)
                }
            },
            easing: Y.Easing.easeOut,
            duration: 0.5
        });
        evntDiv = cont;
        return cont;
    }
    function getClick(content, div){
    var onClick = function(e) {
        content.fx.set('reverse', !content.fx.get('reverse')); // toggle reverse
        toggleRead(content.fx.get('reverse'), div);
        content.fx.run();
    };
    return onClick;
    }
});

}


