(function(){

    var DomReady = window.DomReady = {};

    // Everything that has to do with properly supporting our document ready event. Brought over from the most awesome jQuery. 

    var userAgent = navigator.userAgent.toLowerCase();

    // Figure out what browser is being used
    var browser = {
        version: (userAgent.match( /.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/ ) || [])[1],
        safari: /webkit/.test(userAgent),
        opera: /opera/.test(userAgent),
        msie: (/msie/.test(userAgent)) && (!/opera/.test( userAgent )),
        mozilla: (/mozilla/.test(userAgent)) && (!/(compatible|webkit)/.test(userAgent))
    };    

    var readyBound = false;	
    var isReady = false;
    var readyList = [];

    // Handle when the DOM is ready
    function domReady() {
        // Make sure that the DOM is not already loaded
        if(!isReady) {
            // Remember that the DOM is ready
            isReady = true;
        
            if(readyList) {
                for(var fn = 0; fn < readyList.length; fn++) {
                    readyList[fn].call(window, []);
                }
            
                readyList = [];
            }
        }
    };

    // From Simon Willison. A safe way to fire onload w/o screwing up everyone else.
    function addLoadEvent(func) {
        var oldonload = window.onload;
        if (typeof window.onload != 'function') {
            window.onload = func;
        } else {
            window.onload = function() {
                if (oldonload) {
                    oldonload();
                }
                func();
            }
        }
    };

    // does the heavy work of working through the browsers idiosyncracies (let's call them that) to hook onload.
    function bindReady() {
        if(readyBound) {
            return;
        }
	
        readyBound = true;

        // Mozilla, Opera (see further below for it) and webkit nightlies currently support this event
        if (document.addEventListener && !browser.opera) {
            // Use the handy event callback
            document.addEventListener("DOMContentLoaded", domReady, false);
        }

        // If IE is used and is not in a frame
        // Continually check to see if the document is ready
        if (browser.msie && window == top) (function(){
            if (isReady) return;
            try {
                // If IE is used, use the trick by Diego Perini
                // http://javascript.nwbox.com/IEContentLoaded/
                document.documentElement.doScroll("left");
            } catch(error) {
                setTimeout(arguments.callee, 0);
                return;
            }
            // and execute any waiting functions
            domReady();
        })();

        if(browser.opera) {
            document.addEventListener( "DOMContentLoaded", function () {
                if (isReady) return;
                for (var i = 0; i < document.styleSheets.length; i++)
                    if (document.styleSheets[i].disabled) {
                        setTimeout( arguments.callee, 0 );
                        return;
                    }
                // and execute any waiting functions
                domReady();
            }, false);
        }

        if(browser.safari) {
            var numStyles;
            (function(){
                if (isReady) return;
                if (document.readyState != "loaded" && document.readyState != "complete") {
                    setTimeout( arguments.callee, 0 );
                    return;
                }
                if (numStyles === undefined) {
                    var links = document.getElementsByTagName("link");
                    for (var i=0; i < links.length; i++) {
                        if(links[i].getAttribute('rel') == 'stylesheet') {
                            numStyles++;
                        }
                    }
                    var styles = document.getElementsByTagName("style");
                    numStyles += styles.length;
                }
                if (document.styleSheets.length != numStyles) {
                    setTimeout( arguments.callee, 0 );
                    return;
                }
			
                // and execute any waiting functions
                domReady();
            })();
        }

        // A fallback to window.onload, that will always work
        addLoadEvent(domReady);
    };

    // This is the public function that people can use to hook up ready.
    DomReady.ready = function(fn, args) {
        // Attach the listeners
        bindReady();
    
        // If the DOM is already ready
        if (isReady) {
            // Execute the function immediately
            fn.call(window, []);
        } else {
            // Add the function to the wait list
            readyList.push( function() {
                return fn.call(window, []);
            } );
        }
    };
    
    bindReady();
	
})();


var banners = ["banner1", "banner2", "banner3", "banner4", "banner5", "banner6", "banner7", "banner8", "banner9", "banner10", "banner11", "banner12", "banner98", "banner99"];


// JSONP
function jsonp(url){  
    var head = document.getElementsByTagName("head")[0];  
    var script = document.createElement("script");  
    script.type = "text/javascript";  
    script.src = url;  
    head.appendChild(script);  
}  

function addReady(funcion) {
    var body = document.getElementsByTagName("body")[0];  
    var script = document.createElement("script");  
    script.type = "text/javascript";  
    script.textContent=funcion+"();";
    body.appendChild(script);     
} 

function json_process(data){  
    alert(data);  
    console.info(data);  
} 
 
function pedirBanner(bannerId){  
    
    var url = "http://ads.tuamo.net/api/generar/generarBanner"+bannerId;  
    
    
    jsonp(url);  
}

// REEMPLAZO DE BANNERS
function generarBanner(jsonRespuesta) {
    bannerId = jsonRespuesta['bannerId'];

    document.getElementById(bannerId).style.display="";
    document.getElementById(bannerId).firstChild.href=jsonRespuesta["direccion"];
    document.getElementById(bannerId).firstChild.setAttribute('onclick', 'pedirBanner("/'+jsonRespuesta['bannerId']+'")');
    document.getElementById(bannerId).firstChild.firstChild.src=jsonRespuesta["imagen"];
}

// INICIALIZACION
function inicializar() {
    var i=0;
    var bannerIds='';
    
    for (i=0; i<banners.length;i++ ) {
        if (document.getElementById(banners[i]) != undefined) {
            bannerIds+="/"+banners[i]; 
        }
    }
    
    pedirBanner(bannerIds);
}

function recolocar() {       
    if ($('bloque_google') != undefined) {
       
       
       if ($('lateral_izquierda').offsetHeight < $('contenido').offsetHeight) {
       
            var calculo= $('bloque_google').offsetHeight+$('contenido').offsetHeight-$('lateral_izquierda').offsetHeight;

            $('bloque_google').style.minHeight=calculo+"px";
        


        }
    }
}
//setTimeout(inicializar, 150);
DomReady.ready(function() {
    inicializar();
});
document.body.onload=recolocar;
//setTimeout(recolocar, 500);


