var trigger_spots = {
    ancestry: [-115,50],
    inheritance: [-10,50],
    journal: [-10,50],
    labs: [-115,50]
}
var selected_popup = ''
var ss = ''
var cancelEvent = function(event) {
    event.preventDefault()
    event.stopPropagation()
}

var closePopup = function(id) {
    var popup = $('#'+id+'_popup')
    if(popup.length > 0) {
        popup.css('display', 'none').css('visibility', 'hidden').css('z-index',0)
    }
}

var handleClose = function(event) {
    if(ss < 1)
    {
    cancelEvent(event)
    closePopup(whichPopup(this))
    }
}

var whichPopup = function(obj) {
    return obj.id.split('_')[0]
}

var showPopup = function(event) {
    cancelEvent(event)
    var id = whichPopup(this)
    closePopup(selected_popup)

    $('.topic').css('z-index',1)
    $(this).css('z-index',2)
    var popup = $('#'+id+"_popup")
    var left = popup.is('.leftpopup')
    var img = popup.find('.photoborder').find('img')

    popup.css('display', 'block')
	var __d = document.documentElement
	var __w = self.innerWidth || (__d&&__d.clientWidth) || document.body.clientWidth
	var objectId = this.id
	var hasArea = __w - getAbsoluteLeft(objectId)
	var clickElementy = getAbsoluteTop(objectId) - 200
	var arrowOffset = getElementWidth(objectId) + 11
	var clickElementx = getAbsoluteLeft(objectId) - 190
	popup.css({left: clickElementx+"px", top: clickElementy+"px", zIndex: "2000"})

    popup.css('visibility', 'visible')
    popup.hover(function(){ss=1;},function(){ss=0;handleClose});
    selected_popup = id
}

	var getElementWidth = function(objectId) {
		x = document.getElementById(objectId)
		return x.offsetWidth
	}
	var getAbsoluteLeft = function(objectId) {
		// Get an object left position from the upper left viewport corner
		o = document.getElementById(objectId)
		oLeft = o.offsetLeft            // Get left position from the parent object
		while(o.offsetParent!=null) {   // Parse the parent hierarchy up to the document element
			oParent = o.offsetParent    // Get parent object reference
			oLeft += oParent.offsetLeft // Add parent left position
			o = oParent
		}
		return oLeft
	}
	var getAbsoluteTop = function(objectId) {
		// Get an object top position from the upper left viewport corner
		o = document.getElementById(objectId)
		oTop = o.offsetTop            // Get top position from the parent object
		while(o.offsetParent!=null) { // Parse the parent hierarchy up to the document element
			oParent = o.offsetParent  // Get parent object reference
			oTop += oParent.offsetTop // Add parent top position
			o = oParent
		}
		return oTop
	}
