goog.provide('oneup.ui.AchievementIcon');

goog.require('goog.dom');

oneup.ui.AchievementIcon = function(achievementId, includeHover) {
	this.achievementId = achievementId;
	this.includeHover = includeHover || false;
};

oneup.ui.AchievementIcon.prototype.render = function() {
	var achievement = oneup.app.getAchievements([this.achievementId])[0];
	var groupCss = 'achievement_icon_mini group_';
	var groupClean = achievement.group.replace(/ /g, '').toLowerCase();

	groupClean = groupClean.replace(/,/g, '');
	groupClean = groupClean.replace(/&/g, '');
	groupCss += groupClean;

	var icon = achievement.icon || 'man';

	var icon_img = goog.dom.createDom('div', {'class': groupCss, 'style': "background-image:url('/images/icons/" + icon + ".png');"});
	var icon_img_mask = goog.dom.createDom('div', {'class': 'icon_mask'});
	icon_img.appendChild(icon_img_mask);

	if (this.includeHover) {
		var achievementName = achievement.name;
		var achievementNameFloat = goog.dom.createDom('div', {'class':'floatBox', 'style':'display:none;'}, 'I have ' + achievementName)
		icon_img.appendChild(achievementNameFloat);
		goog.events.listen(icon_img, goog.events.EventType.MOUSEMOVE, function(e) {
			var x = goog.style.getClientPosition(e).x + window.scrollX;
			var y = goog.style.getClientPosition(e).y + window.scrollY;
			achievementNameFloat.style.display = '';
			goog.style.setPosition(achievementNameFloat, x+10 + 'px', y+10 + 'px');
		});
		goog.events.listen(icon_img, goog.events.EventType.MOUSEOUT, function(e) {
			achievementNameFloat.style.display = 'none';
		});
		
	}
	
	return icon_img;
}

