﻿function showEvent(link,date,title,desc,eventDates,name,phone,email,attach,url,department){
    var popUp = document.getElementById('PopUp');
    var newX = findPosX(link)+5;
    var newY = findPosY(link)+8;
    if(newX + 200 > 800)
        newX -= 200;
    document.getElementById('DateLabel').innerHTML = longDate(date);
    document.getElementById('DepartmentLabel').innerHTML = department;    
    document.getElementById('TitleLabel').innerHTML = title;    
    document.getElementById('DescriptionLabel').innerHTML = desc; 
    document.getElementById('EventDatesLabel').innerHTML = eventDates; 
    document.getElementById('ContactNameLabel').innerHTML = name; 
    document.getElementById('ContactPhoneLabel').innerHTML = phone;
    if(email.length > 0){
        document.getElementById('EmailHyperLink').href = "mailto:"+email;
        document.getElementById('EmailHyperLink').innerHTML = email;
    }
    if(attach.length > 0){
        document.getElementById('AttachmentHyperLink').href = attach;
        document.getElementById('AttachmentHyperLink').innerHTML = 'resource ['+getDocType(attach)+']';
    }else{
        document.getElementById('AttachmentHyperLink').style.display = 'none';
    }
    if(url.length > 0){
        document.getElementById('UrlHyperLink').href = url; 
    }else{
        document.getElementById('UrlHyperLink').style.display = 'none';
    }
    popUp.style.display = 'block';
    popUp.style.position = 'absolute';
    popUp.style.top = newY+'px';
    popUp.style.left = newX+'px';
    
}
function hideEvent(){
    document.getElementById('PopUp').style.display = 'none';
}
function longDate(date){
    var date = new Date(date);
    var months = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December');
    var month = months[date.getMonth()];
    var newDate = month+" "+date.getDate()+", "+date.getFullYear();
    return newDate;    
}
// stolen from: http://www.quirksmode.org/js/findpos.html
function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}
function getDocType(fileName) 
{
    var docType = fileName.substring(fileName.lastIndexOf('.')+1);
    if(docType.length == 0 || docType.length > 5)
    {
        docType = 'unknown';
    }
    // probably a better way to check this
    var webExts = new Array('com','net','org','edu','gov','mil','us','ws','info','htm','html','asp','aspx','php','php3','phtml','shtml');
    for(var i=0;i<webExts.length;i++)
    {
        if(docType.replace('index.html','') == webExts[i])
        {
            docType = 'web';
            break;
        }
    }
    return docType;
}

