        function getWindowHeight() {
                var windowHeight = 0;
                if (typeof(window.innerHeight) == 'number') {
                        windowHeight = window.innerHeight;
                }
                else {
                        if (document.documentElement && document.documentElement.clientHeight) {
                                windowHeight = document.documentElement.clientHeight;
                        }
                        else {
                                if (document.body && document.body.clientHeight) {
                                        windowHeight = document.body.clientHeight;
                                }
                        }
                }
                return windowHeight;
        }
        
        function setFooter() {
                if (document.getElementById) {
                        var windowHeight = getWindowHeight();
                        if (windowHeight > 0) {
                                
                                var bgElement = document.getElementById('wrap2');
                                
                                var contentHeight = document.getElementById('site_wrapper').offsetHeight;
                                var footerElement = document.getElementById('footer');
                                var footerHeight  = footerElement.offsetHeight;
                                if (windowHeight - (contentHeight + footerHeight + 50) >= 0) {
                                        
                                        bgElement.style.height = (windowHeight) + 'px';
                                        
                                        footerElement.style.position = 'relative';
                                        footerElement.style.top = (windowHeight - (contentHeight + footerHeight) - 50) + 'px';
                                }
                                else {
                                        footerElement.style.position = 'relative';
                                        footerElement.style.top = '0' + 'px';
                                }
                        }
                }
        }
        
        window.onload = function() {
                setFooter();
        }
        window.onresize = function() {
                setFooter();
        }
