 		[entity, index] = @_findPrevious()
 		if entity
 			@setCurrent(entity)
-			entity.page.hotIndex = index
+			entity._page.hotIndex = index
 			return entity
 		else
 			return @current
+
+	getFirst: ()->
+		[entity, index] = @_findNext()
+		return entity
+
+	getPrevious: ()->
+		[entity, index] = @_findPrevious(@current)
+		return entity
+
+	getNext: ()->
+		[entity, index] = @_findNext(@current)
+		return entity
+
+	getLast: ()->
+		[entity, index] = @_findPrevious()
+		return entity
 
 	hasPrevious: ()->
 		return @_findPrevious(@current).length > 0

		return []

	_findNext: (entity)->
		if not (entity?.parent isnt @)
			if entity
				page = entity._page
				if page[page.hotIndex] is entity

		[entity, index] = @_findPrevious(@current)
		if entity
			@setCurrent(entity)
			entity._page.hotIndex = index
			return entity
		else
			return @current
