﻿function setUpStickyFloatingElement(ElementID) {
    try {
        if ($("#" + ElementID).get(0) != null) {

            var cookieDays = 365;

            var posY = readCookie(ElementID + "_posY");
            var posX = readCookie(ElementID + "_posX");

            posY = posY == null ? 0 : posY;
            posX = posX == null ? 0 : posX;
                        
            $('#' + ElementID)

                .css({ top: posY + 'px', left: posX + 'px' })
                .draggable({ stop: function(event, ui) {
                    createCookie(ElementID + "_posX", ui.position.left, cookieDays);
                    createCookie(ElementID + "_posY", ui.position.top, cookieDays);
                }
                });
        }
    }
    catch (e) {
    }
}

function resetStickyFloatingElementsPostions(ElementsID) {
    var StickyElements = ElementsID.split(",");
    for (var i = 0; i < StickyElements.length; i++) {
        try {
            eraseCookie(StickyElements[i] + "_posX");
            eraseCookie(StickyElements[i] + "_posY");
        }
        catch (e) {
        }  
    }
}

function checkStickyFloatingElementsDefaultPostions(ElementsID) {
    var StickyElements = ElementsID.split(",");
    for (var i = 0; i < StickyElements.length; i++) {
        try {
            if (readCookie(StickyElements[i] + "_posX") != null) {
                return false;
            };
            if (readCookie(StickyElements[i] + "_posY") != null) {
                return false;
            };
        }
        catch (e) {
        }
    }
    return true;
}

function createCookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name, "", -1);
}
