function getDimension() {
    if(jQuery.browser.msie) {
        var widthWI = document.documentElement.clientWidth;
        var heightWI = document.documentElement.clientHeight;
    } else {
        var widthWI = window.innerWidth;
        var heightWI = window.innerHeight;   // non ie
    }

    var heightBOX = jQuery("#siteContainer").height();
    var widthBOX = jQuery("#siteContainer").width();
    var xPos = (((widthWI - widthBOX)/2)-8);
    var yPos = (((heightWI - heightBOX)/2)-20);
    if(xPos<0)xPos=0;
    if(yPos<0)yPos=0;

    jQuery("#siteContainer").css("left",xPos);//.css("top",yPos)

    var heightLayerBox = jQuery("#siteLayer").height();
    var widthLayerBox = jQuery("#siteLayer").width();
    var xcPos = ((widthWI - widthLayerBox)/2);
    var ycPos = (((heightWI - heightLayerBox)/2)-20);
    if(xcPos<0)xcPos=0;
    if(ycPos<0)ycPos=0;

    jQuery("#siteLayer").css("left",xcPos);//.css("top",yPos)
}
jQuery(window).resize(function() {
    getDimension();
});
loadContent = function( uri, layerId, controller, formname )
{
    param = '';
    if( null != formname ) {
        param = jQuery('#'+formname+'').serialize();
    }

    var layer = null != layerId ? layerId : 'pageContent';
    //jQuery("#divMessages").append("layer:"+layerId+"<br />uri:"+uri+"<br />formname:"+formname+"<br /><br />");

    uri = '/modules/Bootstrap.php?r='+uri;
    if( null != controller ) {
        uri = uri + '&controll='+controller;
    }
    if(uri.indexOf("?")>=0) {
        uri = uri + "&_target=" + layerId;
    }
    else {
        uri = uri + "?_target=" + layerId;
    }
    jQuery.ajax( {
        url: uri,
        type: "POST",
        data: param,
        success: function(content) {
            var divs = jQuery('<div>' + content + '</div>');
            // jQuery('#ajaxContainer').activity(false);

            var didContainerUpdate= false;

            // check for new content to insert first
            var setupList = jQuery('.newSetup',divs);
            if(setupList.size() > 0) {
                setupList.each( function (k, v){
                    v = jQuery(v);
                    if(v.attr("id")!='') {
                        //jQuery("#divMessages").append("newSetup id: " + "#"+v.attr("id") + "<br />");
                        jQuery("#"+v.attr("id")).html(v.html());
                    }
                    else {
                        //jQuery("#divMessages").append("newSetup layer: " + "#"+layer + "<br />");
                        jQuery('#' + layer).html(v.html());
                    }
                });
                didContainerUpdate = true;
            }


            // check for new content
            var list = jQuery('.newContent',divs);
            if(list.size() > 0) {

                list.each( function (k, v){
                    v = jQuery(v);
                    if (v.attr("id")=="ignore") return;

                    //jQuery("#divMessages").append("newContent: " + "#"+v.attr("id") + "<br />");
                    jQuery("#"+v.attr("id")).html( v.html() );

                });
                didContainerUpdate = true;
            }

            if(didContainerUpdate) {
                // do javascript parsing here, after the target node is inserted into the page
                var dummy = jQuery('<div></div>');
                dummy.html(content);
                dummy=null;

                jQuery('#' + layer).show();
                return;
            }


            if(content == ''){
                jQuery("#divMessages").append('uri'+uri+' layerId'+layerId+"implement a call not found action<br />");
            } else {
                // jQuery('#ajaxContainer').activity(false);
                jQuery('#' + layer).html(content);
                jQuery('#' + layer).show()
            }
        },

        error: function(content) {
            // jQuery('#ajaxContainer').activity(false);
            isRequestRunning = false;
            jQuery('#' + layer).html(content);
            jQuery('#' + layer).show('slow');
        }
    });
}
