Sorter = {
	markFeatured: function(list) {
		$(list).childElements('li').invoke('removeClassName','featured').first().addClassName('featured');
	},
	
	begin: function(list, button) {
		var $list = $(list); //extend list
		var $button = $(button); //extend button
		$list.childElements('li').invoke('addClassName', 'sortable');
		Sortable.create(list);
		$button.update('Click Again to Save New Order');
		$button.observe('click', function(element) {
			new Ajax.Updater('list_of_spotlights', '/admin/dissertation/updateOrder', {
				parameters: { new_order: Sortable.serialize(list) },
				onCreate: function() {
					$button.update('Saving. . .').disabled = true;
				},
				onComplete: function() {
					if ($('updateNotice')) {
						new Effect.Fade('updateNotice', {
			        delay: 2,
			        duration: 2
			      });
					}
					Sorter.markFeatured(list);
				}
			})
		});
	}
}