﻿
/*

function displayPopup(id, parent) {
    hideAllPopups();
    var popup = $('#' + id);
    //reset
    popup.removeAttr('style');
    //position
    popup.position(
                {
                    my: "left center",
                    at: "right top",
                    of: "#" + parent,
                    offset: "20 0",
                    collision: "flip"
                });
    popup.show();
}

function hideAllPopups() {
    $("div[name=itemPopup]").hide();
}
*/

// Popups / tooltips //

var currentOpenedPopup;
var currentPopupToOpen;
var currentPopupToOpenId;
var currentParent;
var tOpen;  //timer

function displayPopup(id, parent) {
    clearTimeout(tOpen);
    currentPopupToOpen = $('#' + id);
    currentPopupToOpenId = id;
    currentParent = parent;
    tOpen = setTimeout("displayCurrent();", 200);
}

function displayCurrent() {
    hideAllPopups();
    //position
    currentPopupToOpen.off
    currentPopupToOpen.position(
                {
                    my: "left center",
                    at: "right top",
                    of: "#" + currentParent,
                    offset: "-240 20",
                    collision: "flip",
                    opacity: "hide"
                });
    //show
    currentPopupToOpen.animate({opacity: "show"},200)
    currentOpenedPopup = currentPopupToOpen;
    currentPopupToOpen = null;
}

function hideAllPopups() {
    //reset and hide
    $("div[name=itemPopup]").removeAttr('style').hide();
    currentOpenedPopup = null;
}
// Popups / tooltips end //


// OnMouseOut fix //

function is_child_of(parent, child) {
    if (child != null) {
        while (child.parentNode) {
            if ((child = child.parentNode) == parent) {
                return true;
            }
        }
    }
    return false;
}
function fixOnMouseOut(element, event, JavaScript_code) {
    var current_mouse_target = null;
    if (event.toElement) {
        current_mouse_target = event.toElement;
    } else if (event.relatedTarget) {
        current_mouse_target = event.relatedTarget;
    }
    if (!is_child_of(element, current_mouse_target) && element != current_mouse_target) {
        eval(JavaScript_code);
    }
}

// OnMouseOut fix end //
