﻿var MouseX = 0;
var MouseY = 0;

jQuery(document).ready(function () {
    $(document).mousemove(function (e) {
        MouseX = e.pageX;
        MouseY = e.pageY;
        MouseOutHide("Services_subLinks", e);
    });

    var DocHght = $(document).height();
    var BodHght = $(document.body).height();
    if (BodHght < DocHght) {
        var Rem = DocHght - BodHght;
        var FootHeight = $("#footer").height();
        document.getElementById("footer").style.height = (Rem + FootHeight - 25) + "px";
    }

    AcceptsCookies("CookieDiv");
})

function WrapAppear(wrapId) {
    var Wrapper = document.getElementById(wrapId);
    if (Wrapper) {
        for (i = 0; i < Wrapper.childNodes.length; i++) {
            var subElem = Wrapper.childNodes[i];
            if (subElem.tagName && subElem.tagName.toLowerCase() == "div" && subElem.id) {
                SeeMe(subElem.id, "block");
            }
        }
    }
}

function SeeMe(elemId, dispStyle) {
    var Elem = document.getElementById(elemId);
    if (Elem) {
        Elem.style.display = dispStyle;
    }
}

function PositionToElement(elemId, targetId, xOffset, yOffset) {
    var Elem = document.getElementById(elemId);
    var Target = document.getElementById(targetId);
    if (Elem && Target) {
        var TargetPosition = $("#" + targetId);
        var ElemOffset = TargetPosition.offset();
        Elem.style.top = (ElemOffset.top + yOffset) + "px";
        Elem.style.left = (ElemOffset.left + xOffset) + "px";
    }    
}

function getElemCoords(elemId, getGlobalPosition) {
    var Elem = $("#" + elemId);
    if (Elem) {
        var ElemOffSet;
        if (getGlobalPosition) {
            ElemOffSet = Elem.offset();
        }
        else {
            ElemOffSet = Elem.position();
        }
        var ElemWidth = Elem.width();
        var ElemHeight = Elem.height();
        var ElemRight = ElemOffSet.left + ElemWidth;
        var ElemBottom = ElemOffSet.top + ElemHeight;
        return { top: ElemOffSet.top, bottom: ElemBottom, left: ElemOffSet.left, right:ElemRight };
    }
}

function MouseOutHide(elemId, e) {
    var ElemCoords = getElemCoords(elemId, true);
    if (MouseX > (ElemCoords.left - 15) && MouseX < (ElemCoords.right + 15) && MouseY < (ElemCoords.bottom + 15) && MouseY > (ElemCoords.top - 30)) {
        //SeeMe(elemId, "block");
    }
    else {
        SeeMe(elemId, "none");
    }
}

var contactClear = 0;
var contactText = "";
var contactStyle = "";

function ClearOnFocus(elemID) {
    var Elem = document.getElementById(elemID);
    if (Elem && contactClear == 0) {
        contactText = Elem.value;
        contactStyle = Elem.getAttribute("style");
        Elem.value = "";
        Elem.removeAttribute("style");
        contactClear = 1;
    }
}

function ReWriteOnBlur(elemID) {
    var Elem = document.getElementById(elemID);
    if (Elem) {
        if (Elem.value == "") {
            Elem.setAttribute("style", contactStyle);
            Elem.value = contactText;
            contactClear = 0;
        }
    }
}

function PortfolioImg(clicked, popupID, popupTitle, popupImg, ImgID) {
    var popUp = document.getElementById(popupID);
    if (popUp) {
        popUp.style.display = "block";
        popUp.style.margin = ($(window).scrollTop() + 200) +"px auto";
        document.getElementById(popupTitle).innerHTML = document.getElementById(ImgID).alt; ;
        document.getElementById(popupImg).src = document.getElementById(ImgID).src;
        document.getElementById(popupImg).alt = document.getElementById(ImgID).alt;
    }
}

function PopUpBox(popupID) {
    var popUp = document.getElementById(popupID);
    if (popUp) {
        popUp.style.display = "block";
        popUp.style.margin = ($(window).scrollTop() + 200) + "px auto";
    }
}

function AcceptsCookies(divId) {
    Set_Cookie('test', 'none', '', '/', '', '');
    if (Get_Cookie('test')) {
        Delete_Cookie('test', '/', '');
    }
    else {
        document.getElementById(divId).style.display = "block";
    }
}

function Set_Cookie(name, value, expires, path, domain, secure) {
    // set time, it's in milliseconds
    var today = new Date();
    today.setTime(today.getTime());

    /*
    if the expires variable is set, make the correct
    expires time, the current script below will set
    it for x number of days, to make it for hours,
    delete * 24, for minutes, delete * 60 * 24
    */
    if (expires) {
        expires = expires * 1000 * 60 * 60 * 24;
    }
    var expires_date = new Date(today.getTime() + (expires));

    document.cookie = name + "=" + escape(value) +
((expires) ? ";expires=" + expires_date.toGMTString() : "") +
((path) ? ";path=" + path : "") +
((domain) ? ";domain=" + domain : "") +
((secure) ? ";secure" : "");
}

function Get_Cookie(check_name) {
    // first we'll split this cookie up into name/value pairs
    // note: document.cookie only returns name=value, not the other components
    var a_all_cookies = document.cookie.split(';');
    var a_temp_cookie = '';
    var cookie_name = '';
    var cookie_value = '';
    var b_cookie_found = false; // set boolean t/f default f

    for (i = 0; i < a_all_cookies.length; i++) {
        // now we'll split apart each name=value pair
        a_temp_cookie = a_all_cookies[i].split('=');


        // and trim left/right whitespace while we're at it
        cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

        // if the extracted name matches passed check_name
        if (cookie_name == check_name) {
            b_cookie_found = true;
            // we need to handle case where cookie has no value but exists (no = sign, that is):
            if (a_temp_cookie.length > 1) {
                cookie_value = unescape(a_temp_cookie[1].replace(/^\s+|\s+$/g, ''));
            }
            // note that in cases where cookie is initialized but no value, null is returned
            return cookie_value;
            break;
        }
        a_temp_cookie = null;
        cookie_name = '';
    }
    if (!b_cookie_found) {
        return null;
    }
}

function Delete_Cookie(name, path, domain) {
    if (Get_Cookie(name)) document.cookie = name + "=" +
((path) ? ";path=" + path : "") +
((domain) ? ";domain=" + domain : "") +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
