﻿
var ACHIEVEMENT_WIDTH = 80;
var ACHIEVEMENT_HEIGHT = 40;
var RelativeAchievementUrl = "";

function AchievementMouseEnter(e)
{
	if(e == null)
	{
		e = window.event;
	}
	
	var image = GetEventSource(e);
	var playerAchievement = image.PlayerAchievement;
	var achievement = playerAchievement.Achievement;
	
	var gameLogo = document.getElementById("profile-achievement-details-game-logo");
	gameLogo.src = RelativeAchievementUrl + "images/achievements/" + achievement.GameName + "/game-logo.png";
	gameLogo.title = achievement.GameFullName + " Achievements";
	gameLogo.alt = achievement.GameName;
	
	var achievementImage = document.getElementById("profile-achievement-details-icon");
	achievementImage.src = RelativeAchievementUrl + "images/achievements/" + achievement.GameName + "/" + GetAchievementImageName(achievement, "large");
	achievementImage.title = achievement.AchievementName;
	achievementImage.alt = achievement.AchievementName;

	document.getElementById("profile-achievement-details-name").innerHTML = achievement.AchievementName + " ";
	document.getElementById("profile-achievement-details-points").innerHTML = " (\+" + achievement.PointValue + " points)";
	document.getElementById("profile-achievement-details-category").innerHTML = achievement.Category + " achievement:";
	document.getElementById("profile-achievement-details-description").innerHTML = achievement.AchievementDescription.toLowerCase();
	
	var dateLabel = document.getElementById("profile-achievement-details-date");
	var achievedLabel = document.getElementById("profile-achievement-details-annotation");
	
	if(playerAchievement.IsAchieved)
	{
	    SetClass(achievedLabel, "profile-achievement-details-achieved-message");
	    SetClass(dateLabel, "profile-achievement-details-achieved-date");

	    achievedLabel.innerHTML = "Achieved ";
        dateLabel.innerHTML = " on " + GetDate(playerAchievement.Achieved).toLocaleDateString();
	}
	else
	{
		SetClass(dateLabel, "profile-achievement-details-locked-message");
		dateLabel.innerHTML = "Not yet achieved";
		document.getElementById("profile-achievement-details-annotation").innerHTML = "";			
		document.getElementById("profile-achievement-details-character").innerHTML = "";			
	}
	
	var left;
	var top;
	
	left = e.clientX + ACHIEVEMENT_WIDTH;
	top = GetScrollTop() + e.clientY; 
		
	if(e.offsetX != null)
	{
		left -= e.offsetX;
		top -= e.offsetY;
	}
	else
	{
		left -= (e.clientX - image.offsetLeft);
		top -= (e.clientY - image.offsetTop);
	}
	
	var popup = document.getElementById("profile-achievement-details");
	popup.style.left = left + "px";
	popup.style.top = top + "px";
	popup.style.display = "block";
}

function AchievementMouseLeave(e)
{
	var popup = document.getElementById("profile-achievement-details").style.display = "none";
}
