var oToolbar;
var oDocBody;
var iOffsetX = 0;
var iOffsetY = 10;
var iDragStartX = 0;
var iDragStartY = 0;
var iOffsetStartX = 0;
var iOffsetStartY = 0;

SafeAttachEvent(window, 'load', ToolbarLoad);
SafeAttachEvent(window, 'resize', PageSize);

function ToolbarLoad() {
    oToolbar = document.getElementById('toolbar')
    if (oToolbar) {
        var sOffsetX;
        var sOffsetY;
        
        sOffsetX = getCookie('PublisToolBOffX');
        sOffsetY = getCookie('PublisToolBOffY');
        iOffsetX = sOffsetX=='' ? iOffsetX : Number(sOffsetX);
        iOffsetY = sOffsetY=='' ? iOffsetY : Number(sOffsetY);
        setCookie('PublisToolBOffX', iOffsetX);
        setCookie('PublisToolBOffY', iOffsetY);

        oDocBody = (document.compatMode && document.compatMode != 'BackCompat') ? document.documentElement : document.body;
        PageSize();
        oToolbar.style.display = 'block';
        SafeAttachEvent(window, 'scroll', PositionToolbar);
        SafeAttachEvent(oToolbar, 'mousedown', ToolbarDragStart);
        SafeAttachEvent(oToolbar, 'mouseup', ToolbarDragEnd);
        SafeAttachEvent(document, 'mousemove', ToolbarDrag);
    }
}

function PageSize() {
    if (oToolbar) {
        if (iOffsetX == 0 || document.documentElement.clientWidth - 120 < iOffsetX) {
            iOffsetX = document.documentElement.clientWidth - 120;
            setCookie('PublisToolBOffX', iOffsetX)
        }
        oToolbar.style.left = iOffsetX + 'px';

        PositionToolbar();
    }
}

function PositionToolbar()
{
    if (document.all) {
        oToolbar.style.top = document.documentElement.scrollTop + iOffsetY + 'px';
    }
    else
    {
        if (document.getElementById)
        {
            oToolbar.style.top = document.body.scrollTop + 40 + iOffsetY + 'px';
        }
    }
}

function ToolbarDragStart(e) {
    e = e == null ? window.event : e;
    iDragStartX = e.clientX;
    iDragStartY = e.clientY;
    iOffsetStartX = iOffsetX;
    iOffsetStartY = iOffsetY;
    SafeAttachEvent(document, 'selectstart', StopSelection);
    return false;
}
function ToolbarDragEnd(e) {
    e = e == null ? window.event : e;

    iDragStartX = 0;
    iDragStartY = 0;

    setCookie('PublisToolBOffX', iOffsetX)
    setCookie('PublisToolBOffY', iOffsetY)
    SafeDetachEvent(document, 'selectstart', StopSelection);

    return false;
}
function ToolbarDrag(e) {
    if (iDragStartX != 0) {
        e = e == null ? window.event : e;

        iOffsetX = iOffsetStartX + e.clientX - iDragStartX;
        iOffsetY = iOffsetStartY + e.clientY - iDragStartY;

        oToolbar.style.left = iOffsetX + 'px';
        PositionToolbar();
        e.cancelBubble = true;
        return false;
    }
    return true;
}
function StopSelection() {
    return iDragStartX != 0;
}
function setCookie(c_name, value) 
{
    document.cookie = c_name + '=' + escape(value) + ';path=';
}
function getCookie(c_name)
{
    if (document.cookie.length > 0) {
        c_start = document.cookie.indexOf(c_name + '=');
        if (c_start != -1) {
            c_start = c_start + c_name.length + 1;
            c_end = document.cookie.indexOf(';', c_start);
            if (c_end == -1) c_end = document.cookie.length;
            return unescape(document.cookie.substring(c_start, c_end));
        }
    }
    return '';
}