﻿$.widget('ui.engineProjectedEntityList', {
	_init: function() {
		this.element.addClass('engineProjectedEntityList');
	},

	dataBind: function(entities) {
		var self = this;

		var parent = undefined;
		var type = undefined;

		this.element.empty();

		if (entities.length == 1) {
			parent = this.element;
			type = "<span />";
		} else if (entities.length > 1) {
			var ul = $("<ul />")
				.appendTo(this.element);
			
			parent = ul;
			type = "<li />";
		}

		for (var i = 0; i < entities.length; i++) {
			var name = entities[i].DisplayName;

			var fixture = $(type)
				.addClass(entities[i].IsPickForUser ? 'users' : '')
				.appendTo(parent);

			var selectLink = $("<a />")
				.text(name)
				.bind('click', { 'Entity': entities[i] }, function(event) {
					var e = event.data.Entity;
					self.options.entitySelected(
					{
						entityId: e.EntityId,
						isPlayer: e.IsPlayer,
						positionId: e.PositionId
					});
				})
				.appendTo(fixture);
		}
	}
});