function noError() {
    return true;
}

// turn off error reporting. delete this event on dev version.
window.onerror = noError;


var getRandom = function(min, max) {
    return Math.floor(Math.random() * (max - min + 1)) + min;
};
    
var changeContent = function(block, content) {
    document.getElementById(block).innerHTML = '<p class="text" id="text">' + content + ' <span class="inline">More</span></p>';
    return block;    
};

var up_limit;
var down_limit;
var block_y;
var block_h = 483;
var area_h;
//tmp = false;

var placeIt = function(obj) {
    obj = document.getElementById(obj);
    var scroll_pos = 0;
    var window_h;
    
    if( typeof( window.pageYOffset ) == 'number' ) {
    //Netscape compliant
    scroll_pos = window.pageYOffset;
    window_h = window.innerHeight; 
    down_limit = document.body.scrollHeight - 378 - block_h;
    //scrOfX = window.pageXOffset;
  } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
    //DOM compliant
    scroll_pos = document.body.scrollTop;
    window_h = document.body.clientHeight;
    down_limit = document.body.scrollHeight - 378 - block_h;
    //scrOfX = document.body.scrollLeft;
  } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
    //IE6 standards compliant mode
    scroll_pos = document.documentElement.scrollTop;
    window_h = document.documentElement.clientHeight;
    down_limit = document.documentElement.scrollHeight - 378 - block_h;
    //scrOfX = document.documentElement.scrollLeft;
  }
  if ('v' == '\v') { down_limit += 5; }
  
  //down_limit = up_limit + area_h - block_h;
  //alert('down_limit  => ' + down_limit);
    
    if ( block_y > scroll_pos + window_h - block_h) {
        block_y = scroll_pos + window_h - block_h;
    }
    if ( block_y < scroll_pos ) {
        block_y = scroll_pos;
    }
    if ( block_y > down_limit ) {
        block_y = down_limit;
    }
    if ( block_y < up_limit ) {
        block_y = up_limit;
    }
    
    obj.style.top = block_y + 'px';
    setTimeout("placeIt('sideLayout')", 0);
}

function init() {
    block_y    = findPosY();
    up_limit   = block_y;
    var obj = document.getElementById('sideLayout');
    var parent = obj.parentNode;
    //area_h = parent.style.height;
    area_h = parent.offsetHeight;

    //obj.style.left = x;

    if (area_h < 507) {
        area_h = 507;
        parent.style.height = '507px';
    }
    window.onscroll = setTimeout("placeIt('sideLayout')", 0);
}

function findPosY() {
    var obj = document.getElementById('sideLayout');
    var currtop = 0;
    if (obj.offsetParent)
        while (obj.offsetParent) {
            currtop += obj.offsetTop
            obj = obj.offsetParent;
        }
    else if (obj.y) currtop += obj.y;
    return currtop;
}

function findPosX() {
var obj = document.getElementById('sideLayout');
var currleft = 0;
if (obj.offsetParent)
while (obj.offsetParent) {
currleft += obj.offsetLeft
obj = obj.offsetParent;
}
else if (obj.x) currleft += obj.x;
return currleft;
}
 
(function(){
    function combinedWindowOnload(){
    if(arguments.callee.done){return}
    arguments.callee.done=true;
    if(document.getElementsByTagName){
        if(!/WebKit/i.test(navigator.userAgent)){
        setTimeout('init()',0);
        setTimeout('changeContent("message", data.text[getRandom(0, data.text.length - 1)].message)',0);
        }
        init(); changeContent("message", data.text[getRandom(0, data.text.length - 1)].message);
        if (typeof $=='undefined') {
        init(); changeContent("message", data.text[getRandom(0, data.text.length - 1)].message);
        }
    }
}
    /*@cc_on document.write("\x3cscript id=\"_IEscript\" defer=\"defer\" src=\"javascript:void(0)\">\x3c\/script>");(document.getElementById("_IEscript")).onreadystatechange=function(){if(this.readyState=="complete"){combinedWindowOnload()}};@*/
    if(document.addEventListener){
    document.addEventListener("DOMContentLoaded",combinedWindowOnload,false)
    }
    if(/WebKit/i.test(navigator.userAgent)){
    var safariInterval=setInterval(function(){
        if(/loaded|complete/.test(document.readyState)){
        clearInterval(safariInterval);
        combinedWindowOnload();
        }
    },10);
    }
    window[/*@cc_on !@*/0?'attachEvent':'addEventListener'](/*@cc_on 'on'+@*/'load',function(){
    if(/WebKit/i.test(navigator.userAgent)){
        init(); changeContent("message", data.text[getRandom(0, data.text.length - 1)].message);
    }
    combinedWindowOnload()
    },false)
})()