/*****************************************************************/
/*                                                               */
/*    JavaScript Document Developed by IVAN ALEKSIC              */
/*    SROOWN Interactive Design Solutions - Belgrade - EUROPE    */
/*    COPYRIGHT IVAN ALEKSIC - BELGRADE - SERBIA - EUROPE        */
/*    Revision 1.0 - March 17. 2008.                             */
/*                                                               */
/*****************************************************************/
var ScrollWin = {
    w3c: document.getElementById,
    iex: document.all,
    scrollInterval: null,
    currentBlock: null,
    getWindowHeight: function() {
        if (this.iex) return (document.documentElement.clientHeight) ? document.documentElement.clientHeight : document.body.clientHeight;
        else return window.innerHeight;
    },
    getScrollLeft: function() {
        if (this.iex) return (document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;
        else return window.pageXOffset;
    },
    getScrollTop: function() {
        if (this.iex) return (document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
        else return window.pageYOffset;
    },
    getElementYpos: function(el) {
        var y = 0;
        while (el.offsetParent) {
            y += el.offsetTop
            el = el.offsetParent;
        }
        return y;
    },
    scroll: function(name) {
        if (!this.w3c) {
            location.href = "#" + name;
            return;
        }
        if (this.currentBlock != null) this.currentBlock.className = this.offClassName;
        this.currentBlock = document.getElementById(name);
        this.currentBlock.className = this.onClassName;
        var doc = document.getElementById(this.containerName);
        var documentHeight = this.getElementYpos(doc) + doc.offsetHeight;
        var windowHeight = this.getWindowHeight();
        var ypos = this.getElementYpos(this.currentBlock);
        if (ypos > documentHeight - windowHeight) ypos = documentHeight - windowHeight;
        this.scrollTo(0, ypos);
    },
    scrollTo: function(x, y) {
        var left = this.getScrollLeft();
        var top = this.getScrollTop();
        if (Math.abs(left - x) <= 1 && Math.abs(top - y) <= 1) {
            window.scrollTo(x, y);
            clearInterval(this.scrollInterval);
            this.scrollInterval = null;
        } else {
            window.scrollTo(left + (x - left) / 2, top + (y - top) / 2);
        }
    }
};

ScrollWin.containerName = "container";
ScrollWin.anchorName = "anchor";
ScrollWin.blockName = "home";
ScrollWin.onClassName = "active";
ScrollWin.offClassName = "visited";

var ns = (navigator.appName.indexOf("Netscape") != -1);
var d = document;
var px = document.layers ? "" : "px";
var px2 = document.layers ? "" : "%"; //eu criei
function JSFX_FloatDiv(id, sx, sy) {
    var el = d.getElementById ? d.getElementById(id) : d.all ? d.all[id] : d.layers[id];
    window[id + "_obj"] = el;
    if (d.layers) el.style = el;
    el.cx = el.sx = sx; el.cy = el.sy = sy;
    el.sP = function(x, y) { this.style.left = x + px; this.style.top = y + px; };
    el.flt = function() {
        var pX, pY;
        pX = (this.sx >= 0) ? 0 : ns ? innerWidth : document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth;
        pY = ns ? pageYOffset : document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;
        if (this.sy < 0) pY += ns ? innerHeight : document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight;
        this.cx += (pX + this.sx - this.cx) / 8; this.cy += (pY + this.sy - this.cy) / 8;
        this.sP(this.cx, this.cy);
        setTimeout(this.id + "_obj.flt()", 40);
    }
    return el;
}



