if(typeof jbox == 'undefined')
    jbox = {};

var jbox_rootready_queries = [];

jbox.ready = function(func)
{
    if(!jbox._isReady)
    {
        var cs = func.toString();
        for(var i in jbox_rootready_queries)
        {
            if(jbox_rootready_queries[i].checksum == cs)
                return false;
        }
        jbox_rootready_queries.push({'fn':func,'checksum':cs});
    }
    else
    {
        func();
    }
}
jbox._isReady = false;

var jbox_rootready_boxes = [];

var readycheck = function()
{

    for(var i=0; i<jbox_rootready_boxes.length; i++)
    {
        if($("#"+jbox_rootready_boxes[i]).length)
            jbox_rootready_boxes.splice(i,1);
    }

    if(jbox_rootready_boxes.length > 0)
    {
        setTimeout(readycheck,100);
    }
    else
    {
        for(var i=0; i<jbox_rootready_queries.length; i++)
        {
            jbox_rootready_queries[i].fn();
        }
        jbox._isReady = true;
    }
    
}

$(function(){
    $("[id^='placeholder-']").each(function(){
        jbox_rootready_boxes.push(this.id.split('placeholder-')[1]);
    });
    $(".isjbox").each(function(){
        jbox_rootready_boxes.push(this.id);
    });
    readycheck();
});
