/********** 
Done by Prasad Babu on 01-dec-2006
to implement the expand-collapse effect in pricetrack section
This changes the hide content shows in slides
**************/

var pricetrack_slideSpeed = 8; // Higher value = faster
var pricetrack_timer = 5;      // Lower value = faster

var objectIdToSlideDown = false;
var pricetrack_activeId = false;
var pricetrack_slideInProgress = false;

function showHideContent(e,inputId)
{
        if(pricetrack_slideInProgress)return;
        pricetrack_slideInProgress = true;
        if(!inputId)inputId = this.id;
        inputId = inputId + '';
        var numericId = inputId.replace(/[^0-9]/g,'');
        var answerDiv = document.getElementById('pricetrack_a' + numericId);

        objectIdToSlideDown = false;

        if(!answerDiv.style.display || answerDiv.style.display=='none'){
                if(pricetrack_activeId &&  pricetrack_activeId!=numericId){
                        objectIdToSlideDown = numericId;
                        slideContent(pricetrack_activeId,(pricetrack_slideSpeed*-1));
                }else{

                        answerDiv.style.display='block';
                        answerDiv.style.visibility = 'visible';

                        slideContent(numericId,pricetrack_slideSpeed);
                }
        }else{
                slideContent(numericId,(pricetrack_slideSpeed*-1));
                pricetrack_activeId = false;
        }
}

function slideContent(inputId,direction)
{

        var obj =document.getElementById('pricetrack_a' + inputId);
        var contentObj = document.getElementById('pricetrack_ac' + inputId);
        height = obj.clientHeight;
        if(height==0)height = obj.offsetHeight;
        height = height + direction;
        rerunFunction = true;
        if(height>contentObj.offsetHeight){
                height = contentObj.offsetHeight;
                rerunFunction = false;
        }
        if(height<=1){
                height = 1;
                rerunFunction = false;
        }

        obj.style.height = height + 'px';
        var topPos = height - contentObj.offsetHeight;
        if(topPos>0)topPos=0;
        contentObj.style.top = topPos + 'px';
        if(rerunFunction){
                setTimeout('slideContent(' + inputId + ',' + direction + ')',pricetrack_timer);
        }else{
                if(height<=1){
                        obj.style.display='none';
                        if(objectIdToSlideDown && objectIdToSlideDown!=inputId){
                                document.getElementById('pricetrack_a' + objectIdToSlideDown).style.display='block';
                                document.getElementById('pricetrack_a' + objectIdToSlideDown).style.visibility='visible';
                                slideContent(objectIdToSlideDown,pricetrack_slideSpeed);
                        }else{
                                pricetrack_slideInProgress = false;
                        }
                }else{
                        pricetrack_activeId = inputId;
                        pricetrack_slideInProgress = false;
                }
        }
}
function initShowHideDivs()
{
        var divs = document.getElementsByTagName('DIV');
        var divCounter = 1;
        for(var no=0;no<divs.length;no++){
                if(divs[no].className=='brand_sub'){
                        divs[no].onclick = showHideContent;
                        divs[no].id = 'pricetrack_q'+divCounter;
                        var answer = divs[no].nextSibling;
                        while(answer && answer.tagName!='DIV'){
                                answer = answer.nextSibling;
                        }
                        answer.id = 'pricetrack_a'+divCounter;
                        contentDiv = answer.getElementsByTagName('DIV')[0];
                        contentDiv.style.top = 0 - contentDiv.offsetHeight + 'px';
                        contentDiv.className='content_pricetrack';
                        contentDiv.id = 'pricetrack_ac' + divCounter;
                        answer.style.display='none';
                        answer.style.height='1px';
                        divCounter++;
                }
        }
}

