/* results.js */

Ext.onReady(function(){
    var lessHeight = 65;
    var heights = {};

    var oDescriptions = Ext.select('ol.results li div.description', true);
    oDescriptions.each(function(el, array, index){
        heights[el.dom.id] = el.getHeight(true) + 20;
        if(heights[el.dom.id] > lessHeight){
            el.setStyle({ overflow: 'hidden', height: lessHeight + 'px' });
            var more = el.createChild({ tag: 'div', id: el.dom.id + '-more', rel: el.dom.id, cls: 'more', html: '&hellip;more' });
            var less = el.createChild({ tag: 'div', id: el.dom.id + '-less', rel: el.dom.id, cls: 'less', style: { display: 'none' }, html: '&hellip;less' });
            more.on('click', function() {
                more.setDisplayed(false);
                Ext.get(more.getAttribute('rel')).setHeight(heights[more.getAttribute('rel')], { duration: 0.65, easing: 'bounceOut', callback: function() { less.setDisplayed(true) } });
            }, el);
            less.on('click', function() {
                less.setDisplayed(false);
                Ext.get(less.getAttribute('rel')).setHeight(lessHeight, { duration: 0.65, easing: 'bounceOut', callback: function() { more.setDisplayed(true) } });
            }, el);
        }
    });
});
