var tagMenuItems = new Array();

function addTag(tag) {
	var tagMenuItem = new TagMenuItem(tag, menu);
	if (tagMenuItems.length > 0) {
		tagMenuItem.previous = tagMenuItems.peek();
		tagMenuItem.previous.next = tagMenuItem;
	}
	tagMenuItems.push(tagMenuItem);
}

function TagMenuItem(name, menu) {
	this.name = name;
	this.menuItem = $("<li>");
	this.linkUI = $("<a>");
	this.linkUI.attr("id", "tag" + name);
	this.linkUI.append(name);

	var thisTag = this;
	this.linkUI.click(function() {
		loadImagesForTag(name);
		thisTag.active();
	});

	this.menuItem.append(this.linkUI);
	menu.find("ul").append(this.menuItem);
};

TagMenuItem.prototype.active = function() {
	this.linkUI.addClass("active-menu-item");
	var linkedListHelper = new LinkedListHelper(this);
	var thisTag = this;
	linkedListHelper.forEach(function(tag) {
		if (tag != thisTag) {
			tag.inactive();
		}
	});
};

TagMenuItem.prototype.inactive = function() {
	this.linkUI.removeClass("active-menu-item");
};


